66#
77# haskell-ci regenerate
88#
9- # For more information, see https://github.com/haskell-CI /haskell-ci
9+ # For more information, see https://github.com/andreasabel /haskell-ci
1010#
11- # version: 0.18
11+ # version: 0.19.20240703
1212#
13- # REGENDATA ("0.18 ",["github","dlist.cabal"])
13+ # REGENDATA ("0.19.20240703 ",["github","dlist.cabal"])
1414#
1515name : Haskell-CI
1616on :
17- - push
18- - pull_request
17+ push :
18+ branches :
19+ - master
20+ pull_request :
21+ branches :
22+ - master
1923jobs :
2024 linux :
2125 name : Haskell-CI - Linux - ${{ matrix.compiler }}
2226 runs-on : ubuntu-20.04
2327 timeout-minutes :
2428 60
2529 container :
26- image : buildpack-deps:bionic
30+ image : buildpack-deps:jammy
2731 continue-on-error : ${{ matrix.allow-failure }}
2832 strategy :
2933 matrix :
3034 include :
31- - compiler : ghc-9.8 .1
35+ - compiler : ghc-9.10 .1
3236 compilerKind : ghc
33- compilerVersion : 9.8 .1
37+ compilerVersion : 9.10 .1
3438 setup-method : ghcup
3539 allow-failure : false
36- - compiler : ghc-9.6 .2
40+ - compiler : ghc-9.8 .2
3741 compilerKind : ghc
38- compilerVersion : 9.6 .2
42+ compilerVersion : 9.8 .2
3943 setup-method : ghcup
4044 allow-failure : false
41- - compiler : ghc-9.4.5
45+ - compiler : ghc-9.6.6
4246 compilerKind : ghc
43- compilerVersion : 9.4.5
47+ compilerVersion : 9.6.6
48+ setup-method : ghcup
49+ allow-failure : false
50+ - compiler : ghc-9.4.8
51+ compilerKind : ghc
52+ compilerVersion : 9.4.8
4453 setup-method : ghcup
4554 allow-failure : false
4655 - compiler : ghc-9.2.8
@@ -61,79 +70,39 @@ jobs:
6170 - compiler : ghc-8.8.4
6271 compilerKind : ghc
6372 compilerVersion : 8.8.4
64- setup-method : hvr-ppa
73+ setup-method : ghcup
6574 allow-failure : false
6675 - compiler : ghc-8.6.5
6776 compilerKind : ghc
6877 compilerVersion : 8.6.5
69- setup-method : hvr-ppa
78+ setup-method : ghcup
7079 allow-failure : false
7180 - compiler : ghc-8.4.4
7281 compilerKind : ghc
7382 compilerVersion : 8.4.4
74- setup-method : hvr-ppa
83+ setup-method : ghcup
7584 allow-failure : false
7685 - compiler : ghc-8.2.2
7786 compilerKind : ghc
7887 compilerVersion : 8.2.2
79- setup-method : hvr-ppa
88+ setup-method : ghcup
8089 allow-failure : false
8190 - compiler : ghc-8.0.2
8291 compilerKind : ghc
8392 compilerVersion : 8.0.2
84- setup-method : hvr-ppa
85- allow-failure : false
86- - compiler : ghc-7.10.3
87- compilerKind : ghc
88- compilerVersion : 7.10.3
89- setup-method : hvr-ppa
90- allow-failure : false
91- - compiler : ghc-7.8.4
92- compilerKind : ghc
93- compilerVersion : 7.8.4
94- setup-method : hvr-ppa
95- allow-failure : false
96- - compiler : ghc-7.6.3
97- compilerKind : ghc
98- compilerVersion : 7.6.3
99- setup-method : hvr-ppa
100- allow-failure : false
101- - compiler : ghc-7.4.2
102- compilerKind : ghc
103- compilerVersion : 7.4.2
104- setup-method : hvr-ppa
105- allow-failure : false
106- - compiler : ghc-7.2.2
107- compilerKind : ghc
108- compilerVersion : 7.2.2
109- setup-method : hvr-ppa
110- allow-failure : false
111- - compiler : ghc-7.0.4
112- compilerKind : ghc
113- compilerVersion : 7.0.4
114- setup-method : hvr-ppa
93+ setup-method : ghcup
11594 allow-failure : false
11695 fail-fast : false
11796 steps :
11897 - name : apt
11998 run : |
12099 apt-get update
121- apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
122- if [ "${{ matrix.setup-method }}" = ghcup ]; then
123- mkdir -p "$HOME/.ghcup/bin"
124- curl -sL https://downloads.haskell.org/ghcup/0.1.20.0/x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
125- chmod a+x "$HOME/.ghcup/bin/ghcup"
126- "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
127- "$HOME/.ghcup/bin/ghcup" install cabal 3.10.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
128- else
129- apt-add-repository -y 'ppa:hvr/ghc'
130- apt-get update
131- apt-get install -y "$HCNAME"
132- mkdir -p "$HOME/.ghcup/bin"
133- curl -sL https://downloads.haskell.org/ghcup/0.1.20.0/x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
134- chmod a+x "$HOME/.ghcup/bin/ghcup"
135- "$HOME/.ghcup/bin/ghcup" install cabal 3.10.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
136- fi
100+ apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5 libnuma-dev
101+ mkdir -p "$HOME/.ghcup/bin"
102+ curl -sL https://downloads.haskell.org/ghcup/0.1.20.0/x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
103+ chmod a+x "$HOME/.ghcup/bin/ghcup"
104+ "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
105+ "$HOME/.ghcup/bin/ghcup" install cabal 3.12.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
137106 env :
138107 HCKIND : ${{ matrix.compilerKind }}
139108 HCNAME : ${{ matrix.compiler }}
@@ -145,22 +114,13 @@ jobs:
145114 echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
146115 echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
147116 HCDIR=/opt/$HCKIND/$HCVER
148- if [ "${{ matrix.setup-method }}" = ghcup ]; then
149- HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
150- HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
151- HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
152- echo "HC=$HC" >> "$GITHUB_ENV"
153- echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
154- echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
155- echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
156- else
157- HC=$HCDIR/bin/$HCKIND
158- echo "HC=$HC" >> "$GITHUB_ENV"
159- echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
160- echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
161- echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
162- fi
163-
117+ HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
118+ HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
119+ HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
120+ echo "HC=$HC" >> "$GITHUB_ENV"
121+ echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
122+ echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
123+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.12.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
164124 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
165125 echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
166126 echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
@@ -217,7 +177,7 @@ jobs:
217177 chmod a+x $HOME/.cabal/bin/cabal-plan
218178 cabal-plan --version
219179 - name : checkout
220- uses : actions/checkout@v3
180+ uses : actions/checkout@v4
221181 with :
222182 path : source
223183 - name : initial cabal.project for sdist
@@ -245,15 +205,15 @@ jobs:
245205 if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo " ghc-options: -Werror=missing-methods" >> cabal.project ; fi
246206 cat >> cabal.project <<EOF
247207 EOF
248- $HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(dlist)$/; }' >> cabal.project.local
208+ $HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: any. $_ installed\n" unless /^(dlist)$/; }' >> cabal.project.local
249209 cat cabal.project
250210 cat cabal.project.local
251211 - name : dump install plan
252212 run : |
253213 $CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH --dry-run all
254214 cabal-plan
255215 - name : restore cache
256- uses : actions/cache/restore@v3
216+ uses : actions/cache/restore@v4
257217 with :
258218 key : ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
259219 path : ~/.cabal/store
@@ -283,7 +243,7 @@ jobs:
283243 rm -f cabal.project.local
284244 $CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all
285245 - name : save cache
286- uses : actions/cache/save@v3
246+ uses : actions/cache/save@v4
287247 if : always()
288248 with :
289249 key : ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
0 commit comments