Clippy:弃用 `feature =

Clippy:弃用 `feature = "cargo-clippy"`

💡 原文英文,约300词,阅读约需2分钟。
📝

内容提要

自Clippy v0.0.97开始,使用cargo clippy进行代码lint时,不再需要隐式的feature = "cargo-clippy"配置。现在可以使用clippy::前缀来设置lint级别。为了向后兼容,可以使用#[cfg(clippy)]进行条件编译。如果代码中存在feature = "cargo-clippy"的实例,会收到警告,可以通过运行cargo clippy --fix -- -Aclippy::all -Wclippy::deprecated_clippy_cfg_attr来修复。同时,需要检查.cargo/config文件中的[target.'cfg(feature = "cargo-clippy")']配置,并将其更改为cfg(clippy)或直接在Cargo.toml中设置lint级别。这个决定的动机是为了稳定检查编译时的条件编译。

🎯

关键要点

  • 自Clippy v0.0.97开始,使用cargo clippy进行代码lint时,不再需要隐式的feature = 'cargo-clippy'配置。

  • 现在可以使用clippy::前缀来设置lint级别,例如#[allow(clippy::lint_name)]。

  • 隐式的feature = 'cargo-clippy'仅为向后兼容,现已被弃用。

  • 未来可以使用#[cfg(clippy)]进行条件编译。

  • 如果代码中存在feature = 'cargo-clippy'的实例,会收到警告clippy::deprecated_clippy_cfg_attr。

  • 可以通过运行cargo clippy --fix -- -Aclippy::all -Wclippy::deprecated_clippy_cfg_attr来自动修复代码。

  • 需要检查.cargo/config文件中的[target.'cfg(feature = 'cargo-clippy')']配置,并将其更改为cfg(clippy)或直接在Cargo.toml中设置lint级别。

  • 弃用的动机是为了稳定检查编译时的条件编译,避免用户看到大量警告。

➡️

继续阅读