v2.13.1
See https://haskellstack.org/ for installation and upgrade instructions.
Release notes:
- Further to the release notes for Stack 2.3.1, the
-staticsuffix has been removed from the statically linked Linux/x86_64 binaries. - The binaries for Linux/Aarch64 are now statically linked.
- Binaries are now provided for macOS/AArch64.
Changes since v2.11.1:
Behavior changes:
- Build artefacts are placed in
.stack-work/dist/<platform>/<GHC_version>(hashed to a shorter path on Windows), rather than
.stack-work/dist/<platform>/<Cabal_version>. This allows build artifacts to be distinguished by GHC version. - By default, the
stack buildprogress bar is capped to a length equal to the terminal width. - When building GHC from source, Stack no longer uses Hadrian's deprecated
--configure\-cflag and, instead, seeks to run GHC's Pythonbootand shconfigurescripts, and ensure that thehappyandalexexecutables are on the PATH. - When auto-detecting
--ghc-buildon Linux, themuslGHC build only is considered a possible GHC build iflibc.musl-x86_64.so.1is found in\libor\lib64. - No longer supports Cabal versions older than
1.24.0.0. This means projects using snapshots earlier thanlts-7.0ornightly-2016-05-26will no longer build. - When unregistering many packages in a single step, Stack can now do that efficiently. Stack no longer uses GHC-supplied
ghc-pkg unregister(which is, currently, slower). stack hpc report,stack list,stack templatesandstack uninstalloutput their information to the standard output stream rather than to the standard error stream. Logging is still to the standard error stream.stack upgradeno longer assumes that binary upgrade is not supported on a AArch64 machine architecture.
Other enhancements:
- Bump to Hpack 0.36.0.
- Depend on
pantry-0.9.2, for support for long filenames and directory names in archives created bygit archive. - Avoid the duplicate resolving of usage files when parsing
*.hifiles into a set of modules and a collection of resolved usage files. See #6123. - Add composable component type flags
--exes,--testsand--benchmarksto Stack'side targetscommand, to list only those components. stack --verboseexcludes lengthy information about build plan construction in the debug output by default. The newstack --[no-]plan-in-logflag enables or disables the inclusion of the information in the debug output.- In YAML configuration files, the
casakey is introduced, which takes precedence over the existingcasa-repo-prefixkey. The latter is deprecated. The new key also allows Stack's use of a Casa (content-addressable storage archive) server to be disabled and the maximum number of keys per request to be configured. The defaults are unchanged. - Add option
--progress-bar=<format>to Stack'sbuildcommand to configure the format of the progress bar, where<format>is one ofnone,count-only(only the package count),capped(capped to a length equal to the terminal width) andfull(the previous format).
Bug fixes:
- Restore
stack sdist --pvp-bounds lower(broken with Stack 2.9.1). - Restore building of Stack with Cabal flag
disable-git-info(broken with Stack 2.11.1). - With
stack hoogle, avoid the messageMinimum version is hoogle-5.0. Found acceptable hoogle-<x.y.z> in your index, requiring its installation.when ahoogleexecutable has already been found on thePATH. - Stack's sanity check on a selected GHC now passes GHC flag
-hide-all-packages, stopping GHC from looking for a package environment in default locations. - Restore Stack script files without extensions (broken with Stack 2.11.1).
- Restore message suffix
due to warningswithdump-logs: warning(broken with Stack 2.11.1). - On Windows, the
local-programs-pathdirectory can now be on a different drive to the system temporary directory and MSYS2 will still be installed.
Thanks to all our contributors for this release:
- Andrei Dziahel
- Charles Taylor
- David Hewson
- Jens Petersen
- Markus Schirp
- Mike Pilgrem
- Olivier Benz
- Phil de Joux
- Simon Hengel