SFT-4357: Increase MSRV to 1.77.1.
What changed, and why it matters
This commit simply updates the project's declared minimum Rust compiler version from 1.70.0 to 1.77.1 in CI configuration files and a Dockerfile. It does not change any firmware source code, fix a vulnerability, or alter product behavior. It is a routine build-environment maintenance change.
No security action required. Treat as normal dependency/toolchain maintenance; verify that the new Rust toolchain builds and passes tests before release.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The diff modifies three files—.github/workflows/build.yaml, .github/workflows/lint.yaml, and Dockerfile—replacing occurrences of Rust toolchain 1.70.0 with 1.77.1. No application or firmware code is touched. There is no patch of a security bug, no change to cryptographic logic, and no mitigation described. The commit is purely an MSRV (Minimum Supported Rust Version) bump for the build/lint infrastructure.
Changed components
CI/CD build configurationCI/CD lint configurationDocker build environmentInspect captured patch +9 / −9
diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml
index 5a1e3b2..0844ca4 100644
--- a/.github/workflows/build.yaml
+++ b/.github/workflows/build.yaml
@@ -41,7 +41,7 @@ jobs:
tags: localhost:5000/foundation-devices/passport2:latest
- uses: ./.github/actions/rust-toolchain
with:
- toolchain: 1.70.0
+ toolchain: 1.77.1
targets: thumbv7em-none-eabihf
- run: cargo install just@1.23.0 --locked
- run: |
@@ -126,7 +126,7 @@ jobs:
tags: localhost:5000/foundation-devices/passport2:latest
- uses: ./.github/actions/rust-toolchain
with:
- toolchain: 1.70.0
+ toolchain: 1.77.1
targets: thumbv7em-none-eabihf
- run: cargo install just@1.23.0 --locked
- run: |
@@ -174,7 +174,7 @@ jobs:
tags: localhost:5000/foundation-devices/passport2:latest
- uses: ./.github/actions/rust-toolchain
with:
- toolchain: 1.70.0
+ toolchain: 1.77.1
targets: thumbv7em-none-eabihf
- run: cargo install just@1.23.0 --locked
- run: echo "DOCKER_IMAGE=localhost:5000/foundation-devices/passport2:latest" >> $GITHUB_ENV
@@ -208,7 +208,7 @@ jobs:
tags: localhost:5000/foundation-devices/passport2:latest
- uses: ./.github/actions/rust-toolchain
with:
- toolchain: 1.70.0
+ toolchain: 1.77.1
targets: thumbv7em-none-eabihf
- run: cargo install just@1.23.0 --locked
- run: echo "DOCKER_IMAGE=localhost:5000/foundation-devices/passport2:latest" >> $GITHUB_ENV
diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml
index f3360a5..e334813 100644
--- a/.github/workflows/lint.yaml
+++ b/.github/workflows/lint.yaml
@@ -18,7 +18,7 @@ jobs:
- uses: actions/checkout@v4
- uses: ./.github/actions/rust-toolchain
with:
- toolchain: 1.70.0
+ toolchain: 1.77.1
targets: thumbv7em-none-eabihf
- run: |
cargo check --manifest-path extmod/foundation-rust/Cargo.toml
@@ -36,7 +36,7 @@ jobs:
- uses: actions/checkout@v4
- uses: ./.github/actions/rust-toolchain
with:
- toolchain: 1.70.0
+ toolchain: 1.77.1
components: rustfmt
- run: |
cargo fmt --manifest-path extmod/foundation-rust/Cargo.toml \
@@ -58,7 +58,7 @@ jobs:
- uses: actions/checkout@v4
- uses: ./.github/actions/rust-toolchain
with:
- toolchain: 1.70.0
+ toolchain: 1.77.1
- run: cargo install cbindgen@^0.24 --locked
- run: |
cbindgen --config extmod/foundation-rust/cbindgen.toml \
@@ -74,7 +74,7 @@ jobs:
- uses: actions/checkout@v4
- uses: ./.github/actions/rust-toolchain
with:
- toolchain: 1.70.0
+ toolchain: 1.77.1
targets:
- run: |
cargo test --manifest-path extmod/foundation-rust/Cargo.toml \
diff --git a/Dockerfile b/Dockerfile
index 08ba117..f649804 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -32,7 +32,7 @@ ENV RUSTUP_HOME="/rustup"
ENV CARGO_HOME="/cargo"
RUN mkdir -p /rustup /cargo && \
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | \
- sh -s -- -y --profile minimal --default-toolchain 1.70.0
+ sh -s -- -y --profile minimal --default-toolchain 1.77.1
ENV PATH="/cargo/bin:${PATH}"
# Finish installation of Rust toolchain.
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.