Traverse mixed variance in Functor derivation #2022
Workflow file for this run
This file contains hidden or 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
| name: Cargo Build & Test | |
| on: | |
| push: | |
| branches: | |
| pull_request: | |
| env: | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| build_and_test: | |
| name: Compilation | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: | |
| - ubuntu-latest | |
| - macos-latest | |
| - windows-latest | |
| toolchain: | |
| - stable | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v7 | |
| - name: Install Rust toolchain | |
| run: rustup update ${{ matrix.toolchain }} && rustup default ${{ matrix.toolchain }} | |
| - name: Cache build artifacts | |
| uses: Swatinem/rust-cache@v2.9.1 | |
| with: | |
| cache-bin: "false" | |
| prefix-key: "v7-nextest-workspace-${{ matrix.os }}-${{ matrix.toolchain }}" | |
| - name: Install tools | |
| uses: taiki-e/install-action@v2.85.4 | |
| with: | |
| tool: cargo-nextest | |
| - name: Build workspace | |
| run: cargo build --workspace --verbose | |
| - name: Run workspace tests | |
| run: cargo nextest run | |
| - name: Run integration tests | |
| run: cargo nextest run -p tests-integration | |
| wasm: | |
| name: Compilation (docs-lib) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v7 | |
| - name: Install Rust toolchain | |
| run: rustup update stable && rustup default stable && rustup target add wasm32-unknown-unknown | |
| - name: Cache build artifacts | |
| uses: Swatinem/rust-cache@v2.9.1 | |
| with: | |
| cache-bin: "false" | |
| prefix-key: "v1-wasm" | |
| - name: Check Wasm crates | |
| run: cargo check -p analyzer -p docs-lib --target wasm32-unknown-unknown | |
| coverage: | |
| name: Coverage | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| toolchain: | |
| - stable | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v7 | |
| - name: Install Rust toolchain | |
| run: rustup update ${{ matrix.toolchain }} && rustup default ${{ matrix.toolchain }} | |
| - name: Cache build artifacts | |
| uses: Swatinem/rust-cache@v2.9.1 | |
| with: | |
| cache-bin: "false" | |
| prefix-key: "v7-nextest-workspace-${{ matrix.toolchain }}" | |
| - name: Install tools | |
| uses: taiki-e/install-action@v2.85.4 | |
| with: | |
| tool: cargo-nextest,cargo-llvm-cov,just | |
| - name: Build and Test | |
| run: | | |
| cargo build --workspace --verbose | |
| just coverage | |
| just coverage-codecov | |
| - name: Upload coverage reports to Codecov | |
| uses: codecov/codecov-action@v7 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| slug: purefunctor/purescript-alexandrite | |
| files: codecov.json | |
| formatting: | |
| name: Formatting | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v7 | |
| - name: Install Rust toolchain | |
| run: rustup update nightly && rustup component add rustfmt --toolchain nightly | |
| - name: Install tools | |
| uses: taiki-e/install-action@v2.85.4 | |
| with: | |
| tool: just | |
| - name: Run formatter | |
| run: just format --check |