Skip to content

Implement rm-override #387

Implement rm-override

Implement rm-override #387

Workflow file for this run

name: Rust
on:
push:
branches: ["main"]
pull_request:
branches: ["*"]
env:
CARGO_TERM_COLOR: always
RUSTFLAGS: -D warnings
RUSTDOCFLAGS: -D warnings
jobs:
build:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-14, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4.2.2
- uses: taiki-e/install-action@v2.48.1
with:
tool: cargo-hack
- uses: Swatinem/rust-cache@v2.7.7
- name: build
run: cargo hack build --feature-powerset
test:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-14, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4.2.2
- uses: taiki-e/install-action@v2.48.1
with:
tool: cargo-hack
- uses: Swatinem/rust-cache@v2.7.7
- name: test
run: cargo hack test --feature-powerset --exclude-features failing_tests
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.2.2
- name: Install Rust
uses: dtolnay/rust-toolchain@c5a29ddb4d9d194e7c84ec8c3fba61b1c31fee8c
with:
toolchain: stable
components: clippy
- uses: Swatinem/rust-cache@v2.7.7
- name: clippy
run: cargo clippy --all-features --all-targets --no-deps
fmt:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.2.2
- uses: Swatinem/rust-cache@v2.7.7
- name: fmt
run: cargo fmt --check
doc:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.2.2
- uses: Swatinem/rust-cache@v2.7.7
- name: doc
run: cargo doc --all-features
# minimal:
# runs-on: ubuntu-latest
# name: ubuntu / stable / minimal-versions
# steps:
# - uses: actions/checkout@v4.2.2
# - name: Install stable
# uses: dtolnay/rust-toolchain@c5a29ddb4d9d194e7c84ec8c3fba61b1c31fee8c
# with:
# toolchain: stable
# - name: Install nightly for -Zminimal-versions
# uses: dtolnay/rust-toolchain@c5a29ddb4d9d194e7c84ec8c3fba61b1c31fee8c
# with:
# toolchain: nightly
# - name: rustup default stable
# run: rustup default stable
# - uses: Swatinem/rust-cache@v2.7.7
# - name: cargo update -Zminimal-versions
# run: cargo +nightly update -Zminimal-versions
# - name: cargo check
# run: cargo check --locked --all-features
msrv:
name: "Check MSRV"
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4.2.2
- name: Install Rust
uses: dtolnay/rust-toolchain@c5a29ddb4d9d194e7c84ec8c3fba61b1c31fee8c
with:
toolchain: stable
- uses: Swatinem/rust-cache@v2.7.7
- uses: taiki-e/install-action@v2.48.1
with:
tool: cargo-hack
- name: Default features
run: cargo hack check --feature-powerset --locked --rust-version --ignore-private --workspace --all-targets
lockfile:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4.2.2
- name: Install Rust
uses: dtolnay/rust-toolchain@c5a29ddb4d9d194e7c84ec8c3fba61b1c31fee8c
with:
toolchain: stable
- uses: Swatinem/rust-cache@v2.7.7
- name: "Is lockfile updated?"
run: cargo update --workspace --locked