Skip to content

Commit aa40513

Browse files
committed
Support GHC 9.14.1
1 parent 34a0659 commit aa40513

18 files changed

Lines changed: 187 additions & 83 deletions

File tree

.github/workflows/haskell-ci.yml

Lines changed: 35 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.19.20250722
11+
# version: 0.19.20260104
1212
#
13-
# REGENDATA ("0.19.20250722",["github","--config=cabal.haskell-ci","cabal.project"])
13+
# REGENDATA ("0.19.20260104",["github","--config=cabal.haskell-ci","cabal.project"])
1414
#
1515
name: Haskell-CI
1616
on:
@@ -20,26 +20,34 @@ on:
2020
pull_request:
2121
branches:
2222
- master
23+
merge_group:
24+
branches:
25+
- master
2326
jobs:
2427
linux:
2528
name: Haskell-CI - Linux - ${{ matrix.compiler }}
2629
runs-on: ubuntu-24.04
2730
timeout-minutes:
2831
60
2932
container:
30-
image: buildpack-deps:focal
33+
image: buildpack-deps:jammy
3134
continue-on-error: ${{ matrix.allow-failure }}
3235
strategy:
3336
matrix:
3437
include:
38+
- compiler: ghc-9.14.1
39+
compilerKind: ghc
40+
compilerVersion: 9.14.1
41+
setup-method: ghcup
42+
allow-failure: false
3543
- compiler: ghc-9.12.2
3644
compilerKind: ghc
3745
compilerVersion: 9.12.2
3846
setup-method: ghcup
3947
allow-failure: false
40-
- compiler: ghc-9.10.2
48+
- compiler: ghc-9.10.3
4149
compilerKind: ghc
42-
compilerVersion: 9.10.2
50+
compilerVersion: 9.10.3
4351
setup-method: ghcup
4452
allow-failure: false
4553
- compiler: ghc-9.8.4
@@ -105,8 +113,8 @@ jobs:
105113
chmod a+x "$HOME/.ghcup/bin/ghcup"
106114
- name: Install cabal-install
107115
run: |
108-
"$HOME/.ghcup/bin/ghcup" install cabal 3.14.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
109-
echo "CABAL=$HOME/.ghcup/bin/cabal-3.14.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
116+
"$HOME/.ghcup/bin/ghcup" install cabal 3.16.0.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
117+
echo "CABAL=$HOME/.ghcup/bin/cabal-3.16.0.0 -vnormal+nowrap" >> "$GITHUB_ENV"
110118
- name: Install GHC (GHCup)
111119
if: matrix.setup-method == 'ghcup'
112120
run: |
@@ -130,7 +138,7 @@ jobs:
130138
HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
131139
echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
132140
echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
133-
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 90600)) -ne 0 ] ; then echo "ARG_BENCH=--enable-benchmarks" >> "$GITHUB_ENV" ; else echo "ARG_BENCH=--disable-benchmarks" >> "$GITHUB_ENV" ; fi
141+
echo "ARG_BENCH=--enable-benchmarks" >> "$GITHUB_ENV"
134142
echo "HEADHACKAGE=false" >> "$GITHUB_ENV"
135143
echo "ARG_COMPILER=--$HCKIND --with-compiler=$HC" >> "$GITHUB_ENV"
136144
env:
@@ -191,7 +199,7 @@ jobs:
191199
chmod a+x $HOME/.cabal/bin/cabal-docspec
192200
cabal-docspec --version
193201
- name: checkout
194-
uses: actions/checkout@v4
202+
uses: actions/checkout@v5
195203
with:
196204
path: source
197205
- name: initial cabal.project for sdist
@@ -204,8 +212,8 @@ jobs:
204212
echo "packages: $GITHUB_WORKSPACE/source/optics-th" >> cabal.project
205213
echo "packages: $GITHUB_WORKSPACE/source/optics-vl" >> cabal.project
206214
echo "packages: $GITHUB_WORKSPACE/source/indexed-profunctors" >> cabal.project
215+
echo "packages: $GITHUB_WORKSPACE/source/template-haskell-optics" >> cabal.project
207216
echo "packages: $GITHUB_WORKSPACE/source/metametapost" >> cabal.project
208-
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then echo "packages: $GITHUB_WORKSPACE/source/template-haskell-optics" >> cabal.project ; fi
209217
cat cabal.project
210218
- name: sdist
211219
run: |
@@ -231,10 +239,10 @@ jobs:
231239
echo "PKGDIR_optics_vl=${PKGDIR_optics_vl}" >> "$GITHUB_ENV"
232240
PKGDIR_indexed_profunctors="$(find "$GITHUB_WORKSPACE/unpacked" -maxdepth 1 -type d -regex '.*/indexed-profunctors-[0-9.]*')"
233241
echo "PKGDIR_indexed_profunctors=${PKGDIR_indexed_profunctors}" >> "$GITHUB_ENV"
234-
PKGDIR_metametapost="$(find "$GITHUB_WORKSPACE/unpacked" -maxdepth 1 -type d -regex '.*/metametapost-[0-9.]*')"
235-
echo "PKGDIR_metametapost=${PKGDIR_metametapost}" >> "$GITHUB_ENV"
236242
PKGDIR_template_haskell_optics="$(find "$GITHUB_WORKSPACE/unpacked" -maxdepth 1 -type d -regex '.*/template-haskell-optics-[0-9.]*')"
237243
echo "PKGDIR_template_haskell_optics=${PKGDIR_template_haskell_optics}" >> "$GITHUB_ENV"
244+
PKGDIR_metametapost="$(find "$GITHUB_WORKSPACE/unpacked" -maxdepth 1 -type d -regex '.*/metametapost-[0-9.]*')"
245+
echo "PKGDIR_metametapost=${PKGDIR_metametapost}" >> "$GITHUB_ENV"
238246
rm -f cabal.project cabal.project.local
239247
touch cabal.project
240248
touch cabal.project.local
@@ -245,8 +253,8 @@ jobs:
245253
echo "packages: ${PKGDIR_optics_th}" >> cabal.project
246254
echo "packages: ${PKGDIR_optics_vl}" >> cabal.project
247255
echo "packages: ${PKGDIR_indexed_profunctors}" >> cabal.project
256+
echo "packages: ${PKGDIR_template_haskell_optics}" >> cabal.project
248257
echo "packages: ${PKGDIR_metametapost}" >> cabal.project
249-
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then echo "packages: ${PKGDIR_template_haskell_optics}" >> cabal.project ; fi
250258
echo "package optics" >> cabal.project
251259
echo " ghc-options: -Werror=missing-methods -Werror=missing-fields" >> cabal.project
252260
echo "package optics-core" >> cabal.project
@@ -261,10 +269,10 @@ jobs:
261269
echo " ghc-options: -Werror=missing-methods -Werror=missing-fields" >> cabal.project
262270
echo "package indexed-profunctors" >> cabal.project
263271
echo " ghc-options: -Werror=missing-methods -Werror=missing-fields" >> cabal.project
272+
echo "package template-haskell-optics" >> cabal.project
273+
echo " ghc-options: -Werror=missing-methods -Werror=missing-fields" >> cabal.project
264274
echo "package metametapost" >> cabal.project
265275
echo " ghc-options: -Werror=missing-methods -Werror=missing-fields" >> cabal.project
266-
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then echo "package template-haskell-optics" >> cabal.project ; fi
267-
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then echo " ghc-options: -Werror=missing-methods -Werror=missing-fields" >> cabal.project ; fi
268276
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo "package optics" >> cabal.project ; fi
269277
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo " ghc-options: -Werror=unused-packages" >> cabal.project ; fi
270278
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo "package optics-core" >> cabal.project ; fi
@@ -279,10 +287,10 @@ jobs:
279287
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo " ghc-options: -Werror=unused-packages" >> cabal.project ; fi
280288
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo "package indexed-profunctors" >> cabal.project ; fi
281289
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo " ghc-options: -Werror=unused-packages" >> cabal.project ; fi
290+
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo "package template-haskell-optics" >> cabal.project ; fi
291+
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo " ghc-options: -Werror=unused-packages" >> cabal.project ; fi
282292
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo "package metametapost" >> cabal.project ; fi
283293
if [ $((! GHCJSARITH && HCNUMVER >= 90400)) -ne 0 ] ; then echo " ghc-options: -Werror=unused-packages" >> cabal.project ; fi
284-
if [ $((! GHCJSARITH && HCNUMVER >= 90400 && HCNUMVER < 91200)) -ne 0 ] ; then echo "package template-haskell-optics" >> cabal.project ; fi
285-
if [ $((! GHCJSARITH && HCNUMVER >= 90400 && HCNUMVER < 91200)) -ne 0 ] ; then echo " ghc-options: -Werror=unused-packages" >> cabal.project ; fi
286294
if [ $((! GHCJSARITH && HCNUMVER >= 90000)) -ne 0 ] ; then echo "package optics" >> cabal.project ; fi
287295
if [ $((! GHCJSARITH && HCNUMVER >= 90000)) -ne 0 ] ; then echo " ghc-options: -Werror=incomplete-patterns -Werror=incomplete-uni-patterns" >> cabal.project ; fi
288296
if [ $((! GHCJSARITH && HCNUMVER >= 90000)) -ne 0 ] ; then echo "package optics-core" >> cabal.project ; fi
@@ -297,11 +305,15 @@ jobs:
297305
if [ $((! GHCJSARITH && HCNUMVER >= 90000)) -ne 0 ] ; then echo " ghc-options: -Werror=incomplete-patterns -Werror=incomplete-uni-patterns" >> cabal.project ; fi
298306
if [ $((! GHCJSARITH && HCNUMVER >= 90000)) -ne 0 ] ; then echo "package indexed-profunctors" >> cabal.project ; fi
299307
if [ $((! GHCJSARITH && HCNUMVER >= 90000)) -ne 0 ] ; then echo " ghc-options: -Werror=incomplete-patterns -Werror=incomplete-uni-patterns" >> cabal.project ; fi
308+
if [ $((! GHCJSARITH && HCNUMVER >= 90000)) -ne 0 ] ; then echo "package template-haskell-optics" >> cabal.project ; fi
309+
if [ $((! GHCJSARITH && HCNUMVER >= 90000)) -ne 0 ] ; then echo " ghc-options: -Werror=incomplete-patterns -Werror=incomplete-uni-patterns" >> cabal.project ; fi
300310
if [ $((! GHCJSARITH && HCNUMVER >= 90000)) -ne 0 ] ; then echo "package metametapost" >> cabal.project ; fi
301311
if [ $((! GHCJSARITH && HCNUMVER >= 90000)) -ne 0 ] ; then echo " ghc-options: -Werror=incomplete-patterns -Werror=incomplete-uni-patterns" >> cabal.project ; fi
302-
if [ $((! GHCJSARITH && HCNUMVER >= 90000 && HCNUMVER < 91200)) -ne 0 ] ; then echo "package template-haskell-optics" >> cabal.project ; fi
303-
if [ $((! GHCJSARITH && HCNUMVER >= 90000 && HCNUMVER < 91200)) -ne 0 ] ; then echo " ghc-options: -Werror=incomplete-patterns -Werror=incomplete-uni-patterns" >> cabal.project ; fi
304312
cat >> cabal.project <<EOF
313+
allow-newer: indexed-traversable:base
314+
allow-newer: indexed-traversable-instances:base
315+
allow-newer: indexed-traversable:containers
316+
allow-newer: these:base
305317
EOF
306318
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: any.$_ installed\n" unless /^(indexed-profunctors|metametapost|optics|optics-core|optics-extra|optics-sop|optics-th|optics-vl|template-haskell-optics)$/; }' >> cabal.project.local
307319
cat cabal.project
@@ -331,8 +343,8 @@ jobs:
331343
if [ $((! GHCJSARITH)) -ne 0 ] ; then $CABAL v2-test $ARG_COMPILER $ARG_TESTS $ARG_BENCH all --test-show-details=direct ; fi
332344
- name: docspec
333345
run: |
334-
if [ $((! GHCJSARITH && (HCNUMVER < 90400 || HCNUMVER >= 90800))) -ne 0 ] ; then $CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH all ; fi
335-
if [ $((! GHCJSARITH && (HCNUMVER < 90400 || HCNUMVER >= 90800))) -ne 0 ] ; then cabal-docspec $ARG_COMPILER ; fi
346+
if [ $((! GHCJSARITH && (HCNUMVER < 90400 || HCNUMVER >= 90800 && HCNUMVER < 91400))) -ne 0 ] ; then $CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH all ; fi
347+
if [ $((! GHCJSARITH && (HCNUMVER < 90400 || HCNUMVER >= 90800 && HCNUMVER < 91400))) -ne 0 ] ; then cabal-docspec $ARG_COMPILER ; fi
336348
- name: cabal check
337349
run: |
338350
cd ${PKGDIR_optics} || false
@@ -349,10 +361,10 @@ jobs:
349361
${CABAL} -vnormal check
350362
cd ${PKGDIR_indexed_profunctors} || false
351363
${CABAL} -vnormal check
364+
cd ${PKGDIR_template_haskell_optics} || false
365+
${CABAL} -vnormal check
352366
cd ${PKGDIR_metametapost} || false
353367
${CABAL} -vnormal check
354-
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then cd ${PKGDIR_template_haskell_optics} || false ; fi
355-
if [ $((GHCJSARITH || ! GHCJSARITH && HCNUMVER < 91200)) -ne 0 ] ; then ${CABAL} -vnormal check ; fi
356368
- name: haddock
357369
run: |
358370
if [ $((! GHCJSARITH)) -ne 0 ] ; then $CABAL v2-haddock --disable-documentation --haddock-all $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH all ; fi

cabal.haskell-ci

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
distribution: focal
21
branches: master
32
-- GHC-9.4 and 9.6 have some issue with overlapping instances for optic labels
4-
docspec: <9.4 || >=9.8
3+
docspec: <9.4 || (>=9.8 && <9.14)
54
tests: True
6-
benchmarks: <9.5
7-
jobs-selection: any
5+
benchmarks: True
6+
jobs-selection: uniform
87

98
-- turn head hackage off
109
head-hackage: False

cabal.project

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

1311
-- An example, using optics to generate optics diagrams
1412
packages:
1513
metametapost/*.cabal
1614

1715
tests: true
16+
17+
-- For GHC-9.14.1.
18+
allow-newer: indexed-traversable-instances:base
19+
, indexed-traversable:base
20+
, indexed-traversable:containers
21+
, these:base

indexed-profunctors/indexed-profunctors.cabal

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
cabal-version: 2.2
1+
cabal-version: 3.0
22
name: indexed-profunctors
33
version: 0.1.1.1
44
license: BSD-3-Clause
55
license-file: LICENSE
66
build-type: Simple
77
maintainer: optics@well-typed.com
88
author: Adam Gundry, Andres Löh, Andrzej Rybczak, Oleg Grenrus
9-
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
10-
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2 || ==9.12.2,
12-
GHCJS ==8.4
9+
tested-with: GHC == { 8.2.2, 8.4.4, 8.6.5, 8.8.4, 8.10.7, 9.0.2, 9.2.8
10+
, 9.4.8, 9.6.7, 9.8.4, 9.10.3, 9.12.2, 9.14.1
11+
}
12+
GHCJS == { 8.4 }
1313
synopsis: Utilities for indexed profunctors
1414
category: Data, Optics, Lenses, Profunctors
1515
description:

metametapost/metametapost.cabal

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
cabal-version: 2.2
1+
cabal-version: 3.0
22
name: metametapost
33
version: 0.1
44
license: BSD-3-Clause
55
license-file: LICENSE
66
build-type: Simple
7-
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
8-
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
9-
|| ==9.10.2 || ==9.12.2,
10-
GHCJS ==8.4
7+
tested-with: GHC == { 8.2.2, 8.4.4, 8.6.5, 8.8.4, 8.10.7, 9.0.2, 9.2.8
8+
, 9.4.8, 9.6.7, 9.8.4, 9.10.3, 9.12.2, 9.14.1
9+
}
10+
GHCJS == { 8.4 }
1111
maintainer: oleg@well-typed.com
1212
synopsis: Generate optics documentation diagrams
1313
category: Optics, Examples

optics-core/optics-core.cabal

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
cabal-version: 2.2
1+
cabal-version: 3.0
22
name: optics-core
33
version: 0.4.2
44
license: BSD-3-Clause
55
license-file: LICENSE
66
build-type: Simple
77
maintainer: optics@well-typed.com
88
author: Adam Gundry, Andres Löh, Andrzej Rybczak, Oleg Grenrus
9-
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
10-
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2 || ==9.12.2,
12-
GHCJS ==8.4
9+
tested-with: GHC == { 8.2.2, 8.4.4, 8.6.5, 8.8.4, 8.10.7, 9.0.2, 9.2.8
10+
, 9.4.8, 9.6.7, 9.8.4, 9.10.3, 9.12.2, 9.14.1
11+
}
12+
GHCJS == { 8.4 }
1313
synopsis: Optics as an abstract interface: core definitions
1414
category: Data, Optics, Lenses
1515
description:
@@ -82,7 +82,7 @@ library
8282

8383
build-depends: base >= 4.10 && <5
8484
, array >= 0.5.2.0 && <0.6
85-
, containers >= 0.5.10.2 && <0.8
85+
, containers >= 0.5.10.2 && <0.9
8686
, indexed-profunctors >= 0.1 && <0.2
8787
, transformers >= 0.5 && <0.7
8888
, indexed-traversable >= 0.1 && <0.2

optics-extra/optics-extra.cabal

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
cabal-version: 2.2
1+
cabal-version: 3.0
22
name: optics-extra
33
version: 0.4.2.1
44
license: BSD-3-Clause
55
license-file: LICENSE
66
build-type: Simple
77
maintainer: optics@well-typed.com
88
author: Andrzej Rybczak
9-
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
10-
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2 || ==9.12.2
12-
GHCJS ==8.4
9+
tested-with: GHC == { 8.2.2, 8.4.4, 8.6.5, 8.8.4, 8.10.7, 9.0.2, 9.2.8
10+
, 9.4.8, 9.6.7, 9.8.4, 9.10.3, 9.12.2, 9.14.1
11+
}
12+
GHCJS == { 8.4 }
1313
synopsis: Extra utilities and instances for optics-core
1414
category: Data, Optics, Lenses
1515
description:
@@ -65,7 +65,7 @@ library
6565

6666
build-depends: base >= 4.10 && <5
6767
, bytestring >= 0.10.8 && <0.13
68-
, containers >= 0.5.10.2 && <0.8
68+
, containers >= 0.5.10.2 && <0.9
6969
, hashable >= 1.1.1 && <1.6
7070
, indexed-profunctors >= 0.1 && <0.2
7171
, mtl >= 2.2.2 && <2.4

optics-sop/optics-sop.cabal

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
cabal-version: 2.2
1+
cabal-version: 3.0
22
name: optics-sop
33
version: 0.1
44
license: BSD-3-Clause
55
license-file: LICENSE
66
build-type: Simple
77
maintainer: optics@well-typed.com
88
author: Adam Gundry, Andres Löh, Andrzej Rybczak
9-
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
10-
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2 || ==9.12.2,
12-
GHCJS ==8.4
9+
tested-with: GHC == { 8.2.2, 8.4.4, 8.6.5, 8.8.4, 8.10.7, 9.0.2, 9.2.8
10+
, 9.4.8, 9.6.7, 9.8.4, 9.10.3, 9.12.2, 9.14.1
11+
}
12+
GHCJS == { 8.4 }
1313
synopsis: Optics for generics-sop, and using generics-sop
1414
category: Data, Optics, Lenses, Generics
1515
description:

optics-th/optics-th.cabal

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
cabal-version: 2.2
1+
cabal-version: 3.0
22
name: optics-th
33
version: 0.4.1
44
license: BSD-3-Clause
55
license-file: LICENSE
66
build-type: Simple
77
maintainer: optics@well-typed.com
88
author: Andrzej Rybczak
9-
tested-with: GHC ==8.2.2 || ==8.4.4 || ==8.6.5 || ==8.8.4 || ==8.10.7
10-
|| ==9.0.2 || ==9.2.8 || ==9.4.8 || ==9.6.7 || ==9.8.4
11-
|| ==9.10.2 || ==9.12.2,
12-
GHCJS ==8.4
9+
tested-with: GHC == { 8.2.2, 8.4.4, 8.6.5, 8.8.4, 8.10.7, 9.0.2, 9.2.8
10+
, 9.4.8, 9.6.7, 9.8.4, 9.10.3, 9.12.2, 9.14.1
11+
}
12+
GHCJS == { 8.4 }
1313
synopsis: Optics construction using TemplateHaskell
1414
category: Data, Optics, Lenses
1515
description:
@@ -32,8 +32,12 @@ common language
3232

3333
default-language: Haskell2010
3434

35+
if impl(ghc < 8.6)
36+
default-extensions: TypeInType
37+
3538
default-extensions: BangPatterns
3639
ConstraintKinds
40+
DataKinds
3741
DefaultSignatures
3842
DeriveFoldable
3943
DeriveFunctor
@@ -50,6 +54,7 @@ common language
5054
LambdaCase
5155
OverloadedLabels
5256
PatternSynonyms
57+
PolyKinds
5358
RankNTypes
5459
ScopedTypeVariables
5560
TupleSections
@@ -63,7 +68,7 @@ library
6368
hs-source-dirs: src
6469

6570
build-depends: base >= 4.10 && <5
66-
, containers >= 0.5.10.2 && <0.8
71+
, containers >= 0.5.10.2 && <0.9
6772
, mtl >= 2.2.2 && <2.4
6873
, optics-core >= 0.4.1 && <0.5
6974
, template-haskell >= 2.12 && <2.25

optics-th/tests/Optics/TH/Tests.hs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
{-# OPTIONS_HADDOCK hide #-} -- GHC 8.2.2 hangs on this module otherwise
2-
{-# LANGUAGE DataKinds #-}
3-
{-# LANGUAGE PolyKinds #-}
42
{-# LANGUAGE TemplateHaskell #-}
53
{-# LANGUAGE TypeFamilyDependencies #-}
6-
{-# LANGUAGE TypeInType #-}
74
{-# LANGUAGE UndecidableInstances #-}
85
-- {-# OPTIONS_GHC -ddump-splices #-}
96
module Main where

0 commit comments

Comments
 (0)