From 9533533b96b82e2238ae2d1cdcf2bbc28daa3754 Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Wed, 11 Jun 2025 17:16:37 -0400 Subject: [PATCH 1/3] Bump base upper bound to <4.23 Allowing GHC 9.14. --- parsec.cabal | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parsec.cabal b/parsec.cabal index bada24c..92e050e 100644 --- a/parsec.cabal +++ b/parsec.cabal @@ -79,7 +79,7 @@ library Text.ParserCombinators.Parsec.Token build-depends: - base >=4.12.0.0 && <4.22 + base >=4.12.0.0 && <4.23 , bytestring >=0.10.8.2 && <0.13 , mtl >=2.2.2 && <2.4 , text >=1.2.3.0 && <1.3 || >=2.0 && <2.2 From 5c0fdade2457f745a4cef74bf0f28dca2854cb8b Mon Sep 17 00:00:00 2001 From: Jonathan Knowles Date: Tue, 2 Jun 2026 11:45:45 +0100 Subject: [PATCH 2/3] Revise `tested-with` list of GHC versions. --- parsec.cabal | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/parsec.cabal b/parsec.cabal index 92e050e..5c89adb 100644 --- a/parsec.cabal +++ b/parsec.cabal @@ -38,8 +38,9 @@ tested-with: || ==9.4.8 || ==9.6.7 || ==9.8.4 - || ==9.10.2 - || ==9.12.2 + || ==9.10.3 + || ==9.12.4 + || ==9.14.1 extra-source-files: ChangeLog.md From 5365fd9cff23e5c49c8cef0f21b33625a23c11ce Mon Sep 17 00:00:00 2001 From: Jonathan Knowles Date: Tue, 2 Jun 2026 11:46:51 +0100 Subject: [PATCH 3/3] Regenerate CI. Using the following version of `haskell-ci`: 0.19.20260331 --- .github/workflows/haskell-ci.yml | 34 ++++++++++++++++++++++---------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/.github/workflows/haskell-ci.yml b/.github/workflows/haskell-ci.yml index 22eb64f..40a064f 100644 --- a/.github/workflows/haskell-ci.yml +++ b/.github/workflows/haskell-ci.yml @@ -8,9 +8,9 @@ # # For more information, see https://github.com/haskell-CI/haskell-ci # -# version: 0.19.20250605 +# version: 0.19.20260331 # -# REGENDATA ("0.19.20250605",["github","cabal.project"]) +# REGENDATA ("0.19.20260331",["github","cabal.project"]) # name: Haskell-CI on: @@ -20,6 +20,11 @@ on: pull_request: branches: - master + merge_group: + branches: + - master + workflow_dispatch: + {} jobs: linux: name: Haskell-CI - Linux - ${{ matrix.compiler }} @@ -32,14 +37,19 @@ jobs: strategy: matrix: include: - - compiler: ghc-9.12.2 + - compiler: ghc-9.14.1 + compilerKind: ghc + compilerVersion: 9.14.1 + setup-method: ghcup + allow-failure: false + - compiler: ghc-9.12.4 compilerKind: ghc - compilerVersion: 9.12.2 + compilerVersion: 9.12.4 setup-method: ghcup allow-failure: false - - compiler: ghc-9.10.2 + - compiler: ghc-9.10.3 compilerKind: ghc - compilerVersion: 9.10.2 + compilerVersion: 9.10.3 setup-method: ghcup allow-failure: false - compiler: ghc-9.8.4 @@ -95,8 +105,8 @@ jobs: chmod a+x "$HOME/.ghcup/bin/ghcup" - name: Install cabal-install run: | - "$HOME/.ghcup/bin/ghcup" install cabal 3.14.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false) - echo "CABAL=$HOME/.ghcup/bin/cabal-3.14.2.0 -vnormal+nowrap" >> "$GITHUB_ENV" + "$HOME/.ghcup/bin/ghcup" install cabal 3.16.0.0 || (cat "$HOME"/.ghcup/logs/*.* && false) + echo "CABAL=$HOME/.ghcup/bin/cabal-3.16.0.0 -vnormal+nowrap" >> "$GITHUB_ENV" - name: Install GHC (GHCup) if: matrix.setup-method == 'ghcup' run: | @@ -172,7 +182,7 @@ jobs: chmod a+x $HOME/.cabal/bin/cabal-plan cabal-plan --version - name: checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: path: source - name: initial cabal.project for sdist @@ -197,7 +207,11 @@ jobs: touch cabal.project.local echo "packages: ${PKGDIR_parsec}" >> cabal.project echo "package parsec" >> cabal.project - echo " ghc-options: -Werror=missing-methods" >> cabal.project + echo " ghc-options: -Werror=missing-methods -Werror=missing-fields" >> cabal.project + if [ $((HCNUMVER >= 90400)) -ne 0 ] ; then echo "package parsec" >> cabal.project ; fi + if [ $((HCNUMVER >= 90400)) -ne 0 ] ; then echo " ghc-options: -Werror=unused-packages" >> cabal.project ; fi + if [ $((HCNUMVER >= 90000)) -ne 0 ] ; then echo "package parsec" >> cabal.project ; fi + if [ $((HCNUMVER >= 90000)) -ne 0 ] ; then echo " ghc-options: -Werror=incomplete-patterns -Werror=incomplete-uni-patterns" >> cabal.project ; fi cat >> cabal.project <> cabal.project.local