Skip to content

Commit d7921ff

Browse files
authored
Merge pull request #62 from haskellari/ghc-9.10
Allow base-4.20
2 parents 7c7fd6a + 1e74545 commit d7921ff

File tree

2 files changed

+39
-52
lines changed

2 files changed

+39
-52
lines changed

.github/workflows/haskell-ci.yml

+34-48
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.20231010
11+
# version: 0.19.20240513
1212
#
13-
# REGENDATA ("0.17.20231010",["github","cabal.project"])
13+
# REGENDATA ("0.19.20240513",["github","cabal.project"])
1414
#
1515
name: Haskell-CI
1616
on:
@@ -27,24 +27,29 @@ jobs:
2727
timeout-minutes:
2828
60
2929
container:
30-
image: buildpack-deps:bionic
30+
image: buildpack-deps:jammy
3131
continue-on-error: ${{ matrix.allow-failure }}
3232
strategy:
3333
matrix:
3434
include:
35-
- compiler: ghc-9.8.1
35+
- compiler: ghc-9.10.1
3636
compilerKind: ghc
37-
compilerVersion: 9.8.1
37+
compilerVersion: 9.10.1
3838
setup-method: ghcup
3939
allow-failure: false
40-
- compiler: ghc-9.6.3
40+
- compiler: ghc-9.8.2
4141
compilerKind: ghc
42-
compilerVersion: 9.6.3
42+
compilerVersion: 9.8.2
4343
setup-method: ghcup
4444
allow-failure: false
45-
- compiler: ghc-9.4.7
45+
- compiler: ghc-9.6.5
4646
compilerKind: ghc
47-
compilerVersion: 9.4.7
47+
compilerVersion: 9.6.5
48+
setup-method: ghcup
49+
allow-failure: false
50+
- compiler: ghc-9.4.8
51+
compilerKind: ghc
52+
compilerVersion: 9.4.8
4853
setup-method: ghcup
4954
allow-failure: false
5055
- compiler: ghc-9.2.8
@@ -60,39 +65,29 @@ jobs:
6065
- compiler: ghc-8.10.4
6166
compilerKind: ghc
6267
compilerVersion: 8.10.4
63-
setup-method: hvr-ppa
68+
setup-method: ghcup
6469
allow-failure: false
6570
- compiler: ghc-8.8.4
6671
compilerKind: ghc
6772
compilerVersion: 8.8.4
68-
setup-method: hvr-ppa
73+
setup-method: ghcup
6974
allow-failure: false
7075
- compiler: ghc-8.6.5
7176
compilerKind: ghc
7277
compilerVersion: 8.6.5
73-
setup-method: hvr-ppa
78+
setup-method: ghcup
7479
allow-failure: false
7580
fail-fast: false
7681
steps:
7782
- name: apt
7883
run: |
7984
apt-get update
8085
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
81-
if [ "${{ matrix.setup-method }}" = ghcup ]; then
82-
mkdir -p "$HOME/.ghcup/bin"
83-
curl -sL https://downloads.haskell.org/ghcup/0.1.19.5/x86_64-linux-ghcup-0.1.19.5 > "$HOME/.ghcup/bin/ghcup"
84-
chmod a+x "$HOME/.ghcup/bin/ghcup"
85-
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
86-
"$HOME/.ghcup/bin/ghcup" install cabal 3.10.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
87-
else
88-
apt-add-repository -y 'ppa:hvr/ghc'
89-
apt-get update
90-
apt-get install -y "$HCNAME"
91-
mkdir -p "$HOME/.ghcup/bin"
92-
curl -sL https://downloads.haskell.org/ghcup/0.1.19.5/x86_64-linux-ghcup-0.1.19.5 > "$HOME/.ghcup/bin/ghcup"
93-
chmod a+x "$HOME/.ghcup/bin/ghcup"
94-
"$HOME/.ghcup/bin/ghcup" install cabal 3.10.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
95-
fi
86+
mkdir -p "$HOME/.ghcup/bin"
87+
curl -sL https://downloads.haskell.org/ghcup/0.1.20.0/x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
88+
chmod a+x "$HOME/.ghcup/bin/ghcup"
89+
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
90+
"$HOME/.ghcup/bin/ghcup" install cabal 3.10.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
9691
env:
9792
HCKIND: ${{ matrix.compilerKind }}
9893
HCNAME: ${{ matrix.compiler }}
@@ -104,22 +99,13 @@ jobs:
10499
echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
105100
echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
106101
HCDIR=/opt/$HCKIND/$HCVER
107-
if [ "${{ matrix.setup-method }}" = ghcup ]; then
108-
HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
109-
HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
110-
HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
111-
echo "HC=$HC" >> "$GITHUB_ENV"
112-
echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
113-
echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
114-
echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
115-
else
116-
HC=$HCDIR/bin/$HCKIND
117-
echo "HC=$HC" >> "$GITHUB_ENV"
118-
echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
119-
echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
120-
echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
121-
fi
122-
102+
HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
103+
HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
104+
HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
105+
echo "HC=$HC" >> "$GITHUB_ENV"
106+
echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
107+
echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
108+
echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
123109
HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
124110
echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
125111
echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
@@ -178,14 +164,14 @@ jobs:
178164
- name: install cabal-docspec
179165
run: |
180166
mkdir -p $HOME/.cabal/bin
181-
curl -sL https://github.com/phadej/cabal-extras/releases/download/cabal-docspec-0.0.0.20230517/cabal-docspec-0.0.0.20230517-x86_64-linux.xz > cabal-docspec.xz
182-
echo '3b31bbe463ad4d671abbc103db49628562ec48a6604cab278207b5b6acd21ed7 cabal-docspec.xz' | sha256sum -c -
167+
curl -sL https://github.com/phadej/cabal-extras/releases/download/cabal-docspec-0.0.0.20240414/cabal-docspec-0.0.0.20240414-x86_64-linux.xz > cabal-docspec.xz
168+
echo '2d18a3f79619e8ec5f11870f926f6dc2616e02a6c889315b7f82044b95a1adb9 cabal-docspec.xz' | sha256sum -c -
183169
xz -d < cabal-docspec.xz > $HOME/.cabal/bin/cabal-docspec
184170
rm -f cabal-docspec.xz
185171
chmod a+x $HOME/.cabal/bin/cabal-docspec
186172
cabal-docspec --version
187173
- name: checkout
188-
uses: actions/checkout@v3
174+
uses: actions/checkout@v4
189175
with:
190176
path: source
191177
- name: initial cabal.project for sdist
@@ -221,7 +207,7 @@ jobs:
221207
$CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH --dry-run all
222208
cabal-plan
223209
- name: restore cache
224-
uses: actions/cache/restore@v3
210+
uses: actions/cache/restore@v4
225211
with:
226212
key: ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
227213
path: ~/.cabal/store
@@ -270,7 +256,7 @@ jobs:
270256
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks --constraint='some -newtype-unsafe' --dependencies-only -j2 all
271257
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks --constraint='some -newtype-unsafe' all
272258
- name: save cache
273-
uses: actions/cache/save@v3
259+
uses: actions/cache/save@v4
274260
if: always()
275261
with:
276262
key: ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}

some.cabal

+5-4
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,10 @@ tested-with:
2929
|| ==8.10.4
3030
|| ==9.0.2
3131
|| ==9.2.8
32-
|| ==9.4.7
33-
|| ==9.6.3
34-
|| ==9.8.1
32+
|| ==9.4.8
33+
|| ==9.6.5
34+
|| ==9.8.2
35+
|| ==9.10.1
3536

3637
extra-source-files: ChangeLog.md
3738

@@ -68,7 +69,7 @@ library
6869

6970
other-modules: Data.GADT.Internal
7071
build-depends:
71-
base >=4.12 && <4.20
72+
base >=4.12 && <4.21
7273
, deepseq >=1.4.4.0 && <1.6
7374

7475
if !impl(ghc >= 9.8)

0 commit comments

Comments
 (0)