name: Advisory Rust Quality
on:
pull_request:
branches:
- main
permissions:
contents: read
jobs:
cargo-machete:
name: Cargo Machete Advisory
continue-on-error: true
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: Install stable Rust toolchain
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
rustflags: ""
cache-workspaces: |
. -> target
- name: Install cargo-machete
run: cargo install cargo-machete --locked --version 0.9.2
- name: Detect potentially unused dependencies
run: cargo machete --with-metadata
cargo-semver-checks:
name: Cargo SemVer Checks Advisory
continue-on-error: true
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install stable Rust toolchain
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
rustflags: ""
cache-workspaces: |
. -> target
- name: Compare public crate APIs against the PR base
uses: obi1kenobi/cargo-semver-checks-action@v2
with:
manifest-path: Cargo.toml
baseline-rev: ${{ github.event.pull_request.base.sha }}
feature-group: all-features
rust-toolchain: manual