Definition
Rust compiler pipelining overlaps crate compilation by starting downstream crates before upstream crates fully finish — using dependency metadata (.rmeta) rather than waiting for complete type-checking of function bodies.
Key Points
- 2019: Cargo pipelined compilation starts dependents when
.rmetaappears (rust-compiler-pipelining historical baseline) - 2026-10-04: headstart moves the signal earlier via
analysis_interfacesquery — writes.early-rmetaat interface-check boundary (2026-10-04-rust-headstart-faster-builds) cargo check: dependents complete on early metadata alonecargo build: dependents analyze on early metadata, pause and release job slots until full metadata available for codegen- Tradeoffs: potential wasted downstream work on late upstream errors; delayed cross-crate error ordering; higher peak memory