1
1
# This GitHub workflow config has been generated by a script via
2
2
#
3
- # haskell-ci 'github' '--haddock' '--hlint' '--hlint-job' '9.4.5 ' '--github-patches' '.github/haskell-ci.patch' 'cabal.project'
3
+ # haskell-ci 'github' '--haddock' '--hlint' '--hlint-job' '9.4.8 ' '--github-patches' '.github/haskell-ci.patch' 'cabal.project'
4
4
#
5
5
# To regenerate the script (for example after adjusting tested-with) run
6
6
#
7
7
# haskell-ci regenerate
8
8
#
9
9
# For more information, see https://github.com/haskell-CI/haskell-ci
10
10
#
11
- # version: 0.16.6
11
+ # version: 0.17.20231110
12
12
#
13
- # REGENDATA ("0.16.6 ",["github","--haddock","--hlint","--hlint-job","9.4.5 ","--github-patches",".github/haskell-ci.patch","cabal.project"])
13
+ # REGENDATA ("0.17.20231110 ",["github","--haddock","--hlint","--hlint-job","9.4.8 ","--github-patches",".github/haskell-ci.patch","cabal.project"])
14
14
#
15
15
name : Haskell-CI
16
16
on :
@@ -43,19 +43,24 @@ jobs:
43
43
strategy :
44
44
matrix :
45
45
include :
46
- - compiler : ghc-9.6.2
46
+ - compiler : ghc-9.8.1
47
47
compilerKind : ghc
48
- compilerVersion : 9.6.2
48
+ compilerVersion : 9.8.1
49
49
setup-method : ghcup
50
50
allow-failure : false
51
- - compiler : ghc-9.4.5
51
+ - compiler : ghc-9.6.3
52
52
compilerKind : ghc
53
- compilerVersion : 9.4.5
53
+ compilerVersion : 9.6.3
54
54
setup-method : ghcup
55
55
allow-failure : false
56
- - compiler : ghc-9.2.7
56
+ - compiler : ghc-9.4.8
57
57
compilerKind : ghc
58
- compilerVersion : 9.2.7
58
+ compilerVersion : 9.4.8
59
+ setup-method : ghcup
60
+ allow-failure : false
61
+ - compiler : ghc-9.2.8
62
+ compilerKind : ghc
63
+ compilerVersion : 9.2.8
59
64
setup-method : ghcup
60
65
allow-failure : false
61
66
- compiler : ghc-9.0.2
@@ -75,10 +80,10 @@ jobs:
75
80
apt-get update
76
81
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
77
82
mkdir -p "$HOME/.ghcup/bin"
78
- curl -sL https://downloads.haskell.org/ghcup/0.1.19.2 /x86_64-linux-ghcup-0.1.19.2 > "$HOME/.ghcup/bin/ghcup"
83
+ curl -sL https://downloads.haskell.org/ghcup/0.1.20.0 /x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
79
84
chmod a+x "$HOME/.ghcup/bin/ghcup"
80
85
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
81
- "$HOME/.ghcup/bin/ghcup" install cabal 3.10.1 .0 || (cat "$HOME"/.ghcup/logs/*.* && false)
86
+ "$HOME/.ghcup/bin/ghcup" install cabal 3.10.2 .0 || (cat "$HOME"/.ghcup/logs/*.* && false)
82
87
env :
83
88
HCKIND : ${{ matrix.compilerKind }}
84
89
HCNAME : ${{ matrix.compiler }}
@@ -90,11 +95,13 @@ jobs:
90
95
echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
91
96
echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
92
97
HCDIR=/opt/$HCKIND/$HCVER
93
- HC=$HOME/.ghcup/bin/$HCKIND-$HCVER
98
+ HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
99
+ HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
100
+ HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
94
101
echo "HC=$HC" >> "$GITHUB_ENV"
95
- echo "HCPKG=$HOME/.ghcup/bin/$HCKIND-pkg-$HCVER " >> "$GITHUB_ENV"
96
- echo "HADDOCK=$HOME/.ghcup/bin/haddock-$HCVER " >> "$GITHUB_ENV"
97
- echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.1 .0 -vnormal+nowrap" >> "$GITHUB_ENV"
102
+ echo "HCPKG=$HCPKG " >> "$GITHUB_ENV"
103
+ echo "HADDOCK=$HADDOCK " >> "$GITHUB_ENV"
104
+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.2 .0 -vnormal+nowrap" >> "$GITHUB_ENV"
98
105
HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
99
106
echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
100
107
echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
@@ -144,7 +151,7 @@ jobs:
144
151
- name : cache (tools)
145
152
uses : actions/cache/restore@v3
146
153
with :
147
- key : ${{ runner.os }}-${{ matrix.compiler }}-tools-6b1f90a1
154
+ key : ${{ runner.os }}-${{ matrix.compiler }}-tools-d8b62173
148
155
path : ~/.haskell-ci-tools
149
156
- name : install cabal-plan
150
157
run : |
@@ -165,7 +172,7 @@ jobs:
165
172
uses : actions/cache/save@v3
166
173
if : always()
167
174
with :
168
- key : ${{ runner.os }}-${{ matrix.compiler }}-tools-6b1f90a1
175
+ key : ${{ runner.os }}-${{ matrix.compiler }}-tools-d8b62173
169
176
path : ~/.haskell-ci-tools
170
177
- name : checkout
171
178
uses : actions/checkout@v3
@@ -174,8 +181,8 @@ jobs:
174
181
- name : initial cabal.project for sdist
175
182
run : |
176
183
touch cabal.project
177
- echo "packages: $GITHUB_WORKSPACE/source/code/cvss" >> cabal.project
178
184
echo "packages: $GITHUB_WORKSPACE/source/code/hsec-tools" >> cabal.project
185
+ echo "packages: $GITHUB_WORKSPACE/source/code/cvss" >> cabal.project
179
186
cat cabal.project
180
187
- name : sdist
181
188
run : |
@@ -187,19 +194,19 @@ jobs:
187
194
find sdist -maxdepth 1 -type f -name '*.tar.gz' -exec tar -C $GITHUB_WORKSPACE/unpacked -xzvf {} \;
188
195
- name : generate cabal.project
189
196
run : |
190
- PKGDIR_cvss="$(find "$GITHUB_WORKSPACE/unpacked" -maxdepth 1 -type d -regex '.*/cvss-[0-9.]*')"
191
- echo "PKGDIR_cvss=${PKGDIR_cvss}" >> "$GITHUB_ENV"
192
197
PKGDIR_hsec_tools="$(find "$GITHUB_WORKSPACE/unpacked" -maxdepth 1 -type d -regex '.*/hsec-tools-[0-9.]*')"
193
198
echo "PKGDIR_hsec_tools=${PKGDIR_hsec_tools}" >> "$GITHUB_ENV"
199
+ PKGDIR_cvss="$(find "$GITHUB_WORKSPACE/unpacked" -maxdepth 1 -type d -regex '.*/cvss-[0-9.]*')"
200
+ echo "PKGDIR_cvss=${PKGDIR_cvss}" >> "$GITHUB_ENV"
194
201
rm -f cabal.project cabal.project.local
195
202
touch cabal.project
196
203
touch cabal.project.local
197
- echo "packages: ${PKGDIR_cvss}" >> cabal.project
198
204
echo "packages: ${PKGDIR_hsec_tools}" >> cabal.project
199
- echo "package cvss" >> cabal.project
200
- echo " ghc-options: -Werror=missing-methods" >> cabal.project
205
+ echo "packages: ${PKGDIR_cvss}" >> cabal.project
201
206
echo "package hsec-tools" >> cabal.project
202
207
echo " ghc-options: -Werror=missing-methods" >> cabal.project
208
+ echo "package cvss" >> cabal.project
209
+ echo " ghc-options: -Werror=missing-methods" >> cabal.project
203
210
cat >> cabal.project <<EOF
204
211
EOF
205
212
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(cvss|hsec-tools)$/; }' >> cabal.project.local
@@ -230,15 +237,15 @@ jobs:
230
237
$CABAL v2-test $ARG_COMPILER $ARG_TESTS $ARG_BENCH all --test-show-details=direct
231
238
- name : hlint
232
239
run : |
233
- if [ $((HCNUMVER >= 90400 && HCNUMVER < 90600)) -ne 0 ] ; then (cd ${PKGDIR_cvss} && hlint -XHaskell2010 src) ; fi
234
240
if [ $((HCNUMVER >= 90400 && HCNUMVER < 90600)) -ne 0 ] ; then (cd ${PKGDIR_hsec_tools} && hlint -XHaskell2010 src) ; fi
235
241
if [ $((HCNUMVER >= 90400 && HCNUMVER < 90600)) -ne 0 ] ; then (cd ${PKGDIR_hsec_tools} && hlint -XHaskell2010 app) ; fi
242
+ if [ $((HCNUMVER >= 90400 && HCNUMVER < 90600)) -ne 0 ] ; then (cd ${PKGDIR_cvss} && hlint -XHaskell2010 src) ; fi
236
243
- name : cabal check
237
244
run : |
238
- cd ${PKGDIR_cvss} || false
239
- ${CABAL} -vnormal check
240
245
cd ${PKGDIR_hsec_tools} || false
241
246
${CABAL} -vnormal check
247
+ cd ${PKGDIR_cvss} || false
248
+ ${CABAL} -vnormal check
242
249
- name : haddock
243
250
run : |
244
251
$CABAL v2-haddock --disable-documentation --haddock-all $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH all
0 commit comments