We have heuristically capped the compatibility of many old package versions that we believe not to be compatible with Julia 1.0. The heuristic is:
- passes PkgEval or recursive dependency thereof => 1.0 compatible
- has a Julia version interval only containing ≥ 0.7 versions => 1.0 compatible
- supports Julia ≤ 0.6 & doesn’t use Compat => 1.0 incompatible
- claims to support ≥ 0.7 & tagged on July 14 or later => 1.0 compatible
- otherwise => 1.0 incompatible
This isn’t entirely accurate and some packages slip through the cracks and actually work on Julia 1.0 despite the version being older than July 14th and not using Compat, etc. If you have a package version that shouldn’t be capped, the recourse is to make PR like this one which will automatically cause the package to become uncapped. However, please only do this if the package version actually works on Julia 1.0.
There are many packages, however, that still haven’t been updated and are genuinely broken on Julia 1.0; while previously the package manager would happily install these, it will now refuse to do so due to unsatisfiable compatibility constraints. Please just fix the deprecations and make a new release. Don’t use this as an excuse to refactor your code or redesign the package. Just fix the deprecations. They tell you exactly what to do, just do it and then when there are no more warnings and tests pass, tag a new release.
If you are an end user and don’t want to worry about this for now and just want an old uncapped version of the General registry, you can go into
~/.julia/registries/General and do:
git checkout -b dontcapmebro e5748a7e36745cf42952c5451586a79911a524b4
Of course you won’t get any new packages or versions but for today to get things done, this is the easiest way to do it.