-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Stabilize fix --clippy #7383
Stabilize fix --clippy #7383
Conversation
r? @nrc (rust_highfive has picked a reviewer for you, use r? to override) |
Possibly blocking on rust-lang/rust-clippy#3630 |
cc @oli-obk @phansch @flip1995 What do y'all think we should do to get to a stage where we can stabilize this? An easy answer is to remove MachineApplicable from most lints in rust-lang/rust-clippy#3630 , which I don't like but I don't hate it either. I'm going to slowly work my way through the list. |
CI is only failing due to an unused import in tests/testsuite/fix.rs
Yea, having |
Yeah, I also think that would be the best solution in the short term. I'd very much like to see |
Okay, how about we punt on this until after the next rust release (sept 26)? That way this doesn't make it into beta in a broken state. By then, hopefully I'll have that list burned down quite a bit, and we can mark any stragglers as inapplicable. |
(Beta is cut early so we may be able to merge before sept 26) |
rust-lang/rust-clippy#3630 is now closed, so this is unblocked from the clippy side. r? @ehuss |
Ah if this is ready to be stabilized, perhaps it's best included in #7382? |
I'm okay with either, both of these changes are theoretically independent release-wise, they just share a ton of code (and releasing one will require small tweaks to the PR for the other). It might be worth releasing this separately. |
☔ The latest upstream changes (presumably #7450) made this pull request unmergeable. Please resolve the merge conflicts. |
@ehuss should we try and get this stabilized first? There may be fewer UX requirements and these actually seem pretty independent. |
The Cargo team discussed this, and we'd like to propose the following alternative, considering some of the concerns in #7382. A change would be made to Cargo to allow The EDIT: This should probably be Due to the recent fixes @yaahc implemented, I think this should work, and clippy will only run for the "primary" crates. In my quick tests, it seems to work. How does this plan sound to everyone? |
This plan sounds fine provided:
|
presumably by RUSTC you meant PRIMARY_RUSTC. that works. |
Nah, it would just be |
@ehuss won't that affect the normal metadata builds of previous crates, though? I guess I should poke at the impl, if you say it won't break things that's fine by me 😄 |
In @yaahc's work, it was changed so that |
This seems rather unfortunate - it means the interface for |
Sorry for the late response on the reasoning: Cargo doesn't know that clippy exists, or how to run it. We have somewhat intentionally kept these separate since it is a separate project. |
What makes clippy different from rustfmt here? |
I'm not sure I understand the question. |
Ok then, what makes clippy different than rustdoc, which has its own builtin |
Because for rustdoc to work, cargo needs intimate knowledge of how to integrate with it (there are multiple dependency edges within a package, different fingerprinting requirements, special rules specified in |
follows #7382