Skip to content

Commit f65071c

Browse files
authored
Merge pull request #37 from biocad/maksbotan/ghc-9.6
Support GHC 9.6
2 parents 9e62c2a + 34297e9 commit f65071c

File tree

5 files changed

+46
-23
lines changed

5 files changed

+46
-23
lines changed

.github/workflows/haskell-ci.yml

Lines changed: 30 additions & 11 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.20250315
11+
# version: 0.19.20250917
1212
#
13-
# REGENDATA ("0.19.20250315",["github","cabal.project"])
13+
# REGENDATA ("0.19.20250917",["github","cabal.project"])
1414
#
1515
name: Haskell-CI
1616
on:
@@ -20,6 +20,9 @@ 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 }}
@@ -32,14 +35,19 @@ jobs:
3235
strategy:
3336
matrix:
3437
include:
38+
- compiler: ghc-9.10.3
39+
compilerKind: ghc
40+
compilerVersion: 9.10.3
41+
setup-method: ghcup
42+
allow-failure: true
3543
- compiler: ghc-9.8.4
3644
compilerKind: ghc
3745
compilerVersion: 9.8.4
3846
setup-method: ghcup
3947
allow-failure: true
40-
- compiler: ghc-9.6.6
48+
- compiler: ghc-9.6.7
4149
compilerKind: ghc
42-
compilerVersion: 9.6.6
50+
compilerVersion: 9.6.7
4351
setup-method: ghcup
4452
allow-failure: true
4553
- compiler: ghc-9.4.8
@@ -71,12 +79,12 @@ jobs:
7179
- name: Install GHCup
7280
run: |
7381
mkdir -p "$HOME/.ghcup/bin"
74-
curl -sL https://downloads.haskell.org/ghcup/0.1.40.0/x86_64-linux-ghcup-0.1.40.0 > "$HOME/.ghcup/bin/ghcup"
82+
curl -sL https://downloads.haskell.org/ghcup/0.1.50.1/x86_64-linux-ghcup-0.1.50.1 > "$HOME/.ghcup/bin/ghcup"
7583
chmod a+x "$HOME/.ghcup/bin/ghcup"
7684
- name: Install cabal-install
7785
run: |
78-
"$HOME/.ghcup/bin/ghcup" install cabal 3.12.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
79-
echo "CABAL=$HOME/.ghcup/bin/cabal-3.12.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
86+
"$HOME/.ghcup/bin/ghcup" install cabal 3.16.0.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
87+
echo "CABAL=$HOME/.ghcup/bin/cabal-3.16.0.0 -vnormal+nowrap" >> "$GITHUB_ENV"
8088
- name: Install GHC (GHCup)
8189
if: matrix.setup-method == 'ghcup'
8290
run: |
@@ -152,7 +160,7 @@ jobs:
152160
chmod a+x $HOME/.cabal/bin/cabal-plan
153161
cabal-plan --version
154162
- name: checkout
155-
uses: actions/checkout@v4
163+
uses: actions/checkout@v5
156164
with:
157165
path: source
158166
- name: initial cabal.project for sdist
@@ -177,10 +185,16 @@ jobs:
177185
touch cabal.project.local
178186
echo "packages: ${PKGDIR_web_template}" >> cabal.project
179187
echo "package web-template" >> cabal.project
180-
echo " ghc-options: -Werror=missing-methods" >> cabal.project
188+
echo " ghc-options: -Werror=missing-methods -Werror=missing-fields" >> cabal.project
189+
if [ $((HCNUMVER >= 90400)) -ne 0 ] ; then echo "package web-template" >> cabal.project ; fi
190+
if [ $((HCNUMVER >= 90400)) -ne 0 ] ; then echo " ghc-options: -Werror=unused-packages" >> cabal.project ; fi
191+
if [ $((HCNUMVER >= 90000)) -ne 0 ] ; then echo "package web-template" >> cabal.project ; fi
192+
if [ $((HCNUMVER >= 90000)) -ne 0 ] ; then echo " ghc-options: -Werror=incomplete-patterns -Werror=incomplete-uni-patterns" >> cabal.project ; fi
181193
cat >> cabal.project <<EOF
182-
allow-newer: openid-connect:text
183-
allow-newer: openid-connect:mtl
194+
allow-newer: scotty:bytestring
195+
allow-newer: scotty:text
196+
allow-newer: openid-connect:containers
197+
allow-newer: openid-connect:lens
184198
185199
source-repository-package
186200
type: git
@@ -198,6 +212,11 @@ jobs:
198212
location: https://github.com/maksbotan/generic-override.git
199213
tag: 79432eaa084705d6ac3f5b877287a74815a8eb71
200214
subdir: generic-override-aeson
215+
216+
source-repository-package
217+
type: git
218+
location: https://github.com/pjones/openid-connect
219+
tag: ea9ccbadaa69d60a579df0fff1667115831e3677
201220
EOF
202221
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: any.$_ installed\n" unless /^(web-template)$/; }' >> cabal.project.local
203222
cat cabal.project

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
66

77
## [Unreleased]
88

9+
## [0.1.3.17] - 2025-09-27
10+
### Changed
11+
- Update for GHC 9.6, 9.8, 9.10.
12+
913
## [0.1.3.16] - 2025-03-27
1014
### Changed
1115
- `Permit` does not overwrite 403 response description of deeper layers.

cabal.project

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,10 @@ source-repository-package
2424
subdir: generic-override-aeson
2525
--sha256: 1qqb39lw71q7637bh2xpdcxrkyh9r6r55z2xmkgcgbwvx0wi5l9l
2626

27-
allow-newer: openid-connect:text, openid-connect:mtl
27+
source-repository-package
28+
type: git
29+
location: https://github.com/pjones/openid-connect
30+
tag: ea9ccbadaa69d60a579df0fff1667115831e3677
31+
32+
allow-newer: scotty:bytestring, scotty:text
33+
allow-newer: openid-connect:containers, openid-connect:lens

src/Web/Template/Servant/Auth.hs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ module Web.Template.Servant.Auth
2424

2525
import Control.Applicative ((<|>))
2626
import Control.Lens (Iso', at, coerced, ix, (&), (.~), (<&>), (?~), (^..), (^?))
27-
import Control.Monad.Except (runExceptT, unless)
27+
import Control.Monad (unless)
28+
import Control.Monad.Except (runExceptT)
2829
import Control.Monad.IO.Class (MonadIO, liftIO)
2930
import Data.IORef (readIORef, writeIORef)
3031
import Data.Maybe (catMaybes)

web-template.cabal

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: web-template
2-
version: 0.1.3.16
2+
version: 0.1.3.17
33
synopsis: Web template
44
description:
55
Web template includes:
@@ -24,8 +24,9 @@ tested-with:
2424
|| ==9.0.2
2525
|| ==9.2.8
2626
|| ==9.4.8
27-
|| ==9.6.6
27+
|| ==9.6.7
2828
|| ==9.8.4
29+
|| ==9.10.3
2930

3031
library
3132
hs-source-dirs: src
@@ -52,8 +53,6 @@ library
5253
, cache
5354
, clock
5455
, cookie
55-
, data-default
56-
, fast-logger
5756
, file-embed-lzma
5857
, generic-override >= 0.2.0.0
5958
, generic-override-aeson
@@ -80,8 +79,6 @@ library
8079
, time
8180
, vault
8281
, wai
83-
, wai-extra
84-
, wai-logger
8582
, warp
8683
default-language: Haskell2010
8784
default-extensions: AllowAmbiguousTypes
@@ -115,14 +112,10 @@ executable web-template-servant
115112
ghc-options: -threaded -rtsopts
116113
build-depends: base
117114
, aeson
118-
, network-uri
119115
, openapi3
120116
, servant-openapi3
121117
, servant-server
122-
, servant-swagger-ui
123118
, text
124-
, wai
125-
, warp
126119
, web-template
127120
default-language: Haskell2010
128121

0 commit comments

Comments
 (0)