Merge dev to main #87
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
name: Continuous Integration | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: | |
- "**" | |
workflow_dispatch: | |
branches: | |
- "**" | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
test: | |
name: Test Suite | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
if: "! contains(toJSON(github.event.commits.*.message), '[skip-ci]')" | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Add SSH private keys for submodule repositories | |
uses: webfactory/[email protected] | |
with: | |
ssh-private-key: ${{ secrets.CRYPTOGRAPHY_CUDA_READ_ONLY }} | |
- name: Install nightly toolchain | |
uses: dtolnay/rust-toolchain@nightly | |
- name: Set up rust cache | |
uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
- name: Check in plonky2 subdirectory | |
run: cargo check --manifest-path plonky2/Cargo.toml | |
env: | |
RUSTFLAGS: -Copt-level=3 -Cdebug-assertions -Coverflow-checks=y -Cdebuginfo=0 | |
RUST_LOG: 1 | |
CARGO_INCREMENTAL: 1 | |
RUST_BACKTRACE: 1 | |
- name: Check in starky subdirectory | |
run: cargo check --manifest-path starky/Cargo.toml | |
env: | |
RUSTFLAGS: -Copt-level=3 -Cdebug-assertions -Coverflow-checks=y -Cdebuginfo=0 | |
RUST_LOG: 1 | |
CARGO_INCREMENTAL: 1 | |
RUST_BACKTRACE: 1 | |
- name: Run cargo test | |
run: cargo test --workspace | |
env: | |
RUSTFLAGS: -Copt-level=3 -Cdebug-assertions -Coverflow-checks=y -Cdebuginfo=0 | |
RUST_LOG: 1 | |
CARGO_INCREMENTAL: 1 | |
RUST_BACKTRACE: 1 | |
wasm: | |
name: Check wasm32 compatibility | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
if: "! contains(toJSON(github.event.commits.*.message), '[skip-ci]')" | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Install nightly toolchain | |
uses: dtolnay/rust-toolchain@nightly | |
with: | |
targets: wasm32-unknown-unknown | |
- name: Add SSH private keys for submodule repositories | |
uses: webfactory/[email protected] | |
with: | |
ssh-private-key: ${{ secrets.CRYPTOGRAPHY_CUDA_READ_ONLY }} | |
- name: Set up rust cache | |
uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
- name: Check in plonky2 subdirectory for wasm targets | |
run: cargo check --manifest-path plonky2/Cargo.toml --target wasm32-unknown-unknown --no-default-features | |
env: | |
RUSTFLAGS: -Copt-level=3 -Cdebug-assertions -Coverflow-checks=y -Cdebuginfo=0 | |
RUST_LOG: 1 | |
CARGO_INCREMENTAL: 1 | |
RUST_BACKTRACE: 1 | |
- name: Check in starky subdirectory for wasm targets | |
run: cargo check --manifest-path starky/Cargo.toml --target wasm32-unknown-unknown --no-default-features | |
env: | |
RUSTFLAGS: -Copt-level=3 -Cdebug-assertions -Coverflow-checks=y -Cdebuginfo=0 | |
RUST_LOG: 1 | |
CARGO_INCREMENTAL: 1 | |
RUST_BACKTRACE: 1 | |
no_std: | |
name: Test Suite in no-std | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
if: "! contains(toJSON(github.event.commits.*.message), '[skip-ci]')" | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Add SSH private keys for submodule repositories | |
uses: webfactory/[email protected] | |
with: | |
ssh-private-key: ${{ secrets.CRYPTOGRAPHY_CUDA_READ_ONLY }} | |
- name: Install nightly toolchain | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: nightly-2024-02-01 | |
- name: Set up rust cache | |
uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
- name: Run cargo test in plonky2 subdirectory (no-std) | |
run: cargo test --manifest-path plonky2/Cargo.toml --no-default-features --lib | |
env: | |
RUSTFLAGS: -Copt-level=3 -Cdebug-assertions -Coverflow-checks=y -Cdebuginfo=0 | |
RUST_LOG: 1 | |
CARGO_INCREMENTAL: 1 | |
RUST_BACKTRACE: 1 | |
- name: Run cargo test in starky subdirectory (no-std) | |
run: cargo test --manifest-path starky/Cargo.toml --no-default-features --lib | |
env: | |
RUSTFLAGS: -Copt-level=3 -Cdebug-assertions -Coverflow-checks=y -Cdebuginfo=0 | |
RUST_LOG: 1 | |
CARGO_INCREMENTAL: 1 | |
RUST_BACKTRACE: 1 | |
lints: | |
name: Formatting | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
if: "! contains(toJSON(github.event.commits.*.message), '[skip-ci]')" | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Add SSH private keys for submodule repositories | |
uses: webfactory/[email protected] | |
with: | |
ssh-private-key: ${{ secrets.CRYPTOGRAPHY_CUDA_READ_ONLY }} | |
- name: Install nightly toolchain | |
uses: dtolnay/rust-toolchain@nightly | |
with: | |
components: rustfmt, clippy | |
- name: Set up rust cache | |
uses: Swatinem/rust-cache@v2 | |
with: | |
cache-on-failure: true | |
- name: Run cargo fmt | |
run: cargo fmt --all --check |