v1.5.0
See https://haskellstack.org for installation and upgrade instructions.
Behavior changes:
stack profile
andstack trace
now add their extra RTS arguments for
benchmarks and tests to the beginning of the args, instead of the end.
See #2399- Support for Git-based indices has been removed.
Other enhancements:
stack setup
allow to control options passed to ghcjs-boot with
--ghcjs-boot-options
(one word at a time) and--[no-]ghcjs-boot-clean
stack setup
now accepts a--install-cabal VERSION
option which
will install a specific version of the Cabal library globally.- Updates to store-0.4.1, which has improved performance and better error
reporting for version tags. A side-effect of this is that all of
stack's binary caches will be invalidated. stack solver
will now warn about unexpected cabal-install versions.
See #3044- Upstream packages unpacked to a temp dir are now deleted as soon as
possible to avoid running out of space in/tmp
.
See #3018 - Add short synonyms for
test-arguments
andbenchmark-arguments
options. - Adds
STACK_WORK
environment variable, to specify work dir.
See #3063 - Can now use relative paths for
extra-include-dirs
andextra-lib-dirs
.
See #2830 - Improved bash completion for many options, including
--ghc-options
,
--flag
, targets, and project executables forexec
. --haddock-arguments
is actually used now whenhaddock
is invoked
during documentation generation.--[no-]haddock-hyperlink-source
flag added which allows toggling
of sources being included in Haddock output.
See #3099stack ghci
will now skip building all local targets, even if they have
downstream deps, as long as it's registered in the DB.- The pvp-bounds feature now supports adding
-revision
to the end of
each value, e.g.pvp-bounds: both-revision
. This means that, when
uploading to Hackage, Stack will first upload your tarball with an
unmodified.cabal
file, and then upload a cabal file revision with
the PVP bounds added. This can be useful—especially combined
with the
Stackage no-revisions feature—as
a method to ensure PVP compliance without having to proactively fix
bounds issues for Stackage maintenance. - Expose a
save-hackage-creds
configuration option - On GHC <= 7.8, filters out spurious linker warnings on windows
See #3127 - Better error messages when creating or building packages which alias
wired-in packages. See
#3172. - MinGW bin folder now is searched for dynamic libraries. See #3126
- When using Nix, nix-shell now depends always on git to prevent runtime errors
while fetching metadata - The
stack unpack
command now accepts a form where an explicit
Hackage revision hash is specified, e.g.stack unpack foo-1.2.3@gitsha1:deadbeef
. Note that this should be considered
experimental, Stack will likely move towards a different hash
format in the future. - Binary "stack upgrade" will now warn if the installed executable is not
on the PATH or shadowed by another entry. - Allow running tests on tarball created by sdist and upload
#717.
Bug fixes:
- Fixes case where
stack build --profile
might not cause executables /
tests / benchmarks to be rebuilt.
See #2984 stack ghci file.hs
now loads the file even if it isn't part of
your project.stack clean --full
now works when docker is enabled.
See #2010- Fixes an issue where cyclic deps can cause benchmarks or tests to be run
before they are built.
See #2153 - Fixes
stack build --file-watch
in cases where a directory is removed
See #1838 - Fixes
stack dot
andstack list-dependencies
to use info from the
package database for wired-in-packages (ghc, base, etc).
See #3084 - Fixes
stack --docker build
when user is part of libvirt/libvirtd
groups on Ubuntu Yakkety (16.10).
See #3092 - Switching a package between extra-dep and local package now forces
rebuild (previously it wouldn't if versions were the same).
See #2147 stack upload
no longer reveals your password when you type it on
MinTTY-based Windows shells, such as Cygwin and MSYS2.
See #3142stack script
's import parser will now properly parse files that
have Windows-style line endings (CRLF)
Thanks to all our contributors for this release:
- Aayush Kapoor
- Albert Netymk
- Alexey Kuleshevich
- Anders Kaseorg
- Arash Rouhani
- Bryan Richter
- Dawei LIU
- Dmitry Nikulin
- Domen Kožar
- Emanuel Borsboom
- Felix Yan
- Ivan Lazar Miljenovic
- James Hamilton
- Luke Murphy
- Marcin Tolysz
- Martin Kolinek
- Mateusz Kowalczyk
- Michael Sloan
- Michael Snoyman
- Niklas Hambüchen
- Noah Doersing
- Omari Norman
- Paolo G. Giarrusso
- Peter Stuart
- Ryan Scott
- Sergey Vinokurov
- Sibi Prabakaran
- Tej Chajed
- Tim Dysinger
- Tomáš Janoušek
- Vassil Keremidchiev