Releases: haskell/cabal
cabal-head
Cabal v3.12.1.0
Release Announcement includes release notes, links to binary artifacts, GHCup commands, etc.
Cabal v3.10.3.0
The machine never stops.
You can view the changes at:
- https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.3.0.md
- https://github.com/haskell/cabal/blob/master/release-notes/cabal-install-3.10.3.0.md
cabal-install-3.10.3.0 is available on ghcup, please install it with ghcup install cabal 3.10.3.0 && ghcup set cabal 3.10.3.0
Our deepest thanks to our contributors:
Andrea Bedini
Andreas Abel
Ben Gamari
brandon s allbery kf8nh
Francesco Ariis
Hécate Moonlight
Javier Sagredo
Jens Petersen
Julian Ospald
Mikolaj Konarski
Ondřej Šebek
Rodrigo Mesquita
Tom Smeding
as well as the QA team, and reviewers, without whom this could not have been possible.
cabal v3.10.2.1
The machine never stops.
This is strictly a bug-fix release. You can view the changes at:
- https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.2.0.md
- https://github.com/haskell/cabal/blob/master/release-notes/Cabal-3.10.2.1.md
- https://github.com/haskell/cabal/blob/master/release-notes/cabal-install-3.10.2.0.md
See the release announcement here: https://discourse.haskell.org/t/cabal-install-3-10-2-0-released/8009
cabal-install-3.10.2.0 is available on ghcup, and is built with lib:Cabal-3.10.2.1.
cabal-install-3.10.2.1 is meant for source compilations and does not affect end-users.
See you next time.
cabal v3.10.1.0
For documentation please see
https://cabal.readthedocs.io/en/3.10
for API documentation and changelogs please see
https://hackage.haskell.org/package/Cabal-3.10.1.0
https://hackage.haskell.org/package/Cabal-syntax-3.10.1.0
https://hackage.haskell.org/package/cabal-install-3.10.1.0
https://hackage.haskell.org/package/cabal-install-solver-3.10.1.0
In particular, release notes for the cabal
tool are at
To obtain binaries, please use ghcup
or download from
https://downloads.haskell.org/~cabal/cabal-install-3.10.1.0/
The release announcement is at
https://discourse.haskell.org/t/just-released-cabal-3-10-1-0/5978
cabal v3.8.1.0
For documentation please see
https://cabal.readthedocs.io/en/3.8
for API documentation and changelogs please see
https://hackage.haskell.org/package/Cabal-3.8.1.0
https://hackage.haskell.org/package/Cabal-syntax-3.8.1.0
https://hackage.haskell.org/package/cabal-install-3.8.1.0
https://hackage.haskell.org/package/cabal-install-solver-3.8.1.0
and for binaries, please use ghcup
or download from
https://downloads.haskell.org/~cabal/cabal-install-3.8.1.0/
Some release highlights are on these threads:
https://twitter.com/jneira/status/1557477176102031360
https://discourse.haskell.org/t/just-released-cabal-3-8-1-0/4920
https://www.reddit.com/r/haskell/comments/wm656h/just_released_cabal_3810/
The currently known and not yet fixed regressions on 3.8 branch compared to cabal 3.6 are listed at
https://github.com/haskell/cabal/labels/regression%20in%203.8
and the fixed regressions (but you need a newer version, once it's released, to benefit from the fixes) are at
Cabal-3.6.2.0
Significant changes
-
Make Paths_ modules work with non-standard preludes again #5962
- Generate Paths_ module with qualified Data.List.last import so that compatibility with non-standard preludes is not regressed compared to cabal 3.4.
-
Windows: redo the fix to breakage caused by new autoconf; the wrong fix made cabal sometimes fail with old autoconf #7494 #7649
- Reverts #7510 that failed on Windows when used with pre-generated scripts included in packages such as network, time, process.
- Adds a subtler fix/workaround for the deficiencies of new autoconf versions on Windows.
Other changes
-
Regenerate bootstrap/ with GHC updated from 8.10.4 to 8.10.7
- This regenerates bootstrap plans using new package versions and also updating GHC from 8.10.4 to 8.10.7, as requested by GHC HQ.
Cabal-3.6.1.0
Significant Changes
-
Include cmm-sources when linking shared objects #7182 #7252
- Previously
cmm-sources
were not included in the final link when building a library as a shared object. Fix this.
- Previously
-
Prefer canonicalized path when guessing tools from GHC path #7390 #7392
Motivation
Often times, the user facing
ghc
binary is
symlinked by other forces, such as the package manager,
tooling like ghcup etc. As such, the naming convention
(version suffix in particular) may not align with the
assumptions made in Cabal and it may find an incorrect ghc-pkg.See:
- #7390
- https://gitlab.haskell.org/ghc/ghc/-/issues/18807
- https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/73
Solution
Guessing the ghc-pkg path is already a hack and will be solved
more appropriately in the future, see- https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4214
- https://gitlab.haskell.org/ghc/ghc/-/snippets/2710
These patches will solve the issue for future GHC versions.
As such, this patch provides a workaround for
older, already existing GHC versions by first always
following the symbolic link of the ghc binary (if it is one)
and prefering its target directory as the guess lookup
location.Rationale
The canonicalized path of the ghc binary usually points to the
bin/ directory unpacked from a bindist, which is less likely to be
tampered with by distributions and tools. As such, prefering the
canoncialized path should get us more robust results. -
Fix
cabal test --enable-library-coverage
for other-modules #5213 #7493 -
Set PATH_SEPARATOR=";" when calling ./configure on Windows; this fix is necessary for autoconf >= 2.70 #7494 #7510
-
lazily decode cache files for checking invalidation #7516 #7466
- This yields a significant 15% speedup on rebuilding build plans for projects with lots of individual cabal packages.
-
defer build-tools-depends choices as well as setup choices #7561 #7472
- extends the existing solver pass that defers solving setup depends until top-level goals are solved to also defer build-tool-depends goals until top level goals are solved.
- constraints at the top level (on versions, flags, stanzas, etc) are applied first and only then are attempts made to build the less-constrained qualified goals, significantly streamlining the production of valid build plans.
-
Set -Wno-prepositive-qualified-module in Paths_*.hs #7352
Cabal-3.6.0.0
This release marks the first release candidate for the 3.6.x Cabal series. Thanks to everyone who contributed!
Cabal 3.6.0.0 Changelog
-
CI setup #6959
- Remove travis scripts
-
Code organization #6960 #6963 #6970 #6974 #6975
- Move Cabal sources into Cabal/src
- Move cabal-install sources to cabal-install/src/
- Move doc/ to the top-level of the repository
- Add stylish-haskell config.
-
Documentation improvements #6813 #6971 #7047
Write highlights
-
Add post-checkout-command to source-package-repository #6664 #7047
-
Add
hsc2hs-options
, for specifying additional options to pass tohsc2hs
#6295 -
Include cmm-sources when linking shared objects #7182 #7252
- Previously
cmm-sources
were not included in the final link when building a library as a shared object. Fix this.
- Previously
-
Add language extensions for GHC 9.2 #7312
-
--dry-run and --only-download effect v2-configure, v2-freeze, v2-run, and v2-exec #7379
-
Alert user and suggest command on spelling mistakes
cabal-install-v2.0.0.0
For release notes, see http://coldwa.st/e/blog/2017-09-09-Cabal-2-0.html:
This post serves as a formal release announcement and describes what’s new and improved in version 2.0.