const package:cabal-install-solver
const x y always evaluates to
x, ignoring its second
argument.
const x = \_ -> x
This function might seem useless at first glance, but it can be very
useful in a higher order context.
Examples
>>> const 42 "hello"
42
>>> map (const 42) [0..3]
[42,42,42,42]
An internal constraint due to compatibility issues with the Setup.hs
command line interface requires a maximum upper bound on Cabal
An internal constraint due to compatibility issues with the Setup.hs
command line interface requires a minimum lower bound on Cabal
Source of a PackageConstraint.
Flag specified on the command line.
Constraint specified by a config file, a command line flag, or a user
target, when a more specific source is not known.
Internal constraint used by cabal freeze.
Main config file, which is ~.cabalconfig by default.
Constraint introduced by --enable-multi-repl, which requires features
from Cabal >= 3.11
Internal requirement to use installed versions of packages like
ghc-prim.
Constraint introduced by --enable-profiling-shared, which requires
features from Cabal >= 3.13
The source of the constraint is not specified.
User config file, which is ./cabal.config by default.
Target specified by the user, e.g., cabal install
package-0.1.0.0 implies package==0.1.0.0.
Constraint introduced by --with-repl, which requires features from
Cabal >= 3.15
Determines to what packages and in what contexts a constraint applies.
The conflict set variable represents a package with a constraint that
excluded the specified package and version. For example, the conflict
set entry '(P x, VersionConstraintConflict y (mkVersion [2, 0]))'
means that package x's constraint on y excluded y-2.0.