pi package:cabal-install-solver
Package instance. A package name and an instance.
Info associated with a package instance. Currently, dependencies,
component names, flags and failure reasons. The component map records
whether any components are unbuildable in the current environment
(compiler, os, arch, and global flag constraints). Packages that have
a failure reason recorded for them are disabled globally, for reasons
external to the solver. We currently use this for shadowing which
essentially is a GHC limitation, and for installed packages that are
broken.
Convert both the installed package index and the source package index
into one uniform solver index.
We use allPackagesBySourcePackageId for the installed package
index because that returns us several instances of the same package
and version in order of preference. This allows us in principle to
"shadow" packages if there are several installed packages of the same
version. There are currently some shortcomings in both GHC and Cabal
in resolving these situations. However, the right thing to do is to
fix the problem there, so for now, shadowing is only activated if
explicitly requested.
String representation of a package instance.