chore(release): prepare 0.8.10 #95
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: | |
| workflow_dispatch: | |
| concurrency: | |
| group: ci-${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| MODUM_VERSION: 0.3.7 | |
| jobs: | |
| stable: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: rustfmt, clippy | |
| - name: Cache cargo | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| ~/.cargo/git | |
| target | |
| key: ${{ runner.os }}-cargo-stable-${{ hashFiles('**/Cargo.toml', 'rust-toolchain.toml') }} | |
| restore-keys: | | |
| ${{ runner.os }}-cargo-stable- | |
| - name: Cache modum | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/bin/cargo-modum | |
| ~/.cargo/bin/modum | |
| ~/.cargo/.crates.toml | |
| ~/.cargo/.crates2.json | |
| key: ${{ runner.os }}-modum-${{ env.MODUM_VERSION }} | |
| - name: Install modum | |
| run: command -v modum >/dev/null 2>&1 || cargo install modum --locked --version "$MODUM_VERSION" | |
| - name: Modum | |
| run: cargo modum check --root . --mode warn | |
| - name: Format check | |
| run: cargo fmt --all --check | |
| - name: Docs link check | |
| run: bash scripts/check_readme_links.sh | |
| - name: Clippy | |
| run: cargo clippy --workspace --all-targets --all-features -- -D warnings | |
| - name: Test | |
| run: cargo test --workspace --all-features | |
| - name: Workspace hygiene | |
| run: bash scripts/check_workspace_hygiene.sh | |
| - name: Build docs | |
| run: RUSTDOCFLAGS="-D warnings" cargo doc --workspace --all-features --no-deps | |
| cross-platform-tests: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [macos-latest, windows-latest] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - name: Test all features | |
| run: cargo test --workspace --all-features | |
| msrv-1-93: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@1.93.1 | |
| - name: Cache cargo | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| ~/.cargo/git | |
| target | |
| key: ${{ runner.os }}-cargo-1-93-${{ hashFiles('**/Cargo.toml', 'rust-toolchain.toml') }} | |
| restore-keys: | | |
| ${{ runner.os }}-cargo-1-93- | |
| - name: Test | |
| run: cargo test --workspace --all-features | |
| security-deny: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@1.93.1 | |
| - uses: taiki-e/install-action@cargo-deny | |
| - name: cargo-deny | |
| run: cargo deny check advisories bans sources | |
| security-audit: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@1.93.1 | |
| - uses: taiki-e/install-action@cargo-audit | |
| - name: cargo-audit | |
| run: cargo audit -d /tmp/advisory-db | |
| publish-dry-run: | |
| if: github.event_name == 'workflow_dispatch' || startsWith(github.ref, 'refs/tags/') | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@1.93.1 | |
| - name: Publish readiness (ordered) | |
| run: bash scripts/check_publish_dry_run.sh | |
| nightly-canary: | |
| continue-on-error: true | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@nightly | |
| - name: Nightly build | |
| run: cargo build --workspace |