release: v0.2.1 — document mosskeys verify, refresh crate descriptions
#18
This file contains hidden or 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: [main] | |
| env: | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| # Resolve metamorphic-log / metamorphic-crypto from crates.io instead of | |
| # the sibling working trees the local `[patch.crates-io]` points at (those | |
| # paths do not exist on a CI runner). See the script header for detail. | |
| - name: Decouple from sibling working trees | |
| run: ./.github/scripts/decouple-from-siblings.sh | |
| # @stable intentionally tracks the current stable channel for CI. | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy, rustfmt | |
| - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 | |
| # Re-add metamorphic-log / metamorphic-crypto to Cargo.lock from crates.io | |
| # (the decouple step removed their sibling-path entries). Their exact | |
| # versions are pinned in Cargo.toml, so this is deterministic and leaves | |
| # every other locked dependency untouched; the `--locked` build then holds. | |
| - name: Resolve sibling crates from crates.io | |
| run: cargo fetch | |
| - name: Format check | |
| run: cargo fmt --check | |
| - name: Clippy | |
| run: cargo clippy --all-targets --locked -- -D warnings | |
| - name: Tests | |
| run: cargo test --locked | |
| audit: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| - name: Decouple from sibling working trees | |
| run: ./.github/scripts/decouple-from-siblings.sh | |
| # Restore the metamorphic-* entries the decouple step removed, so | |
| # cargo-audit can resolve a complete Cargo.lock. | |
| - name: Resolve sibling crates from crates.io | |
| run: cargo fetch | |
| - uses: rustsec/audit-check@69366f33c96575abad1ee0dba8212993eecbe998 # v2.0.0 | |
| with: | |
| token: ${{ secrets.GITHUB_TOKEN }} | |
| msrv: | |
| # Verify the workspace still builds on its declared MSRV (rust-version in | |
| # Cargo.toml), so the "1.85" promise to downstream users stays honest. | |
| # The release pipeline builds with a newer toolchain; this guards the floor. | |
| name: MSRV (1.85) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| - name: Decouple from sibling working trees | |
| run: ./.github/scripts/decouple-from-siblings.sh | |
| - uses: dtolnay/rust-toolchain@e97e2d8cc328f1b50210efc529dca0028893a2d9 # v1 | |
| with: | |
| toolchain: "1.85" | |
| - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2 | |
| - name: Resolve sibling crates from crates.io | |
| run: cargo fetch | |
| - name: Build on MSRV | |
| run: cargo build --locked |