<div dir="ltr"><p>See <a href="https://haskellstack.org/" rel="nofollow" target="_blank">https://haskellstack.org/</a> for installation and upgrade instructions.</p>
<p>Release notes:</p>
<ul><li>
<p>We have reduced the number of platforms that we support with binary releases.<br>
The reason behind this is that we've been slowed down in our release process<br>
until now with issues trying to build binaries for less common platforms. In<br>
order to make sure we can address issues more quickly (like supporting new<br>
GHC versions), we're limiting support from the Stack team to:</p>
<ul><li>Linux 64-bit (static)</li><li>macOS</li><li>Windows 64-bit</li></ul>
<p>If others want to provide additional binaries, we will definitely be happy<br>
for the support. But since our CI system is currently able to produce these<br>
three bindists only, that's what we will be providing with the next release.</p>
</li><li>
<p>Since we no longer have dynamically linked Linux binaries, we are removing<br>
removing the <code>-static</code> suffix from the static Linux binaries.  If you have<br>
scripts to download the latest stable Linux binary, update them to use<br>
<code>linux-x86_64</code> instead of <code>linux-x86_64-static</code> (if you are already using the<br>
former, nothing needs to change).  For this release, both are supported, but<br>
the next release will no longer have the <code>-static</code> variant.</p>
</li><li>
<p>We are also deprecating the download links at <a href="https://stackage.org/stack" rel="nofollow" target="_blank">https://stackage.org/stack</a>.<br>
See this page for the current installation instructions:<br>
<a href="https://docs.haskellstack.org/en/stable/install_and_upgrade/" rel="nofollow" target="_blank">https://docs.haskellstack.org/en/stable/install_and_upgrade/</a>.</p>
</li><li>
<p>These are the canonical locations to download the latest stable binaries<br>
from, and will continue to be supported going forward:</p>
<ul><li>Linux 64-bit (static): <a href="https://get.haskellstack.org/stable/linux-x86_64.tar.gz" rel="nofollow" target="_blank">https://get.haskellstack.org/stable/linux-x86_64.tar.gz</a></li><li>macOS: <a href="https://get.haskellstack.org/stable/osx-x86_64.tar.gz" rel="nofollow" target="_blank">https://get.haskellstack.org/stable/osx-x86_64.tar.gz</a></li><li>Windows 64-bit: <a href="https://get.haskellstack.org/stable/windows-x86_64.zip" rel="nofollow" target="_blank">https://get.haskellstack.org/stable/windows-x86_64.zip</a></li></ul>
<p>As always, binaries for specific versions are available from the Github<br>
releases: <a href="https://github.com/commercialhaskell/stack/releases" target="_blank">https://github.com/commercialhaskell/stack/releases</a>.</p>
</li></ul>
<p><strong>Changes since v2.1.3.1</strong></p>
<p>Major changes:</p>
<ul><li>
<p><code>setup-info-locations</code> yaml configuration now allows overwriting the default locations of <code>stack-setup-2.yaml</code>.<br>
<a href="https://github.com/commercialhaskell/stack/pull/5031" target="_blank">#5031</a><br>
<a href="https://github.com/commercialhaskell/stack/issues/2983" target="_blank">#2983</a><br>
<a href="https://github.com/commercialhaskell/stack/issues/2913" target="_blank">#2913</a></p>
</li><li>
<p>The <code>setup-info</code> configuration key now allows overwriting parts of the default <code>setup-info</code></p>
</li><li>
<p>The <code>--setup-info-yaml</code> command line flag now may be used in all stack commands such as <code>stack build</code>, and not only in <code>stack setup</code></p>
</li><li>
<p>The <code>--setup-info-yaml</code> may specify multiple locations for <code>stack-setup.yaml</code> files.</p>
</li><li>
<p>The <code>stack upload</code> can read first reads environment Variable <code>$HACKAGE_USERNAME</code> and <code>$HACKAGE_PASSWORD</code> if they are missing only then asks for <code>username</code> or <code>password</code></p>
</li><li>
<p>Fully remove GHCJS support.</p>
</li><li>
<p>Remove the <code>freeze</code> command. It has been replaced by lock files.</p>
</li></ul>
<p>Behavior changes:</p>
<ul><li>
<p>Remove the deprecated <code>--stack-setup-yaml</code> command line argument in favor of <code>--setup-info-yaml</code><br>
<a href="https://github.com/commercialhaskell/stack/issues/2647" target="_blank">#2647</a></p>
</li><li>
<p>We now recommend checking in generated cabal files for repos. When generating lock files for<br>
extra-deps that only include <code>package.yaml</code> files, a deprecation warning will be generated.<br>
Also, those packages will no longer be included in the generated lock files.<br>
See <a href="https://github.com/commercialhaskell/stack/issues/5210" target="_blank">#5210</a>.</p>
</li></ul>
<p>Other enhancements:</p>
<ul><li>
<p>Add <code>build-output-timestamps</code> flag in yaml. Setting it to true<br>
prefixes each build log output line with a timestamp.</p>
</li><li>
<p>Show warning about <code>local-programs-path</code> with spaces on windows<br>
when running scripts. See<br>
<a href="https://github.com/commercialhaskell/stack/pull/5013" target="_blank">#5013</a></p>
</li><li>
<p>Add <code>ls dependencies json</code> which will print dependencies as JSON.<br>
<code>ls dependencies --tree</code>  is now <code>ls dependencies tree</code>. See<br>
<a href="https://github.com/commercialhaskell/stack/pull/4424" target="_blank">#4424</a></p>
</li><li>
<p>Remove warning for using Stack with GHC 8.8-8.10, and Cabal 3.0-3.2.</p>
</li><li>
<p>Allow relative paths in <code>--setup-info-yaml</code> and tool paths<br>
<a href="https://github.com/commercialhaskell/stack/issues/3394" target="_blank">#3394</a></p>
</li><li>
<p>Added the <code>--only-locals</code> flag. See<br>
<a href="https://github.com/commercialhaskell/stack/issues/5272" target="_blank">#5272</a></p>
</li></ul>
<p>Bug fixes:</p>
<ul><li>
<p>Upgrade <code>pantry</code>: module mapping insertions into the database are now atomic.<br>
Previously, if you SIGTERMed at the wrong time while running a script, you<br>
could end up with an inconsistent database state.</p>
</li><li>
<p><code>--resolver global</code> doesn't retrieve snapshots list from the internet<br>
beause doesn't need it. See <a href="https://github.com/commercialhaskell/stack/issues/5103" target="_blank">#5103</a></p>
</li><li>
<p>Fix using relative links in haddocks output.  See<br>
<a href="https://github.com/commercialhaskell/stack/issues/4971" target="_blank">#4971</a>.</p>
</li><li>
<p>Do not include generated cabal file information in lock files. See<br>
<a href="https://github.com/commercialhaskell/stack/issues/5045" target="_blank">#5045</a>.</p>
</li><li>
<p>Use proper Hoogle executable path when installed automatically. See<br>
<a href="https://github.com/commercialhaskell/stack/issues/4905" target="_blank">#4905</a></p>
</li><li>
<p>Fix GHC version for batched package unregistration. See<br>
<a href="https://github.com/commercialhaskell/stack/issues/4951" target="_blank">#4951</a></p>
</li><li>
<p>Use Hoogle from the snapshot used and not the latest version. See<br>
<a href="https://github.com/commercialhaskell/stack/issues/4905" target="_blank">#4905</a></p>
</li><li>
<p>Resolve "'stty' is not recognized". See<br>
<a href="https://github.com/commercialhaskell/stack/issues/4901" target="_blank">#4901</a></p>
</li><li>
<p>Fix missing reconfigure check causing errors when a package gets<br>
used in multiple projects. See<br>
<a href="https://github.com/commercialhaskell/stack/issues/5147" target="_blank">#5147</a></p>
</li></ul>
<p><strong>Thanks to all our contributors for this release:</strong></p>
<ul><li>Adam McCullough</li><li>Akshay Mankar</li><li>Brian Wignall</li><li>Cheah Jer Fei</li><li>Chris Done</li><li>David Baynard</li><li>davit nalchevanidze</li><li>Dino Morelli</li><li>Emanuel Borsboom</li><li>Felix Yan</li><li>flip111</li><li>Flowers Safety</li><li>Fred Miller</li><li>Fyrbll</li><li>gdziadkiewicz</li><li>Good boy</li><li>Hypnoes.Liu</li><li>Iisus</li><li>Iustin Pop</li><li>ivanbakel</li><li>Javier Neira</li><li>Jeff Happily</li><li>jeffhappily</li><li>jneira</li><li>Justin Le</li><li>Kirill Zaborsky</li><li>Leif Metcalf</li><li>Leonhard Markert</li><li>Lokesh Mohanty</li><li>Matt Audesse</li><li>Michael Snoyman</li><li>Mihai Maruseac</li><li>NightRa</li><li>Phil Ruffwind</li><li>qinzhenlong</li><li>Robert Hensing</li><li>Sasha Bogicevic</li><li>Sibi</li><li>Sibi Prabakaran</li><li>Simon Michael</li><li>Steve Mao</li><li>Vlad Ki</li><li>Xia Li-yao</li></ul></div>