88#
99# For more information, see https://github.com/haskell-CI/haskell-ci
1010#
11- # version: 0.17.20240109
11+ # version: 0.19.20240702
1212#
13- # REGENDATA ("0.17.20240109 ",["github","StateVar.cabal","--distribution=focal","--output=.github/workflows/haskell-ci.yml"])
13+ # REGENDATA ("0.19.20240702 ",["github","StateVar.cabal","--distribution=focal","--output=.github/workflows/haskell-ci.yml"])
1414#
1515name : Haskell-CI
1616on :
@@ -28,14 +28,19 @@ jobs:
2828 strategy :
2929 matrix :
3030 include :
31- - compiler : ghc-9.8 .1
31+ - compiler : ghc-9.10 .1
3232 compilerKind : ghc
33- compilerVersion : 9.8 .1
33+ compilerVersion : 9.10 .1
3434 setup-method : ghcup
3535 allow-failure : false
36- - compiler : ghc-9.6.4
36+ - compiler : ghc-9.8.2
3737 compilerKind : ghc
38- compilerVersion : 9.6.4
38+ compilerVersion : 9.8.2
39+ setup-method : ghcup
40+ allow-failure : false
41+ - compiler : ghc-9.6.6
42+ compilerKind : ghc
43+ compilerVersion : 9.6.6
3944 setup-method : ghcup
4045 allow-failure : false
4146 - compiler : ghc-9.4.8
@@ -61,69 +66,39 @@ jobs:
6166 - compiler : ghc-8.8.4
6267 compilerKind : ghc
6368 compilerVersion : 8.8.4
64- setup-method : hvr-ppa
69+ setup-method : ghcup
6570 allow-failure : false
6671 - compiler : ghc-8.6.5
6772 compilerKind : ghc
6873 compilerVersion : 8.6.5
69- setup-method : hvr-ppa
74+ setup-method : ghcup
7075 allow-failure : false
7176 - compiler : ghc-8.4.4
7277 compilerKind : ghc
7378 compilerVersion : 8.4.4
74- setup-method : hvr-ppa
79+ setup-method : ghcup
7580 allow-failure : false
7681 - compiler : ghc-8.2.2
7782 compilerKind : ghc
7883 compilerVersion : 8.2.2
79- setup-method : hvr-ppa
84+ setup-method : ghcup
8085 allow-failure : false
8186 - compiler : ghc-8.0.2
8287 compilerKind : ghc
8388 compilerVersion : 8.0.2
84- setup-method : hvr-ppa
85- allow-failure : false
86- - compiler : ghc-7.10.3
87- compilerKind : ghc
88- compilerVersion : 7.10.3
89- setup-method : hvr-ppa
90- allow-failure : false
91- - compiler : ghc-7.4.2
92- compilerKind : ghc
93- compilerVersion : 7.4.2
94- setup-method : hvr-ppa
95- allow-failure : false
96- - compiler : ghc-7.2.2
97- compilerKind : ghc
98- compilerVersion : 7.2.2
99- setup-method : hvr-ppa
100- allow-failure : false
101- - compiler : ghc-7.0.4
102- compilerKind : ghc
103- compilerVersion : 7.0.4
104- setup-method : hvr-ppa
89+ setup-method : ghcup
10590 allow-failure : false
10691 fail-fast : false
10792 steps :
10893 - name : apt
10994 run : |
11095 apt-get update
111- apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
112- if [ "${{ matrix.setup-method }}" = ghcup ]; then
113- mkdir -p "$HOME/.ghcup/bin"
114- curl -sL https://downloads.haskell.org/ghcup/0.1.20.0/x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
115- chmod a+x "$HOME/.ghcup/bin/ghcup"
116- "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
117- "$HOME/.ghcup/bin/ghcup" install cabal 3.10.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
118- else
119- apt-add-repository -y 'ppa:hvr/ghc'
120- apt-get update
121- apt-get install -y "$HCNAME"
122- mkdir -p "$HOME/.ghcup/bin"
123- curl -sL https://downloads.haskell.org/ghcup/0.1.20.0/x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
124- chmod a+x "$HOME/.ghcup/bin/ghcup"
125- "$HOME/.ghcup/bin/ghcup" install cabal 3.10.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
126- fi
96+ apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5 libnuma-dev
97+ mkdir -p "$HOME/.ghcup/bin"
98+ curl -sL https://downloads.haskell.org/ghcup/0.1.20.0/x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
99+ chmod a+x "$HOME/.ghcup/bin/ghcup"
100+ "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
101+ "$HOME/.ghcup/bin/ghcup" install cabal 3.12.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
127102 env :
128103 HCKIND : ${{ matrix.compilerKind }}
129104 HCNAME : ${{ matrix.compiler }}
@@ -135,22 +110,13 @@ jobs:
135110 echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
136111 echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
137112 HCDIR=/opt/$HCKIND/$HCVER
138- if [ "${{ matrix.setup-method }}" = ghcup ]; then
139- HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
140- HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
141- HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
142- echo "HC=$HC" >> "$GITHUB_ENV"
143- echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
144- echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
145- echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
146- else
147- HC=$HCDIR/bin/$HCKIND
148- echo "HC=$HC" >> "$GITHUB_ENV"
149- echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
150- echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
151- echo "CABAL=$HOME/.ghcup/bin/cabal-3.10.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
152- fi
153-
113+ HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
114+ HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
115+ HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
116+ echo "HC=$HC" >> "$GITHUB_ENV"
117+ echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
118+ echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
119+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.12.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
154120 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
155121 echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
156122 echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
@@ -235,7 +201,7 @@ jobs:
235201 if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo " ghc-options: -Werror=missing-methods" >> cabal.project ; fi
236202 cat >> cabal.project <<EOF
237203 EOF
238- $HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(StateVar)$/; }' >> cabal.project.local
204+ $HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: any. $_ installed\n" unless /^(StateVar)$/; }' >> cabal.project.local
239205 cat cabal.project
240206 cat cabal.project.local
241207 - name : dump install plan
0 commit comments