diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c61b42c..2c0992e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -5,15 +5,16 @@ jobs: steps: - uses: actions/checkout@v4 - run: mkdir artifact - - id: haskell - uses: haskell-actions/setup@v2 + - uses: haskell/ghcup-setup@v1 with: - ghc-version: ${{ matrix.ghc }} + ghc: ${{ matrix.ghc }} + cabal: latest - run: ghc-pkg list - run: cabal sdist --output-dir artifact - run: cabal configure --enable-tests --flags=pedantic --jobs - run: cat cabal.project.local - run: cp cabal.project.local artifact + - run: cabal update - run: cabal freeze - run: cat cabal.project.freeze - run: cp cabal.project.freeze artifact @@ -21,7 +22,7 @@ jobs: - uses: actions/cache@v4 with: key: ${{ matrix.os }}-${{ matrix.ghc }}-${{ hashFiles('cabal.project.freeze') }} - path: ${{ steps.haskell.outputs.cabal-store }} + path: ~/.local/state/cabal restore-keys: ${{ matrix.os }}-${{ matrix.ghc }}- - run: cabal build --only-download - run: cabal build --only-dependencies @@ -35,17 +36,17 @@ jobs: strategy: matrix: include: - - ghc: '9.10' + - ghc: 9.12 os: macos-13 - - ghc: '9.10' + - ghc: 9.12 os: macos-14 - - ghc: 9.6 - os: ubuntu-22.04 - ghc: 9.8 - os: ubuntu-22.04 - - ghc: '9.10' - os: ubuntu-22.04 + os: ubuntu-24.04 - ghc: '9.10' + os: ubuntu-24.04 + - ghc: 9.12 + os: ubuntu-24.04 + - ghc: 9.12 os: windows-2022 cabal: name: Cabal @@ -85,7 +86,7 @@ jobs: steps: - uses: actions/download-artifact@v4 with: - name: rampart-${{ github.sha }}-ubuntu-22.04-9.10 + name: rampart-${{ github.sha }}-ubuntu-24.04-9.12 - run: tar --extract --file artifact.tar --verbose - uses: softprops/action-gh-release@v2 with: diff --git a/rampart.cabal b/rampart.cabal index 85c1d79..f1ff251 100644 --- a/rampart.cabal +++ b/rampart.cabal @@ -23,7 +23,7 @@ flag pedantic manual: True common library - build-depends: base ^>=4.18.0.0 || ^>=4.19.0.0 || ^>=4.20.0.0 + build-depends: base ^>=4.19.0.0 || ^>=4.20.0.0 || ^>=4.21.0.0 default-language: Haskell2010 ghc-options: -Weverything @@ -32,6 +32,7 @@ common library -Wno-missing-deriving-strategies -Wno-missing-exported-signatures -Wno-missing-kind-signatures + -Wno-missing-role-annotations -Wno-missing-safe-haskell-mode -Wno-prepositive-qualified-module -Wno-safe @@ -40,9 +41,6 @@ common library if flag(pedantic) ghc-options: -Werror - if impl(ghc >=9.8) - ghc-options: -Wno-missing-role-annotations - common executable import: library build-depends: rampart