* 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.
* 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](https://github.com/commercialhaskell/stack/issues/5210).
Other enhancements:
* Add `build-output-timestamps` flag in yaml. Setting it to true
prefixes each build log output line with a timestamp.
* 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.