From bfb2a453167f726177b174a1c102263f209b09f9 Mon Sep 17 00:00:00 2001 From: Ethan Brierley Date: Sun, 27 Aug 2023 20:32:03 +0100 Subject: [PATCH] Improve resolver version mismatch warning fixes: #12557 --- src/cargo/core/workspace.rs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/cargo/core/workspace.rs b/src/cargo/core/workspace.rs index 9ee0cbe04304..e86327655a2e 100644 --- a/src/cargo/core/workspace.rs +++ b/src/cargo/core/workspace.rs @@ -1021,11 +1021,18 @@ impl<'cfg> Workspace<'cfg> { .max() { let resolver = edition.default_resolve_behavior().to_manifest(); - self.config.shell().warn(format_args!("some crates are on edition {edition} which defaults to `resolver = \"{resolver}\"`, but virtual workspaces default to `resolver = \"1\"`"))?; + self.config.shell().warn(format_args!( + "virtual workspaces defaulting to `resolver = \"1\"` despite one or more workspace members being on edition {edition} which implies `resolver = \"{resolver}\"`" + ))?; self.config.shell().note( "to keep the current resolver, specify `workspace.resolver = \"1\"` in the workspace root's manifest", )?; - self.config.shell().note(format_args!("to use the edition {edition} resolver, specify `workspace.resolver = \"{resolver}\"` in the workspace root's manifest"))?; + self.config.shell().note(format_args!( + "to use the edition {edition} resolver, specify `workspace.resolver = \"{resolver}\"` in the workspace root's manifest" + ))?; + self.config.shell().note( + "for more details see https://doc.rust-lang.org/cargo/reference/resolver.html#resolver-versions", + )?; } } }