Skip to content

v1.7.1

Compare
Choose a tag to compare
@borsboom borsboom released this 27 Apr 21:56
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. Use stack ls snapshots --help to get more details about it.
  • list-dependencies has been deprecated. The functionality has
    to accessed through the new ls 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 into
  • stack 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 on base. It is
    now only added when there are no local targets. This allows it to
    be to load code that uses replacements for base. See
    #3589
  • stack 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