Lint direct priority conflicts in [lints.workspace]
This commit is contained in:
parent
c6bf9548d5
commit
fa8f4b88cb
@ -49,7 +49,7 @@ impl LintConfig {
|
|||||||
|
|
||||||
type LintTable = BTreeMap<Spanned<String>, Spanned<LintConfig>>;
|
type LintTable = BTreeMap<Spanned<String>, Spanned<LintConfig>>;
|
||||||
|
|
||||||
#[derive(Deserialize, Debug)]
|
#[derive(Deserialize, Debug, Default)]
|
||||||
struct Lints {
|
struct Lints {
|
||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
rust: LintTable,
|
rust: LintTable,
|
||||||
@ -57,9 +57,18 @@ struct Lints {
|
|||||||
clippy: LintTable,
|
clippy: LintTable,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Deserialize, Debug, Default)]
|
||||||
|
struct Workspace {
|
||||||
|
#[serde(default)]
|
||||||
|
lints: Lints,
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(Deserialize, Debug)]
|
#[derive(Deserialize, Debug)]
|
||||||
struct CargoToml {
|
struct CargoToml {
|
||||||
|
#[serde(default)]
|
||||||
lints: Lints,
|
lints: Lints,
|
||||||
|
#[serde(default)]
|
||||||
|
workspace: Workspace,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Default, Debug)]
|
#[derive(Default, Debug)]
|
||||||
@ -164,5 +173,7 @@ pub fn check(cx: &LateContext<'_>) {
|
|||||||
|
|
||||||
check_table(cx, cargo_toml.lints.rust, &rustc_groups, &file);
|
check_table(cx, cargo_toml.lints.rust, &rustc_groups, &file);
|
||||||
check_table(cx, cargo_toml.lints.clippy, &clippy_groups, &file);
|
check_table(cx, cargo_toml.lints.clippy, &clippy_groups, &file);
|
||||||
|
check_table(cx, cargo_toml.workspace.lints.rust, &rustc_groups, &file);
|
||||||
|
check_table(cx, cargo_toml.workspace.lints.clippy, &clippy_groups, &file);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -42,4 +42,32 @@ help: to have lints override the group set `pedantic` to a lower priority
|
|||||||
19 | pedantic = { level = "warn", priority = -2 }
|
19 | pedantic = { level = "warn", priority = -2 }
|
||||||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
error: could not compile `fail` (lib) due to 3 previous errors
|
error: lint group `rust_2018_idioms` has the same priority (0) as a lint
|
||||||
|
--> Cargo.toml:23:1
|
||||||
|
|
|
||||||
|
23 | rust_2018_idioms = "warn"
|
||||||
|
| ^^^^^^^^^^^^^^^^ ------ has an implicit priority of 0
|
||||||
|
24 | bare_trait_objects = "allow"
|
||||||
|
| ------------------ has the same priority as this lint
|
||||||
|
|
|
||||||
|
= note: the order of the lints in the table is ignored by Cargo
|
||||||
|
help: to have lints override the group set `rust_2018_idioms` to a lower priority
|
||||||
|
|
|
||||||
|
23 | rust_2018_idioms = { level = "warn", priority = -1 }
|
||||||
|
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
error: lint group `pedantic` has the same priority (0) as a lint
|
||||||
|
--> Cargo.toml:27:1
|
||||||
|
|
|
||||||
|
27 | pedantic = "warn"
|
||||||
|
| ^^^^^^^^ ------ has an implicit priority of 0
|
||||||
|
28 | similar_names = "allow"
|
||||||
|
| ------------- has the same priority as this lint
|
||||||
|
|
|
||||||
|
= note: the order of the lints in the table is ignored by Cargo
|
||||||
|
help: to have lints override the group set `pedantic` to a lower priority
|
||||||
|
|
|
||||||
|
27 | pedantic = { level = "warn", priority = -1 }
|
||||||
|
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
error: could not compile `fail` (lib) due to 5 previous errors
|
||||||
|
@ -18,3 +18,11 @@ deprecated = "allow"
|
|||||||
[lints.clippy]
|
[lints.clippy]
|
||||||
pedantic = { level = "warn", priority = -1 }
|
pedantic = { level = "warn", priority = -1 }
|
||||||
similar_names = { level = "allow", priority = -1 }
|
similar_names = { level = "allow", priority = -1 }
|
||||||
|
|
||||||
|
[workspace.lints.rust]
|
||||||
|
rust_2018_idioms = "warn"
|
||||||
|
bare_trait_objects = "allow"
|
||||||
|
|
||||||
|
[workspace.lints.clippy]
|
||||||
|
pedantic = "warn"
|
||||||
|
similar_names = "allow"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user