ANN: stack-2.3.1

Skip to first unread message

Emanuel Borsboom

Apr 29, 2020, 3:02:27 PM4/29/20
to haskell-cafe, haskell-stack, “”

See for installation and upgrade instructions.

Release notes:

  • We have reduced the number of platforms that we support with binary releases.
    The reason behind this is that we've been slowed down in our release process
    until now with issues trying to build binaries for less common platforms. In
    order to make sure we can address issues more quickly (like supporting new
    GHC versions), we're limiting support from the Stack team to:

    • Linux 64-bit (static)
    • macOS
    • Windows 64-bit

    If others want to provide additional binaries, we will definitely be happy
    for the support. But since our CI system is currently able to produce these
    three bindists only, that's what we will be providing with the next release.

  • Since we no longer have dynamically linked Linux binaries, we are removing
    removing the -static suffix from the static Linux binaries. If you have
    scripts to download the latest stable Linux binary, update them to use
    linux-x86_64 instead of linux-x86_64-static (if you are already using the
    former, nothing needs to change). For this release, both are supported, but
    the next release will no longer have the -static variant.

  • We are also deprecating the download links at
    See this page for the current installation instructions:

  • These are the canonical locations to download the latest stable binaries
    from, and will continue to be supported going forward:

    As always, binaries for specific versions are available from the Github

Changes since v2.1.3.1

Major changes:

  • setup-info-locations yaml configuration now allows overwriting the default locations of stack-setup-2.yaml.

  • The setup-info configuration key now allows overwriting parts of the default setup-info

  • The --setup-info-yaml command line flag now may be used in all stack commands such as stack build, and not only in stack setup

  • The --setup-info-yaml may specify multiple locations for stack-setup.yaml files.

  • The stack upload can read first reads environment Variable $HACKAGE_USERNAME and $HACKAGE_PASSWORD if they are missing only then asks for username or password

  • Fully remove GHCJS support.

  • Remove the freeze command. It has been replaced by lock files.

Behavior changes:

  • Remove the deprecated --stack-setup-yaml command line argument in favor of --setup-info-yaml

  • We now recommend checking in generated cabal files for repos. When generating lock files for
    extra-deps that only include package.yaml files, a deprecation warning will be generated.
    Also, those packages will no longer be included in the generated lock files.
    See #5210.

Other enhancements:

  • Add build-output-timestamps flag in yaml. Setting it to true
    prefixes each build log output line with a timestamp.

  • Show warning about local-programs-path with spaces on windows
    when running scripts. See

  • Add ls dependencies json which will print dependencies as JSON.
    ls dependencies --tree is now ls dependencies tree. See

  • Remove warning for using Stack with GHC 8.8-8.10, and Cabal 3.0-3.2.

  • Allow relative paths in --setup-info-yaml and tool paths

  • Added the --only-locals flag. See

Bug fixes:

  • Upgrade pantry: module mapping insertions into the database are now atomic.
    Previously, if you SIGTERMed at the wrong time while running a script, you
    could end up with an inconsistent database state.

  • --resolver global doesn't retrieve snapshots list from the internet
    beause doesn't need it. See #5103

  • Fix using relative links in haddocks output. See

  • Do not include generated cabal file information in lock files. See

  • Use proper Hoogle executable path when installed automatically. See

  • Fix GHC version for batched package unregistration. See

  • Use Hoogle from the snapshot used and not the latest version. See

  • Resolve "'stty' is not recognized". See

  • Fix missing reconfigure check causing errors when a package gets
    used in multiple projects. See

Thanks to all our contributors for this release:

  • Adam McCullough
  • Akshay Mankar
  • Brian Wignall
  • Cheah Jer Fei
  • Chris Done
  • David Baynard
  • davit nalchevanidze
  • Dino Morelli
  • Emanuel Borsboom
  • Felix Yan
  • flip111
  • Flowers Safety
  • Fred Miller
  • Fyrbll
  • gdziadkiewicz
  • Good boy
  • Hypnoes.Liu
  • Iisus
  • Iustin Pop
  • ivanbakel
  • Javier Neira
  • Jeff Happily
  • jeffhappily
  • jneira
  • Justin Le
  • Kirill Zaborsky
  • Leif Metcalf
  • Leonhard Markert
  • Lokesh Mohanty
  • Matt Audesse
  • Michael Snoyman
  • Mihai Maruseac
  • NightRa
  • Phil Ruffwind
  • qinzhenlong
  • Robert Hensing
  • Sasha Bogicevic
  • Sibi
  • Sibi Prabakaran
  • Simon Michael
  • Steve Mao
  • Vlad Ki
  • Xia Li-yao

Emanuel Borsboom

Apr 30, 2020, 1:14:31 PM4/30/20
to Simon Jakobi, haskell-cafe, haskell-stack, “”
Yes, sorry about that.  It's fixed now and `stack upgrade` once again works on Linux x86_64.

On Wed, Apr 29, 2020 at 12:33 PM Simon Jakobi <> wrote:
Hi Manny,

I just gave "stack upgrade" a try:

$ stack upgrade
Current Stack version: 2.1.3, available download version: 2.3.1
Newer version detected, downloading
Querying for archive location for platform: linux-x86_64-static
Downloading from:
Warning: Exception occured when trying to perform binary upgrade:
         Stack executable "stack-2.3.1-linux-x86_64-static/stack" not found in archive from
CallStack (from HasCallStack):
  error, called at src/Stack/Setup.hs:2012:33 in stack-2.1.3-HEoMsL9gvgt2vNexTWWwGx:Stack.Setup
         Falling back to source upgrade

I'd rather not recompile stack myself. Is the problem with the archive something that could be fixed?


Haskell-Cafe mailing list
To (un)subscribe, modify options or view archives go to:
Only members subscribed via the mailman list are allowed to post.
Reply all
Reply to author
0 new messages