rustuse 0.1.2

Unified facade crate for the published RustUse sets and child crates
Documentation
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