diff --git a/.github/workflows/haskell.yml b/.github/workflows/haskell.yml index 5f2398e..2837190 100644 --- a/.github/workflows/haskell.yml +++ b/.github/workflows/haskell.yml @@ -17,17 +17,21 @@ jobs: strategy: fail-fast: false matrix: - ghc: ["9.2.2", "9.0.2", "8.10.7", "8.8.4", "8.6.5"] + ghc: ["9.8.1", "9.6.3", "9.4.8", "9.2.8", "9.0.2", "8.10.7"] os: [ubuntu-latest, macOS-latest, windows-latest] + env: + # Modify this value to "invalidate" the cabal cache. + CABAL_CACHE_VERSION: "2024-01-05" + steps: - uses: actions/checkout@v2 - - uses: haskell/actions/setup@v1 + - uses: haskell-actions/setup@v2 id: setup-haskell with: ghc-version: ${{ matrix.ghc }} - cabal-version: 3.6.2.0 + cabal-version: '3.10.2.1' - name: Set some window specific things if: matrix.os == 'windows-latest' @@ -35,13 +39,8 @@ jobs: - name: Configure project run: | - case ${{ matrix.os }} in - ubuntu-*) BMI_FLAG="-f bmi2" ;; - windows-*) BMI_FLAG="" ;; - macOS-*) BMI_FLAG="" ;; - esac - echo "BMI_FLAG=$BMI_FLAG" - cabal configure --enable-tests --enable-benchmarks --write-ghc-environment-files=ghc8.4.4+ $BMI_FLAG + cabal configure --enable-tests --enable-benchmarks --write-ghc-environment-files=ghc8.4.4+ + cabal build all --enable-tests --enable-benchmarks --dry-run - name: Cabal cache over S3 uses: action-works/cabal-cache-s3@v1 @@ -53,7 +52,7 @@ jobs: dist-dir: dist-newstyle store-path: ${{ steps.setup-haskell.outputs.cabal-store }} threads: 16 - archive-uri: ${{ secrets.BINARY_CACHE_URI }} + archive-uri: ${{ secrets.BINARY_CACHE_URI }}/${{ env.CABAL_CACHE_VERSION }}/${{ runner.os }}/${{ matrix.cabal }}/${{ matrix.ghc }} skip: "${{ secrets.BINARY_CACHE_URI == '' }}" - name: Cabal cache over HTTPS @@ -62,7 +61,7 @@ jobs: dist-dir: dist-newstyle store-path: ${{ steps.setup-haskell.outputs.cabal-store }} threads: 16 - archive-uri: https://cache.haskellworks.io/archive + archive-uri: https://cache.haskellworks.io/${{ env.CABAL_CACHE_VERSION }}/${{ runner.os }}/${{ matrix.cabal }}/${{ matrix.ghc }} skip: "${{ secrets.BINARY_CACHE_URI != '' }}" - name: Build diff --git a/bits-extra.cabal b/bits-extra.cabal index 4cf9c69..ba676f3 100644 --- a/bits-extra.cabal +++ b/bits-extra.cabal @@ -29,11 +29,11 @@ flag bmi2 common base { build-depends: base >= 4.11 && < 5 } common criterion { build-depends: criterion >= 1.3 && < 1.7 } -common doctest { build-depends: doctest >= 0.16.2 && < 0.21 } +common doctest { build-depends: doctest >= 0.16.2 && < 0.23 } common doctest-discover { build-depends: doctest-discover >= 0.2 && < 0.3 } -common ghc-prim { build-depends: ghc-prim >= 0.5 && < 0.10 } -common hedgehog { build-depends: hedgehog >= 0.5.3 && < 1.3 } -common hspec { build-depends: hspec >= 2.4 && < 2.11 } +common ghc-prim { build-depends: ghc-prim >= 0.5 && < 0.12 } +common hedgehog { build-depends: hedgehog >= 0.5.3 && < 1.5 } +common hspec { build-depends: hspec >= 2.4 && < 3 } common hw-hedgehog { build-depends: hw-hedgehog >= 0.1 && < 0.2 } common hw-hspec-hedgehog { build-depends: hw-hspec-hedgehog >= 0.1 && < 0.2 } common vector { build-depends: vector >= 0.12 && < 0.14 }