Use the record pun as max triggers hlint #18
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
###################################################### | |
## ## | |
## !!!! Autogenerated YAML file, do not edit !!!! ## | |
## ## | |
## Edit source in /src/github/workflows/ instead! ## | |
## ## | |
###################################################### | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
auto-cancel: | |
if: | | |
!contains(github.event.head_commit.message, '[skip ci]') | |
&& !contains(github.event.head_commit.message, '[ci skip]') | |
&& !contains(github.event.head_commit.message, '[github skip]') | |
&& !contains(github.event.head_commit.message, '[skip github]') | |
runs-on: Ubuntu-latest | |
steps: | |
- uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
cabal: | |
env: | |
FLAGS: ${{ matrix.cabal-flags || '--enable-tests -f enable-cluster-counting' | |
}} | |
GHC_VER: ${{ matrix.ghc-ver || '9.10.1' }} | |
name: Cabal ${{ matrix.description }}, ${{ matrix.ghc-ver }} | |
needs: auto-cancel | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- if: runner.os == 'Linux' | |
name: Switch off XDG directories for cabal (Linux) | |
run: | | |
mkdir -p ~/.cabal | |
- id: setup-haskell | |
uses: haskell-actions/setup@v2 | |
with: | |
cabal-update: true | |
cabal-version: latest | |
ghc-version: ${{ env.GHC_VER }} | |
- if: runner.os == 'Windows' | |
name: Install the ICU library (Windows) | |
run: | | |
$env:PATH = "C:\msys64\usr\bin;$env:PATH" | |
pacman --noconfirm -S msys2-keyring mingw-w64-x86_64-pkgconf mingw-w64-x86_64-icu | |
echo "C:\msys64\mingw64\bin" | Out-File -FilePath "$env:GITHUB_PATH" -Append | |
shell: pwsh | |
- if: runner.os == 'macOS' | |
name: Set up pkg-config for the ICU library (macOS) | |
run: | | |
PKG_CONFIG_PATH=$(brew --prefix)/opt/icu4c/lib/pkgconfig | |
echo "PKG_CONFIG_PATH=${PKG_CONFIG_PATH}" >> "${GITHUB_ENV}" | |
# # print some information to debug pkg-config | |
# echo "$ export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}" | |
# echo "$ ls -l ${PKG_CONFIG_PATH}" | |
# ls -l "${PKG_CONFIG_PATH}" | |
# export PKG_CONFIG_PATH | |
# echo "$ pkg-config --modversion icu-i18n" | |
# pkg-config --modversion icu-i18n | |
- name: Determine the ICU version | |
run: | | |
ICU_VER=$(pkg-config --modversion icu-i18n) | |
echo "ICU_VER=${ICU_VER}" | |
echo "ICU_VER=${ICU_VER}" >> "${GITHUB_ENV}" | |
- name: Configure the build plan | |
run: | | |
cabal configure -O0 ${FLAGS} | |
cabal build --dry-run | |
- env: | |
key: cabal.yml-${{ runner.os }}-ghc-${{ steps.setup-haskell.outputs.ghc-version | |
}}-cabal-${{ steps.setup-haskell.outputs.cabal-version }} | |
id: cache | |
name: Restore cache from approximate key | |
uses: actions/cache/restore@v4 | |
with: | |
key: ${{ env.key }}-${{ hashFiles('**/plan.json') }} | |
path: | | |
${{ steps.setup-haskell.outputs.cabal-store }} | |
restore-keys: ${{ env.key }} | |
- name: Install dependencies | |
run: | | |
cabal build --only-dependencies | |
- name: Build Agda | |
run: | | |
cabal build | |
- if: matrix.doctest | |
name: Run doctest | |
run: | | |
make doc-test | |
- if: always() && steps.cache.outputs.cache-hit != 'true' | |
name: Save cache | |
uses: actions/cache/save@v4 | |
with: | |
key: ${{ steps.cache.outputs.cache-primary-key }} | |
path: | | |
${{ steps.setup-haskell.outputs.cabal-store }} | |
strategy: | |
fail-fast: false | |
matrix: | |
cabal-flags: | |
- --enable-tests -f enable-cluster-counting | |
description: | |
- Linux | |
doctest: | |
- false | |
ghc-ver: | |
- 9.10.1 | |
- 9.8.2 | |
- 9.6.6 | |
- 9.4.8 | |
- 9.2.8 | |
- 9.0.2 | |
- 8.10.7 | |
- 8.8.4 | |
- 8.6.5 | |
include: | |
- cabal-flags: --disable-tests | |
description: Linux doctest | |
doctest: true | |
ghc-ver: 9.10.1 | |
os: ubuntu-24.04 | |
- cabal-flags: --enable-tests -f debug | |
description: Linux debug | |
ghc-ver: 9.10.1 | |
os: ubuntu-24.04 | |
- cabal-flags: --enable-tests -f enable-cluster-counting -f debug -f debug-serialisation | |
-f debug-parsing -c containers>=0.7 --allow-newer=containers | |
description: Linux containers 0.7 | |
ghc-ver: 9.10.1 | |
os: ubuntu-24.04 | |
- description: macOS | |
ghc-ver: 9.10.1 | |
os: macos-12 | |
- description: Windows | |
ghc-ver: 9.10.1 | |
os: windows-2022 | |
os: | |
- ubuntu-24.04 | |
timeout-minutes: 60 | |
name: Build (cabal) | |
'on': | |
pull_request: | |
paths: | |
- .github/workflows/cabal.yml | |
- Agda.cabal | |
- Setup.hs | |
- src/agda-mode/** | |
- src/full/** | |
- src/main/** | |
- test/**.hs | |
push: | |
branches: | |
- master | |
- ci-* | |
- release* | |
paths: | |
- .github/workflows/cabal.yml | |
- Agda.cabal | |
- Setup.hs | |
- src/agda-mode/** | |
- src/full/** | |
- src/main/** | |
- test/**.hs |