88#
99# For more information, see https://github.com/haskell-CI/haskell-ci
1010#
11- # version: 0.11.20201213
11+ # version: 0.11.20210222
1212#
13- # REGENDATA ("0.11.20201213 ",["--config=cabal.haskell-ci","github","cabal.project"])
13+ # REGENDATA ("0.11.20210222 ",["--config=cabal.haskell-ci","github","cabal.project"])
1414#
1515name : Haskell-CI
1616on :
2222 - master
2323jobs :
2424 linux :
25- name : Haskell-CI Linux
25+ name : Haskell-CI - Linux - GHC ${{ matrix.ghc }}
2626 runs-on : ubuntu-18.04
2727 container :
2828 image : buildpack-deps:bionic
29+ continue-on-error : ${{ matrix.allow-failure }}
2930 strategy :
3031 matrix :
3132 include :
32- - ghc : 8.10.1
33- - ghc : 8.8.3
33+ - ghc : 9.0.1
34+ allow-failure : false
35+ - ghc : 8.10.4
36+ allow-failure : false
37+ - ghc : 8.8.4
38+ allow-failure : false
3439 - ghc : 8.6.5
40+ allow-failure : false
3541 - ghc : 8.4.4
42+ allow-failure : false
3643 - ghc : 8.2.2
44+ allow-failure : false
3745 - ghc : 8.0.2
46+ allow-failure : false
3847 - ghc : 7.10.3
48+ allow-failure : false
3949 - ghc : 7.8.4
50+ allow-failure : false
4051 fail-fast : false
4152 steps :
4253 - name : apt
4556 apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common
4657 apt-add-repository -y 'ppa:hvr/ghc'
4758 apt-get update
48- apt-get install -y ghc-$GHC_VERSION cabal-install-3.2
59+ apt-get install -y ghc-$GHC_VERSION cabal-install-3.4
4960 env :
5061 GHC_VERSION : ${{ matrix.ghc }}
5162 - name : Set PATH and environment variables
@@ -58,12 +69,13 @@ jobs:
5869 echo "HC=$HC" >> $GITHUB_ENV
5970 echo "HCPKG=/opt/ghc/$GHC_VERSION/bin/ghc-pkg" >> $GITHUB_ENV
6071 echo "HADDOCK=/opt/ghc/$GHC_VERSION/bin/haddock" >> $GITHUB_ENV
61- echo "CABAL=/opt/cabal/3.2 /bin/cabal -vnormal+nowrap" >> $GITHUB_ENV
72+ echo "CABAL=/opt/cabal/3.4 /bin/cabal -vnormal+nowrap" >> $GITHUB_ENV
6273 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
6374 echo "HCNUMVER=$HCNUMVER" >> $GITHUB_ENV
6475 echo "ARG_TESTS=--enable-tests" >> $GITHUB_ENV
6576 echo "ARG_BENCH=--enable-benchmarks" >> $GITHUB_ENV
66- echo "ARG_COMPILER=--ghc --with-compiler=/opt/ghc/$GHC_VERSION/bin/ghc" >> $GITHUB_ENV
77+ echo "HEADHACKAGE=false" >> $GITHUB_ENV
78+ echo "ARG_COMPILER=--ghc --with-compiler=$HC" >> $GITHUB_ENV
6779 echo "GHCJSARITH=0" >> $GITHUB_ENV
6880 env :
6981 GHC_VERSION : ${{ matrix.ghc }}
7587 mkdir -p $CABAL_DIR
7688 cat >> $CABAL_CONFIG <<EOF
7789 remote-build-reporting: anonymous
78- write-ghc-environment-files: always
90+ write-ghc-environment-files: never
7991 remote-repo-cache: $CABAL_DIR/packages
8092 logs-dir: $CABAL_DIR/logs
8193 world-file: $CABAL_DIR/world
@@ -106,14 +118,20 @@ jobs:
106118 xz -d < cabal-plan.xz > $HOME/.cabal/bin/cabal-plan
107119 rm -f cabal-plan.xz
108120 chmod a+x $HOME/.cabal/bin/cabal-plan
121+ cabal-plan --version
109122 - name : checkout
110123 uses : actions/checkout@v2
111124 with :
112125 path : source
126+ - name : initial cabal.project for sdist
127+ run : |
128+ touch cabal.project
129+ echo "packages: $GITHUB_WORKSPACE/source/." >> cabal.project
130+ echo "packages: $GITHUB_WORKSPACE/source/samples" >> cabal.project
131+ cat cabal.project
113132 - name : sdist
114133 run : |
115134 mkdir -p sdist
116- cd source || false
117135 $CABAL sdist all --output-dir $GITHUB_WORKSPACE/sdist
118136 - name : unpack
119137 run : |
@@ -138,6 +156,9 @@ jobs:
138156 constraints: semigroups ^>=0.19
139157 constraints: github +openssl
140158 constraints: github-samples +openssl
159+ allow-newer: deepseq-generics-0.2.0.0:base
160+ allow-newer: deepseq-generics-0.2.0.0:ghc-prim
161+ allow-newer: cryptohash-sha1-0.11.100.1:base
141162 optimization: False
142163 EOF
143164 $HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(github|github-samples)$/; }' >> cabal.project.local
@@ -155,14 +176,14 @@ jobs:
155176 restore-keys : ${{ runner.os }}-${{ matrix.ghc }}-
156177 - name : install dependencies
157178 run : |
158- $CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks --dependencies-only all
159- $CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH --dependencies-only all
179+ $CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks --dependencies-only -j2 all
180+ $CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH --dependencies-only -j2 all
160181 - name : build w/o tests
161182 run : |
162183 $CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all
163184 - name : build
164185 run : |
165- $CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH all
186+ $CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH all --write-ghc-environment-files=always
166187 - name : tests
167188 run : |
168189 $CABAL v2-test $ARG_COMPILER $ARG_TESTS $ARG_BENCH all --test-show-details=direct
0 commit comments