From d34f2ba41cb1d0111a4682f9d65628e06f46ff31 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 22 Feb 2026 15:45:33 +0900 Subject: fix(resolver): replace __root__ with actual package name in error messages Composer never shows the internal __root__ identifier to users. Add root_name field to ResolveRequest so the resolver can substitute the real package name (e.g. "laravel/laravel") in pubgrub error reports. Co-Authored-By: Claude Opus 4.6 --- crates/mozart/src/commands/require.rs | 3 +++ 1 file changed, 3 insertions(+) (limited to 'crates/mozart/src/commands/require.rs') diff --git a/crates/mozart/src/commands/require.rs b/crates/mozart/src/commands/require.rs index 13884b8..28b4e5e 100644 --- a/crates/mozart/src/commands/require.rs +++ b/crates/mozart/src/commands/require.rs @@ -583,6 +583,7 @@ pub async fn execute( let prefer_stable = args.prefer_stable || composer_prefer_stable; let request = ResolveRequest { + root_name: raw.name.clone(), require, require_dev, include_dev: dev_mode, @@ -924,6 +925,7 @@ mod tests { let composer_json: RawPackageData = serde_json::from_str(composer_json_content).unwrap(); let request = ResolveRequest { + root_name: String::new(), require: vec![("psr/log".to_string(), "^3.0".to_string())], require_dev: vec![], include_dev: false, @@ -975,6 +977,7 @@ mod tests { let raw: RawPackageData = serde_json::from_str(content).unwrap(); let request = ResolveRequest { + root_name: String::new(), require: vec![("psr/log".to_string(), "^3.0".to_string())], require_dev: vec![], include_dev: false, -- cgit v1.3.1