Description
Hackage shows deprecated and preferred versions on each package page, but it seems to combine the two types of version ranges in the package index. This means that cabal can't distinguish between versions that are deprecated and versions that are only non-preferred. It would be great to add more functionality to cabal related to identifying and avoiding deprecated versions. Here is an example of an issue that could be solved: haskell/cabal#10097
Adding preferred versions to the index:
hackage-server/src/Distribution/Server/Features/PreferredVersions.hs
Lines 344 to 350 in 5b0d3b0
Formatting deprecated/preferred versions for one package:
hackage-server/src/Distribution/Server/Features/PreferredVersions.hs
Lines 411 to 413 in 5b0d3b0
PreferredInfo
, with sumRange
field for merged version ranges:
Merging version ranges: