Skip to content

Commit f78653a

Browse files
authored
Merge pull request #512 from well-typed/ghc-9.12
Add GHC-9.12 to CI
2 parents 98bea27 + 397fcf2 commit f78653a

14 files changed

Lines changed: 130 additions & 55 deletions

File tree

.github/workflows/haskell-ci.yml

Lines changed: 13 additions & 8 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.19.20250506
11+
# version: 0.19.20250605
1212
#
13-
# REGENDATA ("0.19.20250506",["github","--config=cabal.haskell-ci","cabal.project"])
13+
# REGENDATA ("0.19.20250605",["github","--config=cabal.haskell-ci","cabal.project"])
1414
#
1515
name: Haskell-CI
1616
on:
@@ -32,6 +32,11 @@ jobs:
3232
strategy:
3333
matrix:
3434
include:
35+
- compiler: ghc-9.12.2
36+
compilerKind: ghc
37+
compilerVersion: 9.12.2
38+
setup-method: ghcup
39+
allow-failure: false
3540
- compiler: ghc-9.10.2
3641
compilerKind: ghc
3742
compilerVersion: 9.10.2
@@ -205,7 +210,7 @@ jobs:
205210
echo "packages: $GITHUB_WORKSPACE/source/optics-th" >> cabal.project
206211
echo "packages: $GITHUB_WORKSPACE/source/optics-vl" >> cabal.project
207212
echo "packages: $GITHUB_WORKSPACE/source/indexed-profunctors" >> cabal.project
208-
echo "packages: $GITHUB_WORKSPACE/source/template-haskell-optics" >> cabal.project
213+
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then echo "packages: $GITHUB_WORKSPACE/source/template-haskell-optics" >> cabal.project ; fi
209214
echo "packages: $GITHUB_WORKSPACE/source/metametapost" >> cabal.project
210215
cat cabal.project
211216
- name: sdist
@@ -246,7 +251,7 @@ jobs:
246251
echo "packages: ${PKGDIR_optics_th}" >> cabal.project
247252
echo "packages: ${PKGDIR_optics_vl}" >> cabal.project
248253
echo "packages: ${PKGDIR_indexed_profunctors}" >> cabal.project
249-
echo "packages: ${PKGDIR_template_haskell_optics}" >> cabal.project
254+
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then echo "packages: ${PKGDIR_template_haskell_optics}" >> cabal.project ; fi
250255
echo "packages: ${PKGDIR_metametapost}" >> cabal.project
251256
echo "package optics" >> cabal.project
252257
echo " ghc-options: -Werror=missing-methods" >> cabal.project
@@ -262,8 +267,8 @@ jobs:
262267
echo " ghc-options: -Werror=missing-methods" >> cabal.project
263268
echo "package indexed-profunctors" >> cabal.project
264269
echo " ghc-options: -Werror=missing-methods" >> cabal.project
265-
echo "package template-haskell-optics" >> cabal.project
266-
echo " ghc-options: -Werror=missing-methods" >> cabal.project
270+
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then echo "package template-haskell-optics" >> cabal.project ; fi
271+
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then echo " ghc-options: -Werror=missing-methods" >> cabal.project ; fi
267272
echo "package metametapost" >> cabal.project
268273
echo " ghc-options: -Werror=missing-methods" >> cabal.project
269274
cat >> cabal.project <<EOF
@@ -328,8 +333,8 @@ jobs:
328333
${CABAL} -vnormal check
329334
cd ${PKGDIR_indexed_profunctors} || false
330335
${CABAL} -vnormal check
331-
cd ${PKGDIR_template_haskell_optics} || false
332-
${CABAL} -vnormal check
336+
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then cd ${PKGDIR_template_haskell_optics} || false ; fi
337+
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then ${CABAL} -vnormal check ; fi
333338
cd ${PKGDIR_metametapost} || false
334339
${CABAL} -vnormal check
335340
- name: haddock

cabal.project

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@ packages:
66
optics-th/*.cabal
77
optics-vl/*.cabal
88
indexed-profunctors/*.cabal
9-
template-haskell-optics/*.cabal
9+
10+
if !impl(ghc >=9.10)
11+
packages: template-haskell-optics/*.cabal
1012

1113
-- An example, using optics to generate optics diagrams
1214
packages:

indexed-profunctors/indexed-profunctors.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ maintainer: optics@well-typed.com
88
author: Adam Gundry, Andres Löh, Andrzej Rybczak, Oleg Grenrus
99
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
1010
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2,
11+
|| ==9.10.2 || ==9.12.2,
1212
GHCJS ==8.4
1313
synopsis: Utilities for indexed profunctors
1414
category: Data, Optics, Lenses, Profunctors

metametapost/metametapost.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ license-file: LICENSE
66
build-type: Simple
77
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
88
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
9-
|| ==9.10.2,
9+
|| ==9.10.2 || ==9.12.2,
1010
GHCJS ==8.4
1111
maintainer: oleg@well-typed.com
1212
synopsis: Generate optics documentation diagrams

optics-core/optics-core.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ maintainer: optics@well-typed.com
88
author: Adam Gundry, Andres Löh, Andrzej Rybczak, Oleg Grenrus
99
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
1010
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2,
11+
|| ==9.10.2 || ==9.12.2,
1212
GHCJS ==8.4
1313
synopsis: Optics as an abstract interface: core definitions
1414
category: Data, Optics, Lenses

optics-extra/optics-extra.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ maintainer: optics@well-typed.com
88
author: Andrzej Rybczak
99
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
1010
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2,
11+
|| ==9.10.2 || ==9.12.2
1212
GHCJS ==8.4
1313
synopsis: Extra utilities and instances for optics-core
1414
category: Data, Optics, Lenses

optics-sop/optics-sop.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ maintainer: optics@well-typed.com
88
author: Adam Gundry, Andres Löh, Andrzej Rybczak
99
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
1010
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2,
11+
|| ==9.10.2 || ==9.12.2,
1212
GHCJS ==8.4
1313
synopsis: Optics for generics-sop, and using generics-sop
1414
category: Data, Optics, Lenses, Generics

optics-th/optics-th.cabal

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ maintainer: optics@well-typed.com
88
author: Andrzej Rybczak
99
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
1010
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2,
11+
|| ==9.10.2 || ==9.12.2,
1212
GHCJS ==8.4
1313
synopsis: Optics construction using TemplateHaskell
1414
category: Data, Optics, Lenses
@@ -66,7 +66,7 @@ library
6666
, containers >= 0.5.10.2 && <0.8
6767
, mtl >= 2.2.2 && <2.4
6868
, optics-core >= 0.4.1 && <0.5
69-
, template-haskell >= 2.12 && <2.23
69+
, template-haskell >= 2.12 && <2.24
7070
, th-abstraction >= 0.4 && <0.8
7171
, transformers >= 0.5 && <0.7
7272

optics-vl/optics-vl.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ maintainer: optics@well-typed.com
88
author: Andrzej Rybczak
99
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
1010
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2,
11+
|| ==9.10.2 || ==9.12.2
1212
GHCJS ==8.4
1313
synopsis: Utilities for compatibility with van Laarhoven optics
1414
category: Data, Optics, Lenses

optics/optics.cabal

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ maintainer: optics@well-typed.com
88
author: Adam Gundry, Andres Löh, Andrzej Rybczak, Oleg Grenrus
99
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
1010
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2,
11+
|| ==9.10.2 || ==9.12.2,
1212
GHCJS ==8.4
1313
synopsis: Optics as an abstract interface
1414
category: Data, Optics, Lenses
@@ -164,7 +164,7 @@ test-suite optics-tests
164164
build-depends: base
165165
, containers
166166
, indexed-profunctors >= 0.1 && <0.2
167-
, inspection-testing >= 0.5 && <0.7
167+
, inspection-testing >= 0.6.2 && <0.7
168168
, mtl
169169
, optics
170170
, optics-core

0 commit comments

Comments
 (0)