Skip to content

Commit d8635e4

Browse files
authored
Bump CI to GHC 9.10.1 (#93)
* Bump CI to GHC 9.10.1 * Add base bounds to satisfy cabal check
1 parent b1fcea0 commit d8635e4

File tree

3 files changed

+25
-59
lines changed

3 files changed

+25
-59
lines changed

.github/workflows/haskell-ci.yml

+11-38
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
#
99
# For more information, see https://github.com/andreasabel/haskell-ci
1010
#
11-
# version: 0.18.1.20240316
11+
# version: 0.19.20240703
1212
#
13-
# REGENDATA ("0.18.1.20240316",["github","hsc2hs.cabal"])
13+
# REGENDATA ("0.19.20240703",["github","hsc2hs.cabal"])
1414
#
1515
name: Haskell-CI
1616
on:
@@ -27,24 +27,24 @@ jobs:
2727
timeout-minutes:
2828
60
2929
container:
30-
image: buildpack-deps:focal
30+
image: buildpack-deps:jammy
3131
continue-on-error: ${{ matrix.allow-failure }}
3232
strategy:
3333
matrix:
3434
include:
35-
- compiler: ghc-9.10.0.20240313
35+
- compiler: ghc-9.10.1
3636
compilerKind: ghc
37-
compilerVersion: 9.10.0.20240313
37+
compilerVersion: 9.10.1
3838
setup-method: ghcup
3939
allow-failure: false
4040
- compiler: ghc-9.8.2
4141
compilerKind: ghc
4242
compilerVersion: 9.8.2
4343
setup-method: ghcup
4444
allow-failure: false
45-
- compiler: ghc-9.6.4
45+
- compiler: ghc-9.6.6
4646
compilerKind: ghc
47-
compilerVersion: 9.6.4
47+
compilerVersion: 9.6.6
4848
setup-method: ghcup
4949
allow-failure: false
5050
- compiler: ghc-9.4.8
@@ -101,9 +101,8 @@ jobs:
101101
mkdir -p "$HOME/.ghcup/bin"
102102
curl -sL https://downloads.haskell.org/ghcup/0.1.20.0/x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
103103
chmod a+x "$HOME/.ghcup/bin/ghcup"
104-
"$HOME/.ghcup/bin/ghcup" config add-release-channel https://raw.githubusercontent.com/haskell/ghcup-metadata/master/ghcup-prereleases-0.0.8.yaml;
105104
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
106-
"$HOME/.ghcup/bin/ghcup" install cabal 3.10.2.1 || (cat "$HOME"/.ghcup/logs/*.* && false)
105+
"$HOME/.ghcup/bin/ghcup" install cabal 3.12.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
107106
env:
108107
HCKIND: ${{ matrix.compilerKind }}
109108
HCNAME: ${{ matrix.compiler }}
@@ -121,12 +120,12 @@ jobs:
121120
echo "HC=$HC" >> "$GITHUB_ENV"
122121
echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
123122
echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
124-
echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.2.1 -vnormal+nowrap" >> "$GITHUB_ENV"
123+
echo "CABAL=$HOME/.ghcup/bin/cabal-3.12.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
125124
HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
126125
echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
127126
echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
128127
echo "ARG_BENCH=--enable-benchmarks" >> "$GITHUB_ENV"
129-
if [ $((HCNUMVER >= 91000)) -ne 0 ] ; then echo "HEADHACKAGE=true" >> "$GITHUB_ENV" ; else echo "HEADHACKAGE=false" >> "$GITHUB_ENV" ; fi
128+
echo "HEADHACKAGE=false" >> "$GITHUB_ENV"
130129
echo "ARG_COMPILER=--$HCKIND --with-compiler=$HC" >> "$GITHUB_ENV"
131130
echo "GHCJSARITH=0" >> "$GITHUB_ENV"
132131
env:
@@ -155,18 +154,6 @@ jobs:
155154
repository hackage.haskell.org
156155
url: http://hackage.haskell.org/
157156
EOF
158-
if $HEADHACKAGE; then
159-
cat >> $CABAL_CONFIG <<EOF
160-
repository head.hackage.ghc.haskell.org
161-
url: https://ghc.gitlab.haskell.org/head.hackage/
162-
secure: True
163-
root-keys: 7541f32a4ccca4f97aea3b22f5e593ba2c0267546016b992dfadcd2fe944e55d
164-
26021a13b401500c8eb2761ca95c61f2d625bfef951b939a8124ed12ecf07329
165-
f76d08be13e9a61a377a85e2fb63f4c5435d40f8feb3e12eb05905edb8cdea89
166-
key-threshold: 3
167-
active-repositories: hackage.haskell.org, head.hackage.ghc.haskell.org:override
168-
EOF
169-
fi
170157
cat >> $CABAL_CONFIG <<EOF
171158
program-default-options
172159
ghc-options: $GHCJOBS +RTS -M3G -RTS
@@ -217,12 +204,8 @@ jobs:
217204
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo "package hsc2hs" >> cabal.project ; fi
218205
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo " ghc-options: -Werror=missing-methods" >> cabal.project ; fi
219206
cat >> cabal.project <<EOF
220-
allow-newer: containers
221207
EOF
222-
if $HEADHACKAGE; then
223-
echo "allow-newer: $($HCPKG list --simple-output | sed -E 's/([a-zA-Z-]+)-[0-9.]+/*:\1,/g')" >> cabal.project
224-
fi
225-
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(hsc2hs)$/; }' >> cabal.project.local
208+
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: any.$_ installed\n" unless /^(hsc2hs)$/; }' >> cabal.project.local
226209
cat cabal.project
227210
cat cabal.project.local
228211
- name: dump install plan
@@ -259,16 +242,6 @@ jobs:
259242
run: |
260243
rm -f cabal.project.local
261244
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all
262-
- name: prepare for constraint sets
263-
run: |
264-
rm -f cabal.project.local
265-
- name: constraint set containers-0.7
266-
run: |
267-
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then $CABAL v2-build $ARG_COMPILER --enable-tests --disable-benchmarks --constraint='containers ^>= 0.7' all --dry-run ; fi
268-
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then cabal-plan topo | sort ; fi
269-
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then $CABAL v2-build $ARG_COMPILER --enable-tests --disable-benchmarks --constraint='containers ^>= 0.7' --dependencies-only -j2 all ; fi
270-
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then $CABAL v2-build $ARG_COMPILER --enable-tests --disable-benchmarks --constraint='containers ^>= 0.7' all ; fi
271-
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then $CABAL v2-test $ARG_COMPILER --enable-tests --disable-benchmarks --constraint='containers ^>= 0.7' all ; fi
272245
- name: save cache
273246
uses: actions/cache/save@v4
274247
if: always()

cabal.haskell-ci

+8-9
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
branches: master
22
installed: +all
33

4-
constraint-set containers-0.7
5-
ghc: >= 8.2
6-
constraints: containers ^>= 0.7
7-
tests: True
8-
run-tests: True
9-
10-
raw-project
11-
allow-newer: containers
12-
4+
-- constraint-set containers-0.7
5+
-- ghc: >= 8.2
6+
-- constraints: containers ^>= 0.7
7+
-- tests: True
8+
-- run-tests: True
9+
--
10+
-- raw-project
11+
-- allow-newer: containers

hsc2hs.cabal

+6-12
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,9 @@ Data-Files: template-hsc.h
2828
build-type: Simple
2929

3030
tested-with:
31-
GHC == 9.10.0
31+
GHC == 9.10.1
3232
GHC == 9.8.2
33-
GHC == 9.6.4
33+
GHC == 9.6.6
3434
GHC == 9.4.8
3535
GHC == 9.2.8
3636
GHC == 9.0.2
@@ -40,12 +40,6 @@ tested-with:
4040
GHC == 8.4.4
4141
GHC == 8.2.2
4242
GHC == 8.0.2
43-
-- GHC == 7.10.3
44-
-- GHC == 7.8.4
45-
-- GHC == 7.6.3
46-
-- GHC == 7.4.2
47-
-- GHC == 7.2.2
48-
-- GHC == 7.0.4
4943

5044
extra-source-files:
5145
changelog.md
@@ -103,9 +97,9 @@ test-suite spec
10397
other-modules: ATTParser Flags BDD
10498
ghc-options: -Wall -threaded
10599
type: exitcode-stdio-1.0
106-
build-depends: base,
107-
test-framework >=0.8.2.0 && <0.9,
108-
test-framework-hunit >=0.3.0.2 && <0.4,
109-
HUnit >=1.3.1.2 && <1.4 || >=1.6.0.0 && <1.7
100+
build-depends: base >= 4.3.0 && < 4.21,
101+
test-framework >= 0.8.2.0 && < 0.9,
102+
test-framework-hunit >= 0.3.0.2 && < 0.4,
103+
HUnit >= 1.3.1.2 && < 1.4 || >= 1.6.0.0 && < 1.7
110104

111105
default-language: Haskell2010

0 commit comments

Comments
 (0)