No description
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Andrew Briscoe 4e9ac1ccb0
feat: add RFC 9562 UUIDv7 generator
Add initial Rust crate configuration for 'uuidv7' with library and CLI targets.

Library:
- Add 'uuidv7::generate()' for canonical lowercase UUIDv7 strings
- Encode 48-bit Unix millisecond timestamps according to RFC 9562
- Set exact UUID version 7 and RFC variant bits
- Use operating-system cryptographic randomness from '/dev/urandom' on Unix
- Use 'BCryptGenRandom' on Windows
- Return structured errors for clock, timestamp, and randomness failures

CLI:
- Add 'uuidv7' executable that prints one UUID followed by a newline
- Reject unexpected arguments with exit code '2'
- Report generation failures on standard error

Tests:
- Cover UUID layout assembly, formatting, version, variant, and timestamp behavior
- Add CLI integration tests for output shape, uniqueness, argument rejection, and optional 'uuidparse' compatibility

Project:
- Add 'Cargo.toml' and 'Cargo.lock'
- Add '.gitignore' entries for generated, stash, and build output directories
2026-07-29 07:33:03 +08:00
src feat: add RFC 9562 UUIDv7 generator 2026-07-29 07:33:03 +08:00
tests feat: add RFC 9562 UUIDv7 generator 2026-07-29 07:33:03 +08:00
.gitignore feat: add RFC 9562 UUIDv7 generator 2026-07-29 07:33:03 +08:00
Cargo.lock feat: add RFC 9562 UUIDv7 generator 2026-07-29 07:33:03 +08:00
Cargo.toml feat: add RFC 9562 UUIDv7 generator 2026-07-29 07:33:03 +08:00