@@ -8,9 +8,9 @@
9# For more information, see https://github.com/haskell-CI/haskell-ci
9# For more information, see https://github.com/haskell-CI/haskell-ci
11−# version: 0.11.20210101
11+# version: 0.11.20210220
13−# REGENDATA ("0.11.20210101",["github","cabal.project"])
13+# REGENDATA ("0.11.20210220",["github","cabal.project"])
15name: Haskell-CI
15name: Haskell-CI
@@ -22,7 +22,7 @@ on:
25− name: Haskell-CI Linux - GHC ${{ matrix.ghc }}
25+ name: Haskell-CI - Linux - GHC ${{ matrix.ghc }}
26 runs-on: ubuntu-18.04
26 runs-on: ubuntu-18.04
27 container:
27 container:
28 image: buildpack-deps:bionic
28 image: buildpack-deps:bionic
@@ -30,7 +30,9 @@ jobs:
33− - ghc: 8.10.3
33+ - ghc: 9.0.1
34 allow-failure: false
36 allow-failure: false
35 - ghc: 8.8.4
37 - ghc: 8.8.4
36 allow-failure: false
38 allow-failure: false
@@ -54,7 +56,7 @@ jobs:
54 apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common
56 apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common
55 apt-add-repository -y 'ppa:hvr/ghc'
57 apt-add-repository -y 'ppa:hvr/ghc'
56 apt-get update
58 apt-get update
57− apt-get install -y ghc-$GHC_VERSION cabal-install-3.2
59+ apt-get install -y ghc-$GHC_VERSION cabal-install-3.4
59 GHC_VERSION: ${{ matrix.ghc }}
61 GHC_VERSION: ${{ matrix.ghc }}
60 - name: Set PATH and environment variables
62 - name: Set PATH and environment variables
@@ -67,12 +69,13 @@ jobs:
67 echo "HC=$HC" >> $GITHUB_ENV
69 echo "HC=$HC" >> $GITHUB_ENV
68 echo "HCPKG=/opt/ghc/$GHC_VERSION/bin/ghc-pkg" >> $GITHUB_ENV
70 echo "HCPKG=/opt/ghc/$GHC_VERSION/bin/ghc-pkg" >> $GITHUB_ENV
69 echo "HADDOCK=/opt/ghc/$GHC_VERSION/bin/haddock" >> $GITHUB_ENV
71 echo "HADDOCK=/opt/ghc/$GHC_VERSION/bin/haddock" >> $GITHUB_ENV
70− 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
71 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
73 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
72 echo "HCNUMVER=$HCNUMVER" >> $GITHUB_ENV
74 echo "HCNUMVER=$HCNUMVER" >> $GITHUB_ENV
73 echo "ARG_TESTS=--enable-tests" >> $GITHUB_ENV
75 echo "ARG_TESTS=--enable-tests" >> $GITHUB_ENV
74 echo "ARG_BENCH=--enable-benchmarks" >> $GITHUB_ENV
76 echo "ARG_BENCH=--enable-benchmarks" >> $GITHUB_ENV
77+ echo "HEADHACKAGE=false" >> $GITHUB_ENV
75− echo "ARG_COMPILER=--ghc --with-compiler=/opt/ghc/$GHC_VERSION/bin/ghc" >> $GITHUB_ENV
78+ echo "ARG_COMPILER=--ghc --with-compiler=$HC" >> $GITHUB_ENV
76 echo "GHCJSARITH=0" >> $GITHUB_ENV
79 echo "GHCJSARITH=0" >> $GITHUB_ENV
78 GHC_VERSION: ${{ matrix.ghc }}
81 GHC_VERSION: ${{ matrix.ghc }}
@@ -110,7 +113,7 @@ jobs:
110 - name: cache (tools)
113 - name: cache (tools)
111 uses: actions/cache@v2
114 uses: actions/cache@v2
113− key: ${{ runner.os }}-${{ matrix.ghc }}-tools-b869866c
116+ key: ${{ runner.os }}-${{ matrix.ghc }}-tools-0d2d184d
114 path: ~/.haskell-ci-tools
117 path: ~/.haskell-ci-tools
115 - name: install cabal-plan
118 - name: install cabal-plan
@@ -123,16 +126,20 @@ jobs:
123 cabal-plan --version
126 cabal-plan --version
124 - name: install doctest
127 - name: install doctest
126− if [ $((HCNUMVER >= 80000)) -ne 0 ] ; then $CABAL --store-dir=$HOME/.haskell-ci-tools/store v2-install $ARG_COMPILER --ignore-project -j2 doctest --constraint='doctest ^>=0.17' ; fi
129+ if [ $((HCNUMVER >= 80000 && HCNUMVER < 90000)) -ne 0 ] ; then $CABAL --store-dir=$HOME/.haskell-ci-tools/store v2-install $ARG_COMPILER --ignore-project -j2 doctest --constraint='doctest ^>=0.17' ; fi
127− if [ $((HCNUMVER >= 80000)) -ne 0 ] ; then doctest --version ; fi
130+ if [ $((HCNUMVER >= 80000 && HCNUMVER < 90000)) -ne 0 ] ; then doctest --version ; fi
128 - name: checkout
131 - name: checkout
129 uses: actions/checkout@v2
132 uses: actions/checkout@v2
131 path: source
134 path: source
135+ - name: initial cabal.project for sdist
138+ echo "packages: $GITHUB_WORKSPACE/source/." >> cabal.project
132 - name: sdist
140 - name: sdist
134 mkdir -p sdist
142 mkdir -p sdist
136 $CABAL sdist all --output-dir $GITHUB_WORKSPACE/sdist
143 $CABAL sdist all --output-dir $GITHUB_WORKSPACE/sdist
137 - name: unpack
144 - name: unpack
@@ -178,8 +185,8 @@ jobs:
178 - name: doctest
185 - name: doctest
180 perl -i -e 'while (<ARGV>) { print unless /package-id\s+(base-compat)-\d+(\.\d+)*/; }' .ghc.environment.*
187 perl -i -e 'while (<ARGV>) { print unless /package-id\s+(base-compat)-\d+(\.\d+)*/; }' .ghc.environment.*
181− if [ $((HCNUMVER >= 80000)) -ne 0 ] ; then cd ${PKGDIR_http_api_data} || false ; fi
188+ if [ $((HCNUMVER >= 80000 && HCNUMVER < 90000)) -ne 0 ] ; then cd ${PKGDIR_http_api_data} || false ; fi
182− if [ $((HCNUMVER >= 80000)) -ne 0 ] ; then doctest src/ ; fi
189+ if [ $((HCNUMVER >= 80000 && HCNUMVER < 90000)) -ne 0 ] ; then doctest src/ ; fi
183 - name: cabal check
190 - name: cabal check
185 cd ${PKGDIR_http_api_data} || false
192 cd ${PKGDIR_http_api_data} || false