[Haskell-cafe] ANN: stack-

Emanuel Borsboom manny at fpcomplete.com
Thu Oct 15 17:40:00 UTC 2015

New version released of Stack, a build tool.

for installation and upgrade instructions.

Major changes:

   - “stack setup” now supports building and booting GHCJS from source
   - On Windows, build directories no longer display “pretty” information
   (like x86_64-windows/Cabal-, but rather a hash of that
   content. The reason is to avoid the 260 character path limitation on
   Windows. See
   #1027 <https://github.com/commercialhaskell/stack/pull/1027>
   - Rename config files and clarify their purposes #969
      - ~/.stack/stack.yaml → ~/.stack/config.yaml
      - ~/.stack/global → ~/.stack/global-project
      - /etc/stack/config → /etc/stack/config.yaml
      - Old locations still supported, with deprecation warnings
   - New command “stack eval CODE”, which evaluates to “stack exec ghc — -e

Other enhancements:

   - No longer install git on Windows
   #1046 <https://github.com/commercialhaskell/stack/issues/1046>. You
   can still get this behavior by running the following yourself:
   stack exec -- pacman -Sy --noconfirm git.
   - Typing enter during —file-watch triggers a rebuild #1023
   - Use Haddock’s --hyperlinked-source (crosslinked source), if available
   #1070 <https://github.com/commercialhaskell/stack/pull/1070>
   - Use Stack-installed GHCs for stack init --solver #1072
   - New experimental stack query command #1087
   - By default, stack no longer rebuilds a package due to GHC options
   changes. This behavior can be tweaked with the rebuild-ghc-options
   setting. #1089 <https://github.com/commercialhaskell/stack/issues/1089>
   - By default, ghc-options are applied to all local packages, not just
   targets. This behavior can be tweaked with the apply-ghc-options
   setting. #1089 <https://github.com/commercialhaskell/stack/issues/1089>
   - Docker: download or override location of stack executable to re-run in
   container #974 <https://github.com/commercialhaskell/stack/issues/974>
   - Docker: when Docker Engine is remote, don’t run containerized
   processes as host’s UID/GID #194
   - Docker: set-user option to enable/disable running containerized
   processes as host’s UID/GID #194
   - Custom Setup.hs files are now precompiled instead of interpreted. This
   should be a major performance win for certain edge cases (biggest
example: building
   Cabal itself <https://github.com/commercialhaskell/stack/issues/1041>)
   while being either neutral or a minor slowdown for more common cases.
   - stack test --coverage now also generates a unified coverage report for
   multiple test-suites / packages. In the unified report, test-suites can
   contribute to the coverage of other packages.

Bug fixes:

   - Ignore stack-built executables named ghc
   #1052 <https://github.com/commercialhaskell/stack/issues/1052>
   - Fix quoting of output failed command line arguments
   - Mark executable-only packages as installed when copied from cache #1043
   - Canonicalize temporary directory paths #1047
   - Put code page fix inside the build function itself #1066
   - Add explicit-setup-deps option #1110
   <https://github.com/commercialhaskell/stack/issues/1110>, and change the
   default to the old behavior of using any package in the global and snapshot
   database #1025 <https://github.com/commercialhaskell/stack/issues/1025>
   - Precompiled cache checks full package IDs on Cabal < 1.22 #1103
   - Pass -package-id to ghci #867
   - Ignore global packages when copying precompiled packages #1146

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20151015/d0086272/attachment.html>

More information about the Haskell-Cafe mailing list