diff --git a/.github/workflows/cabal-ci.yml b/.github/workflows/cabal-ci.yml index f64032cc..dbefe873 100644 --- a/.github/workflows/cabal-ci.yml +++ b/.github/workflows/cabal-ci.yml @@ -1,19 +1,24 @@ on: - push - pull_request -name: cabal build with ghc 9.6 +name: cabal build jobs: runhaskell: name: cabal test runs-on: ubuntu-latest + strategy: + matrix: + version: + - ghc: 9.10.1 + cabal: 3.12.1.0 steps: - uses: actions/checkout@v4.2.0 with: submodules: true - uses: haskell-actions/setup@dd344bc1cec854a369df8814ce17ef337d6e6170 # v2.7.6 with: - ghc-version: '9.6.3' - cabal-version: '3.10.2.0' - - run: cabal build --dependencies-only --project-file ghc96.cabal.project all - - run: cabal build --project-file ghc96.cabal.project all - - run: cabal test --project-file ghc96.cabal.project all + ghc-version: ${{ matrix.version.ghc }} + cabal-version: ${{ matrix.version.cabal }} + - run: cabal build --dependencies-only --project-file ghc${{ matrix.version.ghc }}.cabal.project all + - run: cabal build --project-file ghc${{ matrix.version.ghc }}.cabal.project all + - run: cabal test --project-file ghc${{ matrix.version.ghc }}.cabal.project all diff --git a/discrimination-ieee754/discrimination-ieee754.cabal b/discrimination-ieee754/discrimination-ieee754.cabal index 6e899503..e0b84a0b 100644 --- a/discrimination-ieee754/discrimination-ieee754.cabal +++ b/discrimination-ieee754/discrimination-ieee754.cabal @@ -1,6 +1,6 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.36.0. +-- This file has been generated from package.yaml by hpack version 0.36.1. -- -- see: https://github.com/sol/hpack @@ -31,7 +31,7 @@ library hs-source-dirs: src build-depends: - base >=4.10 && <4.20 + base >=4.10 && <4.21 , contravariant >=1.3 && <1.6 , data-binary-ieee754 ==0.4.* , discrimination >=0.3 && <0.6 @@ -46,7 +46,7 @@ test-suite test test build-depends: QuickCheck - , base >=4.10 && <4.20 + , base >=4.10 && <4.21 , contravariant >=1.3 && <1.6 , data-binary-ieee754 ==0.4.* , discrimination >=0.3 && <0.6 diff --git a/discrimination-ieee754/package.yaml b/discrimination-ieee754/package.yaml index bb29ecc0..4f211990 100644 --- a/discrimination-ieee754/package.yaml +++ b/discrimination-ieee754/package.yaml @@ -12,7 +12,7 @@ license: BSD3 github: google/proto-lens/discrimination-ieee754 dependencies: - - base >= 4.10 && < 4.20 + - base >= 4.10 && < 4.21 - data-binary-ieee754 >= 0.4 && < 0.5 - contravariant >= 1.3 && < 1.6 - discrimination >= 0.3 && < 0.6 diff --git a/ghc9.10.1.cabal.project b/ghc9.10.1.cabal.project new file mode 100644 index 00000000..c6a84c09 --- /dev/null +++ b/ghc9.10.1.cabal.project @@ -0,0 +1,10 @@ + packages: + proto-lens + proto-lens-runtime + proto-lens-optparse + +source-repository-package + type: git + location: https://github.com/google/ghc-source-gen + tag: 1f0ccfc5a236e349cd48c372deda373121cd9734 + diff --git a/ghc96.cabal.project b/ghc96.cabal.project deleted file mode 100644 index 6abaf0fa..00000000 --- a/ghc96.cabal.project +++ /dev/null @@ -1,4 +0,0 @@ - packages: - proto-lens - proto-lens-runtime - proto-lens-optparse diff --git a/proto-lens-arbitrary/package.yaml b/proto-lens-arbitrary/package.yaml index 6611d883..e9a39344 100644 --- a/proto-lens-arbitrary/package.yaml +++ b/proto-lens-arbitrary/package.yaml @@ -15,7 +15,7 @@ extra-source-files: dependencies: - proto-lens >= 0.4 && < 0.8 - - base >= 4.10 && < 4.20 + - base >= 4.10 && < 4.21 - bytestring >= 0.10 && < 0.13 - containers >= 0.5 && < 0.8 - text >= 1.2 && < 2.2 diff --git a/proto-lens-arbitrary/proto-lens-arbitrary.cabal b/proto-lens-arbitrary/proto-lens-arbitrary.cabal index 7aa09e23..aa786bcb 100644 --- a/proto-lens-arbitrary/proto-lens-arbitrary.cabal +++ b/proto-lens-arbitrary/proto-lens-arbitrary.cabal @@ -1,6 +1,6 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.36.0. +-- This file has been generated from package.yaml by hpack version 0.36.1. -- -- see: https://github.com/sol/hpack @@ -34,7 +34,7 @@ library src build-depends: QuickCheck >=2.8 && <2.15 - , base >=4.10 && <4.20 + , base >=4.10 && <4.21 , bytestring >=0.10 && <0.13 , containers >=0.5 && <0.8 , lens-family >=1.2 && <2.2 diff --git a/proto-lens-discrimination/package.yaml b/proto-lens-discrimination/package.yaml index cd6ad634..3352c3f9 100644 --- a/proto-lens-discrimination/package.yaml +++ b/proto-lens-discrimination/package.yaml @@ -15,14 +15,14 @@ extra-source-files: custom-setup: dependencies: - - base >= 4.10 && < 4.20 + - base >= 4.10 && < 4.21 - Cabal - proto-lens-setup >= 0.4 && < 0.5 build-tools: proto-lens-protoc:proto-lens-protoc dependencies: - - base >= 4.11 && < 4.20 + - base >= 4.11 && < 4.21 - bytestring >= 0.10 && < 0.13 - contravariant >= 1.3 && < 1.6 - containers >= 0.5 && < 0.8 diff --git a/proto-lens-discrimination/proto-lens-discrimination.cabal b/proto-lens-discrimination/proto-lens-discrimination.cabal index ea147653..f0c33cb2 100644 --- a/proto-lens-discrimination/proto-lens-discrimination.cabal +++ b/proto-lens-discrimination/proto-lens-discrimination.cabal @@ -1,6 +1,6 @@ cabal-version: 2.0 --- This file has been generated from package.yaml by hpack version 0.36.0. +-- This file has been generated from package.yaml by hpack version 0.36.1. -- -- see: https://github.com/sol/hpack @@ -29,7 +29,7 @@ source-repository head custom-setup setup-depends: Cabal - , base >=4.10 && <4.20 + , base >=4.10 && <4.21 , proto-lens-setup ==0.4.* library @@ -46,7 +46,7 @@ library build-tool-depends: proto-lens-protoc:proto-lens-protoc build-depends: - base >=4.11 && <4.20 + base >=4.11 && <4.21 , bytestring >=0.10 && <0.13 , containers >=0.5 && <0.8 , contravariant >=1.3 && <1.6 @@ -79,7 +79,7 @@ test-suite discrimination_test build-depends: HUnit >=1.3 && <1.7 , QuickCheck >=2.8 && <2.15 - , base >=4.11 && <4.20 + , base >=4.11 && <4.21 , bytestring >=0.10 && <0.13 , containers >=0.5 && <0.8 , contravariant >=1.3 && <1.6 diff --git a/proto-lens-optparse/package.yaml b/proto-lens-optparse/package.yaml index 8e1ff8b1..3588175c 100644 --- a/proto-lens-optparse/package.yaml +++ b/proto-lens-optparse/package.yaml @@ -16,7 +16,7 @@ extra-source-files: dependencies: - proto-lens >= 0.1 && < 0.8 - - base >= 4.10 && < 4.20 + - base >= 4.10 && < 4.21 - optparse-applicative >= 0.13 && < 0.19 - text >= 1.2 && < 2.2 diff --git a/proto-lens-optparse/proto-lens-optparse.cabal b/proto-lens-optparse/proto-lens-optparse.cabal index d47fdff0..7049af9c 100644 --- a/proto-lens-optparse/proto-lens-optparse.cabal +++ b/proto-lens-optparse/proto-lens-optparse.cabal @@ -1,6 +1,6 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.36.0. +-- This file has been generated from package.yaml by hpack version 0.36.1. -- -- see: https://github.com/sol/hpack @@ -33,7 +33,7 @@ library hs-source-dirs: src build-depends: - base >=4.10 && <4.20 + base >=4.10 && <4.21 , optparse-applicative >=0.13 && <0.19 , proto-lens >=0.1 && <0.8 , text >=1.2 && <2.2 diff --git a/proto-lens-protobuf-types/package.yaml b/proto-lens-protobuf-types/package.yaml index 26e9c070..a21aa031 100644 --- a/proto-lens-protobuf-types/package.yaml +++ b/proto-lens-protobuf-types/package.yaml @@ -27,14 +27,14 @@ extra-source-files: custom-setup: dependencies: - - base >= 4.10 && < 4.20 - - Cabal >= 3 && < 3.12 + - base >= 4.10 && < 4.21 + - Cabal >= 3 && < 3.13 - proto-lens-setup == 0.4.* build-tools: proto-lens-protoc:proto-lens-protoc dependencies: - - base >= 4.10 && < 4.20 + - base >= 4.10 && < 4.21 - lens-family >= 1.2 && < 2.2 - proto-lens == 0.7.* - proto-lens-runtime == 0.7.* diff --git a/proto-lens-protobuf-types/proto-lens-protobuf-types.cabal b/proto-lens-protobuf-types/proto-lens-protobuf-types.cabal index 1e41304f..d3bddf35 100644 --- a/proto-lens-protobuf-types/proto-lens-protobuf-types.cabal +++ b/proto-lens-protobuf-types/proto-lens-protobuf-types.cabal @@ -1,6 +1,6 @@ cabal-version: 2.0 --- This file has been generated from package.yaml by hpack version 0.36.0. +-- This file has been generated from package.yaml by hpack version 0.36.1. -- -- see: https://github.com/sol/hpack @@ -39,8 +39,8 @@ source-repository head custom-setup setup-depends: - Cabal >=3 && <3.12 - , base >=4.10 && <4.20 + Cabal >=3 && <3.13 + , base >=4.10 && <4.21 , proto-lens-setup ==0.4.* library @@ -101,7 +101,7 @@ library build-tool-depends: proto-lens-protoc:proto-lens-protoc build-depends: - base >=4.10 && <4.20 + base >=4.10 && <4.21 , lens-family >=1.2 && <2.2 , proto-lens ==0.7.* , proto-lens-runtime ==0.7.* diff --git a/proto-lens-protoc/app/Data/ProtoLens/Compiler/Generate.hs b/proto-lens-protoc/app/Data/ProtoLens/Compiler/Generate.hs index 1f853288..1e10074d 100644 --- a/proto-lens-protoc/app/Data/ProtoLens/Compiler/Generate.hs +++ b/proto-lens-protoc/app/Data/ProtoLens/Compiler/Generate.hs @@ -35,7 +35,9 @@ import GHC.Hs (ideclName, ideclAs) #else import HsSyn (ideclName, ideclAs) #endif -#if MIN_VERSION_ghc(9,2,0) +#if MIN_VERSION_ghc(9,10,0) +import GHC.Parser.Annotation (noAnn) +#elif MIN_VERSION_ghc(9,2,0) import GHC.Parser.Annotation (EpAnn(EpAnnNotUsed), SrcSpanAnn'(SrcSpanAnn)) #endif #if MIN_VERSION_ghc(9,0,0) @@ -212,7 +214,9 @@ type ModifyImports = ImportDecl' -> ImportDecl' reexported :: ModifyImports reexported imp = imp { ideclName = noLoc m', ideclAs = Just m } where -#if MIN_VERSION_ghc(9,2,0) +#if MIN_VERSION_ghc(9,10,0) + noLoc = SrcLoc.L noAnn +#elif MIN_VERSION_ghc(9,2,0) noLoc = SrcLoc.L (SrcSpanAnn EpAnnNotUsed SrcLoc.noSrcSpan) #else noLoc = SrcLoc.noLoc diff --git a/proto-lens-protoc/package.yaml b/proto-lens-protoc/package.yaml index ba7bbf2f..7c98c21b 100644 --- a/proto-lens-protoc/package.yaml +++ b/proto-lens-protoc/package.yaml @@ -17,7 +17,7 @@ extra-source-files: - Changelog.md dependencies: - - base >= 4.10 && < 4.20 + - base >= 4.10 && < 4.21 - filepath >= 1.4 && < 1.6 library: @@ -32,7 +32,7 @@ executables: dependencies: - bytestring >= 0.10 && < 0.13 - containers >= 0.5 && < 0.8 - - ghc >= 8.2 && < 9.9 + - ghc >= 8.2 && < 9.11 - ghc-paths == 0.1.* - ghc-source-gen >= 0.4 && < 0.5 - lens-family >= 1.2 && < 2.2 diff --git a/proto-lens-protoc/proto-lens-protoc.cabal b/proto-lens-protoc/proto-lens-protoc.cabal index e30c5f63..3344fd54 100644 --- a/proto-lens-protoc/proto-lens-protoc.cabal +++ b/proto-lens-protoc/proto-lens-protoc.cabal @@ -1,6 +1,6 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.37.0. +-- This file has been generated from package.yaml by hpack version 0.36.1. -- -- see: https://github.com/sol/hpack @@ -34,7 +34,7 @@ library hs-source-dirs: src build-depends: - base >=4.10 && <4.20 + base >=4.10 && <4.21 , filepath >=1.4 && <1.6 default-language: Haskell2010 @@ -57,11 +57,11 @@ executable proto-lens-protoc hs-source-dirs: app build-depends: - base >=4.10 && <4.20 + base >=4.10 && <4.21 , bytestring >=0.10 && <0.13 , containers >=0.5 && <0.8 , filepath >=1.4 && <1.6 - , ghc >=8.2 && <9.9 + , ghc >=8.2 && <9.11 , ghc-paths ==0.1.* , ghc-source-gen ==0.4.* , lens-family >=1.2 && <2.2 diff --git a/proto-lens-runtime/package.yaml b/proto-lens-runtime/package.yaml index 260b6f71..484ac53a 100644 --- a/proto-lens-runtime/package.yaml +++ b/proto-lens-runtime/package.yaml @@ -16,7 +16,7 @@ extra-source-files: library: dependencies: - - base >= 4.10 && < 4.20 + - base >= 4.10 && < 4.21 - bytestring >= 0.10 && < 0.13 - containers >= 0.5 && < 0.8 - deepseq >= 1.4 && <1.6 diff --git a/proto-lens-runtime/proto-lens-runtime.cabal b/proto-lens-runtime/proto-lens-runtime.cabal index ebcaf448..29bae756 100644 --- a/proto-lens-runtime/proto-lens-runtime.cabal +++ b/proto-lens-runtime/proto-lens-runtime.cabal @@ -1,6 +1,6 @@ cabal-version: 1.22 --- This file has been generated from package.yaml by hpack version 0.36.0. +-- This file has been generated from package.yaml by hpack version 0.36.1. -- -- see: https://github.com/sol/hpack @@ -53,7 +53,7 @@ library , Lens.Family2.Unchecked as Data.ProtoLens.Runtime.Lens.Family2.Unchecked , Text.Read as Data.ProtoLens.Runtime.Text.Read build-depends: - base >=4.10 && <4.20 + base >=4.10 && <4.21 , bytestring >=0.10 && <0.13 , containers >=0.5 && <0.8 , deepseq >=1.4 && <1.6 diff --git a/proto-lens-setup/package.yaml b/proto-lens-setup/package.yaml index e8fc0e37..fc14dfb8 100644 --- a/proto-lens-setup/package.yaml +++ b/proto-lens-setup/package.yaml @@ -50,10 +50,10 @@ extra-source-files: library: source-dirs: src dependencies: - - base >= 4.10 && < 4.20 + - base >= 4.10 && < 4.21 - bytestring >= 0.10 && < 0.13 - containers >= 0.5 && < 0.8 - - Cabal >= 2.0 && < 3.12 + - Cabal >= 2.0 && < 3.13 - deepseq >=1.4 && <1.6 - directory >= 1.2 && < 1.4 - filepath >= 1.4 && < 1.6 diff --git a/proto-lens-setup/proto-lens-setup.cabal b/proto-lens-setup/proto-lens-setup.cabal index f59e85d5..28e0e2a6 100644 --- a/proto-lens-setup/proto-lens-setup.cabal +++ b/proto-lens-setup/proto-lens-setup.cabal @@ -1,6 +1,6 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.36.0. +-- This file has been generated from package.yaml by hpack version 0.36.1. -- -- see: https://github.com/sol/hpack @@ -68,8 +68,8 @@ library hs-source-dirs: src build-depends: - Cabal >=2.0 && <3.12 - , base >=4.10 && <4.20 + Cabal >=2.0 && <3.13 + , base >=4.10 && <4.21 , bytestring >=0.10 && <0.13 , containers >=0.5 && <0.8 , deepseq >=1.4 && <1.6 diff --git a/proto-lens/package.yaml b/proto-lens/package.yaml index 104d529b..bb7fb043 100644 --- a/proto-lens/package.yaml +++ b/proto-lens/package.yaml @@ -34,7 +34,7 @@ library: - Data.ProtoLens.Encoding.Parser.Internal - Data.ProtoLens.TextFormat.Parser dependencies: - - base >= 4.10 && < 4.20 + - base >= 4.10 && < 4.21 - bytestring >= 0.10 && < 0.13 - containers >= 0.5 && < 0.8 - deepseq >=1.4 && <1.6 diff --git a/proto-lens/proto-lens.cabal b/proto-lens/proto-lens.cabal index fd76a9a8..9435cdf7 100644 --- a/proto-lens/proto-lens.cabal +++ b/proto-lens/proto-lens.cabal @@ -1,6 +1,6 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.36.0. +-- This file has been generated from package.yaml by hpack version 0.36.1. -- -- see: https://github.com/sol/hpack @@ -58,7 +58,7 @@ library hs-source-dirs: src build-depends: - base >=4.10 && <4.20 + base >=4.10 && <4.21 , bytestring >=0.10 && <0.13 , containers >=0.5 && <0.8 , deepseq >=1.4 && <1.6