diff --git a/.github/workflows/ci-mac-win.yml b/.github/workflows/ci-mac-win.yml index e485226..7e2c251 100644 --- a/.github/workflows/ci-mac-win.yml +++ b/.github/workflows/ci-mac-win.yml @@ -21,11 +21,17 @@ jobs: fail-fast: false matrix: os: [windows-latest, macos-latest] - ghc: ['9.6', '9.4', '9.2', '8.0'] + ghc: ['9.6', '9.4', '9.2'] # Minor versions are determined by setup-haskell. # Use quotes so that the version numbers are not interpreted as floats. - # GHC 7.10.3 is broken on Windows (Chocolatey) - cabal: [latest] + include: + - os: macos-latest + ghc: '7.10' + - os: windows-latest + ghc: '8.4' + # 2022-05-26: GHC 7.10.3 is broken on Windows (Chocolatey) + # 2023-02-10: GHCs 8.0 and 8.2 fail to build hsc2hs-0.68.10 on Windows + # see https://github.com/haskell/hsc2hs/issues/81 steps: - uses: actions/checkout@v4 @@ -34,7 +40,7 @@ jobs: id: setup-haskell with: ghc-version: ${{ matrix.ghc }} - cabal-version: ${{ matrix.cabal }} + cabal-version: latest cabal-update: true # # How would you get something like steps.setup-haskell.outputs.cabal-store diff --git a/.github/workflows/haskell-ci.yml b/.github/workflows/haskell-ci.yml index b9edea2..638aa49 100644 --- a/.github/workflows/haskell-ci.yml +++ b/.github/workflows/haskell-ci.yml @@ -8,9 +8,9 @@ # # For more information, see https://github.com/andreasabel/haskell-ci # -# version: 0.17.20230911 +# version: 0.17.20230928 # -# REGENDATA ("0.17.20230911",["github","MissingH.cabal"]) +# REGENDATA ("0.17.20230928",["github","MissingH.cabal"]) # name: Haskell-CI on: @@ -32,14 +32,14 @@ jobs: strategy: matrix: include: - - compiler: ghc-9.8.0.20230822 + - compiler: ghc-9.8.0.20230919 compilerKind: ghc - compilerVersion: 9.8.0.20230822 + compilerVersion: 9.8.0.20230919 setup-method: ghcup allow-failure: true - - compiler: ghc-9.6.2 + - compiler: ghc-9.6.3 compilerKind: ghc - compilerVersion: 9.6.2 + compilerVersion: 9.6.3 setup-method: ghcup allow-failure: false - compiler: ghc-9.4.7 @@ -237,6 +237,7 @@ jobs: if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo "package MissingH" >> cabal.project ; fi if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo " ghc-options: -Werror=missing-methods" >> cabal.project ; fi cat >> cabal.project <> cabal.project @@ -278,6 +279,16 @@ jobs: run: | rm -f cabal.project.local $CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all + - name: prepare for constraint sets + run: | + rm -f cabal.project.local + - name: constraint set containers-0.7 + run: | + if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then $CABAL v2-build $ARG_COMPILER --enable-tests --disable-benchmarks --constraint='containers ^>= 0.7' all --dry-run ; fi + if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then cabal-plan topo | sort ; fi + if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then $CABAL v2-build $ARG_COMPILER --enable-tests --disable-benchmarks --constraint='containers ^>= 0.7' --dependencies-only -j2 all ; fi + if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then $CABAL v2-build $ARG_COMPILER --enable-tests --disable-benchmarks --constraint='containers ^>= 0.7' all ; fi + if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then $CABAL v2-test $ARG_COMPILER --enable-tests --disable-benchmarks --constraint='containers ^>= 0.7' all ; fi - name: save cache uses: actions/cache/save@v3 if: always() diff --git a/MissingH.cabal b/MissingH.cabal index d8d2b92..1bcfac1 100644 --- a/MissingH.cabal +++ b/MissingH.cabal @@ -1,6 +1,7 @@ cabal-version: 1.12 name: MissingH version: 1.6.0.1 +x-revision: 1 build-type: Simple license: BSD3 @@ -11,7 +12,7 @@ license-file: LICENSE tested-with: GHC == 9.8.0 - GHC == 9.6.2 + GHC == 9.6.3 GHC == 9.4.7 GHC == 9.2.8 GHC == 9.0.2 @@ -126,7 +127,7 @@ library build-depends: array >= 0.4.0.0 && < 0.6 , base >= 4.8.0.0 && < 5 - , containers >= 0.4.2.1 && < 0.7 + , containers >= 0.4.2.1 && < 0.8 , directory >= 1.1.0.2 && < 1.4 , filepath >= 1.3.0.0 && < 1.5 , hslogger >= 1.3.0.0 && < 1.4 diff --git a/cabal.haskell-ci b/cabal.haskell-ci index e1f1b77..d032193 100644 --- a/cabal.haskell-ci +++ b/cabal.haskell-ci @@ -1 +1,11 @@ branches: master +installed: +all + +constraint-set containers-0.7 + ghc: >= 8.2 + constraints: containers ^>= 0.7 + tests: True + run-tests: True + +raw-project + allow-newer: containers \ No newline at end of file