feat: update to Rust 1.96#2680
Conversation
WalkthroughThe pull request advances the pinned stable Rust toolchain from ChangesRust 1.96.0 Toolchain Bump
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~4 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
🌿 Preview your docs: https://nvidia-preview-pull-request-2680.docs.buildwithfern.com/infra-controller |
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
dev/docker/Dockerfile.cargo-docker-minimal (1)
7-12:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winUpdate stale toolchain comment to match the bumped base image.
Line 7 still says Rust 1.90, but Line 12 now uses
rust:1.96.0-slim-bookworm. Please align the comment to prevent version-drift confusion.Suggested patch
-# Matches rust-toolchain.toml (Rust 1.90). +# Matches rust-toolchain.toml (Rust 1.96).As per coding guidelines,
**/Dockerfile*: "Review Dockerfiles for reproducible builds, minimal runtime surface, correct user/permissions, cache behavior, architecture support, and avoiding embedded secrets."🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@dev/docker/Dockerfile.cargo-docker-minimal` around lines 7 - 12, The comment at line 7 stating "Matches rust-toolchain.toml (Rust 1.90)" is outdated and does not reflect the actual Rust version specified in the FROM instruction on line 12 which uses rust:1.96.0-slim-bookworm. Update the comment to change the version reference from 1.90 to 1.96.0 to keep the documentation in sync with the actual base image version being used.Source: Coding guidelines
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/manuals/cargo-via-docker-macos.md`:
- Around line 11-17: In the "What's in place" table, the row containing "This
guide" references an incorrect file path
`docs/development/cargo-via-docker-macos.md`. Update this path to
`docs/manuals/cargo-via-docker-macos.md` to match the actual location of this
guide file, ensuring readers can navigate to the correct location.
---
Outside diff comments:
In `@dev/docker/Dockerfile.cargo-docker-minimal`:
- Around line 7-12: The comment at line 7 stating "Matches rust-toolchain.toml
(Rust 1.90)" is outdated and does not reflect the actual Rust version specified
in the FROM instruction on line 12 which uses rust:1.96.0-slim-bookworm. Update
the comment to change the version reference from 1.90 to 1.96.0 to keep the
documentation in sync with the actual base image version being used.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Enterprise
Run ID: b9948992-f617-45c8-b7bb-bc9f5b1b5911
📒 Files selected for processing (13)
.github/actions/setup-mkosi-environment/action.yml.github/workflows/build-boot-artifacts.ymlMakefile.tomlcrates/bmc-proxy/src/setup.rsdev/docker/Dockerfile.build-artifacts-container-aarch64dev/docker/Dockerfile.build-artifacts-container-cross-aarch64dev/docker/Dockerfile.build-artifacts-container-x86_64dev/docker/Dockerfile.build-container-aarch64dev/docker/Dockerfile.build-container-x86_64dev/docker/Dockerfile.cargo-docker-minimaldocs/manuals/cargo-via-docker-macos.mdlints/carbide-lints/rust-toolchain.tomlrust-toolchain.toml
💤 Files with no reviewable changes (1)
- crates/bmc-proxy/src/setup.rs
| | **Makefile task: `cargo-docker-minimal`** | `Makefile.toml` | Run Cargo in the minimal image (`nico-build-minimal`: Rust 1.96 + protoc). **Recommended on Mac.** Requires `build-cargo-docker-image-minimal` once. | | ||
| | **Makefile task: `build-cargo-docker-image-minimal`** | `Makefile.toml` | Build the minimal image (Rust + protoc only). Quick (~2–5 min). Required once for workspace builds (e.g. `nico-rpc` needs `protoc`). | | ||
| | **Makefile task: `cargo-docker`** | `Makefile.toml` | Run Cargo inside the repo’s full build container (`nico-build-x86_64`). Requires building that image first. | | ||
| | **Makefile task: `build-cargo-docker-image`** | `Makefile.toml` | Build the full Linux build image from `dev/docker/Dockerfile.build-container-x86_64`. Slow on Apple Silicon (45+ min). | | ||
| | **This guide** | `docs/development/cargo-via-docker-macos.md` | How to use the above and when to choose which option. | | ||
| | **Minimal Dockerfile** | `dev/docker/Dockerfile.cargo-docker-minimal` | Rust 1.95 + `protobuf-compiler` + `libprotobuf-dev` (well-known types). Used for `nico-build-minimal`. | | ||
| | **Full build Dockerfile** | `dev/docker/Dockerfile.build-container-x86_64` | Defines the full build image (Rust 1.95, PostgreSQL, protobuf, TSS, etc.). | | ||
| | **Minimal Dockerfile** | `dev/docker/Dockerfile.cargo-docker-minimal` | Rust 1.96 + `protobuf-compiler` + `libprotobuf-dev` (well-known types). Used for `nico-build-minimal`. | | ||
| | **Full build Dockerfile** | `dev/docker/Dockerfile.build-container-x86_64` | Defines the full build image (Rust 1.96, PostgreSQL, protobuf, TSS, etc.). | |
There was a problem hiding this comment.
Fix the guide path in the “What’s in place” table.
Line 15 points to docs/development/cargo-via-docker-macos.md, but this guide is located at docs/manuals/cargo-via-docker-macos.md. This will mislead readers navigating by path.
Suggested patch
-| **This guide** | `docs/development/cargo-via-docker-macos.md` | How to use the above and when to choose which option. |
+| **This guide** | `docs/manuals/cargo-via-docker-macos.md` | How to use the above and when to choose which option. |As per coding guidelines, **/*.md: "Review Markdown for correctness, clarity, spelling, grammar, working links, and whether commands/examples are realistic and safe."
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| | **Makefile task: `cargo-docker-minimal`** | `Makefile.toml` | Run Cargo in the minimal image (`nico-build-minimal`: Rust 1.96 + protoc). **Recommended on Mac.** Requires `build-cargo-docker-image-minimal` once. | | |
| | **Makefile task: `build-cargo-docker-image-minimal`** | `Makefile.toml` | Build the minimal image (Rust + protoc only). Quick (~2–5 min). Required once for workspace builds (e.g. `nico-rpc` needs `protoc`). | | |
| | **Makefile task: `cargo-docker`** | `Makefile.toml` | Run Cargo inside the repo’s full build container (`nico-build-x86_64`). Requires building that image first. | | |
| | **Makefile task: `build-cargo-docker-image`** | `Makefile.toml` | Build the full Linux build image from `dev/docker/Dockerfile.build-container-x86_64`. Slow on Apple Silicon (45+ min). | | |
| | **This guide** | `docs/development/cargo-via-docker-macos.md` | How to use the above and when to choose which option. | | |
| | **Minimal Dockerfile** | `dev/docker/Dockerfile.cargo-docker-minimal` | Rust 1.95 + `protobuf-compiler` + `libprotobuf-dev` (well-known types). Used for `nico-build-minimal`. | | |
| | **Full build Dockerfile** | `dev/docker/Dockerfile.build-container-x86_64` | Defines the full build image (Rust 1.95, PostgreSQL, protobuf, TSS, etc.). | | |
| | **Minimal Dockerfile** | `dev/docker/Dockerfile.cargo-docker-minimal` | Rust 1.96 + `protobuf-compiler` + `libprotobuf-dev` (well-known types). Used for `nico-build-minimal`. | | |
| | **Full build Dockerfile** | `dev/docker/Dockerfile.build-container-x86_64` | Defines the full build image (Rust 1.96, PostgreSQL, protobuf, TSS, etc.). | | |
| | **Makefile task: `cargo-docker-minimal`** | `Makefile.toml` | Run Cargo in the minimal image (`nico-build-minimal`: Rust 1.96 + protoc). **Recommended on Mac.** Requires `build-cargo-docker-image-minimal` once. | | |
| | **Makefile task: `build-cargo-docker-image-minimal`** | `Makefile.toml` | Build the minimal image (Rust + protoc only). Quick (~2–5 min). Required once for workspace builds (e.g. `nico-rpc` needs `protoc`). | | |
| | **Makefile task: `cargo-docker`** | `Makefile.toml` | Run Cargo inside the repo's full build container (`nico-build-x86_64`). Requires building that image first. | | |
| | **Makefile task: `build-cargo-docker-image`** | `Makefile.toml` | Build the full Linux build image from `dev/docker/Dockerfile.build-container-x86_64`. Slow on Apple Silicon (45+ min). | | |
| | **This guide** | `docs/manuals/cargo-via-docker-macos.md` | How to use the above and when to choose which option. | | |
| | **Minimal Dockerfile** | `dev/docker/Dockerfile.cargo-docker-minimal` | Rust 1.96 + `protobuf-compiler` + `libprotobuf-dev` (well-known types). Used for `nico-build-minimal`. | | |
| | **Full build Dockerfile** | `dev/docker/Dockerfile.build-container-x86_64` | Defines the full build image (Rust 1.96, PostgreSQL, protobuf, TSS, etc.). | |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@docs/manuals/cargo-via-docker-macos.md` around lines 11 - 17, In the "What's
in place" table, the row containing "This guide" references an incorrect file
path `docs/development/cargo-via-docker-macos.md`. Update this path to
`docs/manuals/cargo-via-docker-macos.md` to match the actual location of this
guide file, ensuring readers can navigate to the correct location.
Source: Coding guidelines
🔍 Container Scan Summary
Per-CVE detail lives in the per-service |
Related issues
Type of Change
Breaking Changes
Testing
Additional Notes