mirror of
https://github.com/rust-lang/cargo
synced 2024-10-03 22:43:59 +00:00
Auto merge of #14028 - epage:unused, r=ehuss
test(lints): Ensure unused optional dep fires for shadowed dep This is a way to have an unused optional dependency before 2024 edition. In prior editions, it is currently a hard error. I'm tempted to switch that hard error to this lint in prior editions but at minimum, we need to make sure we don't make changes that cause this to revert back to a hard error on 2024+
This commit is contained in:
commit
3e89630c35
|
@ -157,3 +157,45 @@ warning: unused optional dependency
|
|||
)
|
||||
.run();
|
||||
}
|
||||
|
||||
#[cargo_test(nightly, reason = "edition2024 is not stable")]
|
||||
fn shadowed_optional_dep_is_unused_in_2024() {
|
||||
Package::new("optional-dep", "0.1.0").publish();
|
||||
let p = project()
|
||||
.file(
|
||||
"Cargo.toml",
|
||||
r#"
|
||||
cargo-features = ["edition2024"]
|
||||
[package]
|
||||
name = "foo"
|
||||
version = "0.1.0"
|
||||
edition = "2024"
|
||||
|
||||
[dependencies]
|
||||
optional-dep = { version = "0.1.0", optional = true }
|
||||
|
||||
[features]
|
||||
optional-dep = []
|
||||
"#,
|
||||
)
|
||||
.file("src/lib.rs", "")
|
||||
.build();
|
||||
|
||||
p.cargo("check -Zcargo-lints")
|
||||
.masquerade_as_nightly_cargo(&["cargo-lints", "edition2024"])
|
||||
.with_stderr(
|
||||
"\
|
||||
warning: unused optional dependency
|
||||
--> Cargo.toml:9:1
|
||||
|
|
||||
9 | optional-dep = { version = \"0.1.0\", optional = true }
|
||||
| ------------
|
||||
|
|
||||
= note: `cargo::unused_optional_dependency` is set to `warn` by default
|
||||
= help: remove the dependency or activate it in a feature with `dep:optional-dep`
|
||||
[CHECKING] foo v0.1.0 ([CWD])
|
||||
[FINISHED] [..]
|
||||
",
|
||||
)
|
||||
.run();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue