What's Changed
- feat: add support for 'hyphenated' format in the serde module by @FrenchDilettante in #865
- Fix a number of bugs in time-related code by @KodrAus in #872
- Reword invalid char error message by @KodrAus in #873
- Impl cleanups by @KodrAus in #874
- Use LazyLock to synchronize v1/v6 context initialization by @KodrAus in #875
- Prepare for 1.23.0 release by @KodrAus in #876
New Contributors
- @FrenchDilettante made their first contribution in #865
Special thanks
@meng-xu-cs raised a series of bugs against the timestamp logic in uuid using automated tooling. The issues themselves were reasonably and responsibly presented and the end result is a better uuid library for everyone. Thanks!
Deprecations
This release includes the following deprecations:
Context: Renamed toContextV1Timestamp::from_gregorian: Renamed toTimestamp::from_gregorian_time
Change to Version::Max
Version::Max's u8 representation has changed from 0xff to 0x0f to match the value returned by Uuid::get_version_num.
Change to Uuid::get_version for the max UUID
Uuid::get_version will only return Some(Version::Max) if the UUID is actually the max UUID (all bytes are 0xff). Previously it would return Some if only the version field was 0x0f. This change matches the behaviour of the nil UUID, which only returns Some(Version::Nil) if the UUID is the nil UUID (all bytes are 0x00).
Full Changelog: v1.22.0...v1.23.0