Skip to content

How does cabal select a package from multiple global repositories? #6139

Open
@TerrorJack

Description

@TerrorJack

When multiple repositories (e.g. both head.hackage and regular hackage) are present in ~/.cabal/config, a single package might come from different repos, how does cabal decide from which repo is the package picked up? The documentation only says:

If you want, you can configure multiple repositories, and cabal will combine them and be able to download packages from any of them.

The intuition would be selecting from the first repo which contains the package, but it's actually not the case, e.g. when running cabal new-install dlist or cabal new-build for a local package depending on dlist, the dlist package from head.hackage is not picked up, even when head.hackage comes before regular hackage in the global config.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions