v1.7.1
See https://haskellstack.org for installation and upgrade instructions.
Changes since v1.6.5:
Release notes:
- aarch64 (64-bit ARM) bindists are now available for the first time.
- Statically linked Linux bindists are no longer available, due to difficulty with GHC 8.2.2 on Alpine Linux.
- 32-bit Linux GMP4 bindists for CentOS 6 are no longer available, since GHC 8.2.2 is no longer being built for that platform.
Major changes:
- Upgrade from Cabal 2.0 to Cabal 2.2
Behavior changes:
stack setup
no longer uses different GHC configure options on Linux
distributions that use GCC with PIE enabled by default. GHC detects
this itself since ghc-8.0.2, and Stack's attempted workaround for older
versions caused more problems than it solved.stack new
no longer initializes a project if the project template contains
a stack.yaml file.
Other enhancements:
- A new sub command
ls
has been introduced to stack to view
local and remote snapshots present in the system. Usestack ls snapshots --help
to get more details about it. list-dependencies
has been deprecated. The functionality has
to accessed through the newls dependencies
interface. See
#3669
for details.- Specify User-Agent HTTP request header on every HTTP request.
See #3628 for details. stack setup
looks for GHC bindists and installations by any OS key
that is compatible (rather than only checking a single one). This is
relevant on Linux where different distributions may have different
combinations of libtinfo 5/6, ncurses 5/6, and gmp 4/5, and will allow
simpifying the setup-info metadata YAML for future GHC releases.- The build progress bar reports names of packages currently building.
stack setup --verbose
causes verbose output of GHC configure process.
See #3716- Improve the error message when an
extra-dep
from a path or git reference can't be found
See #3808 - Nix integration is now disabled on windows even if explicitly enabled,
since it isn't supported. See
#3600 stack build
now supports a new flag--keep-tmp-files
to retain intermediate
files and directories for the purpose of debugging.
It is best used with ghc's equivalent flag,
i.e.stack build --keep-tmp-files --ghc-options=-keep-tmp-files
.
See #3857- Improved error messages for snapshot parse exceptions
stack unpack
now supports a--to /target/directory
option to
specify where to unpack the package intostack hoogle
now supports a new flag--server
that launches local
Hoogle server on port 8080. See
#2310
Bug fixes:
- The script interpreter's implicit file arguments are now passed before other
arguments. See #3658.
In particular, this makes it possible to pass-- +RTS ... -RTS
to specify
RTS arguments used when running the script. - Don't ignore the template
year
parameter in config files, and clarify the
surrounding documentation. See
#2275. - Benchmarks used to be run concurrently with other benchmarks
and build steps. This is non-ideal because CPU usage of other processes
may interfere with benchmarks. It also prevented benchmark output from
being displayed by default. This is now fixed. See
#3663. stack ghci
now allows loading multiple packages with the same
module name, as long as they have the same filepath. See
#3776.stack ghci
no longer always adds a dependency onbase
. It is
now only added when there are no local targets. This allows it to
be to load code that uses replacements forbase
. See
#3589stack ghci
now uses correct paths for autogen files with
#3791- When a package contained sublibraries, stack was always recompiling the
package. This has been fixed now, no recompilation is being done because of
sublibraries. See #3899. - The
get-stack.sh
install script now matches manual instructions
when it comes to Debian/Fedora/CentOS install dependencies. - Compile Cabal-simple with gmp when using Nix.
See #2944 stack ghci
now replaces the stack process with ghci. This improves
signal handling behavior. In particular, handling of Ctrl-C. To make
this possible, the generated files are now left behind after exit.
The paths are based on hashing file contents, and it's stored in the
system temporary directory, so this shouldn't result in too much
garbage. See
#3821.
Thanks to all our contributors for this release:
- Alexey Kuleshevich
- Andrei Dziahel
- Andrew Cowie
- Daniel Bergey
- David Baynard
- Domen Kožar
- Don Waldhalm
- Emanuel Borsboom
- Geoffrey Noel
- Ivan Kasatenko
- Jan von Loewenstein
- Joshua Simmons
- Kirill Elagin
- Krishnan Parthasarathi
- Luke Murphy
- Matt Spaulding
- Matthias Braun
- Maximilian Tagher
- Michael Sloan
- Michael Snoyman
- Mihai Maruseac
- Mike Pilgrem
- Mitchell Rosen
- Nicolas Mattia
- Niklas Hambüchen
- Oleg Grenrus
- Reuben D'Netto
- Robert J. Macomber
- Sibi Prabakaran
- silky
- Simon Hengel
- Tero Laxström
- tswelsh
- Yuji Yamamoto