Verbatim copy of plain text MPL 2.0 #164
Workflow file for this run
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: CI | |
on: | |
push: | |
branches: | |
- main | |
- '*.*' | |
pull_request: | |
branches: | |
- '*' | |
schedule: | |
- cron: '0 0 * * MON' | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
check: | |
name: Check | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
rust: ["1.76", stable, nightly] | |
include: | |
- rust: "1.76" | |
wasm32-wasip1: wasm32-wasi | |
- rust: stable | |
wasm32-wasip1: wasm32-wasip1 | |
- rust: nightly | |
wasm32-wasip1: wasm32-wasip1 | |
steps: | |
- name: Checkout the Repository | |
uses: actions/checkout@v2 | |
- name: Install the Rust toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: ${{ matrix.rust }} | |
profile: minimal | |
target: ${{ matrix.wasm32-wasip1 }} | |
override: true | |
- name: Install power tools | |
uses: taiki-e/install-action@cargo-hack | |
- name: Check the powerset | |
run: | | |
cargo hack check --all \ | |
--feature-powerset --keep-going | |
- name: Check the powerset on ${{ matrix.wasm32-wasip1 }} | |
run: | | |
cargo hack check --all \ | |
--exclude numcodecs-python \ | |
--exclude numcodecs-sz3 \ | |
--exclude numcodecs-zfp \ | |
--exclude numcodecs-zstd \ | |
--feature-powerset --keep-going \ | |
--target ${{ matrix.wasm32-wasip1 }} | |
test: | |
name: Test Suite | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
rust: ["1.76", stable, nightly] | |
python: ["3.10", "3.11", "3.12"] | |
steps: | |
- name: Checkout the Repository | |
uses: actions/checkout@v2 | |
- name: Install the Rust toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: ${{ matrix.rust }} | |
profile: minimal | |
override: true | |
- name: Set up Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: ${{ matrix.python }} | |
- name: Install power tools | |
uses: taiki-e/install-action@cargo-hack | |
- name: Install numcodecs | |
run: pip install numcodecs | |
- name: Run the test-suite powerset | |
run: | | |
cargo hack test --workspace \ | |
--no-fail-fast --feature-powerset --keep-going \ | |
--release | |
fmt: | |
name: Rustfmt | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout the Repository | |
uses: actions/checkout@v2 | |
- name: Install the Rust toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: nightly | |
profile: minimal | |
components: rustfmt | |
override: true | |
- name: Check the code formatting | |
run: cargo fmt --all -- --check | |
clippy: | |
name: Clippy | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
rust: ["1.76", stable] | |
include: | |
- rust: "1.76" | |
wasm32-wasip1: wasm32-wasi | |
- rust: stable | |
wasm32-wasip1: wasm32-wasip1 | |
steps: | |
- name: Checkout the Repository | |
uses: actions/checkout@v2 | |
- name: Install the Rust toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: ${{ matrix.rust }} | |
profile: minimal | |
target: ${{ matrix.wasm32-wasip1 }} | |
components: clippy | |
override: true | |
- name: Install power tools | |
uses: taiki-e/install-action@cargo-hack | |
- name: Check the code style powerset | |
if: ${{ matrix.rust == 'stable' }} | |
run: | | |
cargo hack clippy --all \ | |
--feature-powerset --keep-going \ | |
-- -D warnings | |
- name: Check the code style powerset | |
if: ${{ matrix.rust != 'stable' }} | |
run: | | |
cargo hack clippy --all \ | |
--feature-powerset --keep-going \ | |
-- -D warnings -A unknown-lints | |
- name: Check the code style powerset on ${{ matrix.wasm32-wasip1 }} | |
if: ${{ matrix.rust == 'stable' }} | |
run: | | |
cargo hack clippy --all \ | |
--exclude numcodecs-python \ | |
--exclude numcodecs-sz3 \ | |
--exclude numcodecs-zfp \ | |
--exclude numcodecs-zstd \ | |
--feature-powerset --keep-going \ | |
--target ${{ matrix.wasm32-wasip1 }} \ | |
-- -D warnings | |
- name: Check the code style powerset on ${{ matrix.wasm32-wasip1 }} | |
if: ${{ matrix.rust != 'stable' }} | |
run: | | |
cargo hack clippy --all \ | |
--exclude numcodecs-python \ | |
--exclude numcodecs-sz3 \ | |
--exclude numcodecs-zfp \ | |
--exclude numcodecs-zstd \ | |
--feature-powerset --keep-going \ | |
--target ${{ matrix.wasm32-wasip1 }} \ | |
-- -D warnings -A unknown-lints |