JuliaDiff / DifferentiationInterface.jl

An interface to various automatic differentiation backends in Julia.
https://juliadiff.org/DifferentiationInterface.jl/DifferentiationInterface
MIT License
186 stars 13 forks source link

Breaking older Julia in downstream packages #597

Open MilesCranmer opened 2 days ago

MilesCranmer commented 2 days ago

It looks like the Project.toml for DifferentiationInterface.jl is still set to julia = "1.6" even though the CI only tests 1.10+.

@gdalle could you please update the Project.toml to Julia 1.10 and also backport this to the registry to the last version that you verified against 1.6? DifferentiationInterface.jl is now breaking the tests of SymbolicRegression.jl and PySR on older versions of Julia.

(People who are not heavily involved in the Julia community take a while longer to update their versions, and they will inevitably hit these issues. So it's important to constrain the Julia version correctly in Project.toml to prevent this.)

gdalle commented 2 days ago

OUCH that is a really bad oversight on my end. Will fix it right away. Thank you for reporting!

gdalle commented 2 days ago

Ok so support for Julia 1.6 was first dropped in:

Once #598 is merged I'll open a PR to General

MilesCranmer commented 2 days ago

Many thanks!!

gdalle commented 1 day ago

Now we only need the General PR to be reviewed and merged

Red-Portal commented 12 hours ago

@gdalle I think this should have been a minor version increment for this, not just a patch version increment? This is a breaking change after all.

gdalle commented 12 hours ago

It's actually not a breaking change when done properly because users who stay on the old (unsupported) version of Julia will never even see the newer versions of the package: they can't download those versions at all. See this section of the ColPrac guidelines for more discussion. Of course here I screwed up badly by dropping support for 1.6 without actually bumping the compat bound, so users of Julia 1.6 can keep downloading versions of DI which are much too recent. This is why I had to make a manual PR to the General Registry and fix those compat bounds a posteriori. Everything is ready but the maintainers of General have some new infrastructure they're putting in place, so the merge is slightly delayed.

Red-Portal commented 12 hours ago

I see thanks for the pointer :+1: