diff --git a/.github/workflows/haskell-ci-hackage.patch b/.github/workflows/haskell-ci-hackage.patch index ba71dd0a..cc45e227 100644 --- a/.github/workflows/haskell-ci-hackage.patch +++ b/.github/workflows/haskell-ci-hackage.patch @@ -45,12 +45,12 @@ set in GitHub repository secrets. - compiler: ghc-8.10.7 compilerKind: ghc compilerVersion: 8.10.7 -@@ -240,8 +240,80 @@ +@@ -209,8 +217,80 @@ ${CABAL} -vnormal check - name: haddock run: | -- $CABAL v2-haddock --haddock-all $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH all -+ $CABAL v2-haddock --haddock-all $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH --haddock-for-hackage --builddir $GITHUB_WORKSPACE/haddock all +- $CABAL v2-haddock $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH all ++ $CABAL v2-haddock $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH --haddock-for-hackage --builddir $GITHUB_WORKSPACE/haddock all - name: unconstrained build run: | rm -f cabal.project.local diff --git a/.github/workflows/haskell-ci.yml b/.github/workflows/haskell-ci.yml index c70f4c2b..6f408d30 100644 --- a/.github/workflows/haskell-ci.yml +++ b/.github/workflows/haskell-ci.yml @@ -35,9 +35,14 @@ jobs: strategy: matrix: include: - - compiler: ghc-9.2.2 + - compiler: ghc-9.4.2 compilerKind: ghc - compilerVersion: 9.2.2 + compilerVersion: 9.4.2 + setup-method: ghcup + allow-failure: false + - compiler: ghc-9.2.4 + compilerKind: ghc + compilerVersion: 9.2.4 setup-method: ghcup allow-failure: false - compiler: ghc-9.0.2 @@ -240,7 +245,7 @@ jobs: ${CABAL} -vnormal check - name: haddock run: | - $CABAL v2-haddock --haddock-all $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH --haddock-for-hackage --builddir $GITHUB_WORKSPACE/haddock all + $CABAL v2-haddock $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH --haddock-for-hackage --builddir $GITHUB_WORKSPACE/haddock all - name: unconstrained build run: | rm -f cabal.project.local diff --git a/.github/workflows/nix.yml b/.github/workflows/nix.yml index 829723f5..31da8e5b 100644 --- a/.github/workflows/nix.yml +++ b/.github/workflows/nix.yml @@ -12,7 +12,7 @@ jobs: contents: read steps: - name: Install Nix - uses: cachix/install-nix-action@v13 + uses: cachix/install-nix-action@v18 with: install_url: https://nixos-nix-install-tests.cachix.org/serve/i6laym9jw3wg9mw6ncyrk6gjx4l34vvx/install install_options: '--tarball-url-prefix https://nixos-nix-install-tests.cachix.org/serve' @@ -20,7 +20,7 @@ jobs: experimental-features = nix-command flakes access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} - name: Clone project - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Build # "nix build" builds with full optimization and includes a profiling # build, so just the build of xmonad-contrib itself takes 3 minutes. diff --git a/.github/workflows/packdeps.yml b/.github/workflows/packdeps.yml index 282284b2..3043033b 100644 --- a/.github/workflows/packdeps.yml +++ b/.github/workflows/packdeps.yml @@ -13,7 +13,7 @@ jobs: steps: - name: Clone project - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Setup Haskell uses: haskell/actions/setup@v1 with: diff --git a/.github/workflows/stack.yml b/.github/workflows/stack.yml index de42985d..7c685e6a 100644 --- a/.github/workflows/stack.yml +++ b/.github/workflows/stack.yml @@ -12,31 +12,24 @@ jobs: fail-fast: false matrix: include: - - resolver: lts-12 - ghc: 8.4.4 + - resolver: lts-12 # GHC 8.4 yaml: stack.yaml - - resolver: lts-12 - ghc: 8.4.4 + - resolver: lts-12 # GHC 8.4 yaml: stack-master.yaml - - resolver: lts-14 - ghc: 8.6.5 + - resolver: lts-14 # GHC 8.6 yaml: stack-master.yaml - - resolver: lts-16 - ghc: 8.8.4 + - resolver: lts-16 # GHC 8.8 yaml: stack-master.yaml - - resolver: lts-18 - ghc: 8.10.7 + - resolver: lts-18 # GHC 8.10 yaml: stack-master.yaml - - resolver: lts-19 - ghc: 9.0.2 + - resolver: lts-19 # GHC 9.0 yaml: stack.yaml - - resolver: lts-19 - ghc: 9.0.2 + - resolver: lts-19 # GHC 9.0 yaml: stack-master.yaml steps: - name: Clone project - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Prepare apt sources run: | @@ -56,14 +49,6 @@ jobs: libxss-dev \ # - - name: Install GHC - # use system ghc (if available) in stack, don't waste GH Actions cache space - continue-on-error: true - run: | - set -ex - sudo apt install -y ghc-${{ matrix.ghc }} - echo /opt/ghc/${{ matrix.ghc }}/bin >> $GITHUB_PATH - - name: Refresh caches once a month id: cache-date # GHA writes caches on the first miss and then never updates them again; @@ -71,16 +56,16 @@ jobs: # date is prefixed with an epoch number to let us manually refresh the # cache when needed. This is a workaround for https://github.com/actions/cache/issues/2 run: | - echo "::set-output name=date::1-$(date +%Y-%m)" + date +date=1-%Y-%m >> $GITHUB_OUTPUT - name: Cache Haskell package metadata - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: ~/.stack/pantry key: stack-pantry-${{ runner.os }}-${{ steps.cache-date.outputs.date }} - name: Cache Haskell dependencies - uses: actions/cache@v2 + uses: actions/cache@v3 with: path: | ~/.stack/* diff --git a/XMonad/Layout/Groups/Examples.hs b/XMonad/Layout/Groups/Examples.hs index 6c21951d..c0acb333 100644 --- a/XMonad/Layout/Groups/Examples.hs +++ b/XMonad/Layout/Groups/Examples.hs @@ -1,5 +1,8 @@ {-# OPTIONS_GHC -fno-warn-missing-signatures #-} -{-# LANGUAGE MultiParamTypeClasses, Rank2Types, TypeFamilies #-} +{-# LANGUAGE MultiParamTypeClasses #-} +{-# LANGUAGE Rank2Types #-} +{-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} ----------------------------------------------------------------------------- -- | diff --git a/XMonad/Util/Parser.hs b/XMonad/Util/Parser.hs index c16aba01..328000ec 100644 --- a/XMonad/Util/Parser.hs +++ b/XMonad/Util/Parser.hs @@ -5,6 +5,7 @@ {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-} +{-# LANGUAGE TypeOperators #-} -------------------------------------------------------------------- -- | -- Module : XMonad.Util.Parser diff --git a/cabal.haskell-ci b/cabal.haskell-ci index 91faaed1..d70d6e4e 100644 --- a/cabal.haskell-ci +++ b/cabal.haskell-ci @@ -14,3 +14,6 @@ raw-project package xmonad-contrib flags: +pedantic ghc-options: -j + +-- avoid --haddock-all which overwrites *-docs.tar.gz with tests docs +haddock-components: libs diff --git a/xmonad-contrib.cabal b/xmonad-contrib.cabal index 09c636f2..7b49cf6a 100644 --- a/xmonad-contrib.cabal +++ b/xmonad-contrib.cabal @@ -38,7 +38,7 @@ cabal-version: 1.12 build-type: Simple bug-reports: https://github.com/xmonad/xmonad-contrib/issues -tested-with: GHC == 8.4.4 || == 8.6.5 || == 8.8.4 || == 8.10.7 || == 9.0.2 || == 9.2.2 +tested-with: GHC == 8.4.4 || == 8.6.5 || == 8.8.4 || == 8.10.7 || == 9.0.2 || == 9.2.4 || == 9.4.2 source-repository head type: git