From c7a5859e1770dbc7cbc7cb1785c34b880162dfac Mon Sep 17 00:00:00 2001 From: nsfisis Date: Mon, 23 Feb 2026 01:23:40 +0900 Subject: fix(global): add ~/.composer fallback, XDG auto-detection, and no-arg handling Rewrite composer_home() with Composer-compatible resolution: detect XDG environment (any XDG_* var or /etc/xdg), prefer existing directories, and fall back to ~/.composer for legacy systems. Consolidate duplicate composer_home_dir() from global.rs into shared config_helpers. Accept no subcommand gracefully with a helpful error instead of a parse error. Co-Authored-By: Claude Opus 4.6 --- crates/mozart/src/commands/dump_autoload.rs | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'crates/mozart/src/commands/dump_autoload.rs') diff --git a/crates/mozart/src/commands/dump_autoload.rs b/crates/mozart/src/commands/dump_autoload.rs index 0828288..ca559f8 100644 --- a/crates/mozart/src/commands/dump_autoload.rs +++ b/crates/mozart/src/commands/dump_autoload.rs @@ -71,14 +71,15 @@ pub async fn execute( let mut composer_config = super::config::ComposerConfig::defaults(); if composer_json_path.exists() && let Ok(content) = std::fs::read_to_string(&composer_json_path) - && let Ok(value) = serde_json::from_str::(&content) - && let Some(cfg_obj) = value.get("config").and_then(|v| v.as_object()) { - let overrides: std::collections::BTreeMap = cfg_obj - .iter() - .map(|(k, v)| (k.clone(), v.clone())) - .collect(); - composer_config.merge(&overrides); - } + && let Ok(value) = serde_json::from_str::(&content) + && let Some(cfg_obj) = value.get("config").and_then(|v| v.as_object()) + { + let overrides: std::collections::BTreeMap = cfg_obj + .iter() + .map(|(k, v)| (k.clone(), v.clone())) + .collect(); + composer_config.merge(&overrides); + } let optimize = args.optimize || composer_config -- cgit v1.3.1