On Jun 28, 2024, at 2:31 PM, Artem Pelenitsyn <a.pelenitsyn@gmail.com> wrote:_______________________________________________Dear all,
The cabal release team brings you the release of the
cabal-install
tool, version 3.12.1.0. This is the first release of the tool in the 3.12 series, and, hence, the firstcabal-install
supporting Cabal 3.12 packaged with GHC 9.10.1. We also update the three main libraries.
- cabal-install: The command-line interface for Cabal and Hackage.
- Cabal: A framework for packaging Haskell software
- Cabal-syntax: A library for working with .cabal files
- cabal-install-solver: The command-line interface for Cabal and Hackage.
The binaries for
cabal-install
are available on our website and can be installed via GHCup manually, e.g.:
- Linux x86_64 (static, alpine3_18):
ghcup --no-cache install cabal -u 'https://downloads.haskell.org/cabal/cabal-install-3.12.1.0/cabal-install-3.12.1.0-x86_64-linux-alpine3_18.tar.xz' 3.12.1.0
- MacOS AArch64:
ghcup --no-cache install cabal -u 'https://downloads.haskell.org/cabal/cabal-install-3.12.1.0/cabal-install-3.12.1.0-aarch64-darwin.tar.xz' 3.12.1.0
- Windows:
ghcup --no-cache install cabal -u 'https://downloads.haskell.org/cabal/cabal-install-3.12.1.0/cabal-install-3.12.1.0-x86_64-windows.zip' 3.12.1.0
- or a similar command for your platform using the binaries provided on the website
- as usual,
cabal update && cabal install cabal-install-3.12.1.0
is an option too.We expect the official GHCup channel to be updated with the 3.12.1.0 binaries soon.
What is new
Performance
- Significant speedups during cabal startup due to use of the latest
tar
Project Organization
- Support for asm, cmm, and js sources in executable components
- Support for per-component builds when coverage is enabled
- Haskell files in explicit source directories take precedence over autogenerated Haskell files
- Fix precedence for
PATH
forbuild-tools-depends
(executables fromPATH
don’t shadow executables frombuild-tool-depends
anymore)UX
- Errors now have error codes, which will be documented on https://errors.haskell.org
- A new subcommand,
cabal path
, which can be used to get information about the paths cabal will use within a project- Support for authentication tokens for uploading to Hackage
--(test-)show-details=direct
is now the default- Shorten solver rejection messages by removing repetition
- Show provenance of project constraints
Interaction with GHC
- Support for loading multiple components into one repl session
- Support for the
--semaphore
flag to enable interaction with GHC Job Server protocol- Support for
GHC2024
- Support for language extensions
ExtendedLiterals
¸ListTuplePuns
, andTypeAbstractions
Other Compilers
- Micro Haskell (MHS) has been added as a known compiler. We don’t have support for driving it yet, though.
See the release notes for more details and other changes.
Contributors
50^2, Adam Gundry, Andrea Bedini, Andreas Abel, Andreas Klebinger, Arjun Kathuria, Artem Pelenitsyn, BasLaa, Bas Laarakker, Ben Gamari, Bodigrim, Brandon Chinn, brandon s allbery kf8nh, Bryan Richter, Colton Clemmer, Csaba Hruska, cydparser, Daniel Trstenjak, David Binder, David Christiansen, Edwin Marshall, Elodie Lander, Erik de Castro Lopo, Felix Yan, fendor, Finley, Francesco Ariis, Francesco Gazzetta, Fraser Tweedale, Gershom Bazerman, Hamish Mackenzie, Hécate Moonlight, Ikko Eltociear Ashimine, Jana Chadt, Javier Sagredo, Jean-Paul Calderone, Jens Petersen, Jessica Hamilton, John Paul Adrian Glaubitz, Josh Meredith, Julia Longtin, Julian Ospald, Kazuki Okamoto, Kristen Kozak, Krzysztof Gogolewski, liamzee, Liisi Kerik, Lin Runze, Malte Neuss, malteneuss, Marcin Szamotulski, Matthew Pickering, Mel Zuser, Michael Peyton Jones, Mike Pilgrem, Mikolaj Konarski, mixphix, Oleg Grenrus, Ondřej Šebek, Patrick Augusto, Patrick Dougherty, Peter Becich, Phil de Joux, Pierre Le Marre, Rebecca Turner, Rodrigo Mesquita, Ryan Scott, Samuel Thibault, Sander, Sebastian Tee, Sergey Vinokurov, Shae Erisson, sheaf, Simon Hengel, Siyuan Chen, Sören Tempel, SuganyaAK, Suganya Raju, Sylvain Henry, Taylor Fausak, Teo Camarasu, Tom Ellis, tomjaguarpaw, Tommy Bidne, Tom Smeding, Torsten Schmits, Tristan Cacqueray, Troels Henriksen, Wismill, Yvan Sraka, Zoe Zuser
We thank all contributors as well as our reviewers, QA testers, devops, and others without whom this release wouldn’t be possible.
Feedback
Please, report any issues you notice with the 3.12.1.0 release on our GitHub: https://github.com/haskell/cabal
— cabal release team (Artem, Brandon, Francesco, Gershom, Hécate, Mikołaj)
Haskell-Cafe mailing list
To (un)subscribe, modify options or view archives go to:
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
Only members subscribed via the mailman list are allowed to post.