cabal-install-solver-3.8.1.0: src/Distribution/Solver/Types/PackagePreferences.hs
module Distribution.Solver.Types.PackagePreferences
( PackagePreferences(..)
) where
import Distribution.Solver.Types.InstalledPreference
import Distribution.Solver.Types.OptionalStanza
import Distribution.Version (VersionRange)
-- | Per-package preferences on the version. It is a soft constraint that the
-- 'DependencyResolver' should try to respect where possible. It consists of
-- an 'InstalledPreference' which says if we prefer versions of packages
-- that are already installed. It also has (possibly multiple)
-- 'PackageVersionPreference's which are suggested constraints on the version
-- number. The resolver should try to use package versions that satisfy
-- the maximum number of the suggested version constraints.
--
-- It is not specified if preferences on some packages are more important than
-- others.
--
data PackagePreferences = PackagePreferences [VersionRange]
InstalledPreference
[OptionalStanza]