-
Notifications
You must be signed in to change notification settings - Fork 13
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
Test lower compat bounds? #378
Comments
Oh yes definitely. I wonder why CompatHelper didn't pick it up. Care to open a PR? |
Because I wanted to extend it downwards to |
In any case, since DifferentiationInterface wil (hopefully) be wide used, maybe we could use https://github.com/julia-actions/julia-downgrade-compat to keep the dependency version bounds wide, but in a safe manner? |
Sounds like a great idea, thanks! |
While a good idea in principle, downgrade compat testing is more tricky than it looks because I perform Pkg operations inside the DI test suite. The DI test suite is split into one CI workflow per AD backend, and each of those workflows activates a custom environment like |
This could possibly be handled through the # Comma-separated list of Julia projects to modify. The Project.toml files in all of
# these directories will be modified.
# Example: ., test, docs
# Default: .
projects: '' |
I don't think so because the individual |
Maybe we could add the packages of |
Could you point me to the location where the |
And a separate mechanism is at work for adding
because otherwise Pkg will try to grab it from the general registry |
To the best of my understanding, the way If we first activate |
No because compat bounds of environments deeper in the
Side note: activating one then the other is not enough, we need to push the former into the |
I thought it was cleaner to store this stuff in a |
#380 reveals some annoying properties of the For example, the tests on #380 fail because ERROR: LoadError: Unsatisfiable requirements detected for package SparseMatrixColorings [0a514795]:
SparseMatrixColorings [0a514795] log:
├─possible versions are: 0.1.0-0.3.5 or uninstalled
├─restricted to versions 0.3.0 by DifferentiationInterface [a0c0ee7d], leaving only versions 0.3.0
│ └─DifferentiationInterface [a0c0ee7d] log:
│ ├─possible versions are: 0.5.9 or uninstalled
│ └─DifferentiationInterface [a0c0ee7d] is fixed to version 0.5.9
└─restricted by compatibility requirements with DocStringExtensions [ffbed154] to versions: 0.1.0 or uninstalled — no versions left
└─DocStringExtensions [ffbed154] log:
├─possible versions are: 0.4.6-0.9.3 or uninstalled
└─restricted to versions 0.8.0 by DifferentiationInterface [a0c0ee7d], leaving only versions 0.8.0
└─DifferentiationInterface [a0c0ee7d] log: see above So these tests might be a headache in the future. |
Oh yeah I remember that discussion, essentially it tries to resolve all lower bounds at the same time. |
@adrhill can you modify #380 by
|
I bet that doing this will just reveal another dependency conflict. I suggest we keep #379 (which @oschulz needs) and don't use
|
Or maybe not, that's my hope. If that's the only problem, gdalle/SparseMatrixColorings.jl#31 should be enough to fix it for good |
If not, then that's pure luck. We'll encounter the same problem of having to manually resolve lower compat bounds every time we need to modify lower bounds. And that's going to happen every time we require a new feature from a new release of any dependency. |
While we should test lower compat bounds, julia-downgrade-compat doesn't seem to be the answer for DI. We tried using it in #380, but it currently requires manual resolving of dependencies, which should ideally be handled by Pkg rather than a human. This problem was discussed on Discourse as well. A proposal to add |
The current
DocStringExtensions = "0.9.3"
makes DifferentiationInterface incompatible with some packages that are still stuck on DocStringExtensions v0.8. Would it be possible to relax the version bound?The text was updated successfully, but these errors were encountered: