All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Initial support for
derive-async-graphql, currently only for external types
- Optional support for
bytesizecrate for human-readable sizes
- Support validation using
validatorcrate - Improved markdown generator
- Support deprecated config fields reporting via
Config::with_deprecation_clb
- Documentation improvements
Config::json_schema()returns a convenience wrapper withto_string_pretty()method
- Fixed invalid
serdecrate path in a macro-generated code
- Renamed
fmt-json-arbitrary-precisiontofmt-yaml-arbitrary-precision-hackthat will not enablearbitrary_precisionfeature itself
- Use
serde_yaml_nginstead ofserde_norwayas better maintained (and named) option
- Added
fmt-json-arbitrary-precisionfeature that enables the YAML compatibility workaround when serializing
- New
UrlOrPathhelper type
- New
Config::with_sources()helper
- Improved error trait bounds in
FormatandSource
- Improved
Formattrait
- Removed dependency on
figment2
- Allow mixed unit + unnamed variant enums - those will be parsed as tagged
- Applying
#[serde_with::skip_serializing_none] - Macro hygiene
- Proc
derivemacro for deduplication of explicit derives (e.g.#[derive(setty::Config, serde::Serialize)) - Parsing facade
- JSON Schema output
- Markdown output
- Path completions
- Print out (with / without defaults)
- Case variations for struct fields and enum variants
- Extended types support (
chrono,bigdecimal,duration-string) - Per-field combine strategies
- Keeping a CHANGELOG
- Initial version