Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 12 additions & 9 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,14 @@ jobs:
with:
persist-credentials: false

- uses: dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f # master, 2026-10-09
with:
toolchain: stable
components: clippy, rustfmt
# rustup is on every GitHub-hosted runner image: no third-party action to
# pin, and nothing for Dependabot to lose track of. bash keeps the same
# step working on the Windows leg.
- name: Install Rust
shell: bash
run: |
rustup toolchain install stable --profile minimal --component clippy,rustfmt --no-self-update
rustup default stable

- uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2.9.2

Expand All @@ -45,8 +49,8 @@ jobs:
# Without this job nothing ever builds on it, and it drifts.
#
# RUSTUP_TOOLCHAIN is what pins the cargo invocations: it outranks both the
# rustup default the toolchain action sets and any rust-toolchain.toml. The
# rustc check makes a pin that silently stopped working fail loudly.
# runner's rustup default and any rust-toolchain.toml. The rustc check makes
# a pin that silently stopped working fail loudly.
msrv:
name: MSRV
runs-on: ubuntu-latest
Expand All @@ -63,9 +67,8 @@ jobs:
echo "version=$version" >> "$GITHUB_OUTPUT"
echo "RUSTUP_TOOLCHAIN=$version" >> "$GITHUB_ENV"

- uses: dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f # master, 2026-10-09
with:
toolchain: ${{ steps.msrv.outputs.version }}
- name: Install Rust ${{ steps.msrv.outputs.version }}
run: rustup toolchain install "$RUSTUP_TOOLCHAIN" --profile minimal --no-self-update

- uses: Swatinem/rust-cache@6323deb102c322ba6fcbdcafc7e3dddab59af2b6 # v2.9.2
with:
Expand Down
16 changes: 9 additions & 7 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -122,13 +122,15 @@ jobs:
ref: ${{ needs.release-please.outputs.tag_name || inputs.tag }}
persist-credentials: false

# Pinned to master with `toolchain: stable` rather than to the `stable`
# branch: that branch is rebased onto every master commit, so a SHA
# pinned on it stops being reachable from any branch.
- uses: dtolnay/rust-toolchain@e2a55d2ffb04f378e9626c28d38b36d230d1e12f # master, 2026-10-09
with:
toolchain: stable
targets: ${{ matrix.target }}
# rustup is on every GitHub-hosted runner image, so there is no
# third-party toolchain action to pin. Adding the target is a no-op on
# the legs that build for their own host; the Intel macOS leg needs it.
- name: Install Rust
shell: bash
run: |
rustup toolchain install stable --profile minimal --no-self-update
rustup default stable
rustup target add ${{ matrix.target }}

# No build cache here: SignPath forbids release builds that reuse
# outputs of earlier, unverified builds.
Expand Down
Loading