Skip to content

Conversation

@pierreglaser
Copy link
Member

@pierreglaser pierreglaser commented Jan 25, 2019

This PR configures cron-jobs that build and launch the test suite of downtream projects that rely on cloudpickle. The main purpose is to find out quickly if we introduce breaking changes.

Ideally we would rather test the stable (PyPI) rather than the latest (master branch) version, but each time, a project-specific issue was making it at least clumsy, at worst impossible. (I can detail upon request).

@codecov-io
Copy link

codecov-io commented Jan 25, 2019

Codecov Report

Merging #236 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #236   +/-   ##
=======================================
  Coverage   85.12%   85.12%           
=======================================
  Files           1        1           
  Lines         585      585           
  Branches      117      117           
=======================================
  Hits          498      498           
  Misses         63       63           
  Partials       24       24

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ca8be49...5b468cd. Read the comment docs.

Copy link
Contributor

@ogrisel ogrisel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for tackling this. Here are some comments.

@pierreglaser
Copy link
Member Author

Mmh. So the good news is that there does not seem to be any syntax error. Also, loky and joblib tests passed. However, 3 distributed tests failed, but travis is still green...

@pierreglaser
Copy link
Member Author

OK so apparentlty openssl is using using SSLv3, whereas distributed would like us to use TLSv1.2 at least. @ogrisel is this worth the hassle? Should we switch to an anaconda distribution or skip the tests? @lesteve are you familiar with any of this? If yes, any help would be much appreciated :)

@lesteve
Copy link
Contributor

lesteve commented Jan 28, 2019

@lesteve are you familiar with any of this? If yes, any help would be much appreciated :)

No suggestion off the top of my head, sorry ...

Copy link
Contributor

@ogrisel ogrisel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of running those integration tests as cron jobs, I am thinking we could run them conditionally whenever the commit message has a special flag. For instance, for the joblib entry:

commit_message =~ /(ci-downstream|ci-joblib)/

https://docs.travis-ci.com/user/conditions-v1

WDYT?

@ogrisel ogrisel changed the title MNT add cron builds for loky, joblib, distributed MNT add CI jobs to run integration tests for downstream projects: loky, joblib, distributed Jan 29, 2019
@pierreglaser
Copy link
Member Author

This sounds great to tackle issues early. But it will be harder for us to spot a breaking change if we miss it initially. We would at least have to push empty commits with ci-downstream flags before each new PyPI release.

@ogrisel
Copy link
Contributor

ogrisel commented Jan 29, 2019

We would at least have to push empty commits with ci-downstream flags before each new PyPI release.

Yes but we can do that in a PR that we do not merge to avoid polluting master with empty commits.

@ogrisel
Copy link
Contributor

ogrisel commented Jan 29, 2019

But it will be harder for us to spot a breaking change if we miss it initially.

So be it. It's a tradeoff between long CI jobs, unwanted noisy notifications (in case the downstream master branches are failing randomly for causes unrelated to cloudpickle) and thinking about doing manual triggers prior to making a cloudpickle release.

@pierreglaser
Copy link
Member Author

OK. I'll change the trigger and make a few test commits inside the PR with the appropriate flags.

@pierreglaser pierreglaser force-pushed the add-cron-jobs-for-downstream-projects branch from 64a122b to a3c86bb Compare January 29, 2019 09:43
Copy link
Contributor

@ogrisel ogrisel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, changing my mind on the commit message tagging syntax:

@pierreglaser pierreglaser force-pushed the add-cron-jobs-for-downstream-projects branch from 9afceb6 to f1c2196 Compare January 29, 2019 13:35
@pierreglaser pierreglaser force-pushed the add-cron-jobs-for-downstream-projects branch from f1c2196 to cacd7a0 Compare January 29, 2019 13:37
@ogrisel
Copy link
Contributor

ogrisel commented Jan 29, 2019

It seems to work. Can you just try with [ci downstream] to make sure that it will trigger all of them at once?

@ogrisel
Copy link
Contributor

ogrisel commented Jan 29, 2019

Did you cancel the [ci distributed] build on purpose?

@pierreglaser
Copy link
Member Author

Did you cancel the [ci distributed] build on purpose?

Nope, actually I thought you did. Might be because of auto cancelling builds when more recent commits are pushed?

@pierreglaser
Copy link
Member Author

Besides that the filter seems to work indeed.

@ogrisel
Copy link
Contributor

ogrisel commented Jan 29, 2019

Good, let's wait for the final build to complete.

@ogrisel ogrisel merged commit d5f37db into cloudpipe:master Jan 29, 2019
@ogrisel
Copy link
Contributor

ogrisel commented Jan 29, 2019

Merged. Thanks @pierreglaser!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants