NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #4286 most downloaded on crates.io
A Unique Hybrid Logical Clock for Rust.
Last release 8 months ago
12 Jan 2026
Ships fairly regularly
a new release about every 4 months
Some releases are documented
notes for 10 of 19 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
19 releases · first in 2020
One column per quarter.
feat: no-alloc by @Hennzau in #28 ⚠️ API changes regarding errors:
no-alloc by @Hennzau in #28ParseIDError changed to enumParseNTP64Error changed to enumParseTimestampError changed to enumupdate_with_timestamp returns Result<(), ExceedingDeltaError>Full Changelog: 0.8.2...0.9.0
Perf improvement: simplify ID Display impl by @wyfo in #29
feat: add support for linux physical clocks by @alokpr in #20
Full Changelog: 0.8.0...0.8.1
Change conversion of NTP64 and Timestamp to/from String ( #16 ). For both NTP64 and Timestamp types the default formatting used by Display trait (and
NTP64 and Timestamp types the default formatting used by Display trait (and thus by ToString trait) changed. RFC3339 format was used to represent the NTP64 type, which was loosing precision and was not bijective with FromStr trait (see #15). Now unsigned integer decimal representation is used.to_string_rfc3339_lossy() and parse_rfc3339() methods have been added for explicit conversion to RFC3339 format.Full Changelog: 0.7.0...0.8.0
Change internal representation of ID from NonZeroU128 to [u8;16] . A change in Rust 1.77 caused the memory alignment for u128 to differ depending the
ID from NonZeroU128 to [u8;16].Full Changelog: 0.6.3...0.7.0
Documentation change only: revise comment of NTP64::as_secs_f64()
NTP64::as_secs_f64()Full Changelog: 0.6.2...0.6.3
Add NTP64::as_secs_f64() by @JEnoch in #13
Bump spin to 0.9.8 @Dylan-DPC in #10
Full Changelog: 0.6.0...0.6.1
API change : Remove UUID support ( #9 ). uhlc::ID is still a non-zero u128, but not necessarily a UUID. As a consequence:
uhlc::ID is still a non-zero u128, but not necessarily a UUID. As a consequence:
uhlc::ID::from(uuid: Uuid) operation has been removed.let id = ID::try_from([uuid.to_bytes_le()](uuid::Uuid::new_v4())).unwrap()uhlc::ID::as_slice(&self) operation has been removed.let id_as_slice = id.to_le_bytes()[..id.size()]uhlc::ID::to_le_bytes(&self) operation has been addeduhlc::ID::rand() -> Self operation has been addedNew defmt feature for logging in no_std ( #6 , #7 )
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →