Check with both pinned & latest hackage
[cabal.git] / cabal-install-solver / cabal-install-solver.cabal
blobe692c79ce88cd8981254b92fa8578717449b6227
1 cabal-version: 2.2
2 name:          cabal-install-solver
3 version:       3.11.0.0
4 synopsis:      The command-line interface for Cabal and Hackage.
5 description:
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
10 license:       BSD-3-Clause
11 license-file:  LICENSE
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
16 build-type:    Simple
17 extra-doc-files:
18   ChangeLog.md
20 source-repository head
21   type:     git
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
27   default:     False
28   manual:      True
30 flag debug-tracetree
31   description: Compile in support for tracetree (used to debug the solver)
32   default:     False
33   manual:      True
35 library
36   default-language: Haskell2010
37   hs-source-dirs:   src
38   hs-source-dirs:   src-assertion
39   ghc-options:
40     -Wall -Wcompat -Wnoncanonical-monad-instances
41     -fwarn-tabs -fwarn-incomplete-uni-patterns
43   if impl(ghc <8.8)
44     ghc-options: -Wnoncanonical-monadfail-instances
46   if impl(ghc >=8.10)
47     ghc-options: -Wunused-packages
49   exposed-modules:
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
102   build-depends:
103     , array         >=0.4      && <0.6
104     , base          >=4.10     && <4.20
105     , bytestring    >=0.10.6.0 && <0.13
106     , Cabal         ^>=3.11
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
111     , mtl           >=2.0      && <2.4
112     , pretty        ^>=1.1
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
130    other-modules:
131      UnitTests.Distribution.Solver.Modular.MessageUtils
133    build-depends:
134      , base        >= 4.10  && <4.20
135      , Cabal
136      , Cabal-syntax
137      , cabal-install-solver
138      , tasty       >= 1.2.3 && <1.6
139      , tasty-quickcheck
140      , tasty-hunit >= 0.10