language: c sudo: false matrix: include: - env: CABALVER=1.16 GHCVER=7.6.3 addons: {apt: {packages: [cabal-install-1.16,ghc-7.6.3], sources: [hvr-ghc]}} - env: CABALVER=1.18 GHCVER=7.8.4 addons: {apt: {packages: [cabal-install-1.18,ghc-7.8.4], sources: [hvr-ghc]}} - env: CABALVER=1.22 GHCVER=7.10.3 addons: {apt: {packages: [cabal-install-1.22,ghc-7.10.3],sources: [hvr-ghc]}} - env: CABALVER=1.24 GHCVER=8.0.2 addons: {apt: {packages: [cabal-install-1.24,ghc-8.0.2], sources: [hvr-ghc]}} - env: CABALVER=head GHCVER=head addons: {apt: {packages: [cabal-install-head,ghc-head], sources: [hvr-ghc]}} allow_failures: - env: CABALVER=head GHCVER=head before_install: - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH install: - cabal --version - echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]" - travis_retry cabal update - cabal install --only-dependencies --enable-tests script: - case "$CABALVER" in "1.16") cabal configure --enable-tests -v2 -f dev ;; "1.18") cabal configure --enable-tests --enable-library-coverage -v2 -f dev ;; *) cabal configure --enable-tests --enable-coverage -v2 -f dev ;; esac - travis_wait 60 cabal build - case "$GHCVER" in "7.6.3") true ;; *) cabal test --show-details=always --test-option=--qc-max-success=1000 ;; esac - cabal sdist - if [ "$CABALVER" != "1.16" ]; then cabal haddock | grep "100%" | wc -l | grep "14"; fi after_script: - cabal install hpc-coveralls - export PATH=~/.cabal/bin:$PATH - case "$GHCVER" in "7.6.3") true ;; *) hpc-coveralls --coverage-mode=StrictlyFullLines --exclude-dir=bench-speed --exclude-dir=bench-memory --exclude-dir=tests tests ;; esac notifications: email: false