on master help sign in
CI upgrade
06a7521Michael Snoyman
.travis.yml+44−40
@@ -20,6 +20,7 @@ cache:
20 - $HOME/.ghc
20 - $HOME/.ghc
21 - $HOME/.cabal
21 - $HOME/.cabal
22 - $HOME/.stack
22 - $HOME/.stack
23+ - $TRAVIS_BUILD_DIR/.stack-work
23
24
24# The different configurations we want to test. We have BUILD=cabal which uses
25# The different configurations we want to test. We have BUILD=cabal which uses
25# cabal-install, and BUILD=stack which uses Stack. More documentation on each
26# cabal-install, and BUILD=stack which uses Stack. More documentation on each
@@ -44,21 +45,24 @@ matrix:
44 #- env: BUILD=cabal GHCVER=7.4.2 CABALVER=1.16 HAPPYVER=1.19.5 ALEXVER=3.1.7
45 #- env: BUILD=cabal GHCVER=7.4.2 CABALVER=1.16 HAPPYVER=1.19.5 ALEXVER=3.1.7
45 # compiler: ": #GHC 7.4.2"
46 # compiler: ": #GHC 7.4.2"
46 # addons: {apt: {packages: [cabal-install-1.16,ghc-7.4.2,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
47 # addons: {apt: {packages: [cabal-install-1.16,ghc-7.4.2,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
47− - env: BUILD=cabal GHCVER=7.6.3 CABALVER=1.16 HAPPYVER=1.19.5 ALEXVER=3.1.7
48+ #- env: BUILD=cabal GHCVER=7.6.3 CABALVER=1.16 HAPPYVER=1.19.5 ALEXVER=3.1.7
48− compiler: ": #GHC 7.6.3"
49+ # compiler: ": #GHC 7.6.3"
49− addons: {apt: {packages: [cabal-install-1.16,ghc-7.6.3,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
50+ # addons: {apt: {packages: [cabal-install-1.16,ghc-7.6.3,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
50− - env: BUILD=cabal GHCVER=7.8.4 CABALVER=1.18 HAPPYVER=1.19.5 ALEXVER=3.1.7
51+ #- env: BUILD=cabal GHCVER=7.8.4 CABALVER=1.18 HAPPYVER=1.19.5 ALEXVER=3.1.7
51− compiler: ": #GHC 7.8.4"
52+ # compiler: ": #GHC 7.8.4"
52− addons: {apt: {packages: [cabal-install-1.18,ghc-7.8.4,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
53+ # addons: {apt: {packages: [cabal-install-1.18,ghc-7.8.4,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
53− - env: BUILD=cabal GHCVER=7.10.3 CABALVER=1.22 HAPPYVER=1.19.5 ALEXVER=3.1.7
54+ #- env: BUILD=cabal GHCVER=7.10.3 CABALVER=1.22 HAPPYVER=1.19.5 ALEXVER=3.1.7
54− compiler: ": #GHC 7.10.3"
55+ # compiler: ": #GHC 7.10.3"
55− addons: {apt: {packages: [cabal-install-1.22,ghc-7.10.3,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
56+ # addons: {apt: {packages: [cabal-install-1.22,ghc-7.10.3,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
56 - env: BUILD=cabal GHCVER=8.0.2 CABALVER=1.24 HAPPYVER=1.19.5 ALEXVER=3.1.7
57 - env: BUILD=cabal GHCVER=8.0.2 CABALVER=1.24 HAPPYVER=1.19.5 ALEXVER=3.1.7
57 compiler: ": #GHC 8.0.2"
58 compiler: ": #GHC 8.0.2"
58 addons: {apt: {packages: [cabal-install-1.24,ghc-8.0.2,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
59 addons: {apt: {packages: [cabal-install-1.24,ghc-8.0.2,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
59 - env: BUILD=cabal GHCVER=8.2.2 CABALVER=2.0 HAPPYVER=1.19.5 ALEXVER=3.1.7
60 - env: BUILD=cabal GHCVER=8.2.2 CABALVER=2.0 HAPPYVER=1.19.5 ALEXVER=3.1.7
60 compiler: ": #GHC 8.2.2"
61 compiler: ": #GHC 8.2.2"
61 addons: {apt: {packages: [cabal-install-2.0,ghc-8.2.2,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
62 addons: {apt: {packages: [cabal-install-2.0,ghc-8.2.2,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
63+ - env: BUILD=cabal GHCVER=8.4.3 CABALVER=2.2 HAPPYVER=1.19.5 ALEXVER=3.1.7
64+ compiler: ": #GHC 8.4.3"
65+ addons: {apt: {packages: [cabal-install-2.2,ghc-8.4.3,happy-1.19.5,alex-3.1.7], sources: [hvr-ghc]}}
62
66
63 # Build with the newest GHC and cabal-install. This is an accepted failure,
67 # Build with the newest GHC and cabal-install. This is an accepted failure,
64 # see below.
68 # see below.
@@ -72,27 +76,27 @@ matrix:
72 compiler: ": #stack default"
76 compiler: ": #stack default"
73 addons: {apt: {packages: [libgmp-dev]}}
77 addons: {apt: {packages: [libgmp-dev]}}
74
78
75− - env: BUILD=stack ARGS="--resolver lts-2"
79+ #- env: BUILD=stack ARGS="--resolver lts-2"
76− compiler: ": #stack 7.8.4"
80+ # compiler: ": #stack 7.8.4"
77− addons: {apt: {packages: [libgmp-dev]}}
81+ # addons: {apt: {packages: [libgmp-dev]}}
78
82
79− - env: BUILD=stack ARGS="--resolver lts-3"
83+ #- env: BUILD=stack ARGS="--resolver lts-3"
80− compiler: ": #stack 7.10.2"
84+ # compiler: ": #stack 7.10.2"
81− addons: {apt: {packages: [libgmp-dev]}}
85+ # addons: {apt: {packages: [libgmp-dev]}}
82
86
83− - env: BUILD=stack ARGS="--resolver lts-6"
87+ #- env: BUILD=stack ARGS="--resolver lts-6"
84− compiler: ": #stack 7.10.3"
88+ # compiler: ": #stack 7.10.3"
85− addons: {apt: {packages: [libgmp-dev]}}
89+ # addons: {apt: {packages: [libgmp-dev]}}
86
90
87− - env: BUILD=stack ARGS="--resolver lts-7"
91+ #- env: BUILD=stack ARGS="--resolver lts-7"
88− compiler: ": #stack 8.0.1"
92+ # compiler: ": #stack 8.0.1"
89− addons: {apt: {packages: [libgmp-dev]}}
93+ # addons: {apt: {packages: [libgmp-dev]}}
90
94
91 - env: BUILD=stack ARGS="--resolver lts-9"
95 - env: BUILD=stack ARGS="--resolver lts-9"
92 compiler: ": #stack 8.0.2"
96 compiler: ": #stack 8.0.2"
93 addons: {apt: {packages: [libgmp-dev]}}
97 addons: {apt: {packages: [libgmp-dev]}}
94
98
95− - env: BUILD=stack ARGS="--resolver lts-10"
99+ - env: BUILD=stack ARGS="--resolver lts-11"
96 compiler: ": #stack 8.2.2"
100 compiler: ": #stack 8.2.2"
97 addons: {apt: {packages: [libgmp-dev]}}
101 addons: {apt: {packages: [libgmp-dev]}}
98
102
@@ -111,23 +115,23 @@ matrix:
111 # compiler: ": #stack 7.8.4 osx"
115 # compiler: ": #stack 7.8.4 osx"
112 # os: osx
116 # os: osx
113
117
114− - env: BUILD=stack ARGS="--resolver lts-3"
118+ #- env: BUILD=stack ARGS="--resolver lts-3"
115− compiler: ": #stack 7.10.2 osx"
119+ # compiler: ": #stack 7.10.2 osx"
116− os: osx
120+ # os: osx
117
121
118− - env: BUILD=stack ARGS="--resolver lts-6"
122+ #- env: BUILD=stack ARGS="--resolver lts-6"
119− compiler: ": #stack 7.10.3 osx"
123+ # compiler: ": #stack 7.10.3 osx"
120− os: osx
124+ # os: osx
121
125
122− - env: BUILD=stack ARGS="--resolver lts-7"
126+ #- env: BUILD=stack ARGS="--resolver lts-7"
123− compiler: ": #stack 8.0.1 osx"
127+ # compiler: ": #stack 8.0.1 osx"
124− os: osx
128+ # os: osx
125
129
126 - env: BUILD=stack ARGS="--resolver lts-9"
130 - env: BUILD=stack ARGS="--resolver lts-9"
127 compiler: ": #stack 8.0.2 osx"
131 compiler: ": #stack 8.0.2 osx"
128 os: osx
132 os: osx
129
133
130− - env: BUILD=stack ARGS="--resolver lts-10"
134+ - env: BUILD=stack ARGS="--resolver lts-11"
131 compiler: ": #stack 8.2.2 osx"
135 compiler: ": #stack 8.2.2 osx"
132 os: osx
136 os: osx
133
137
@@ -153,9 +157,9 @@ before_install:
153- |
157- |
154 if [ `uname` = "Darwin" ]
158 if [ `uname` = "Darwin" ]
155 then
159 then
156− travis_retry curl --insecure -L https://www.stackage.org/stack/osx-x86_64 | tar xz --strip-components=1 --include '*/stack' -C ~/.local/bin
160+ travis_retry curl --insecure -L https://get.haskellstack.org/stable/osx-x86_64.tar.gz | tar xz --strip-components=1 --include '*/stack' -C ~/.local/bin
157 else
161 else
158− travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
162+ travis_retry curl -L https://get.haskellstack.org/stable/linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
159 fi
163 fi
160
164
161 # Use the more reliable S3 mirror of Hackage
165 # Use the more reliable S3 mirror of Hackage
@@ -163,10 +167,6 @@ before_install:
163 echo 'remote-repo: hackage.haskell.org:http://hackage.fpcomplete.com/' > $HOME/.cabal/config
167 echo 'remote-repo: hackage.haskell.org:http://hackage.fpcomplete.com/' > $HOME/.cabal/config
164 echo 'remote-repo-cache: $HOME/.cabal/packages' >> $HOME/.cabal/config
168 echo 'remote-repo-cache: $HOME/.cabal/packages' >> $HOME/.cabal/config
165
169
166− if [ "$CABALVER" != "1.16" ]
167− then
168− echo 'jobs: $ncpus' >> $HOME/.cabal/config
169− fi
170
170
171install:
171install:
172- echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]"
172- echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]"
@@ -218,9 +218,13 @@ script:
218 cd dist
218 cd dist
219 tar zxfv "$SRC_TGZ"
219 tar zxfv "$SRC_TGZ"
220 cd "$PKGVER"
220 cd "$PKGVER"
221− cabal configure --enable-tests
221+ cabal configure --enable-tests --ghc-options -O0
222 cabal build
222 cabal build
223+ if [ "$CABALVER" = "1.16" ] || [ "$CABALVER" = "1.18" ]; then
223− cabal test
224+ cabal test
225+ else
226+ cabal test --show-details=streaming --log=/dev/stdout
227+ fi
224 cd $ORIGDIR
228 cd $ORIGDIR
225 done
229 done
226 ;;
230 ;;
appveyor.yml+19−7
@@ -1,11 +1,10 @@
1−# Disabled cache in hope of improving reliability of AppVeyor builds
2−#cache:
3−#- "c:\\sr" # stack root, short paths == fewer problems
4−
5build: off
1build: off
6
2
7before_test:
3before_test:
4+# http://help.appveyor.com/discussions/problems/6312-curl-command-not-found
5+- set PATH=C:\Program Files\Git\mingw64\bin;%PATH%
6+
8−- curl -sS -ostack.zip -L --insecure http://www.stackage.org/stack/windows-i386
7+- curl -sS -ostack.zip -L --insecure https://get.haskellstack.org/stable/windows-x86_64.zip
9- 7z x stack.zip stack.exe
8- 7z x stack.zip stack.exe
10
9
11clone_folder: "c:\\stack"
10clone_folder: "c:\\stack"
@@ -13,8 +12,21 @@ environment:
13 global:
12 global:
14 STACK_ROOT: "c:\\sr"
13 STACK_ROOT: "c:\\sr"
15
14
15+ matrix:
16+ - ARGS: ""
17+ #- ARGS: "--resolver lts-2"
18+ #- ARGS: "--resolver lts-3"
19+ #- ARGS: "--resolver lts-6"
20+ #- ARGS: "--resolver lts-7"
21+ - ARGS: "--resolver lts-9"
22+ - ARGS: "--resolver lts-11"
23+ #- ARGS: "--resolver nightly"
24+
16test_script:
25test_script:
26+
27+# Install toolchain, but do it silently due to lots of output
17−- stack setup > nul
28+- stack %ARGS% setup > nul
29+
18# The ugly echo "" hack is to avoid complaints about 0 being an invalid file
30# The ugly echo "" hack is to avoid complaints about 0 being an invalid file
19# descriptor
31# descriptor
20−- echo "" | stack --no-terminal test
32+- echo "" | stack %ARGS% --no-terminal test --pedantic
yaml.cabal+3−1
@@ -46,7 +46,9 @@ flag no-unicode
46
46
47library
47library
48 other-extensions: LambdaCase
48 other-extensions: LambdaCase
49+ if impl(ghc < 8.0.2)
50+ buildable: False
49− build-depends: base >= 4 && < 5
51+ build-depends: base >= 4.9.1 && < 5
50 , transformers >= 0.1
52 , transformers >= 0.1
51 , bytestring >= 0.9.1.4
53 , bytestring >= 0.9.1.4
52 , conduit >= 1.2.8 && < 1.4
54 , conduit >= 1.2.8 && < 1.4