[ANN] cabal-install-3.12.1.0 (and accompanying libraries) released

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 first cabal-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. https://hackage.haskell.org/package/cabal-install-3.12.1.0 - Cabal: A framework for packaging Haskell software https://hackage.haskell.org/package/Cabal-3.12.1.0 - Cabal-syntax: A library for working with .cabal files https://hackage.haskell.org/package/Cabal-syntax-3.12.1.0 - cabal-install-solver: The command-line interface for Cabal and Hackage. https://hackage.haskell.org/package/cabal-install-solver-3.12.1.0 The binaries for cabal-install are available on our website https://downloads.haskell.org/cabal/cabal-install-3.12.1.0/ 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.1...' 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.1...' 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.1...' 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. https://discourse.haskell.org/t/cabal-install-3-12-1-0-and-accompanying-libr...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 for build-tools-depends (executables from PATH don’t shadow executables from build-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, and TypeAbstractions *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 https://github.com/haskell/cabal/blob/master/release-notes/cabal-install-3.1... for more details and other changes. https://discourse.haskell.org/t/cabal-install-3-12-1-0-and-accompanying-libr... 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. https://discourse.haskell.org/t/cabal-install-3-12-1-0-and-accompanying-libr... 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)

Thanks Artem, and the cabal team!
It's not tagged on github: https://github.com/haskell/cabal/releases
Cheers,
Marcin
Sent with Proton Mail secure email.
On Friday, 28 June 2024 at 20:31, Artem Pelenitsyn
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 first `cabal-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.1...' 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.1...' 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.1...' 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` for `build-tools-depends` (executables from `PATH` don’t shadow executables from `build-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`, and `TypeAbstractions`
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)

On Fri, 28 Jun 2024, Artem Pelenitsyn wrote:
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 first cabal-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 last one sounds interesting, though the synopsis equals the one of cabal-install.

Hey Henning, cabal-install-solver was split out in 2021 and was first released with cabal-install 3.8, as you can see on its Hackage page [3]. The commit doing the split [1] and the corresponding PR don't have much discussion but the initial issue (2016!) has some [2]. I opened an issue to track the slip with the synopsis that you point out [4]. Contributions are welcome! Thanks for your interest in cabal, and thanks everybody for the warming words! Please, don't hesitate to submit issues on our GitHub if anything comes up. [1] https://github.com/haskell/cabal/commit/54696c14986d29aed03a101e5faabf1b7280... [2] https://github.com/haskell/cabal/issues/3781 [3] https://hackage.haskell.org/package/cabal-install-solver-3.12.1.0 [4] https://github.com/haskell/cabal/issues/10183 [5] https://github.com/haskell/cabal/pull/7358 On Sat, Jul 6, 2024 at 11:09 AM Henning Thielemann < lemming@henning-thielemann.de> wrote:
On Fri, 28 Jun 2024, Artem Pelenitsyn wrote:
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 first cabal-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 last one sounds interesting, though the synopsis equals the one of cabal-install.

Thanks to all contributors! I am enjoying the speedup :) Cheers, Vanessa McHale
On Jun 28, 2024, at 2:31 PM, Artem Pelenitsyn
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 first cabal-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. https://hackage.haskell.org/package/cabal-install-3.12.1.0 Cabal: A framework for packaging Haskell software https://hackage.haskell.org/package/Cabal-3.12.1.0 Cabal-syntax: A library for working with .cabal files https://hackage.haskell.org/package/Cabal-syntax-3.12.1.0 cabal-install-solver: The command-line interface for Cabal and Hackage. https://hackage.haskell.org/package/cabal-install-solver-3.12.1.0 The binaries for cabal-install are available on our website https://downloads.haskell.org/cabal/cabal-install-3.12.1.0/ 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.1...' 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.1...' 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.1...' 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.
https://discourse.haskell.org/t/cabal-install-3-12-1-0-and-accompanying-libr...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 for build-tools-depends (executables from PATH don’t shadow executables from build-tool-depends anymore) UX
Errors now have error codes, which will be documented on https://errors.haskell.org 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, and TypeAbstractions 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 https://github.com/haskell/cabal/blob/master/release-notes/cabal-install-3.1... for more details and other changes.
https://discourse.haskell.org/t/cabal-install-3-12-1-0-and-accompanying-libr...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.
https://discourse.haskell.org/t/cabal-install-3-12-1-0-and-accompanying-libr...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.
participants (4)
-
Artem Pelenitsyn
-
coot
-
Henning Thielemann
-
Vanessa McHale