-
Notifications
You must be signed in to change notification settings - Fork 696
2.2 migration guide
Mikhail Glushenkov edited this page Feb 20, 2018
·
4 revisions
This page documents the backwards-incompatible changes in Cabal 2.2 affecting the authors of packages that use custom Setup scripts and other Cabal API consumers. See also the Cabal 2.0 migration guide page.
-
Distribution.Types.PackageDescription.allBuildInfo
now returns all build infos, not only the ones for buildable components (#5087). -
PackageDescription
'sbuildType
field was renamed tobuildTypeRaw
. ThebuildType
function now returns just aBuildType
instead ofMaybe BuildType
(#4958). - The
UnknownBuildType
constructor ofBuildType
was removed (#5003). - The
license
field ofPackageDescription
now has typeEither SPDX.License License
(#5050). -
FlagAssignment
is now an opaquenewtype
(#4849). - The
rawSystemStdInOut
function now uses a proper type to represent binary and textual data (#4666). - The obsolete 'startsWithBOM', 'fileHasBOM', 'fromUTF8', and 'toUTF8' functions were removed (#4666).
-
compilerExtensions
andghcOptExtensionMap
were changed to containMaybe Flag
s, since a supported extention can lack a flag (#4443). -
Distribution.Simple.defaultHookedPackageDesc
has been deprecated in favour ofDistribution.Simple.findHookedPackageDesc
(#4874). -
Distribution.Simple.getHookedBuildInfo
now takes an additional parameter specifying the build directory path (#4874).
The following change is not backwards-incompatible, but worth knowing about:
- Added '.Lens' modules, with optics for package description data types (#4701).