language: haskell env: - GHCVER=7.4.2 - GHCVER=7.6.3 - GHCVER=7.8.4 - GHCVER=7.10.1 - GHCVER=head # - > # GHCVER=7.4.2 # MODE="-fsafe" matrix: allow_failures: - env: GHCVER=head before_install: # If $GHCVER is the one travis has, don't bother reinstalling it. # We can also have faster builds by installing some libraries with # `apt`. If it isn't, install the GHC we want from hvr's PPA along # with cabal-1.18. - | if [ $GHCVER = `ghc --numeric-version` ]; then # Try installing some of the build-deps with apt-get for speed. travis/cabal-apt-install --enable-tests $MODE export CABAL=cabal else # Install the GHC we want from hvr's PPA travis_retry sudo add-apt-repository -y ppa:hvr/ghc travis_retry sudo apt-get update travis_retry sudo apt-get install cabal-install-1.18 ghc-$GHCVER happy export CABAL=cabal-1.18 export PATH=/opt/ghc/$GHCVER/bin:$PATH fi # Uncomment whenever hackage is down. # - mkdir -p ~/.cabal && cp travis/config ~/.cabal/config && $CABAL update - $CABAL update # Update happy when building with GHC head - | if [ $GHCVER = "head" ] || [ $GHCVER = "7.8.4" ] || [ $GHCVER = "7.10.1" ]; then $CABAL install --constraint=transformers\ installed happy alex export PATH=$HOME/.cabal/bin:$PATH fi install: - $CABAL install --dependencies-only --enable-tests - $CABAL configure --enable-tests $MODE script: - $CABAL build - $CABAL test --show-details=always - scripts/stats # tests that a source-distribution can be generated - cabal sdist # check that the generated source-distribution can be built & installed - export SRC_TGZ=$(cabal info . | awk '{print $2 ".tar.gz";exit}') ; cd dist/; if [ -f "$SRC_TGZ" ]; then cabal install --force-reinstalls "$SRC_TGZ"; else echo "expected '$SRC_TGZ' not found"; exit 1; fi notifications: irc: channels: - "irc.freenode.org#haskell-lens" skip_join: true template: - "\x0313lens\x0f/\x0306%{branch}\x0f \x0314%{commit}\x0f %{message} \x0302\x1f%{build_url}\x0f"