-
-
Notifications
You must be signed in to change notification settings - Fork 78
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
New lints: Breaking changes in non-sealed trait items #870
Comments
Hi! I have checked the linked
Thanks for the extremely well written out explanation, it really helps for newer contributors to get context of why/hows. |
I would like to claim the following to start off
Is there a written convention on lints name? |
Let's go with simpler names like There's no written convention, we're just aiming for consistency and relative brevity for now. Eventually I'd like to do a pass where we improve all the lint names, but that's not that high-priority right now. |
From the
If thats the case, Id like to claim this one :) |
Updated the list, go for it! |
I can claim this one
|
We can now query whether lints are sealed or not: obi1kenobi/trustfall-rustdoc-adapter#343
Many changes in non-sealed traits are breaking downstream, since any downstream implementations of that trait will need to be adjusted to match the trait item changes.
Querying the sealed status of traits was a prerequisite for a variety of SemVer major lints, which can now be implemented:
trait_associated_const_added
#875trait_added_supertrait
#892pub trait
method default implementation removed #294, claimed by @dmatos2012): Add lint for trait default impl removed #880For guidance on how to write these lints, look at existing lints that check trait-related breakage. For example, here's the lint for "a non-sealed trait's method stopped being
unsafe
, so implementations must remove theunsafe
keyword in their declarations": https://github.com/obi1kenobi/cargo-semver-checks/blob/661fcedaf8b1700959a61306433807f08edf457f/src/lints/trait_method_unsafe_removed.ronAlso make sure to check out our contributing guide, and take a look at what prior lints' merged PRs looked like so you know what to expect. It's easier than you think!
The text was updated successfully, but these errors were encountered: