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]