Skip to content

Commit 0dc4ccb

Browse files
authored
Merge pull request #26 from well-typed/edsko/ghc-9.12
ghc 9.12
2 parents def8cb8 + 5864e5a commit 0dc4ccb

File tree

2 files changed

+46
-29
lines changed

2 files changed

+46
-29
lines changed

.github/workflows/haskell-ci.yml

Lines changed: 38 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
#
99
# For more information, see https://github.com/haskell-CI/haskell-ci
1010
#
11-
# version: 0.17.20231219
11+
# version: 0.19.20250104
1212
#
13-
# REGENDATA ("0.17.20231219",["github","visualize-cbn.cabal"])
13+
# REGENDATA ("0.19.20250104",["github","visualize-cbn.cabal"])
1414
#
1515
name: Haskell-CI
1616
on:
@@ -23,19 +23,29 @@ jobs:
2323
timeout-minutes:
2424
60
2525
container:
26-
image: buildpack-deps:bionic
26+
image: buildpack-deps:jammy
2727
continue-on-error: ${{ matrix.allow-failure }}
2828
strategy:
2929
matrix:
3030
include:
31-
- compiler: ghc-9.8.1
31+
- compiler: ghc-9.12.1
3232
compilerKind: ghc
33-
compilerVersion: 9.8.1
33+
compilerVersion: 9.12.1
3434
setup-method: ghcup
3535
allow-failure: false
36-
- compiler: ghc-9.6.3
36+
- compiler: ghc-9.10.1
3737
compilerKind: ghc
38-
compilerVersion: 9.6.3
38+
compilerVersion: 9.10.1
39+
setup-method: ghcup
40+
allow-failure: false
41+
- compiler: ghc-9.8.2
42+
compilerKind: ghc
43+
compilerVersion: 9.8.2
44+
setup-method: ghcup
45+
allow-failure: false
46+
- compiler: ghc-9.6.6
47+
compilerKind: ghc
48+
compilerVersion: 9.6.6
3949
setup-method: ghcup
4050
allow-failure: false
4151
- compiler: ghc-9.4.8
@@ -60,15 +70,29 @@ jobs:
6070
allow-failure: false
6171
fail-fast: false
6272
steps:
63-
- name: apt
73+
- name: apt-get install
6474
run: |
6575
apt-get update
6676
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
77+
- name: Install GHCup
78+
run: |
6779
mkdir -p "$HOME/.ghcup/bin"
68-
curl -sL https://downloads.haskell.org/ghcup/0.1.20.0/x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
80+
curl -sL https://downloads.haskell.org/ghcup/0.1.30.0/x86_64-linux-ghcup-0.1.30.0 > "$HOME/.ghcup/bin/ghcup"
6981
chmod a+x "$HOME/.ghcup/bin/ghcup"
82+
- name: Install cabal-install
83+
run: |
84+
"$HOME/.ghcup/bin/ghcup" install cabal 3.14.1.1 || (cat "$HOME"/.ghcup/logs/*.* && false)
85+
echo "CABAL=$HOME/.ghcup/bin/cabal-3.14.1.1 -vnormal+nowrap" >> "$GITHUB_ENV"
86+
- name: Install GHC (GHCup)
87+
if: matrix.setup-method == 'ghcup'
88+
run: |
7089
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
71-
"$HOME/.ghcup/bin/ghcup" install cabal 3.10.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
90+
HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
91+
HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
92+
HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
93+
echo "HC=$HC" >> "$GITHUB_ENV"
94+
echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
95+
echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
7296
env:
7397
HCKIND: ${{ matrix.compilerKind }}
7498
HCNAME: ${{ matrix.compiler }}
@@ -79,21 +103,12 @@ jobs:
79103
echo "LANG=C.UTF-8" >> "$GITHUB_ENV"
80104
echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
81105
echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
82-
HCDIR=/opt/$HCKIND/$HCVER
83-
HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
84-
HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
85-
HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
86-
echo "HC=$HC" >> "$GITHUB_ENV"
87-
echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
88-
echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
89-
echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
90106
HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
91107
echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
92108
echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
93109
echo "ARG_BENCH=--enable-benchmarks" >> "$GITHUB_ENV"
94110
echo "HEADHACKAGE=false" >> "$GITHUB_ENV"
95111
echo "ARG_COMPILER=--$HCKIND --with-compiler=$HC" >> "$GITHUB_ENV"
96-
echo "GHCJSARITH=0" >> "$GITHUB_ENV"
97112
env:
98113
HCKIND: ${{ matrix.compilerKind }}
99114
HCNAME: ${{ matrix.compiler }}
@@ -143,7 +158,7 @@ jobs:
143158
chmod a+x $HOME/.cabal/bin/cabal-plan
144159
cabal-plan --version
145160
- name: checkout
146-
uses: actions/checkout@v3
161+
uses: actions/checkout@v4
147162
with:
148163
path: source
149164
- name: initial cabal.project for sdist
@@ -171,15 +186,15 @@ jobs:
171186
echo " ghc-options: -Werror=missing-methods" >> cabal.project
172187
cat >> cabal.project <<EOF
173188
EOF
174-
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(visualize-cbn)$/; }' >> cabal.project.local
189+
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: any.$_ installed\n" unless /^(visualize-cbn)$/; }' >> cabal.project.local
175190
cat cabal.project
176191
cat cabal.project.local
177192
- name: dump install plan
178193
run: |
179194
$CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH --dry-run all
180195
cabal-plan
181196
- name: restore cache
182-
uses: actions/cache/restore@v3
197+
uses: actions/cache/restore@v4
183198
with:
184199
key: ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
185200
path: ~/.cabal/store
@@ -206,8 +221,8 @@ jobs:
206221
rm -f cabal.project.local
207222
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all
208223
- name: save cache
209-
uses: actions/cache/save@v3
210224
if: always()
225+
uses: actions/cache/save@v4
211226
with:
212227
key: ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
213228
path: ~/.cabal/store

visualize-cbn.cabal

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,10 @@ build-type: Simple
1414
extra-source-files: ChangeLog.md README.md CONTRIBUTORS
1515

1616
tested-with:
17-
GHC == 9.8.1
18-
GHC == 9.6.3
17+
GHC == 9.12.1
18+
GHC == 9.10.1
19+
GHC == 9.8.2
20+
GHC == 9.6.6
1921
GHC == 9.4.8
2022
GHC == 9.2.8
2123
GHC == 9.0.2
@@ -52,16 +54,16 @@ executable visualize-cbn
5254
CBN.Util.Doc.Style
5355
CBN.Util.Map
5456
CBN.Util.Snoc
55-
build-depends: base >= 4.14 && < 4.20
56-
, ansi-terminal >= 1.0 && < 1.1
57+
build-depends: base >= 4.14 && < 4.22
58+
, ansi-terminal >= 1.0 && < 1.2
5759
, blaze-html >= 0.9 && < 0.10
5860
, blaze-markup >= 0.8 && < 0.9
5961
, containers >= 0.6 && < 0.8
60-
, data-default >= 0.7 && < 0.8
62+
, data-default >= 0.7 && < 0.9
6163
, mtl >= 2.2 && < 2.4
6264
, optparse-applicative >= 0.18 && < 0.19
6365
, parsec >= 3.1 && < 3.2
64-
, template-haskell >= 2.16 && < 2.22
66+
, template-haskell >= 2.16 && < 2.24
6567
, text >= 1.2 && < 2.2
6668
hs-source-dirs: src
6769
default-language: Haskell2010

0 commit comments

Comments
 (0)