clapfig 0.1.0

Rich, layered configuration for Rust CLI apps
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13

- **Added**
  - **Struct-driven config** - Define settings as a Rust struct with `#[config(default)]` and doc comments via confique
  - **Layered merge** - defaults < config files < env vars < CLI flags, every layer sparse
  - **Multi-path file search** - Platform config dir, home subdir, cwd, or explicit paths
  - **Prefix-based env vars** - `MYAPP__DATABASE__URL` maps to `database.url` with heuristic type parsing
  - **Clap CLI overrides** - `.cli_override("key", value)` maps any clap arg to any config key
  - **Strict mode** - Unknown keys in config files error with file path, key name, and line number (on by default)
  - **Template generation** - `config gen` emits a commented TOML template from struct doc comments
  - **Config subcommand** - Drop-in `config gen|get|set` commands for clap
  - **Persistence** - `config set` patches values in place via `toml_edit`, preserving comments and formatting

[0.1.0]: https://github.com/arthur-debert/clapfig/releases/tag/v0.1.0