Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

BUILD: move all test dependencies to ./test_requirements.txt #14378

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Sep 1, 2019

Conversation

mattip
Copy link
Member

@mattip mattip commented Aug 27, 2019

Move all the test dependencies to a single test_requirements.txt. Perhaps we should have a build_requirements.txt with only cython?

The real goal is to enable testing whether these packages have updates, so I added use of pip list -o to list outdated packages.

Probably pip install -r test_requirements.txt should get a shoutout somewhere in the development documentation

@mattip mattip force-pushed the test-dependencies branch 2 times, most recently from 7945660 to 280689d Compare August 27, 2019 16:11
@mattip mattip force-pushed the test-dependencies branch from 280689d to bfe255f Compare August 27, 2019 16:16
tools/ci/appveyor/requirements.txt Show resolved Hide resolved
tools/ci/appveyor/requirements.txt Show resolved Hide resolved
@mattip mattip force-pushed the test-dependencies branch from 543e72d to d736b69 Compare August 28, 2019 07:46
@mattip mattip force-pushed the test-dependencies branch from d736b69 to e5f4c29 Compare August 28, 2019 08:31
@mattip
Copy link
Member Author

mattip commented Aug 28, 2019

The Check_Dependencies test is correctly failing:

> Package    Version Latest Type 
> ---------- ------- ------ -----
> pytest     5.0.1   5.1.1  wheel
> pytest-cov 2.6.1   2.7.1  wheel
> pytz       2018.9  2019.2 wheel

Now we need to decide what to do.

  • Leave it just like this. When any of the dependencies release an update, our CI will complain but we can ignore it until we update the dependencies in a separate PR
    • for: simple
    • against: makes it confusing for drive-by contributors when CI fails
  • Use a service instead of having the check in our CI.
    • for: outsourcing the problem
    • against: github has no fine-grained permissions, any service will need complete control of the repo. Also, can we set it up to use this non-standard test_requirements.txt?
  • Automate instead of fail the test: automatically issue a PR to update the dependencies
    • for: cleanly supports upgrading in a non-intrusive way
    • against: complicates the script, will need some API support from github which might break at some point

@eric-wieser
Copy link
Member

Is it possible to mark that task as failable, so that we get an X from azure on just one CI integration, but that x does not aggregate to an overall GitHub ci failure?

@rgommers
Copy link
Member

I'd much prefer to use a service for this.

against: github has no fine-grained permissions, any service will need complete control of the repo

that's not correct, GitHub definitely has fine-grained permissions, and a well-written service should need nothing more than perhaps a "read email addresses" to be installed.

@rgommers
Copy link
Member

Please put nose back, we have public API that relies on it, as well as tests in numpy/testing/tests/

@charris
Copy link
Member

charris commented Aug 28, 2019

Note that nose imports the imp module (IIRC) and that module is scheduled to be removed in 3.10. Nose can be fixed pretty easily, and some distros do that, but unless someone updates nose on pip it could be a problem at some point.

@mattip
Copy link
Member Author

mattip commented Aug 28, 2019

Is it possible to mark that task as failable, so that we get an X from azure on just one CI integration, but that x does not aggregate to an overall GitHub ci failure?

I don't see how, the Job spec does not have any "failable" option I can see

@mattip
Copy link
Member Author

mattip commented Aug 28, 2019

I'd much prefer to use a service for this.

I am exploring options for sending an email when the test fails. I think we can add an extension for SendMail, do we have an organizational email entity that can sign up with them to get a token?

@dopplershift
Copy link

Isn't issuing PRs to update dependencies what Dependabot is for?

@mattip
Copy link
Member Author

mattip commented Sep 1, 2019

It seems dependabot may work out. In order to get the ball rolling, can we merge this PR as is, so that we can set up dependabot (or another service) and point them to the new file?

@charris
Copy link
Member

charris commented Sep 1, 2019

Merging so we can get started. This will break #14404, so I will update that. Thanks Matti.

@charris charris merged commit 947304a into numpy:master Sep 1, 2019
@mattip mattip deleted the test-dependencies branch June 8, 2020 06:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants
Morty Proxy This is a proxified and sanitized view of the page, visit original site.