@@ -10,10 +10,8 @@ before_install:
1010- cabal --version
1111- ghc --version
1212- if [ "$NOTESTS" = "YES" ]; then export CABALCONFOPTS="$CABALFLAGS"; export CABALTEST="true";
13− else export CABALCONFOPTS="$CABALFLAGS --enable-tests"; export CABALTEST="cabal
14− test"; fi
15−- if [ ! "$NOBENCHMARKS" = "YES"]; then export CABALCONFOPTS="$CABALCONFOPTS --enable-benchmarks";
16− fi
13+ else export CABALCONFOPTS="$CABALFLAGS --enable-tests --enable-benchmarks"; export
14+ CABALTEST="cabal test"; fi
1715- if [ "$PEDANTIC" = "YES" ]; then export CABALBUILDOPTS="--ghc-options=-Werror --ghc-options=-Wall";
1816 fi
1917install:
@@ -23,16 +21,17 @@ install:
2321 ]; then cp $CABALCONFIG cabal.config; fi; if [ -n "$STACKAGESNAPSHOT" ]; then curl
2422 --silent https://www.stackage.org/$STACKAGESNAPSHOT/cabal.config | grep -v "$(cabal
2523 info . -v0 | head -n 1 | awk '{ print $2 }' | sed -E 's/-[0-9]+(\.[0-9]+)+//') =="
26− > cabal.config; fi; cabal install --only-dependencies $CABALCONFOPTS --dry -v >
27− installplan.txt; sed -i -e '1,/^Resolving /d' installplan.txt; cat installplan.txt;
28− if diff -u $HOME/.cabsnap/installplan.txt installplan.txt; then echo "cabal build-cache
29− HIT"; rm -rfv .ghc; cp -av $HOME/.cabsnap/ghc $HOME/.ghc; cp -av $HOME/.cabsnap/lib
30− $HOME/.cabsnap/share $HOME/.cabsnap/bin $HOME/.cabal/; else echo "cabal build-cache
31− MISS"; rm -rf $HOME/.cabsnap; mkdir -p $HOME/.ghc $HOME/.cabal/lib $HOME/.cabal/share
32− $HOME/.cabal/bin; cabal install --only-dependencies $CABALCONFOPTS; fi; if [ ! -d
33− $HOME/.cabsnap ]; then echo "snapshotting package-db to build-cache"; mkdir $HOME/.cabsnap;
34− cp -av $HOME/.ghc $HOME/.cabsnap/ghc; cp -av $HOME/.cabal/lib $HOME/.cabal/share
35− $HOME/.cabal/bin installplan.txt $HOME/.cabsnap/; fi;
24+ > cabal.config; fi; cabal install --constraint='integer-simple installed' --only-dependencies
25+ $CABALCONFOPTS --dry -v > installplan.txt; sed -i -e '1,/^Resolving /d' installplan.txt;
26+ cat installplan.txt; if diff -u $HOME/.cabsnap/installplan.txt installplan.txt;
27+ then echo "cabal build-cache HIT"; rm -rfv .ghc; cp -av $HOME/.cabsnap/ghc $HOME/.ghc;
28+ cp -av $HOME/.cabsnap/lib $HOME/.cabsnap/share $HOME/.cabsnap/bin $HOME/.cabal/;
29+ else echo "cabal build-cache MISS"; rm -rf $HOME/.cabsnap; mkdir -p $HOME/.ghc $HOME/.cabal/lib
30+ $HOME/.cabal/share $HOME/.cabal/bin; cabal install --constraint='integer-simple
31+ installed' --only-dependencies $CABALCONFOPTS; fi; if [ ! -d $HOME/.cabsnap ]; then
32+ echo "snapshotting package-db to build-cache"; mkdir $HOME/.cabsnap; cp -av $HOME/.ghc
33+ $HOME/.cabsnap/ghc; cp -av $HOME/.cabal/lib $HOME/.cabal/share $HOME/.cabal/bin
34+ installplan.txt $HOME/.cabsnap/; fi;
3635script:
3736- if [ -f configure.ac ]; then autoreconf -i; fi
3837- cabal configure $CABALCONFOPTS -v2
@@ -41,21 +40,31 @@ script:
4140- if [ "$CABALVER" = "1.22" ]; then cabal check; fi
4241- cabal sdist
4342- SRC_TGZ=$(cabal info . | awk '{print $2;exit}').tar.gz && (cd dist && cabal install
44− --force-reinstalls $CABALFLAGS "$SRC_TGZ")
43+ --constraint='integer-simple installed' --force-reinstalls $CABALFLAGS "$SRC_TGZ")
4544matrix:
4645 fast_finish: true
4746 include:
48− - env: GHCVER=7.8.4 CABALVER=1.18 CABALCONFIG=servant-0.4-cabal.config
47+ - env: GHCVER=8.0.1 CABALVER=1.24 CABALCONFIG=swagger2-2.1-cabal.config PEDANTIC=YES
4948 addons:
5049 apt:
5150 sources:
5251 - hvr-ghc
5352 packages:
54− - cabal-install-1.18
55− - ghc-7.8.4
53+ - cabal-install-1.24
54+ - ghc-8.0.1
5655 - libgmp-dev
57− compiler: ! ': # ghc-7.8.4 cabal-1.18 servant-0.4-cabal.config'
58− - env: GHCVER=7.10.3 CABALVER=1.22 CABALCONFIG=servant-0.4-cabal.config PEDANTIC=YES
56+ compiler: ! ': # ghc-8.0.1 cabal-1.24 swagger2-2.1-cabal.config'
57+ - env: GHCVER=8.0.1 CABALVER=1.24 CABALCONFIG=servant-0.7-cabal.config PEDANTIC=YES
58+ addons:
59+ apt:
60+ sources:
61+ - hvr-ghc
62+ packages:
63+ - cabal-install-1.24
64+ - ghc-8.0.1
65+ - libgmp-dev
66+ compiler: ! ': # ghc-8.0.1 cabal-1.24 servant-0.7-cabal.config'
67+ - env: GHCVER=7.10.3 CABALVER=1.22 CABALCONFIG=swagger2-2.1-cabal.config PEDANTIC=YES
5968 addons:
6069 apt:
6170 sources:
@@ -64,18 +73,18 @@ matrix:
6473 - cabal-install-1.22
6574 - ghc-7.10.3
6675 - libgmp-dev
67− compiler: ! ': # ghc-7.10.3 cabal-1.22 servant-0.4-cabal.config'
68− - env: GHCVER=7.8.4 CABALVER=1.18 CABALCONFIG=servant-0.5-cabal.config
76+ compiler: ! ': # ghc-7.10.3 cabal-1.22 swagger2-2.1-cabal.config'
77+ - env: GHCVER=7.10.3 CABALVER=1.22 CABALCONFIG=swagger2-2.0-cabal.config PEDANTIC=YES
6978 addons:
7079 apt:
7180 sources:
7281 - hvr-ghc
7382 packages:
74− - cabal-install-1.18
75− - ghc-7.8.4
83+ - cabal-install-1.22
84+ - ghc-7.10.3
7685 - libgmp-dev
77− compiler: ! ': # ghc-7.8.4 cabal-1.18 servant-0.5-cabal.config'
78− - env: GHCVER=7.10.3 CABALVER=1.22 CABALCONFIG=servant-0.5-cabal.config PEDANTIC=YES
86+ compiler: ! ': # ghc-7.10.3 cabal-1.22 swagger2-2.0-cabal.config'
87+ - env: GHCVER=7.10.3 CABALVER=1.22 CABALCONFIG=servant-0.4-cabal.config PEDANTIC=YES
7988 addons:
8089 apt:
8190 sources:
@@ -84,17 +93,17 @@ matrix:
8493 - cabal-install-1.22
8594 - ghc-7.10.3
8695 - libgmp-dev
87− compiler: ! ': # ghc-7.10.3 cabal-1.22 servant-0.5-cabal.config'
88− - env: GHCVER=7.8.4 CABALVER=1.18 CABALCONFIG=servant-0.6-cabal.config
96+ compiler: ! ': # ghc-7.10.3 cabal-1.22 servant-0.4-cabal.config'
97+ - env: GHCVER=7.10.3 CABALVER=1.22 CABALCONFIG=servant-0.5-cabal.config PEDANTIC=YES
8998 addons:
9099 apt:
91100 sources:
92101 - hvr-ghc
93102 packages:
94− - cabal-install-1.18
95− - ghc-7.8.4
103+ - cabal-install-1.22
104+ - ghc-7.10.3
96105 - libgmp-dev
97− compiler: ! ': # ghc-7.8.4 cabal-1.18 servant-0.6-cabal.config'
106+ compiler: ! ': # ghc-7.10.3 cabal-1.22 servant-0.5-cabal.config'
98107 - env: GHCVER=7.10.3 CABALVER=1.22 CABALCONFIG=servant-0.6-cabal.config PEDANTIC=YES
99108 addons:
100109 apt:
@@ -105,7 +114,17 @@ matrix:
105114 - ghc-7.10.3
106115 - libgmp-dev
107116 compiler: ! ': # ghc-7.10.3 cabal-1.22 servant-0.6-cabal.config'
108− - env: GHCVER=7.8.4 CABALVER=1.18 CABALCONFIG=servant-0.7-cabal.config
117+ - env: GHCVER=7.10.3 CABALVER=1.22 CABALCONFIG=servant-0.7-cabal.config PEDANTIC=YES
118+ addons:
119+ apt:
120+ sources:
121+ - hvr-ghc
122+ packages:
123+ - cabal-install-1.22
124+ - ghc-7.10.3
125+ - libgmp-dev
126+ compiler: ! ': # ghc-7.10.3 cabal-1.22 servant-0.7-cabal.config'
127+ - env: GHCVER=7.8.4 CABALVER=1.18 CABALCONFIG=servant-0.4-cabal.config
109128 addons:
110129 apt:
111130 sources:
@@ -114,17 +133,37 @@ matrix:
114133 - cabal-install-1.18
115134 - ghc-7.8.4
116135 - libgmp-dev
117− compiler: ! ': # ghc-7.8.4 cabal-1.18 servant-0.7-cabal.config'
118− - env: GHCVER=7.10.3 CABALVER=1.22 CABALCONFIG=servant-0.7-cabal.config PEDANTIC=YES
136+ compiler: ! ': # ghc-7.8.4 cabal-1.18 servant-0.4-cabal.config'
137+ - env: GHCVER=7.8.4 CABALVER=1.18 CABALCONFIG=servant-0.5-cabal.config
119138 addons:
120139 apt:
121140 sources:
122141 - hvr-ghc
123142 packages:
124− - cabal-install-1.22
125− - ghc-7.10.3
143+ - cabal-install-1.18
144+ - ghc-7.8.4
126145 - libgmp-dev
127− compiler: ! ': # ghc-7.10.3 cabal-1.22 servant-0.7-cabal.config'
146+ compiler: ! ': # ghc-7.8.4 cabal-1.18 servant-0.5-cabal.config'
147+ - env: GHCVER=7.8.4 CABALVER=1.18 CABALCONFIG=servant-0.6-cabal.config
148+ addons:
149+ apt:
150+ sources:
151+ - hvr-ghc
152+ packages:
153+ - cabal-install-1.18
154+ - ghc-7.8.4
155+ - libgmp-dev
156+ compiler: ! ': # ghc-7.8.4 cabal-1.18 servant-0.6-cabal.config'
157+ - env: GHCVER=7.8.4 CABALVER=1.18 CABALCONFIG=servant-0.7-cabal.config
158+ addons:
159+ apt:
160+ sources:
161+ - hvr-ghc
162+ packages:
163+ - cabal-install-1.18
164+ - ghc-7.8.4
165+ - libgmp-dev
166+ compiler: ! ': # ghc-7.8.4 cabal-1.18 servant-0.7-cabal.config'
128167branches:
129168 only:
130169 - master