Closed
Description
Implementation PR: #6933
Documentation: https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#cache-messages
Summary
Caches the output from rustc
so that future runs can redisplay previous warnings.
cargo +nightly check -Z cache-messages
This also fixes some interleaved output from parallel compilers, like #6848.
Unresolved issues
-
short
messages are not supported. Either the rustc JSON output needs to include an additional field with theshort
rendered form, or cargo and rustc need to share a diagnostics rendering library and the JSON format extended to support that. - rustdoc does not support
--json-rendered=termcolor
, so its output is currently uncolored. -
--json-rendered
needs to be stabilized (or redesigned, see first point). - A major goal of properly redisplaying clippy warnings is not yet finished. Clippy shares the same fingerprint with
cargo check
. The fingerprint or metadata hash needs to include that clippy is in use to fix this. Also, the clippy wrapper needs to only be applied to member crates, not registry dependencies.