88#
99# For more information, see https://github.com/haskell-CI/haskell-ci
1010#
11- # version: 0.17.20231010
11+ # version: 0.19.20240514
1212#
13- # REGENDATA ("0.17.20231010 ",["github","--no-cabal-check","agda-stdlib-utils.cabal"])
13+ # REGENDATA ("0.19.20240514 ",["github","--no-cabal-check","agda-stdlib-utils.cabal"])
1414#
1515name : Haskell-CI
1616on :
@@ -40,24 +40,29 @@ jobs:
4040 timeout-minutes :
4141 60
4242 container :
43- image : buildpack-deps:bionic
43+ image : buildpack-deps:jammy
4444 continue-on-error : ${{ matrix.allow-failure }}
4545 strategy :
4646 matrix :
4747 include :
48- - compiler : ghc-9.8 .1
48+ - compiler : ghc-9.10 .1
4949 compilerKind : ghc
50- compilerVersion : 9.8 .1
50+ compilerVersion : 9.10 .1
5151 setup-method : ghcup
5252 allow-failure : false
53- - compiler : ghc-9.6.3
53+ - compiler : ghc-9.8.2
5454 compilerKind : ghc
55- compilerVersion : 9.6.3
55+ compilerVersion : 9.8.2
5656 setup-method : ghcup
5757 allow-failure : false
58- - compiler : ghc-9.4.7
58+ - compiler : ghc-9.6.5
5959 compilerKind : ghc
60- compilerVersion : 9.4.7
60+ compilerVersion : 9.6.5
61+ setup-method : ghcup
62+ allow-failure : false
63+ - compiler : ghc-9.4.8
64+ compilerKind : ghc
65+ compilerVersion : 9.4.8
6166 setup-method : ghcup
6267 allow-failure : false
6368 - compiler : ghc-9.2.8
@@ -78,34 +83,24 @@ jobs:
7883 - compiler : ghc-8.8.4
7984 compilerKind : ghc
8085 compilerVersion : 8.8.4
81- setup-method : hvr-ppa
86+ setup-method : ghcup
8287 allow-failure : false
8388 - compiler : ghc-8.6.5
8489 compilerKind : ghc
8590 compilerVersion : 8.6.5
86- setup-method : hvr-ppa
91+ setup-method : ghcup
8792 allow-failure : false
8893 fail-fast : false
8994 steps :
9095 - name : apt
9196 run : |
9297 apt-get update
9398 apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
94- if [ "${{ matrix.setup-method }}" = ghcup ]; then
95- mkdir -p "$HOME/.ghcup/bin"
96- curl -sL https://downloads.haskell.org/ghcup/0.1.19.5/x86_64-linux-ghcup-0.1.19.5 > "$HOME/.ghcup/bin/ghcup"
97- chmod a+x "$HOME/.ghcup/bin/ghcup"
98- "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
99- "$HOME/.ghcup/bin/ghcup" install cabal 3.10.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
100- else
101- apt-add-repository -y 'ppa:hvr/ghc'
102- apt-get update
103- apt-get install -y "$HCNAME"
104- mkdir -p "$HOME/.ghcup/bin"
105- curl -sL https://downloads.haskell.org/ghcup/0.1.19.5/x86_64-linux-ghcup-0.1.19.5 > "$HOME/.ghcup/bin/ghcup"
106- chmod a+x "$HOME/.ghcup/bin/ghcup"
107- "$HOME/.ghcup/bin/ghcup" install cabal 3.10.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
108- fi
99+ mkdir -p "$HOME/.ghcup/bin"
100+ curl -sL https://downloads.haskell.org/ghcup/0.1.20.0/x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
101+ chmod a+x "$HOME/.ghcup/bin/ghcup"
102+ "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
103+ "$HOME/.ghcup/bin/ghcup" install cabal 3.10.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
109104 env :
110105 HCKIND : ${{ matrix.compilerKind }}
111106 HCNAME : ${{ matrix.compiler }}
@@ -117,22 +112,13 @@ jobs:
117112 echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
118113 echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
119114 HCDIR=/opt/$HCKIND/$HCVER
120- if [ "${{ matrix.setup-method }}" = ghcup ]; then
121- HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
122- HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
123- HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
124- echo "HC=$HC" >> "$GITHUB_ENV"
125- echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
126- echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
127- echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
128- else
129- HC=$HCDIR/bin/$HCKIND
130- echo "HC=$HC" >> "$GITHUB_ENV"
131- echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
132- echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
133- echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
134- fi
135-
115+ HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
116+ HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
117+ HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
118+ echo "HC=$HC" >> "$GITHUB_ENV"
119+ echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
120+ echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
121+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
136122 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
137123 echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
138124 echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
@@ -189,7 +175,7 @@ jobs:
189175 chmod a+x $HOME/.cabal/bin/cabal-plan
190176 cabal-plan --version
191177 - name : checkout
192- uses : actions/checkout@v3
178+ uses : actions/checkout@v4
193179 with :
194180 path : source
195181 - name : initial cabal.project for sdist
@@ -217,15 +203,15 @@ jobs:
217203 echo " ghc-options: -Werror=missing-methods" >> cabal.project
218204 cat >> cabal.project <<EOF
219205 EOF
220- $HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(agda-stdlib-utils)$/; }' >> cabal.project.local
206+ $HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: any. $_ installed\n" unless /^(agda-stdlib-utils)$/; }' >> cabal.project.local
221207 cat cabal.project
222208 cat cabal.project.local
223209 - name : dump install plan
224210 run : |
225211 $CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH --dry-run all
226212 cabal-plan
227213 - name : restore cache
228- uses : actions/cache/restore@v3
214+ uses : actions/cache/restore@v4
229215 with :
230216 key : ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
231217 path : ~/.cabal/store
@@ -248,7 +234,7 @@ jobs:
248234 rm -f cabal.project.local
249235 $CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all
250236 - name : save cache
251- uses : actions/cache/save@v3
237+ uses : actions/cache/save@v4
252238 if : always()
253239 with :
254240 key : ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
0 commit comments