Skip to content

Releases: leynos/ortho-config

Think global

02 Jan 06:16

Choose a tag to compare

What's Changed

  • Plan behavioural test suite migration to rstest-bdd by @leynos in #233
  • Preserve clap help/version exit codes with is_display_request by @leynos in #232
  • Replace cucumber-rs tests with rstest-bdd scaffolding by @leynos in #235
  • Replace cucumber tests with rstest-bdd in ortho-config by @leynos in #236
  • Migrate hello_world tests to rstest-bdd; drop cucumber/gherkin and tokio by @leynos in #237
  • Fluent Localization for Clap: Localizer trait, NoOp, and DemoLocalizer by @leynos in #238
  • Implement Fluent localisation integration for clap by @leynos in #243
  • Refactor FluentLocalizer: optional inner and safe lookup by @leynos in #244
  • Add Fluent localisation for clap errors with command context by @leynos in #245
  • LayerComposition API and Fluent localization for Clap integration by @leynos in #246
  • Integrate fluent localisation and declarative loading in clap examples by @leynos in #248
  • Merge-aware JSON deserialization and error routing by @leynos in #252
  • Add per-config doc comments to OrthoConfig-generated structs by @leynos in #254
  • Add with-matches merging, CliValueExtractor, and cli_default_as_absent by @leynos in #255
  • Plan streamline subcommand overrides with optional post-merge hook by @leynos in #256
  • Add SelectedSubcommandMerge derive and load_globals helper by @leynos in #257
  • Clarify error mapping in config loading phases by @leynos in #261
  • Refactor: Split build/cli into dedicated cli module and cli_flags by @leynos in #260
  • Preserve error chains in with_fresh_graph tests and helpers by @leynos in #259
  • Add multi-level config inheritance tests (grandparent → parent → child) by @leynos in #262
  • Prefer #[expect] and annotate remaining #[allow] with rationale by @leynos in #267
  • Refactor test harness: per-operation EnvVarLock/EnvScope locking by @leynos in #263
  • Fix boolean env var parsing in CsvEnv and add tests by @leynos in #266
  • Align extends merge with declarative append semantics by @leynos in #268
  • Verify localized help messages in Hello World by @leynos in #269

Full Changelog: v0.6.0...v0.7.0

Declarative Merging 4 All

12 Nov 02:07

Choose a tag to compare

What's Changed

  • Detail DeclarativeMerge roadmap tasks by @leynos in #192
  • Normalise cycle detection keys on insensitive filesystems by @leynos in #194
  • Improve extends error handling for missing files by @leynos in #195
  • Extract shared struct generation helper by @leynos in #196
  • Refactor derive build helpers into focused modules by @leynos in #193
  • Split discovery builder and tests into submodules by @leynos in #197
  • Introduce declarative merge scaffolding by @leynos in #203
  • Defer reporting discovery errors when a file loads by @leynos in #204
  • Add negative coverage for declarative merges by @leynos in #205
  • Polish declarative merge documentation grammar by @leynos in #210
  • Document Fluent localisation design by @leynos in #212
  • Forbid missing docs lints and document exposed API surfaces by @leynos in #213
  • Enforces strict Clippy lints and refactors codebase by @leynos in #214
  • Document serde-saphyr migration roadmap tasks by @leynos in #218
  • Document push_default_xdg const incompatibility by @leynos in #217
  • Enable strict YAML 1.2 semantics via serde-saphyr options by @leynos in #220
  • Fix replace merge semantics for collection fields by @leynos in #219
  • Add declarative merge precedence coverage by @leynos in #225
  • Add migration guide for v0.6.0 by @leynos in #226
  • Add Lading publish-check target by @leynos in #228
  • Skip YAML-dependent tests when the yaml feature is disabled by @leynos in #230
  • Fix Windows path normalization in discovery and tests (ASCII-lowercase) by @leynos in #229
  • Pin shared-actions SHAs and add coverage artefact suffix by @leynos in #231

Full Changelog: v0.5.0...v0.6.0

Boilerplate reduction

09 Oct 23:13

Choose a tag to compare

What's Changed

  • Document attribute parsing helpers by @leynos in #67
  • Handle unknown ortho_config keys gracefully by @leynos in #68
  • Fix wrapper path detection by @leynos in #69
  • Implement CSV env var support by @leynos in #70
  • Implement configuration inheritance by @leynos in #72
  • Refactor file error creation by @leynos in #81
  • Document usage examples for configuration helpers by @leynos in #80
  • Refine subcommand merging by @leynos in #78
  • Refactor config file parsing by @leynos in #79
  • Implement hidden clap parser for config derivation by @leynos in #85
  • Refactor short flag resolution by @leynos in #86
  • Consolidate Prefix::new documentation by @leynos in #87
  • Refactor CsvEnv to use Env helper by @leynos in #89
  • Refactor field attribute parsing by @leynos in #88
  • Add usage example for normalize_prefix by @leynos in #90
  • Use lint expectations for trait methods by @leynos in #92
  • Prevent CLI None overriding defaults by @leynos in #91
  • Remove unfulfilled lint expectation for prefix by @leynos in #93
  • Document subcommand merge tests by @leynos in #94
  • Aggregate configuration errors across sources by @leynos in #95
  • Improve CLI and config merging with flatten support by @leynos in #97
  • Restrict push_stem_candidates to crate by @leynos in #102
  • Document config features and add tests by @leynos in #98
  • Extract subcommand env provider helper by @leynos in #99
  • Refactor extends processing into helpers by @leynos in #104
  • Introduce generic config discovery helper by @leynos in #103
  • Document error conversion helper by @leynos in #100
  • Refactor XDG path search in collect_unix_paths by @leynos in #101
  • Refine extends helpers and tests by @leynos in #105
  • Box large error variants by @leynos in #117
  • Guard environment mutations in path tests by @leynos in #116
  • Update user guide for modern API by @leynos in #107
  • Add crate metadata for publishing by @leynos in #124
  • Remove legacy subcommand config helpers by @leynos in #125
  • Document sanitisation helpers and refine error mapping by @leynos in #122
  • Add SubcmdConfigMerge trait for subcommand configs by @leynos in #121
  • Add version sync script by @leynos in #126
  • Expose SubcmdConfigMerge and fix example serialization by @leynos in #129
  • Re-export config dependencies by @leynos in #134
  • Extract path canonicalisation helper by @leynos in #130
  • Document config_path flag usage in guide by @leynos in #135
  • Refactor CLI long flag validation and add tests by @leynos in #132
  • Document candidate path search order by @leynos in #131
  • Clarify CLI flag naming and preallocate long flag set by @leynos in #143
  • Bump tokio from 1.47.0 to 1.47.1 by @dependabot[bot] in #138
  • Bump serde_json from 1.0.140 to 1.0.143 by @dependabot[bot] in #139
  • Bump tempfile from 3.20.0 to 3.21.0 by @dependabot[bot] in #137
  • Bump thiserror from 1.0.69 to 2.0.12 by @dependabot[bot] in #140
  • Bump actions/checkout from 4 to 5 by @dependabot[bot] in #141
  • Bump syn from 2.0.102 to 2.0.106 by @dependabot[bot] in #142
  • Use tomlkit for version bumps by @leynos in #133
  • Bump clap from 4.5.40 to 4.5.46 by @dependabot[bot] in #144
  • Bump thiserror from 2.0.12 to 2.0.16 by @dependabot[bot] in #145
  • Bump proc-macro2 from 1.0.95 to 1.0.101 by @dependabot[bot] in #146
  • Bump trybuild from 1.0.105 to 1.0.110 by @dependabot[bot] in #147
  • Clarify flag derivation in users guide by @leynos in #149
  • Remove srgn documentation reference by @leynos in #154
  • Adopt Arc-backed errors and OrthoResult by @leynos in #156
  • Normalise roadmap checkboxes by @leynos in #155
  • Bump toml from 0.8.23 to 0.9.5 by @dependabot[bot] in #148
  • Bump rstest from 0.25.0 to 0.26.1 by @dependabot[bot] in #150
  • Bump clap from 4.5.46 to 4.5.47 by @dependabot[bot] in #151
  • Bump leynos/shared-actions from ebbaaa0d7a776ec3187f3940667e5c7c9379cdf5 to 988ff278fcab48e8a932e2af88ce1aaaa78386a0 by @dependabot[bot] in #152
  • Bump tempfile from 3.21.0 to 3.22.0 by @dependabot[bot] in #153
  • Add fallible error aggregation and iteration support by @leynos in #160
  • Add subcommand precedence tests by @leynos in #161
  • Bump serde from 1.0.219 to 1.0.224 by @dependabot[bot] in #167
  • Bump trybuild from 1.0.110 to 1.0.111 by @dependabot[bot] in #164
  • Bump serde_json from 1.0.143 to 1.0.145 by @dependabot[bot] in #163
  • Preserve trailing newline in version bump script by @leynos in #168
  • Bump toml from 0.9.5 to 0.9.6 by @dependabot[bot] in #166
  • Add hello world example outline by @leynos in #169
  • Add hello world example crate by @leynos in #171
  • Fix hello world CLI layering by @leynos in #176
  • Add hello world rstest and cucumber coverage by @leynos in #178
  • Add hello world sample configuration demos by @leynos in #179
  • Add reusable config discovery helper by @leynos in #183
  • Expose configurable discovery in docs and hello world by @leynos in #187
  • Normalise ortho_config prefix underscore handling by @leynos in #190
  • Clarify declarative merge roadmap checklist by @leynos in #189

New Contributors

Full Changelog: v0.4.0...v0.5.0

Ergonomics Enhancements

18 Sep 22:22

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.5.0-alpha1...v0.5.0-beta2

Might break

23 Aug 10:32
adfe967

Choose a tag to compare

Might break Pre-release
Pre-release

What's Changed

  • Document attribute parsing helpers by @leynos in #67
  • Handle unknown ortho_config keys gracefully by @leynos in #68
  • Fix wrapper path detection by @leynos in #69
  • Implement CSV env var support by @leynos in #70
  • Implement configuration inheritance by @leynos in #72
  • Refactor file error creation by @leynos in #81
  • Document usage examples for configuration helpers by @leynos in #80
  • Refine subcommand merging by @leynos in #78
  • Refactor config file parsing by @leynos in #79
  • Implement hidden clap parser for config derivation by @leynos in #85
  • Refactor short flag resolution by @leynos in #86
  • Consolidate Prefix::new documentation by @leynos in #87
  • Refactor CsvEnv to use Env helper by @leynos in #89
  • Refactor field attribute parsing by @leynos in #88
  • Add usage example for normalize_prefix by @leynos in #90
  • Use lint expectations for trait methods by @leynos in #92
  • Prevent CLI None overriding defaults by @leynos in #91
  • Remove unfulfilled lint expectation for prefix by @leynos in #93
  • Document subcommand merge tests by @leynos in #94
  • Aggregate configuration errors across sources by @leynos in #95
  • Improve CLI and config merging with flatten support by @leynos in #97
  • Restrict push_stem_candidates to crate by @leynos in #102
  • Document config features and add tests by @leynos in #98

Full Changelog: v0.4.0...v0.5.0-alpha1

Cleaner merge API

25 Jul 22:54
5c27310

Choose a tag to compare

What's Changed

Full Changelog: v0.3.0...v0.4.0

Add basic Windows support

20 Jun 22:13
3e9c633

Choose a tag to compare

Bump version to 0.3.0 (#48)

* Bump version to 0.3.0

* Use setup-rust v1.0.2

* Use setup-rust v1.0.3

Closer to the real thing

14 Jun 15:28
79860f4

Choose a tag to compare

API has been tidied up somewhat. The simplified API will require a migration (see README.md)

Initial release

10 Jun 13:19
f7524ef

Choose a tag to compare

Note, this API is unstable and will change in subsequent 0.x.x releases.