@@ -17,24 +17,21 @@ install:
17 - cabal --version
17 - cabal --version
18 - echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]"
18 - echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]"
19 - travis_retry cabal update
19 - travis_retry cabal update
21+ # Travis container infrastructure seems to expose all host CPUs (16?), thus
22+ # cabal and ghc tries to use them all. Which is bad idea on a shared box.
23+ # See also: https://ghc.haskell.org/trac/ghc/ticket/9221
24+ - sed -i 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config
20 - mkdir -p sandboxes/$GHCVER/${STACKAGE:-none}
25 - mkdir -p sandboxes/$GHCVER/${STACKAGE:-none}
21 - cabal sandbox init --sandbox sandboxes/$GHCVER/${STACKAGE:-none}
26 - cabal sandbox init --sandbox sandboxes/$GHCVER/${STACKAGE:-none}
22 # Download stackage cabal.config
27 # Download stackage cabal.config
23 # Not sure whether filtering out purescript is necessary
28 # Not sure whether filtering out purescript is necessary
24 - if [ -n "$STACKAGE" ]; then curl http://www.stackage.org/$STACKAGE/cabal.config | grep -v purescript > cabal.config; fi
29 - if [ -n "$STACKAGE" ]; then curl http://www.stackage.org/$STACKAGE/cabal.config | grep -v purescript > cabal.config; fi
25− # Run with limited concurrency
26− # Travis container infrastructure seems to expose all host CPUs (16?), thus
27− # cabal and ghc tries to use them all. Which is bad idea on a shared box.
28− # See also: https://ghc.haskell.org/trac/ghc/ticket/9221
30− # We probably want to be running with larger heap sizes when there are lots
31− # of cores, to counteract the synchronization overhead of stop-the-world GC
32− # across many cores. e.g. +RTS -A32m at least.
33− - cabal install --only-dependencies --enable-tests -j2 --ghc-options='+RTS -A32m -RTS'
30+ - cabal install --only-dependencies --enable-tests
34− - cabal install hpc-coveralls -j2
31+ - cabal install hpc-coveralls
36 - ./travis/configure.sh
33 - ./travis/configure.sh
37− - cabal build -j2 --ghc-options='+RTS -A32m -RTS'
34+ - cabal build
38 - cabal test
35 - cabal test
39 - ./travis/test-install.sh
36 - ./travis/test-install.sh
40after_script:
37after_script: