Check for all "empty" features in Cargo.toml (a_feature = []), with no optional dependency name collisions, and try to find if any config attribute in the file has that feature, if it doesn't, raise.
Lint Name
unused_crate_feature
Category
pedantic
Advantage
Allow libraries to clean up unused features, which could then signal downstream that something has changed.
Cleaner code and crates, with less "cruft"
Drawbacks
Possible false-positives if cargo were to infer more from features in the future (other than optional dependencies and the likes)
Example
[features]
a_thing = []
This feature is nowhere to be found in any source code, so this raises the warning.
What it does
Check for all "empty" features in
Cargo.toml
(a_feature = []
), with no optional dependency name collisions, and try to find if any config attribute in the file has that feature, if it doesn't, raise.Lint Name
unused_crate_feature
Category
pedantic
Advantage
Drawbacks
Possible false-positives if cargo were to infer more from features in the future (other than optional dependencies and the likes)
Example
This feature is nowhere to be found in any source code, so this raises the warning.