build(nix): stop shipping 727MB of rust-docs in every CI job's closure - #1747
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
Included review availability: 4 reviews are currently available. Your included PR review attempts over the past 7 days set your current allowance at 5 reviews per hour. 📝 WalkthroughWalkthroughChangesRust toolchain configuration
Suggested reviewers: Merge Risk: ⚪ Minimal · up to The PR removes unused Rust documentation from CI toolchain closures, reducing download and storage cost without changing the remaining toolchain contents; no actionable merge-blocking risk remains beyond normal checks and review. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Full details: Docstring CoverageExplanation No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (1 skipped: 1 unsupported.) Comment |
2873bf8 to
72c2398
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
72c2398 to
a9ffad3
Compare
…ust-docs Verified by set-diffing the joined component paths of the three variants: the resulting toolchain differs from today's by rust-docs and nothing else. Every rust-built store path in the dev shell changes hash, so the first CI run after this repopulates that half of the cache. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Signed-off-by: Daniel Noland <daniel@githedgehog.com>
a9ffad3 to
bfb86f8
Compare
Stacked on #1746 — review/merge that first.
fromRustupToolchainappliescomponentsas extensions on top of a profile,and
profiledefaults to rustup'sdefault, which already carriesrust-docs.So
rust-docswas arriving twice, and deleting it from the component list alonewould have removed nothing.
Naming
profile = "minimal"is what actually drops it. Verified by set-diffingthe joined component paths of the toolchain derivation across three variants:
rust-docsin the joined paths"rust-docs"listed, noprofile)profilestill unsetprofile = "minimal")A full
diffof the deduplicated path sets between the last two shows exactlyone line:
rust-docs. Nothing else about the toolchain moves.passthru.availableComponents.rust-src— whichdefault.nixuses in threeplaces — still resolves to the same store path.
Why bother
727MB of prebuilt HTML, in the closure of all 8 dev-shell jobs. The lab runners
are ephemeral (
directory /nix does not exist; creating itevery job), so it ispulled over the network each time, not cached on disk. Measured against the
current dev shell: 5.96GB closure, 325 paths, ~22s to realize.
Nothing in the tree reads it —
grepforrust-docs,share/doc/rust, andrustup docfinds only this comment.Cost
Every rust-built store path in the shell changes hash, so the first CI run after
this merges repopulates that half of Cachix.
🤖 Generated with Claude Code