2 name: cabal-install-solver
4 synopsis: The command-line interface for Cabal and Hackage.
6 The solver component used in cabal-install command-line program
8 homepage: http://www.haskell.org/cabal/
9 bug-reports: https://github.com/haskell/cabal/issues
12 author: Cabal Development Team (see AUTHORS file)
13 maintainer: Cabal Development Team <cabal-devel@haskell.org>
14 copyright: 2003-2024, Cabal Development Team
15 category: Distribution
20 source-repository head
22 location: https://github.com/haskell/cabal/
23 subdir: cabal-install-solver
25 flag debug-expensive-assertions
26 description: Enable expensive assertions for testing or debugging
31 description: Compile in support for tracetree (used to debug the solver)
36 default-language: Haskell2010
38 hs-source-dirs: src-assertion
40 -Wall -Wcompat -Wnoncanonical-monad-instances
41 -fwarn-tabs -fwarn-incomplete-uni-patterns
44 ghc-options: -Wnoncanonical-monadfail-instances
47 ghc-options: -Wunused-packages
50 Distribution.Client.Utils.Assertion
52 Distribution.Solver.Compat.Prelude
53 Distribution.Solver.Modular
54 Distribution.Solver.Modular.Assignment
55 Distribution.Solver.Modular.Builder
56 Distribution.Solver.Modular.Configured
57 Distribution.Solver.Modular.ConfiguredConversion
58 Distribution.Solver.Modular.ConflictSet
59 Distribution.Solver.Modular.Cycles
60 Distribution.Solver.Modular.Dependency
61 Distribution.Solver.Modular.Explore
62 Distribution.Solver.Modular.Flag
63 Distribution.Solver.Modular.Index
64 Distribution.Solver.Modular.IndexConversion
65 Distribution.Solver.Modular.LabeledGraph
66 Distribution.Solver.Modular.Linking
67 Distribution.Solver.Modular.Log
68 Distribution.Solver.Modular.Message
69 Distribution.Solver.Modular.MessageUtils
70 Distribution.Solver.Modular.Package
71 Distribution.Solver.Modular.Preference
72 Distribution.Solver.Modular.PSQ
73 Distribution.Solver.Modular.RetryLog
74 Distribution.Solver.Modular.Solver
75 Distribution.Solver.Modular.Tree
76 Distribution.Solver.Modular.Validate
77 Distribution.Solver.Modular.Var
78 Distribution.Solver.Modular.Version
79 Distribution.Solver.Modular.WeightedPSQ
80 Distribution.Solver.Types.ComponentDeps
81 Distribution.Solver.Types.ConstraintSource
82 Distribution.Solver.Types.DependencyResolver
83 Distribution.Solver.Types.Flag
84 Distribution.Solver.Types.InstalledPreference
85 Distribution.Solver.Types.InstSolverPackage
86 Distribution.Solver.Types.LabeledPackageConstraint
87 Distribution.Solver.Types.OptionalStanza
88 Distribution.Solver.Types.PackageConstraint
89 Distribution.Solver.Types.PackageFixedDeps
90 Distribution.Solver.Types.PackageIndex
91 Distribution.Solver.Types.PackagePath
92 Distribution.Solver.Types.PackagePreferences
93 Distribution.Solver.Types.PkgConfigDb
94 Distribution.Solver.Types.Progress
95 Distribution.Solver.Types.ResolverPackage
96 Distribution.Solver.Types.Settings
97 Distribution.Solver.Types.SolverId
98 Distribution.Solver.Types.SolverPackage
99 Distribution.Solver.Types.SourcePackage
100 Distribution.Solver.Types.Variable
103 , array >=0.4 && <0.6
104 , base >=4.10 && <4.20
105 , bytestring >=0.10.6.0 && <0.13
107 , Cabal-syntax ^>=3.11
108 , containers >=0.5.6.2 && <0.8
109 , edit-distance ^>= 0.2.2
110 , filepath ^>=1.4.0.0 || ^>=1.5.0.0
113 , transformers >=0.4.2.0 && <0.7
114 , text (>= 1.2.3.0 && < 1.3) || (>= 2.0 && < 2.2)
116 if flag(debug-expensive-assertions)
117 cpp-options: -DDEBUG_EXPENSIVE_ASSERTIONS
119 if flag(debug-tracetree)
120 cpp-options: -DDEBUG_TRACETREE
121 build-depends: tracetree ^>=0.1
123 Test-Suite unit-tests
124 default-language: Haskell2010
125 ghc-options: -rtsopts -threaded
127 type: exitcode-stdio-1.0
128 main-is: UnitTests.hs
129 hs-source-dirs: tests
131 UnitTests.Distribution.Solver.Modular.MessageUtils
134 , base >= 4.10 && <4.20
137 , cabal-install-solver
138 , tasty >= 1.2.3 && <1.6
140 , tasty-hunit >= 0.10