Today, we're announcing that Clippy will completely remove its plugin interface. Using the plugin interface has been deprecated for about one and a half year now (rust-lang/rust-clippy#2712). Since then, an unsilenceable warning has been emitted. Now that compiler plugins are officially deprecated (rust-lang/rust#64675), Clippy will remove its support for the plugin interface completely (rust-lang/rust-clippy#4714). This change will hit stable with version 1.41.0.
Does this post affect me?
Most likely, no. This post only affects you, if you're still using Clippy through its plugin interface. If you do so, you get the warning
warning: the clippy plugin is being deprecated, please use cargo clippy or rls with the clippy feature
when compiling your crate. If you don't see this warning, nothing will change for you.
How do I migrate from the plugin interface?
If you are still using the Clippy plugin interface, here are some steps you can
take to migrate to cargo clippy
.
Cargo.toml
: Remove every occurrence of theclippy
dependency and theclippy
feature.- Completely remove every occurrence of
feature(plugin)
andplugin(clippy)
. - Replace every occurrence of
feature = "clippy"
withfeature = "cargo-clippy"
. Thecargo-clippy
feature is automatically enabled when runningcargo clippy
. - CI: You now have to install Clippy via rustup, with
rustup component add clippy
. Once installed, you can runcargo clippy
(for more usage instructions, see the ClippyREADME
). Note that Clippy is not included in every nightly, but you can check its availability on the rustup components history page.
Where should I go if I have more questions?
If you need help with migrating from the plugin interface, you can contact us via Discord or open an issue on GitHub.