Skip to content

Advertise base<0 when a package version is deprecated #1370

Open
@ulysses4ever

Description

@ulysses4ever

Deprecation is a subtle mechanism. In particular, deprecated versions can still be picked by the solver --- to most people's surprise. It has been brought up many times (e.g. #1345). A more effective way to make sure that a version isn't picked is to revise it's base bound to <0, and we should advertise it more. E.g. in the UI when a user deprecates a version, we could show an instructive message about base<0.

The above-mentioned issue has more ideas such as changing the semantics of deprecation (e.g. to be closer to that of "don't ever pick the version", just like base<0) or adding a more direct way to achieve the same by introducing a new feature in the Cabal spec. Both of these seem heavy-weight, and we are likely stuck in a local minimum for now. Adding more visibility to the base<0 trick may improve our life mid-run.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions