ANN: stack-1.2.0

25 views
Skip to first unread message

Emanuel Borsboom

unread,
Sep 16, 2016, 10:05:32 AM9/16/16
to haskel...@haskell.org, haskel...@googlegroups.com, commerci...@googlegroups.com
See https://haskellstack.org for installation and upgrade instructions.

Release notes:

* On many Un*x systems, Stack can now be installed with a simple
  one-liner:

        wget -qO- https://get.haskellstack.org/ | sh

* The fix for
  entails that stack must perform a full clone of a large Git repo of
  Hackage meta-information. The total download size is about 200 MB.
  Please be aware of this when upgrading your stack installation.

* If you use Mac OS X, you may want to delay upgrading to macOS Sierra as there
  are reports of GHC panics when building some packages (including Stack

* This version of Stack does not build on ARM or PowerPC systems (see
  [store#37](https://github.com/fpco/store/issues/37)).  Please stay with
  version 1.1.2 for now on those architectures.  This will be rectified soon!

* We are now releasing a
  [statically linked Stack binary for 64-bit Linux](https://www.stackage.org/stack/linux-x86_64-static).
  Please try it and let us know if you run into any trouble on your platform.

* We are planning some changes to our Linux releases, including dropping our
  Ubuntu, Debian, CentOS, and Fedora package repositories and switching to
  statically linked binaries.  We would value your feedback in

Major changes:

* Add `stack hoogle` command.
* Support for absolute file path in `url` field of `setup-info` or `--ghc-bindist`
* Add support for rendering GHCi scripts targeting different GHCi like
  applications

Behavior changes:

* Remove `stack ide start` and `stack ide load-targets` commands.
* Support .buildinfo files in `stack ghci`.
* Support -ferror-spans syntax in GHC error messages.
* Avoid unpacking ghc to `/tmp`
* The Linux `gmp4` GHC bindist is no longer considered a full-fledged GHC
  variant and can no longer be specified using the `ghc-variant` option,
  and instead is treated more like a slightly different platform.

Other enhancements:

* Use the `store` package for binary serialization of most caches.
* Only require minor version match for Docker stack exe.
  This way, we can make patch releases for version bounds and similar
  build issues without needing to upload new binaries for Docker.
* Stack/Nix: Passes the right ghc derivation as an argument to the `shell.nix` when a
  custom `shell.nix` is used
* Stack/Nix: Sets `LD_LIBRARY_PATH` so packages using C libs for Template Haskell can work
  (See _e.g._ [this HaskellR issue](https://github.com/tweag/HaskellR/issues/253))
* Parse CLI arguments and configuration files into less permissive types,
  improving error messages for bad inputs.
* Add the ability to explictly specify a gcc executable.
* Nix: No longer uses LTS mirroring in nixpkgs. Gives to nix-shell a derivation
  like `haskell.compiler.ghc801`
* Perform some subprocesses during setup concurrently, slightly speeding up most
* `stack setup` no longer unpacks to the system temp dir on posix systems.
* `stack setup` detects libtinfo6 and ncurses6 and can download alternate GHC
* `stack setup` detects Linux ARMv7 downloads appropriate GHC bindist
* Custom `stack` binaries list dependency versions in output for `--version`.
* Use a pretty printer to output dependency resolution errors.
* Remove the `--os` flag
* Add 'netbase' and 'ca-certificates' as dependency for .deb packages.
* Add `stack ide targets` command.
* Enhance debug logging with subprocess timings.
* Pretty-print YAML parse errors
* Clarify confusing `stack setup` output
* Delete `Stack.Types` multimodule to improve build times
* Remove spurious newlines in build logs
* Interpreter: Provide a way to hide implicit packages
* Check executability in exec lookup

Bug fixes:

* Fix cabal warning about use of a deprecated cabal flag
* Support most executable extensions on Windows
* Detect resolver change in `stack solver`
* Fix a bug in docker image creation where the wrong base image was
  selected
* Ignore special entries when unpacking tarballs
* Fixes src directory pollution of `style.css` and `highlight.js` with GHC 8's
* Handle filepaths with spaces in `stack ghci`
* Apply ghc-options to snapshot packages
* stack sdist: Fix timestamp in tarball
* Allow global Stack arguments with a script
* Inconsistency between ToJSON and FromJSON instances of PackageLocation
* Perform Unicode normalization on filepaths
* Solver: always keep ghc wired-in as hard constraints
* Support OpenBSD's tar where possible, require GNU tar for xz support
* Fix using --coverage with Cabal-1.24
* When marking exe installed, remove old version
* Stop truncating all-cabal-hashes git repo
* Handle non-ASCII filenames on Windows
* Avoid using multiple versions of a package in script interpreter
  by passing package-id to ghc/runghc
* Only pre-load compiler version when using nix integration
* Solver: parse cabal errors also on Windows
* Allow exec and ghci commands in interpreter mode.
  Scripts can now automatically open in the repl by using `exec ghci`
  instead of `runghc` in the shebang command.
* Now consider a package to be dirty when an extra-source-file is changed.

Thanks to all our contributors for this release:

* Aaron Friel
* Andrew Cowie
* AndrewRademacher
* Anton Felix Lorenzen
* Brian McKenna
* Chris Done
* Dan Aloni
* danald
* Daniel Casanueva
* Denis
* Denis Kasak
* Emanuel Borsboom
* erewok
* Gabor Greif
* Gurkenglas
* Harendra Kumar
* hesiod
* Judah Jacobson
* Khan Thompson
* Mathieu Boespflug
* Michael Sloan
* Michael Snoyman
* Mohit Agarwal
* Moritz Angermann
* Oleg Grenrus
* Paolo G. Giarrusso
* Philipp Kant
* Ryan Desfosses
* Sid Kapur
* Sidharth Kapur
* Simon Jakobi
* Tim Dysinger
* Tim Düsterhus
* Tobias Markus
* YPares
* Yuriy Syrovetskiy
* Yves Parès (Ywen)
* ___

Emanuel Borsboom

unread,
Sep 16, 2016, 10:09:48 AM9/16/16
to haskel...@haskell.org, haskel...@googlegroups.com, commerci...@googlegroups.com
As a followup, a bug that may cause problems in build environments like Travis CI has been discovered: if you have a version of `git` < 1.8.2 (released in early 2013), `stack build` will fail with an error like 'fatal: error in object: unshallow 05a8ba81a30b775e3aab8269642317345708bcfa' when it tries to update the package index on first startup.  See https://github.com/commercialhaskell/stack/issues/2602 for more details.

Simon Michael

unread,
Sep 16, 2016, 10:38:34 AM9/16/16
to haskel...@googlegroups.com
Very nice! Thank you, devs and contributors.

Yann Esposito

unread,
Sep 17, 2016, 6:06:44 AM9/17/16
to Commercial Haskell, haskel...@haskell.org, haskel...@googlegroups.com
Just to note, on OS X, wget is not installed by default. So in one of my script I use:


instead.
Reply all
Reply to author
Forward
0 new messages