-
-
Notifications
You must be signed in to change notification settings - Fork 91
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
Added deprecated attribute API lint, minor incompatibility level #57
Comments
@obi1kenobi It hasn't been implemented for |
Done, thanks! |
|
Sweet! Thank you for all your work, that's a lot of boxes you've checked! Might you be interested in doing a bit of schema extension next, to unlock even more lints elsewhere? If so, adding "field ordering" information to struct fields and enum tuple/struct variant fields can unlock ~10ish more new lints. This is because changing the order of struct fields (e.g. swapping which field is first and which is second) can be a major breaking change in some circumstances. |
Thank you for your guidance, the more lint I added the more I realized how important c-s-c would be in the rust ecosystem!
Definitely yes. Could you explain more about how it would be implemented? like adding a field to the
|
Here's an issue describing this in more detail and giving one example of a lint: obi1kenobi/trustfall-rustdoc-adapter#758 There are more lints that use order info in #5. I'll try to organize them into a separate issue with individual checkboxes similar to this one. Off-topic: You are very good at this work! Consider applying for a Rust-themed Google Summer of Code of project, if you don't already have other plans this summer! There are some |
Wow, I did not know that! would definitely apply for it and see what I could build for the summer, c-s-c seems to be something I wanna work for! |
Semver says deprecations are minor changes.
Reference: https://doc.rust-lang.org/reference/attributes/diagnostics.html#the-deprecated-attribute
Will require separate checks for:
trait_marked_deprecated
#1092function_marked_deprecated
#1093GlobalValue
): new lint:global_value_marked_deprecated
#1101trait_method_marked_deprecated
#1098ImplOwner
(struct/enum/union) methods: new lint:type_method_marked_deprecated
#1130ImplOwner
associated constants: new lint:type_associated_const_deprecated
#1131trait_associated_type_marked_deprecated
#1099trait_associated_const_marked_deprecated
#1100enum_variant_marked_deprecated
#1179enum_variant_field_deprecated
#1096struct_field_marked_deprecated
#1125macro_marked_deprecated
#1102proc_macro_marked_deprecated
#1118The text was updated successfully, but these errors were encountered: