Page MenuHomeDevCentral

Implement UUIDv1 UUIDv6 UUIDv7 and UUIDv8
ClosedPublic

Authored by dereckson on Apr 10 2022, 09:38.
Tags
None
Referenced Files
F2845325: D2660.id6724.diff
Tue, Apr 23, 20:54
Unknown Object (File)
Tue, Apr 23, 07:49
Unknown Object (File)
Sun, Apr 21, 22:32
Unknown Object (File)
Thu, Apr 18, 16:26
Unknown Object (File)
Thu, Apr 18, 12:53
Unknown Object (File)
Thu, Apr 18, 08:13
Unknown Object (File)
Thu, Apr 18, 03:47
Unknown Object (File)
Mon, Apr 15, 09:51
Subscribers
None

Details

Summary

There is currently a proposal for new UUID to address concerns,
and create identifiers suitable for database purpose as primary key.

This change implements UUIDv6, UUIDv7 and UUIDv8 from that proposal.

Allow to convert back and forth between UUIDv1 and UUIDv6.

Allow to represent timestamps for UUIDv1/UUIDv6 or UUIDv7.

Allow to determine version and variant from a UUID.

References:

  • RFC 4122 for UUIDv1
  • I-D draft-peabody-dispatch-new-uuid-format-03 for UUIDv6 UUIDv7 UUIDv8

Ref T1717.

Test Plan

Full coverage of added code by unit tests.

Diff Detail

Repository
rKERUALD Keruald libraries development repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable