mirror of
https://github.com/gfx-rs/wgpu.git
synced 2024-12-05 05:04:09 +00:00
7f5ec31825
Also, the documentation job probably doesn't need Clippy.
101 lines
2.9 KiB
YAML
101 lines
2.9 KiB
YAML
# Regular testing.
|
|
name: pipeline
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
test-msrv:
|
|
name: Test MSRV and dependencies minimal-versions
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: "1.56.0"
|
|
override: true
|
|
- uses: taiki-e/install-action@cargo-hack
|
|
- uses: taiki-e/install-action@cargo-minimal-versions
|
|
# nightly is only used by cargo-minimal-versions to regenerate the lock file
|
|
- run: rustup toolchain add nightly --no-self-update
|
|
- name: Test all features
|
|
run: cargo minimal-versions test --all-features --workspace
|
|
- name: Check snapshots
|
|
run: git diff --exit-code -- tests/out
|
|
test:
|
|
name: Test Nightly
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: nightly
|
|
override: true
|
|
- uses: actions-rs/cargo@v1
|
|
name: Default test
|
|
with:
|
|
# Our intention here is to test `naga` with no features enabled. But
|
|
# since `cli` is the default package, a plain `cargo test` will build
|
|
# `naga` with the features requested in `cli/Cargo.toml`. Passing
|
|
# `--package naga` causes us to use the default features in the
|
|
# top-level `Cargo.toml` instead.
|
|
command: test
|
|
args: --package naga
|
|
- uses: actions-rs/cargo@v1
|
|
name: Test all features
|
|
with:
|
|
command: test
|
|
args: --all-features --workspace
|
|
- name: Check snapshots
|
|
run: git diff --exit-code -- tests/out
|
|
- uses: actions-rs/cargo@v1
|
|
name: Check benchmarks
|
|
with:
|
|
command: check
|
|
args: --benches
|
|
clippy:
|
|
name: Clippy
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: stable
|
|
override: true
|
|
- run: rustup component add clippy
|
|
- uses: actions-rs/cargo@v1
|
|
with:
|
|
command: clippy
|
|
args: --all-features --workspace -- -D warnings
|
|
documentation:
|
|
name: Documentation
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
RUSTDOCFLAGS: -Dwarnings
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: stable
|
|
override: true
|
|
- uses: actions-rs/cargo@v1
|
|
with:
|
|
command: doc
|
|
args: -p naga --all-features --document-private-items
|
|
fmt:
|
|
name: Format
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: actions-rs/toolchain@v1
|
|
with:
|
|
profile: minimal
|
|
toolchain: stable
|
|
override: true
|
|
components: rustfmt
|
|
- name: run rustfmt
|
|
run: |
|
|
cargo fmt -- --check
|