Skip to content

Add dissertation

Add dissertation #465

Workflow file for this run

name: CI
on: push
jobs:
ormolu:
runs-on: ubuntu-latest
name: Ormolu
steps:
- uses: actions/checkout@v3
- uses: mrkkrp/ormolu-action@v10
cabal:
runs-on: ubuntu-latest
needs: ormolu
strategy:
matrix:
ghc: ["9.2.7"]
name: Cabal with GHC ${{ matrix.ghc }}
steps:
- uses: actions/checkout@v3
- name: Install Haskell
id: install-haskell
uses: haskell/actions/setup@v2
with:
ghc-version: ${{ matrix.ghc }}
- name: Add Cabal programs to PATH
run: echo "$HOME/.cabal/bin" >> $GITHUB_PATH
- name: Install cabal-docspec
run: |
mkdir -p $HOME/.cabal/bin
curl -sL https://github.com/phadej/cabal-extras/releases/download/cabal-docspec-0.0.0.20230406/cabal-docspec-0.0.0.20230406-x86_64-linux.xz > cabal-docspec.xz
echo '68fa9addd5dc453d533a74a763950499d4593b1297c9a05c3ea5bd1acc04c9dd cabal-docspec.xz' | sha256sum -c -
xz -d < cabal-docspec.xz > $HOME/.cabal/bin/cabal-docspec
rm -f cabal-docspec.xz
chmod a+x $HOME/.cabal/bin/cabal-docspec
cabal-docspec --version
- name: Install ripgrep
uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: ripgrep
version: 3.0
- name: Cabal freeze
run: cabal freeze
- name: Cache Cabal
uses: actions/cache@v3
with:
path: |
${{ steps.install-haskell.outputs.cabal-store }}
dist-newstyle
key: ${{ runner.os }}-${{ matrix.ghc }}-cabal-${{ hashFiles('cabal.project.freeze') }}"
restore-keys: |
${{ runner.os }}-${{ matrix.ghc }}-cabal-
- name: Install dependencies
run: cabal build all --enable-tests --only-dependencies
- name: Build
run: cabal build all --enable-tests
- name: Set test suite package environment
run: |
echo "LOWARN_PACKAGE_ENV=$(realpath .ghc.environment*)" >> $GITHUB_ENV
- name: Run test suite
run: cabal test all --enable-tests --test-show-details=streaming
- name: Run doctests
run: cabal-docspec -X QuasiQuotes
stack:
runs-on: ubuntu-latest
needs: ormolu
strategy:
matrix:
ghc: ["9.2.7"]
name: Stack with GHC ${{ matrix.ghc }}
steps:
- uses: actions/checkout@v3
- name: Install Haskell
id: install-haskell
uses: haskell/actions/setup@v2
with:
ghc-version: ${{ matrix.ghc }}
enable-stack: true
- name: Install ripgrep
uses: awalsh128/cache-apt-pkgs-action@latest
with:
packages: ripgrep
version: 3.0
- name: Cache global Stack
uses: actions/cache@v3
with:
path: ~/.stack
key: ${{ runner.os }}-${{ matrix.ghc }}-global-stack-${{ hashFiles('stack.yaml') }}-${{ hashFiles('**/package.yaml') }}"
restore-keys: |
${{ runner.os }}-${{ matrix.ghc }}-global-stack-${{ hashFiles('stack.yaml') }}-
${{ runner.os }}-${{ matrix.ghc }}-global-stack-
- name: Cache local Stack
uses: actions/cache@v3
with:
path: .stack-work
key: ${{ runner.os }}-${{ matrix.ghc }}-local-stack-${{ hashFiles('stack.yaml') }}-${{ hashFiles('**/*.hs') }}"
restore-keys: |
${{ runner.os }}-${{ matrix.ghc }}-local-stack-${{ hashFiles('stack.yaml') }}-
${{ runner.os }}-${{ matrix.ghc }}-local-stack-
- name: Install dependencies
run: stack build --test --only-dependencies
- name: Build
run: stack build
- name: Run test suite
run: stack test
- name: Run Haddock
run: stack haddock lowarn lowarn-runtime lowarn-cli lowarn-transformer lowarn-inject lowarn-aeson lowarn-arbitrary lowarn-test lowarn-test-types