Skip to content

fix: pin Rust toolchain via rust-toolchain.toml, fix deprecated f64 path - #15

Merged
imfing merged 1 commit into
mainfrom
fix/pin-rust-toolchain
Oct 3, 2026
Merged

imfing merged 1 commit into
mainfrom
fix/pin-rust-toolchain

Conversation

@imfing

@imfing imfing commented Oct 3, 2026

Copy link
Copy Markdown
Owner

Why

Third unpinned-toolchain incident (Docker tag → ruff → now rustc): CI's dtolnay/rust-toolchain@stable floats to the newest stable, so clippy --tests -D warnings enforces rules local toolchains haven't seen. Rust 1.99 deprecates the std::f64 module constants, failing macOS CI on a use std::f64; in test code while local 1.97 stayed silent.

Mechanism

rust-toolchain.toml:  channel = "1.99.0", components = [clippy, rustfmt]

rustup applies it automatically wherever cargo runs from the repo: local dev, CI (overrides whatever the setup action installed), and the V8 archive builder containers. One file, every environment, deliberate bumps.

Blast radius

Area Impact
rust-toolchain.toml (new) Pins 1.99.0 everywhere; bump policy mirrors the ruff pin (#14)
src/runtime/config.rs Test-only: drop use std::f64; so f64::INFINITY resolves to the non-deprecated associated constant
docs/contributing/development.md Prerequisite note updated
Runtime behavior / CI workflows Unchanged — no workflow edits needed; the toml overrides the action's choice

Validation

Local toolchain upgraded to 1.99.0 (matching CI); make all passes end-to-end: clippy -D warnings clean, 291 tests. rustup show active-toolchain confirms the pin takes effect from the repo directory.

CI's dtolnay/rust-toolchain@stable floats to the newest stable, so its
clippy -D warnings gate drifts ahead of local toolchains - rustc 1.99
newly deprecates the std::f64 module constants, failing lint-rust on a
'use std::f64' in config.rs tests (local 1.97 was silent). Remove the
import so f64::INFINITY resolves to the associated constant.

Pin 1.99.0 in rust-toolchain.toml: rustup applies it automatically to
local builds, CI, and the V8 archive builder containers, making lint
results reproducible everywhere. Bump deliberately; same policy as the
ruff pin (#14).
@imfing
imfing merged commit af71634 into main Oct 3, 2026
@imfing
imfing deleted the fix/pin-rust-toolchain branch October 3, 2026 11:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant