diff --git a/src/cargo/ops/cargo_fetch.rs b/src/cargo/ops/cargo_fetch.rs index 37ccc07c438..6ffb62a2313 100644 --- a/src/cargo/ops/cargo_fetch.rs +++ b/src/cargo/ops/cargo_fetch.rs @@ -16,6 +16,7 @@ pub fn fetch<'a>( ws: &Workspace<'a>, options: &FetchOptions<'a>, ) -> CargoResult<(Resolve, PackageSet<'a>)> { + ws.emit_warnings()?; let (packages, resolve) = ops::resolve_ws(ws)?; let jobs = Some(1); diff --git a/tests/testsuite/fetch.rs b/tests/testsuite/fetch.rs index de8c5c0f0fb..088f683c1bc 100644 --- a/tests/testsuite/fetch.rs +++ b/tests/testsuite/fetch.rs @@ -112,3 +112,22 @@ fn fetch_platform_specific_dependencies() { .with_stderr_does_not_contain("[DOWNLOADED] d1 v1.2.3 [..]") .run(); } + +#[cargo_test] +fn fetch_warning() { + let p = project() + .file( + "Cargo.toml", + r#" + [package] + name = "foo" + version = "1.0.0" + misspelled = "wut" + "#, + ) + .file("src/lib.rs", "") + .build(); + p.cargo("fetch") + .with_stderr("[WARNING] unused manifest key: package.misspelled") + .run(); +}