You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add XDG config discovery and deep-merge support (#88)
* feat: add XDG config discovery, deep merging, and env var support (#82)
Add layered configuration loading following the XDG Base Directory
Specification. Config files are now auto-discovered from system
(/etc/xdg/rustqc/rustqc.yml) and user (~/.config/rustqc/rustqc.yml)
locations, plus the RUSTQC_CONFIG env var and explicit -c flag.
Multiple config files are deep-merged at the leaf level so higher-
priority files only override specific fields without clobbering
siblings. Priority order: system < user < RUSTQC_CONFIG < -c < CLI.
Also adds RUSTQC_* environment variables for every CLI argument via
clap's env attribute, enabling workflows like `export RUSTQC_THREADS=8`.
https://claude.ai/code/session_01GSLiquucJVtdt7xg3MeJzL
* refactor: eliminate clones in deep_merge, harden config tests
- Take overlay by value in deep_merge() to avoid unnecessary cloning
of YAML subtrees during config merging
- Fix fragile test_collect_config_paths tests by clearing RUSTQC_CONFIG
env var to prevent interference from the test environment
- Add XDG spec rationale to the break comment in collect_config_paths
https://claude.ai/code/session_01GSLiquucJVtdt7xg3MeJzL
* style: apply cargo fmt formatting
https://claude.ai/code/session_01GSLiquucJVtdt7xg3MeJzL
---------
Co-authored-by: Claude <noreply@anthropic.com>
0 commit comments