Skip to content

Commit

Permalink
Allow GHC-9.8 (#1714)
Browse files Browse the repository at this point in the history
  • Loading branch information
ysangkok authored Nov 20, 2023
1 parent c60c312 commit d06a2dd
Show file tree
Hide file tree
Showing 15 changed files with 44 additions and 53 deletions.
7 changes: 4 additions & 3 deletions .github/workflows/master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,9 @@ jobs:
- "8.10.7"
- "9.0.2"
- "9.2.8"
- "9.4.5"
- "9.6.2"
- "9.4.8"
- "9.6.3"
- "9.8.1"
fail-fast: false

steps:
Expand Down Expand Up @@ -51,7 +52,7 @@ jobs:
- name: Install doctest
run: |
cabal install --ignore-project -j2 doctest --constraint='doctest ^>=0.21'
cabal install --ignore-project -j2 doctest --constraint='doctest ^>=0.22'
- name: Build
run: |
Expand Down
20 changes: 5 additions & 15 deletions cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -53,18 +53,6 @@ tests: True
optimization: False
-- reorder-goals: True

-- Older warp versions fail to build with https >= 4.2:
-- Network/Wai/Handler/Warp/HTTP2.hs:48:16: error:
-- Error: • Constructor ‘H2.Config’ does not have the required strict field(s): confMySockAddr,
-- confPeerSockAddr
constraints: http2 <4.2

-- wreq-0.5.4.1 doesn't seem to work with ghc-8.6.5
if (impl(ghc < 8.8))
constraints: wreq == 0.5.4.0

allow-newer: servant-js:base

-- Print ticks so that doctest type querying is consistent across GHC versions.
-- This block can be removed when we drop support for GHC 9.4 and below.
if(impl(ghc >= 9.6.1))
Expand All @@ -74,6 +62,8 @@ if(impl(ghc >= 9.6.1))
package servant-server
ghc-options: -fprint-redundant-promotion-ticks

allow-newer: servant-multipart:servant, servant-multipart:servant-server, servant-multipart-api:servant
allow-newer: servant-pagination:servant, servant-pagination:servant-server
allow-newer: servant-js:servant, servant-js:servant-foreign
allow-newer: servant-multipart:bytestring, servant-multipart:text
allow-newer: servant-multipart-api:bytestring, servant-multipart-api:text
allow-newer: servant-pagination:servant, servant-pagination:servant-server, servant-pagination:text
allow-newer: servant-js:base, servant-js:servant, servant-js:servant-foreign, servant-js:text
allow-newer: swagger2:aeson, swagger2:base, swagger2:template-haskell, swagger2:bytestring, swagger2:text
2 changes: 1 addition & 1 deletion servant-auth/servant-auth-client/servant-auth-client.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ library
default-extensions: ConstraintKinds DataKinds DefaultSignatures DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable FlexibleContexts FlexibleInstances FunctionalDependencies GADTs KindSignatures MultiParamTypeClasses OverloadedStrings RankNTypes ScopedTypeVariables TypeFamilies TypeOperators
ghc-options: -Wall
build-depends:
base >= 4.10 && < 4.19
base >= 4.10 && < 4.20
, bytestring >= 0.10.6.0 && < 0.13
, containers >= 0.5.6.2 && < 0.7
, servant-auth == 0.4.*
Expand Down
6 changes: 3 additions & 3 deletions servant-auth/servant-auth-docs/servant-auth-docs.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ extra-source-files:

custom-setup
setup-depends:
base < 4.19, Cabal < 4, cabal-doctest >=1.0.6 && <1.1
base < 4.20, Cabal < 4, cabal-doctest >=1.0.6 && <1.1

source-repository head
type: git
Expand All @@ -35,7 +35,7 @@ library
default-extensions: ConstraintKinds DataKinds DefaultSignatures DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable FlexibleContexts FlexibleInstances FunctionalDependencies GADTs KindSignatures MultiParamTypeClasses OverloadedStrings RankNTypes ScopedTypeVariables TypeFamilies TypeOperators
ghc-options: -Wall
build-depends:
base >= 4.10 && < 4.19
base >= 4.10 && < 4.20
, servant-docs >= 0.13 && < 0.14
, servant >= 0.13 && < 0.21
, servant-auth == 0.4.*
Expand All @@ -50,7 +50,7 @@ test-suite doctests
build-depends:
base,
servant-auth-docs,
doctest >= 0.16 && < 0.22,
doctest >= 0.16 && < 0.23,
QuickCheck >= 2.11.3 && < 2.15,
template-haskell
ghc-options: -Wall -threaded
Expand Down
6 changes: 3 additions & 3 deletions servant-auth/servant-auth-server/servant-auth-server.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ library
default-extensions: ConstraintKinds DataKinds DefaultSignatures DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable FlexibleContexts FlexibleInstances FunctionalDependencies GADTs KindSignatures MultiParamTypeClasses OverloadedStrings RankNTypes ScopedTypeVariables TypeFamilies TypeOperators
ghc-options: -Wall
build-depends:
base >= 4.10 && < 4.19
base >= 4.10 && < 4.20
, aeson >= 1.0.0.1 && < 3
, base64-bytestring >= 1.0.0.1 && < 2
, blaze-builder >= 0.4.1.0 && < 0.5
Expand All @@ -50,7 +50,7 @@ library
, servant-auth == 0.4.*
, servant-server >= 0.13 && < 0.21
, tagged >= 0.8.4 && < 0.9
, text >= 1.2.3.0 && < 2.1
, text >= 1.2.3.0 && < 2.2
, time >= 1.5.0.1 && < 1.13
, unordered-containers >= 0.2.9.0 && < 0.3
, wai >= 3.2.1.2 && < 3.3
Expand Down Expand Up @@ -129,7 +129,7 @@ test-suite spec
, lens-aeson >= 1.0.2 && < 1.3
, warp >= 3.2.25 && < 3.4
, wreq >= 0.5.2.1 && < 0.6
, text >= 1.2.3.0 && < 2.1
, text >= 1.2.3.0 && < 2.2
other-modules:
Servant.Auth.ServerSpec
default-language: Haskell2010
4 changes: 2 additions & 2 deletions servant-auth/servant-auth-swagger/servant-auth-swagger.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ library
default-extensions: ConstraintKinds DataKinds DefaultSignatures DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable FlexibleContexts FlexibleInstances FunctionalDependencies GADTs KindSignatures MultiParamTypeClasses OverloadedStrings RankNTypes ScopedTypeVariables TypeFamilies TypeOperators
ghc-options: -Wall
build-depends:
base >= 4.10 && < 4.19
, text >= 1.2.3.0 && < 2.1
base >= 4.10 && < 4.20
, text >= 1.2.3.0 && < 2.2
, servant-swagger >= 1.1.5 && < 2
, swagger2 >= 2.2.2 && < 3
, servant >= 0.13 && < 0.21
Expand Down
4 changes: 2 additions & 2 deletions servant-auth/servant-auth/servant-auth.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,13 @@ library
default-extensions: ConstraintKinds DataKinds DefaultSignatures DeriveFoldable DeriveFunctor DeriveGeneric DeriveTraversable FlexibleContexts FlexibleInstances FunctionalDependencies GADTs KindSignatures MultiParamTypeClasses OverloadedStrings RankNTypes ScopedTypeVariables TypeFamilies TypeOperators
ghc-options: -Wall
build-depends:
base >= 4.10 && < 4.19
base >= 4.10 && < 4.20
, containers >= 0.6 && < 0.7
, aeson >= 2.0 && < 3
, jose >= 0.10 && < 0.11
, lens >= 4.16.1 && < 5.3
, servant >= 0.15 && < 0.21
, text >= 1.2.3.0 && < 2.1
, text >= 1.2.3.0 && < 2.2
, unordered-containers >= 0.2.9.0 && < 0.3
exposed-modules:
Servant.Auth
Expand Down
12 changes: 6 additions & 6 deletions servant-client-core/servant-client-core.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -50,14 +50,14 @@ library
--
-- note: mtl lower bound is so low because of GHC-7.8
build-depends:
base >= 4.9 && < 4.19
base >= 4.9 && < 4.20
, bytestring >= 0.10.8.1 && < 0.13
, constraints >= 0.2 && < 0.14
, constraints >= 0.2 && < 0.15
, containers >= 0.5.7.1 && < 0.7
, deepseq >= 1.4.2.0 && < 1.5
, text >= 1.2.3.0 && < 2.1
, deepseq >= 1.4.2.0 && < 1.6
, text >= 1.2.3.0 && < 2.2
, transformers >= 0.5.2.0 && < 0.7
, template-haskell >= 2.11.1.0 && < 2.21
, template-haskell >= 2.11.1.0 && < 2.22

if !impl(ghc >= 8.2)
build-depends:
Expand Down Expand Up @@ -103,7 +103,7 @@ test-suite spec

-- Additional dependencies
build-depends:
deepseq >= 1.4.2.0 && < 1.5
deepseq >= 1.4.2.0 && < 1.6
, hspec >= 2.6.0 && < 2.12
, QuickCheck >= 2.12.6.1 && < 2.15

Expand Down
6 changes: 3 additions & 3 deletions servant-client/servant-client.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -41,13 +41,13 @@ library
-- Bundled with GHC: Lower bound to not force re-installs
-- text and mtl are bundled starting with GHC-8.4
build-depends:
base >= 4.9 && < 4.19
base >= 4.9 && < 4.20
, bytestring >= 0.10.8.1 && < 0.13
, containers >= 0.5.7.1 && < 0.7
, deepseq >= 1.4.2.0 && < 1.5
, deepseq >= 1.4.2.0 && < 1.6
, mtl ^>= 2.2.2 || ^>= 2.3.1
, stm >= 2.4.5.1 && < 2.6
, text >= 1.2.3.0 && < 2.1
, text >= 1.2.3.0 && < 2.2
, time >= 1.6.0.1 && < 1.13
, transformers >= 0.5.2.0 && < 0.7

Expand Down
4 changes: 2 additions & 2 deletions servant-docs/servant-docs.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,9 @@ library
--
-- note: mtl lower bound is so low because of GHC-7.8
build-depends:
base >= 4.9 && < 4.19
base >= 4.9 && < 4.20
, bytestring >= 0.10.8.1 && < 0.13
, text >= 1.2.3.0 && < 2.1
, text >= 1.2.3.0 && < 2.2

-- Servant dependencies
build-depends:
Expand Down
4 changes: 2 additions & 2 deletions servant-foreign/servant-foreign.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,8 @@ library
--
-- note: mtl lower bound is so low because of GHC-7.8
build-depends:
base >= 4.9 && < 4.19
, text >= 1.2.3.0 && < 2.1
base >= 4.9 && < 4.20
, text >= 1.2.3.0 && < 2.2

-- Servant dependencies
build-depends:
Expand Down
6 changes: 3 additions & 3 deletions servant-http-streams/servant-http-streams.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,12 @@ library
-- Bundled with GHC: Lower bound to not force re-installs
-- text and mtl are bundled starting with GHC-8.4
build-depends:
base >= 4.9 && < 4.19
base >= 4.9 && < 4.20
, bytestring >= 0.10.8.1 && < 0.13
, containers >= 0.5.7.1 && < 0.7
, deepseq >= 1.4.2.0 && < 1.5
, deepseq >= 1.4.2.0 && < 1.6
, mtl ^>= 2.2.2 || ^>= 2.3.1
, text >= 1.2.3.0 && < 2.1
, text >= 1.2.3.0 && < 2.2
, time >= 1.6.0.1 && < 1.13
, transformers >= 0.5.2.0 && < 0.7

Expand Down
6 changes: 3 additions & 3 deletions servant-server/servant-server.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,12 @@ library
-- Bundled with GHC: Lower bound to not force re-installs
-- text and mtl are bundled starting with GHC-8.4
build-depends:
base >= 4.9 && < 4.19
base >= 4.9 && < 4.20
, bytestring >= 0.10.8.1 && < 0.13
, constraints >= 0.2 && < 0.14
, constraints >= 0.2 && < 0.15
, containers >= 0.5.7.1 && < 0.7
, mtl ^>= 2.2.2 || ^>= 2.3.1
, text >= 1.2.3.0 && < 2.1
, text >= 1.2.3.0 && < 2.2
, transformers >= 0.5.2.0 && < 0.7
, filepath >= 1.4.1.1 && < 1.5

Expand Down
4 changes: 2 additions & 2 deletions servant-swagger/servant-swagger.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ library
, servant >=0.20 && <0.21
, singleton-bool >=0.1.4 && <0.2
, swagger2 >=2.3.0.1 && <3
, text >=1.2.3.0 && <2.1
, text >=1.2.3.0 && <2.2
, unordered-containers >=0.2.9.0 && <0.3

, hspec
Expand All @@ -92,7 +92,7 @@ test-suite doctests
build-depends:
base,
directory >= 1.0,
doctest >= 0.17 && <0.22,
doctest >= 0.17 && <0.23,
servant,
QuickCheck,
filepath
Expand Down
6 changes: 3 additions & 3 deletions servant/servant.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -81,13 +81,13 @@ library
--
-- note: mtl lower bound is so low because of GHC-7.8
build-depends:
base >= 4.9 && < 4.19
base >= 4.9 && < 4.20
, bytestring >= 0.10.8.1 && < 0.13
, constraints >= 0.2
, mtl ^>= 2.2.2 || ^>= 2.3.1
, sop-core >= 0.4.0.0 && < 0.6
, transformers >= 0.5.2.0 && < 0.7
, text >= 1.2.3.0 && < 2.1
, text >= 1.2.3.0 && < 2.2


-- We depend (heavily) on the API of these packages:
Expand All @@ -104,7 +104,7 @@ library
, attoparsec >= 0.13.2.2 && < 0.15
, bifunctors >= 5.5.3 && < 5.7
, case-insensitive >= 1.2.0.11 && < 1.3
, deepseq >= 1.4.2.0 && < 1.5
, deepseq >= 1.4.2.0 && < 1.6
, http-media >= 0.7.1.3 && < 0.9
, http-types >= 0.12.2 && < 0.13
, mmorph >= 1.1.2 && < 1.3
Expand Down

0 comments on commit d06a2dd

Please sign in to comment.