Thanks to visit codestin.com
Credit goes to github.com

Skip to content

CI: Re-enable dependabot or manually update test dependencies? #24157

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

Open
ngoldbaum opened this issue Jul 10, 2023 · 3 comments
Open

CI: Re-enable dependabot or manually update test dependencies? #24157

ngoldbaum opened this issue Jul 10, 2023 · 3 comments

Comments

@ngoldbaum
Copy link
Member

ngoldbaum commented Jul 10, 2023

It looks like many of numpy's test dependencies haven't been updated since dependabot was disabled in 2021, see #20268.

In the meantime, github fixed the issue causing spam PRs on forks of NumPy at the end of last year.

Would it make sense to turn dependabot on again now that forks won't be spammed with PRs anymore? I think existing forks may need to toggle a setting, new forks should have that setting turned off by default.

If there's no appetite for turning on dependabot again, would a PR that updates the test dependencies be OK?

@ngoldbaum ngoldbaum changed the title CI: Update test dependencies? CI: Re-enable dependabot or manually update test dependencies? Jul 10, 2023
@charris
Copy link
Member

charris commented Jul 10, 2023

Dependabot is running now, but only github-actions are kept updated, see ./.github/dependabot.yml. I've thought of extending it to tools.

EDIT: I don't know if specific files can be added to the list kept updated, but that would be convenient.

@rgommers
Copy link
Member

I'll note that there's a number of CI jobs that use unpinned test and build dependencies, so we're not missing any coverage.

Pinning everything is an option, but we're losing coverage of different versions of test dependencies at that point, so I'm not sure that that's actually a good thing. Or do we have failures due to new versions of dependencies too often?

If there's a need to pin everything, there's multiple ways of doing it: manual pinning, requirements files, or relying more on conda lock files like scikit-learn does. I don't know how happy scikit-learn is with that approach, but given that our most important dependencies are non-Python ones (BLAS/LAPACK libraries, compilers) I think that has the potential to significantly improve our test coverage. So it's worth looking into that either way.

If there's no appetite for turning on dependabot again, would a PR that updates the test dependencies be OK?

A PR for that is always welcome. My opinion is that Dependabot's maintainers have proven themselves to be utterly untrustworthy (it's really really not okay to ignore a major spam issue for 3 years) and that the Dependabot PRs are low-value noise mostly. So I'd much prefer not to re-enable Dependabot.

@charris
Copy link
Member

charris commented Jul 11, 2023

I mostly enabled dependabot to improve our security score, but it could also increase the danger of new upstream bugs. It has been useful a few times when there have been upstream fixes, in particular for rtools and changes in choco. Chasing down bugs and fixes is a bit easier with dependabot tracking our dependencies.

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

No branches or pull requests

3 participants