-
Notifications
You must be signed in to change notification settings - Fork 42
Consider the extras block when checking for new versions #502
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
base: master
Are you sure you want to change the base?
Conversation
Should we make this toggleable? And should it be opt-in or opt-out? |
Some thoughts:
Footnotes
|
There is indeed a significant difference between direct package dependencies and test dependencies in that the latter can't break the environment alone, so having wrong compat (e.g. no) bounds on test dependencies could be considered a private matter. However, I don't really see why it was ever a good idea not to have compat bounds on test dependencies. It's not at all obvious that new versions of test dependencies wouldn't break your tests. However, bottomline here is probably that it should be opt-in. This will require a little more work on the PR, though. |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #502 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 12 12
Lines 412 410 -2
=========================================
- Hits 412 410 -2 ☔ View full report in Codecov by Sentry. |
@DilumAluthge has anything changed with respect to
or is it status quo? |
Nothing has changed, but we might consider making a breaking release of CompatHelper in which we start enforcing compat bounds for test deps (as the default behavior; we could add a kwarg that allows users to opt-out)? |
IMO it's important to file PRs to adjust bounds for extra deps by default. I just bumped into this case in StatsModels (JuliaStats/StatsModels.jl#323) with CategoricalArrays 1.0. If CompatHelper doesn't notice developers that a new version of the dependency has been released, the package CI will most likely continue testing an old version forever, while most users will use the new one. To minimize the number of new PRs, would it be possible to only track new versions when version bounds are specified for a given package? |
I agree, I also just ran into this with CategoricalArrays 1.0 - tests were still running on an older version and CompatHelper didn't notify me about the release. @DilumAluthge what's the blocker for the PR? That it would be a breaking change? Maybe it could be softened by a) only opening CompatHelper PRs for dependencies for which already a version bound exists (as suggested in the last comment) and/or b) making it an opt-in feature initially. |
I think either of those would be a good idea. |
How about an optional kwarg named
The kwarg would be optional, and we'd default to Also, we'd throw an error if any other value (other than the above three values) was passed as the value of |
I extended the PR in #528 along these lines. |
With the work in #458, it seems like it's pretty simple to close #166 as also conjectured in that issue.