Skip to content

Commit b8df7aa

Browse files
committed
Auto merge of #12573 - eopb:12557-resolver-warning, r=weihanglo
Improve resolver version mismatch warning fixes: #12557
2 parents 2a6f7f6 + 1f80ffa commit b8df7aa

File tree

2 files changed

+11
-3
lines changed

2 files changed

+11
-3
lines changed

src/cargo/core/workspace.rs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1021,11 +1021,18 @@ impl<'cfg> Workspace<'cfg> {
10211021
.max()
10221022
{
10231023
let resolver = edition.default_resolve_behavior().to_manifest();
1024-
self.config.shell().warn(format_args!("some crates are on edition {edition} which defaults to `resolver = \"{resolver}\"`, but virtual workspaces default to `resolver = \"1\"`"))?;
1024+
self.config.shell().warn(format_args!(
1025+
"virtual workspace defaulting to `resolver = \"1\"` despite one or more workspace members being on edition {edition} which implies `resolver = \"{resolver}\"`"
1026+
))?;
10251027
self.config.shell().note(
10261028
"to keep the current resolver, specify `workspace.resolver = \"1\"` in the workspace root's manifest",
10271029
)?;
1028-
self.config.shell().note(format_args!("to use the edition {edition} resolver, specify `workspace.resolver = \"{resolver}\"` in the workspace root's manifest"))?;
1030+
self.config.shell().note(format_args!(
1031+
"to use the edition {edition} resolver, specify `workspace.resolver = \"{resolver}\"` in the workspace root's manifest"
1032+
))?;
1033+
self.config.shell().note(
1034+
"for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions",
1035+
)?;
10291036
}
10301037
}
10311038
}

tests/testsuite/features2.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1431,9 +1431,10 @@ fn edition_2021_workspace_member() {
14311431
p.cargo("check")
14321432
.with_stderr(
14331433
"\
1434-
warning: some crates are on edition 2021 which defaults to `resolver = \"2\"`, but virtual workspaces default to `resolver = \"1\"`
1434+
warning: virtual workspace defaulting to `resolver = \"1\"` despite one or more workspace members being on edition 2021 which implies `resolver = \"2\"`
14351435
note: to keep the current resolver, specify `workspace.resolver = \"1\"` in the workspace root's manifest
14361436
note: to use the edition 2021 resolver, specify `workspace.resolver = \"2\"` in the workspace root's manifest
1437+
note: for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions
14371438
[CHECKING] a v0.1.0 [..]
14381439
[FINISHED] [..]
14391440
",

0 commit comments

Comments
 (0)