fix(compile): Turn warning summaries into errors also#16721
fix(compile): Turn warning summaries into errors also#16721weihanglo merged 1 commit intorust-lang:masterfrom
Conversation
rust-lang/rust is dogfooding `build.warnings` and I got usability feedback that they assume they can ignore warnings and then miss the lone error message at the end. While I think it is appropriate to report each warnings as a warning (to preserve the original level of importance and improve caching), turning the summaries into errors I think can help draw attention to this. The warning summary line is already quiet large, so I left the talk of `build.warnings` to the last message still.
|
r? @weihanglo rustbot has assigned @weihanglo. Use Why was this reviewer chosen?The reviewer was selected based on:
|
There was a problem hiding this comment.
Seems reasonable thought could we get a reference to the feedback? I guess it's was in DM as I saw @Urgau approving this
Yes, over DM. Not much I can at least add and unsure what more you are looking for. There will be a follow up change to make warnings stop the build without |
### What does this PR try to resolve? This had been discussed a little bit on [zulip](https://rust-lang.zulipchat.com/#narrow/channel/246057-t-cargo/topic/Environment.20variable.20for.20.5Blints.5D.20table.3F/near/553969201). This then came up in usability feedback from @Urgau with rust-lang/rust's x.py having adopted `build.warnings`. The output from all of the other build targets causes the warnings to disappear off the screen which doesn't happen with errors because the build ends immediately. So we're making warnings act more like errors. ### How to test and review this PR? This is a follow up to #16721
Update cargo submodule 21 commits in 90ed291a50efc459e0c380d7b455777ed41c6799..cbb9bb8bd0fb272b1be0d63a010701ecb3d1d6d3 2026-03-05 15:11:25 +0000 to 2026-03-13 14:34:16 +0000 - fix(git): preserve SCP-like submodule URLs for fetch (rust-lang/cargo#16744) - Fix 16732 (rust-lang/cargo#16746) - fix(rustdoc): switch to new `--emit` options (rust-lang/cargo#16739) - fix(git): convert SCP-like submodule URLs to ssh:// format (rust-lang/cargo#16727) - fix(core): typo (rust-lang/cargo#16738) - CARGO_TARGET_DIR doesn't have to be relative (rust-lang/cargo#16735) - chore(ci): Detect user changes to src/etc/man (rust-lang/cargo#16736) - util: Exclude from iCloud Drive sync on macOS (rust-lang/cargo#16728) - fix(compile): Stop on denying warnings without --keep-going (rust-lang/cargo#16725) - feat(shell): Support OSC 9;4 progress on ptyxis (rust-lang/cargo#16730) - Let git decide when to run gc (rust-lang/cargo#16459) - chore(deps): update cargo-semver-checks to v0.47.0 (rust-lang/cargo#16723) - fix(compile): Turn warning summaries into errors also (rust-lang/cargo#16721) - fix(fix): Switch from ad-hoc to structured warnings (rust-lang/cargo#16711) - fix: ignore implicit std dependencies in `unused-crate-dependencies` lint (rust-lang/cargo#16677) - chore(deps): update msrv (3 versions) to v1.92 (rust-lang/cargo#16716) - chore(deps): update msrv (1 version) to v1.94 (rust-lang/cargo#16710) - fix(script): surpress `unused_features` lint for embedded (rust-lang/cargo#16714) - Split `build-dir` lock into dedicated lock (rust-lang/cargo#16708) - Add missing truncate when writing .crate files (rust-lang/cargo#16688) - refactor(fix): Prep for annotate-snippets (rust-lang/cargo#16702)
What does this PR try to resolve?
rust-lang/rust is dogfooding
build.warningsand I got usability feedback that they assume they can ignore warnings and then miss the lone error message at the end.While I think it is appropriate to report each warnings as a warning (to preserve the original level of importance and improve caching), turning the summaries into errors I think can help draw attention to this.
How to test and review this PR?
The warning summary line is already quiet large, so I left the talk of
build.warningsto the last message still.