cargo-lints
is a utility for running lints specified from files.
It is hard to share lint configuration in cargo workspace. Even more so as lint configuration in the form of:
``` rust $ cat src/lib.rs
... ```
will not affect tests and benchmark binaries in ./benches/
and ./tests
directories.
For now cargo
and clippy
don't provide convinient way to specify lints enabled for workspace and that is
why it is handy to have a utility such as this one.
Install with:
sh
$ cargo install --git https://github.com/soramitsu/iroha2-cargo_lints
You should set some lints in lints.toml
file:
$ cat lints.toml
```toml #
# deny = [ 'clippy::all', 'clippy::cargo', 'clippy::nursery', 'clippy::pedantic', ] allow = [ 'clippy::enumglobuse', ] ```
After that you can run:
$ cargo lint fmt
to format the toml file.
$ cargo lint clippy
to run clippy (you don't have to have lints.toml
file - in that case it will simply run cargo clippy
).
On the top level you can supply -f
option:
sh
$ cargo lints -f custom_lints.toml clippy
Also all options after cargo lints clippy
are forwarded to clippy:
$ cargo lints clippy --tests --benches --all-features --all