- Numerous runtime optimizations (thanks @Altren)
- Support for environment variables
- Support for C++-26 reflection
- Add arrow operator
- Support for std::expected
- Use hugo instead of mkdocs for the documentation
- Reject out-of-range integer values (thanks @sean0407)
- Add from_reflection(...) as an alternative to a constructor (thanks @gg-sr)
- Add support for std::inplace_vector (thanks @gg-sr)
- Add DurationAsCount processor (thanks @gg-sr)
- Reject trailing characters when parsing timestamp (thanks @fhgffy)
- Add EnumNamesOnly processor
- Add support for wchar args in CLI
- Output zero flag name if available (thanks @ZXShady)
- Reject externally tagged variants with more than one field (thanks @ciprianf-flexion)
- Allow reading integer as double in TOML (thanks @gg-sr)
- Make sure std::set compiles with custom allocator
- Preserve msgpack float width (thanks @Miguel-OYeah)
- Preserve float width for all other binary formats
- Add operator== for generic and object (thanks @jinchengJL)
- Fix in the CBOR tests (thanks @aruisdante)
- Workaround for issue in Clang 21/22 (thanks @aruisdante)
- No internal linkage in headers (thanks @autoantwort)
- Show default values in the schema (thanks @autoantwort )
- Generic::to_*() enhancements (thanks @kone-tlammi)
- Make sure that read does not abort when default values can not be validated
- Compile-time optimization, particularly for larger structs
- Make sure variables marked as default_var are never required
- Fix infinite recursion bug in schema generation
- Fixed wrong code snippet in the documentation (thanks @evanwporter)
- Minor fix: Added missing header (thanks @gg-sr)
- Minor fix: Removed unreachable code (thanks to @axel-dewalt for reporting)