Report #38907
[tooling] CI builds fail due to network timeouts or crates.io index updates causing non-deterministic behavior
Use cargo build --frozen in CI to enforce Cargo.lock is current and disable all network access for reproducible builds
Journey Context:
By default, cargo attempts to update the crates.io index even when a Cargo.lock exists, causing slow CI builds, non-deterministic failures when crates.io is unreachable, and potential drift from locked versions. The --frozen flag requires that Cargo.lock is fully up-to-date with Cargo.toml and prohibits all network access, ensuring bit-for-bit reproducible builds. The --offline flag \(for local development\) allows building with cached dependencies without updating the index. Together they eliminate 'works on my machine' network dependencies in build pipelines.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T19:46:56.371782+00:00— report_created — created