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-2023, 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
46 ghc-options: -Wunused-packages
49 Distribution.Client.Utils.Assertion
51 Distribution.Solver.Compat.Prelude
52 Distribution.Solver.Modular
53 Distribution.Solver.Modular.Assignment
54 Distribution.Solver.Modular.Builder
55 Distribution.Solver.Modular.Configured
56 Distribution.Solver.Modular.ConfiguredConversion
57 Distribution.Solver.Modular.ConflictSet
58 Distribution.Solver.Modular.Cycles
59 Distribution.Solver.Modular.Dependency
60 Distribution.Solver.Modular.Explore
61 Distribution.Solver.Modular.Flag
62 Distribution.Solver.Modular.Index
63 Distribution.Solver.Modular.IndexConversion
64 Distribution.Solver.Modular.LabeledGraph
65 Distribution.Solver.Modular.Linking
66 Distribution.Solver.Modular.Log
67 Distribution.Solver.Modular.Message
68 Distribution.Solver.Modular.MessageUtils
69 Distribution.Solver.Modular.Package
70 Distribution.Solver.Modular.Preference
71 Distribution.Solver.Modular.PSQ
72 Distribution.Solver.Modular.RetryLog
73 Distribution.Solver.Modular.Solver
74 Distribution.Solver.Modular.Tree
75 Distribution.Solver.Modular.Validate
76 Distribution.Solver.Modular.Var
77 Distribution.Solver.Modular.Version
78 Distribution.Solver.Modular.WeightedPSQ
79 Distribution.Solver.Types.ComponentDeps
80 Distribution.Solver.Types.ConstraintSource
81 Distribution.Solver.Types.DependencyResolver
82 Distribution.Solver.Types.Flag
83 Distribution.Solver.Types.InstalledPreference
84 Distribution.Solver.Types.InstSolverPackage
85 Distribution.Solver.Types.LabeledPackageConstraint
86 Distribution.Solver.Types.OptionalStanza
87 Distribution.Solver.Types.PackageConstraint
88 Distribution.Solver.Types.PackageFixedDeps
89 Distribution.Solver.Types.PackageIndex
90 Distribution.Solver.Types.PackagePath
91 Distribution.Solver.Types.PackagePreferences
92 Distribution.Solver.Types.PkgConfigDb
93 Distribution.Solver.Types.Progress
94 Distribution.Solver.Types.ResolverPackage
95 Distribution.Solver.Types.Settings
96 Distribution.Solver.Types.SolverId
97 Distribution.Solver.Types.SolverPackage
98 Distribution.Solver.Types.SourcePackage
99 Distribution.Solver.Types.Variable
102 , array >=0.4 && <0.6
103 , base >=4.10 && <4.20
104 , bytestring >=0.10.6.0 && <0.13
106 , Cabal-syntax ^>=3.11
107 , containers >=0.5.6.2 && <0.8
108 , edit-distance ^>= 0.2.2
109 , filepath ^>=1.4.0.0 || ^>=1.5.0.0
112 , transformers >=0.4.2.0 && <0.7
114 if flag(debug-expensive-assertions)
115 cpp-options: -DDEBUG_EXPENSIVE_ASSERTIONS
117 if flag(debug-tracetree)
118 cpp-options: -DDEBUG_TRACETREE
119 build-depends: tracetree ^>=0.1
121 Test-Suite unit-tests
122 default-language: Haskell2010
123 ghc-options: -rtsopts -threaded
125 type: exitcode-stdio-1.0
126 main-is: UnitTests.hs
127 hs-source-dirs: tests
129 UnitTests.Distribution.Solver.Modular.MessageUtils
132 , base >= 4.10 && <4.20
135 , cabal-install-solver
136 , tasty >= 1.2.3 && <1.6
138 , tasty-hunit >= 0.10