Allow aeson 0.9
[gipeda.git] / .travis.yml
1 # NB: don't set `language: haskell` here
2
3 # These are the versions that we built against, at least once, on travis
4 env:
5  - CABALVER=1.18 GHCVER=7.6.3
6  - CABALVER=1.18 GHCVER=7.8.3
7  - CABALVER=1.22 GHCVER=7.10.1
8  - CABALVER=head GHCVER=head   # see section about GHC HEAD snapshots
9
10 matrix:
11   allow_failures:
12     - env: CABALVER=head GHCVER=head
13
14 # Note: the distinction between `before_install` and `install` is not important.
15 before_install:
16  - travis_retry sudo add-apt-repository -y ppa:hvr/ghc
17  - travis_retry sudo apt-get update
18  - travis_retry sudo apt-get install cabal-install-$CABALVER ghc-$GHCVER # see note about happy/alex
19  - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
20
21 install:
22  - cabal --version
23  - echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]"
24  - travis_retry cabal update
25  - cabal install --only-dependencies --enable-tests --enable-benchmarks
26
27 # Here starts the actual work to be performed for the package under test; any command which exits with a non-zero exit code causes the build to fail.
28 script:
29  - if [ -f configure.ac ]; then autoreconf -i; fi
30  - cabal configure --enable-tests --enable-benchmarks -v2  # -v2 provides useful information for debugging
31  - cabal build   # this builds all libraries and executables (including tests/benchmarks)
32  - cabal test
33  - cabal check
34  - cabal sdist   # tests that a source-distribution can be generated
35
36 # The following scriptlet checks that the resulting source distribution can be built & installed
37  - export SRC_TGZ=$(cabal info . | awk '{print $2 ".tar.gz";exit}') ;
38    cd dist/;
39    if [ -f "$SRC_TGZ" ]; then
40       cabal install --force-reinstalls "$SRC_TGZ";
41    else
42       echo "expected '$SRC_TGZ' not found";
43       exit 1;
44    fi