github commercialhaskell/stack rc/v3.9.0.1
rc/v3.9.0.1 (release candidate)

pre-release9 hours ago

Changes since v3.7.1:

Behavior changes:

  • Where applicable and Stack supports the GHC version, only the wired-in packages of the actual version of GHC used are treated as wired-in packages.
  • Stack now recognises ghc-internal as a GHC wired-in package.
  • The configuration option package-index has a new default value: the keyids key lists the keys of the Hackage root key holders applicable from 2025-07-24.
  • Stack's dot command now treats --depth the same way as the ls dependencies command, so that the nodes of stack dot --external --depth 0 are the same as the packages listed by stack ls dependencies --depth 0.
  • When building GHC from source, on Windows, the default Hadrian build target is reloc-binary-dist and the default path to the GHC built by Hadrian is _build/reloc-bindist.
  • Stack's haddock command no longer requires a package to have a main library that exposes modules.

Other enhancements:

  • Bump to Hpack 0.38.2.
  • Consider GHC 9.14 to be a tested compiler and remove warnings.
  • Consider Cabal 3.16 to be a tested library and remove warnings.
  • From GHC 9.12.1, base is not a GHC wired-in package. In configuration files, the notify-if-base-not-boot key is introduced, to allow the exisitng notification to be muted if unwanted when using such GHC versions.
  • Add flag --[no-]omit-this (default: disabled) to Stack's clean command to omit directories currently in use from cleaning (when --full is not specified).
  • Add option -w as synonym for --stack-yaml.
  • stack new now allows codeberg: as a service for template downloads.
  • In YAML configuration files, the compiler-target and compiler-bindist-path keys are introduced to allow, when building GHC from source, the Hadrian build target and Hadrian path to the built GHC to be specified.

Bug fixes:

  • --PROG-option=<argument> passes --PROG-option=<argument> (and not --PROG-option="<argument>") to Cabal (the library).
  • The message S-7151 now presents as an error, with advice, and not as a bug.
  • Stack's dot command now uses a box to identify all GHC wired-in packages, not just those with no dependencies (being only rts).
  • Stack's dot command now gives all nodes with no dependencies in the graph the maximum rank, not just those nodes with no relevant dependencies at all (being only rts, when --external is specified).
  • Improved error messages for S-4634 and S-8215.
  • Improved in-app help for the --hpack-force flag.

Don't miss a new stack release

NewReleases is sending notifications on new releases.