4 copyright: 2003-2024, Cabal Development Team (see AUTHORS file)
7 author: Cabal Development Team <cabal-devel@haskell.org>
8 maintainer: cabal-devel@haskell.org
9 homepage: http://www.haskell.org/cabal/
10 bug-reports: https://github.com/haskell/cabal/issues
11 synopsis: A framework for packaging Haskell software
13 The Haskell Common Architecture for Building Applications and
14 Libraries: a framework defining a common interface for authors to more
15 easily build their Haskell applications in a portable way.
17 The Haskell Cabal is part of a larger infrastructure for distributing,
18 organizing, and cataloging Haskell libraries and tools.
19 category: Distribution
21 -- If we use a new Cabal feature, this needs to be changed to Custom so
25 README.md ChangeLog.md
27 source-repository head
29 location: https://github.com/haskell/cabal/
33 default-language: Haskell2010
37 Cabal-syntax ^>= 3.15,
38 array >= 0.4.0.1 && < 0.6,
40 bytestring >= 0.10.0.0 && < 0.13,
41 containers >= 0.5.0.0 && < 0.8,
42 deepseq >= 1.3.0.1 && < 1.7,
43 directory >= 1.2 && < 1.4,
44 filepath >= 1.3.0.1 && < 1.6,
45 pretty >= 1.1.1 && < 1.2,
46 process >= 1.2.1.0 && < 1.7,
47 time >= 1.4.0.1 && < 1.15
50 build-depends: Win32 >= 2.3.0.0 && < 2.15
52 build-depends: unix >= 2.6.0.0 && < 2.9
58 -fwarn-incomplete-uni-patterns
59 -fwarn-incomplete-record-updates
60 -fno-warn-unticked-promoted-constructors
63 ghc-options: -Wcompat -Wnoncanonical-monad-instances
65 if impl(ghc >= 8.0) && impl(ghc < 8.8)
66 ghc-options: -Wnoncanonical-monadfail-instances
69 Distribution.Backpack.Configure
70 Distribution.Backpack.ComponentsGraph
71 Distribution.Backpack.ConfiguredComponent
72 Distribution.Backpack.DescribeUnitId
73 Distribution.Backpack.FullUnitId
74 Distribution.Backpack.LinkedComponent
75 Distribution.Backpack.ModSubst
76 Distribution.Backpack.ModuleShape
77 Distribution.Backpack.PreModuleShape
78 Distribution.Utils.IOData
79 Distribution.Utils.LogProgress
80 Distribution.Utils.MapAccum
81 Distribution.Compat.CreatePipe
82 Distribution.Compat.Directory
83 Distribution.Compat.Environment
84 Distribution.Compat.FilePath
85 Distribution.Compat.Internal.TempFile
86 Distribution.Compat.ResponseFile
87 Distribution.Compat.Prelude.Internal
88 Distribution.Compat.Process
89 Distribution.Compat.Stack
90 Distribution.Compat.Time
92 Distribution.PackageDescription.Check
95 Distribution.Simple.Bench
96 Distribution.Simple.Build
97 Distribution.Simple.Build.Inputs
98 Distribution.Simple.Build.Macros
99 Distribution.Simple.Build.PackageInfoModule
100 Distribution.Simple.Build.PathsModule
101 Distribution.Simple.BuildPaths
102 Distribution.Simple.BuildTarget
103 Distribution.Simple.BuildToolDepends
104 Distribution.Simple.BuildWay
105 Distribution.Simple.CCompiler
106 Distribution.Simple.Command
107 Distribution.Simple.Compiler
108 Distribution.Simple.Configure
109 Distribution.Simple.Errors
110 Distribution.Simple.FileMonitor.Types
111 Distribution.Simple.Flag
112 Distribution.Simple.GHC
113 Distribution.Simple.GHCJS
114 Distribution.Simple.Haddock
115 Distribution.Simple.Glob
116 Distribution.Simple.Glob.Internal
117 Distribution.Simple.HaskellSuite
118 Distribution.Simple.Hpc
119 Distribution.Simple.Install
120 Distribution.Simple.InstallDirs
121 Distribution.Simple.InstallDirs.Internal
122 Distribution.Simple.LocalBuildInfo
123 Distribution.Simple.PackageDescription
124 Distribution.Simple.PackageIndex
125 Distribution.Simple.PreProcess
126 Distribution.Simple.PreProcess.Types
127 Distribution.Simple.PreProcess.Unlit
128 Distribution.Simple.Program
129 Distribution.Simple.Program.Ar
130 Distribution.Simple.Program.Builtin
131 Distribution.Simple.Program.Db
132 Distribution.Simple.Program.Find
133 Distribution.Simple.Program.GHC
134 Distribution.Simple.Program.HcPkg
135 Distribution.Simple.Program.Hpc
136 Distribution.Simple.Program.Internal
137 Distribution.Simple.Program.Ld
138 Distribution.Simple.Program.ResponseFile
139 Distribution.Simple.Program.Run
140 Distribution.Simple.Program.Script
141 Distribution.Simple.Program.Strip
142 Distribution.Simple.Program.Types
143 Distribution.Simple.Register
144 Distribution.Simple.Setup
145 Distribution.Simple.ShowBuildInfo
146 Distribution.Simple.SrcDist
147 Distribution.Simple.Test
148 Distribution.Simple.Test.ExeV10
149 Distribution.Simple.Test.LibV09
150 Distribution.Simple.Test.Log
151 Distribution.Simple.UHC
152 Distribution.Simple.UserHooks
153 Distribution.Simple.SetupHooks.Errors
154 Distribution.Simple.SetupHooks.Internal
155 Distribution.Simple.SetupHooks.Rule
156 Distribution.Simple.Utils
157 Distribution.TestSuite
158 Distribution.Types.AnnotatedId
159 Distribution.Types.ComponentInclude
160 Distribution.Types.DumpBuildInfo
161 Distribution.Types.PackageName.Magic
162 Distribution.Types.ComponentLocalBuildInfo
163 Distribution.Types.LocalBuildConfig
164 Distribution.Types.LocalBuildInfo
165 Distribution.Types.TargetInfo
166 Distribution.Types.GivenComponent
167 Distribution.Types.ParStrat
168 Distribution.Utils.Json
169 Distribution.Utils.NubList
170 Distribution.Utils.Progress
171 Distribution.Verbosity
172 Distribution.Verbosity.Internal
174 -- We reexport all of Cabal-syntax to aid in compatibility for downstream
175 -- users. In the future we may opt to deprecate some or all of these exports.
176 -- See haskell/Cabal#7974.
178 Distribution.Backpack,
179 Distribution.CabalSpecVersion,
180 Distribution.Compat.Binary,
181 Distribution.Compat.CharParsing,
182 Distribution.Compat.DList,
183 Distribution.Compat.Exception,
184 Distribution.Compat.Graph,
185 Distribution.Compat.Lens,
186 Distribution.Compat.MonadFail,
187 Distribution.Compat.Newtype,
188 Distribution.Compat.NonEmptySet,
189 Distribution.Compat.Parsing,
190 Distribution.Compat.Prelude,
191 Distribution.Compat.Semigroup,
192 Distribution.Compiler,
193 Distribution.FieldGrammar,
194 Distribution.FieldGrammar.Class,
195 Distribution.FieldGrammar.FieldDescrs,
196 Distribution.FieldGrammar.Newtypes,
197 Distribution.FieldGrammar.Parsec,
198 Distribution.FieldGrammar.Pretty,
200 Distribution.Fields.ConfVar,
201 Distribution.Fields.Field,
202 Distribution.Fields.Lexer,
203 Distribution.Fields.LexerMonad,
204 Distribution.Fields.ParseResult,
205 Distribution.Fields.Parser,
206 Distribution.Fields.Pretty,
207 Distribution.InstalledPackageInfo,
208 Distribution.License,
209 Distribution.ModuleName,
210 Distribution.Package,
211 Distribution.PackageDescription,
212 Distribution.PackageDescription.Configuration,
213 Distribution.PackageDescription.FieldGrammar,
214 Distribution.PackageDescription.Parsec,
215 Distribution.PackageDescription.PrettyPrint,
216 Distribution.PackageDescription.Quirks,
217 Distribution.PackageDescription.Utils,
219 Distribution.Parsec.Error,
220 Distribution.Parsec.FieldLineStream,
221 Distribution.Parsec.Position,
222 Distribution.Parsec.Warning,
225 Distribution.SPDX.License,
226 Distribution.SPDX.LicenseExceptionId,
227 Distribution.SPDX.LicenseExpression,
228 Distribution.SPDX.LicenseId,
229 Distribution.SPDX.LicenseListVersion,
230 Distribution.SPDX.LicenseReference,
233 Distribution.Types.AbiDependency,
234 Distribution.Types.AbiHash,
235 Distribution.Types.Benchmark,
236 Distribution.Types.Benchmark.Lens,
237 Distribution.Types.BenchmarkInterface,
238 Distribution.Types.BenchmarkType,
239 Distribution.Types.BuildInfo,
240 Distribution.Types.BuildInfo.Lens,
241 Distribution.Types.BuildType,
242 Distribution.Types.Component,
243 Distribution.Types.ComponentId,
244 Distribution.Types.ComponentName,
245 Distribution.Types.ComponentRequestedSpec,
246 Distribution.Types.CondTree,
247 Distribution.Types.Condition,
248 Distribution.Types.ConfVar,
249 Distribution.Types.Dependency,
250 Distribution.Types.DependencyMap,
251 Distribution.Types.DependencySatisfaction,
252 Distribution.Types.ExeDependency,
253 Distribution.Types.Executable,
254 Distribution.Types.Executable.Lens,
255 Distribution.Types.ExecutableScope,
256 Distribution.Types.ExposedModule,
257 Distribution.Types.Flag,
258 Distribution.Types.ForeignLib,
259 Distribution.Types.ForeignLib.Lens,
260 Distribution.Types.ForeignLibOption,
261 Distribution.Types.ForeignLibType,
262 Distribution.Types.GenericPackageDescription,
263 Distribution.Types.GenericPackageDescription.Lens,
264 Distribution.Types.HookedBuildInfo,
265 Distribution.Types.IncludeRenaming,
266 Distribution.Types.InstalledPackageInfo,
267 Distribution.Types.InstalledPackageInfo.Lens,
268 Distribution.Types.InstalledPackageInfo.FieldGrammar,
269 Distribution.Types.LegacyExeDependency,
270 Distribution.Types.Lens,
271 Distribution.Types.Library,
272 Distribution.Types.Library.Lens,
273 Distribution.Types.LibraryName,
274 Distribution.Types.LibraryVisibility,
275 Distribution.Types.MissingDependency,
276 Distribution.Types.MissingDependencyReason,
277 Distribution.Types.Mixin,
278 Distribution.Types.Module,
279 Distribution.Types.ModuleReexport,
280 Distribution.Types.ModuleRenaming,
281 Distribution.Types.MungedPackageId,
282 Distribution.Types.MungedPackageName,
283 Distribution.Types.PackageDescription,
284 Distribution.Types.PackageDescription.Lens,
285 Distribution.Types.PackageId,
286 Distribution.Types.PackageId.Lens,
287 Distribution.Types.PackageName,
288 Distribution.Types.PackageVersionConstraint,
289 Distribution.Types.PkgconfigDependency,
290 Distribution.Types.PkgconfigName,
291 Distribution.Types.PkgconfigVersion,
292 Distribution.Types.PkgconfigVersionRange,
293 Distribution.Types.SetupBuildInfo,
294 Distribution.Types.SetupBuildInfo.Lens,
295 Distribution.Types.SourceRepo,
296 Distribution.Types.SourceRepo.Lens,
297 Distribution.Types.TestSuite,
298 Distribution.Types.TestSuite.Lens,
299 Distribution.Types.TestSuiteInterface,
300 Distribution.Types.TestType,
301 Distribution.Types.UnitId,
302 Distribution.Types.UnqualComponentName,
303 Distribution.Types.Version,
304 Distribution.Types.VersionInterval,
305 Distribution.Types.VersionInterval.Legacy,
306 Distribution.Types.VersionRange,
307 Distribution.Types.VersionRange.Internal,
308 Distribution.Utils.Base62,
309 Distribution.Utils.Generic,
310 Distribution.Utils.MD5,
311 Distribution.Utils.Path,
312 Distribution.Utils.ShortText,
313 Distribution.Utils.String,
314 Distribution.Utils.Structured,
315 Distribution.Version,
316 Language.Haskell.Extension
318 -- Parsec parser-related modules
320 -- transformers-0.4.0.0 doesn't have record syntax e.g. for Identity
321 -- See also https://github.com/ekmett/transformers-compat/issues/35
322 transformers (>= 0.3 && < 0.4) || (>=0.4.1.0 && <0.7),
324 parsec >= 3.1.13.0 && < 3.2
327 Distribution.Backpack.PreExistingComponent
328 Distribution.Backpack.ReadyComponent
329 Distribution.Backpack.MixLink
330 Distribution.Backpack.ModuleScope
331 Distribution.Backpack.UnifyM
332 Distribution.Backpack.Id
333 Distribution.Utils.UnionFind
334 Distribution.Compat.Async
335 Distribution.Compat.CopyFile
336 Distribution.Compat.GetShortPathName
337 Distribution.Compat.SnocList
340 Distribution.PackageDescription.Check.Common
341 Distribution.PackageDescription.Check.Conditional
342 Distribution.PackageDescription.Check.Monad
343 Distribution.PackageDescription.Check.Paths
344 Distribution.PackageDescription.Check.Target
345 Distribution.PackageDescription.Check.Warning
346 Distribution.Simple.Build.Macros.Z
347 Distribution.Simple.Build.PackageInfoModule.Z
348 Distribution.Simple.Build.PathsModule.Z
349 Distribution.Simple.GHC.Build
350 Distribution.Simple.GHC.Build.ExtraSources
351 Distribution.Simple.GHC.Build.Link
352 Distribution.Simple.GHC.Build.Modules
353 Distribution.Simple.GHC.Build.Utils
354 Distribution.Simple.GHC.EnvironmentParser
355 Distribution.Simple.GHC.Internal
356 Distribution.Simple.GHC.ImplInfo
357 Distribution.Simple.ConfigureScript
358 Distribution.Simple.Setup.Benchmark
359 Distribution.Simple.Setup.Build
360 Distribution.Simple.Setup.Clean
361 Distribution.Simple.Setup.Common
362 Distribution.Simple.Setup.Config
363 Distribution.Simple.Setup.Copy
364 Distribution.Simple.Setup.Global
365 Distribution.Simple.Setup.Haddock
366 Distribution.Simple.Setup.Hscolour
367 Distribution.Simple.Setup.Install
368 Distribution.Simple.Setup.Register
369 Distribution.Simple.Setup.Repl
370 Distribution.Simple.Setup.SDist
371 Distribution.Simple.Setup.Test
372 Distribution.ZinzaPrelude
387 ExistentialQuantification
390 GeneralizedNewtypeDeriving
394 NondecreasingIndentation