Skip to content

Tags: ByteAether/Ulid

Tags

v1.3.7

Toggle v1.3.7's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Optimize Ulid fallback equality check with branchless XOR comparison. (

…#43)

v1.3.7-rc.0

Toggle v1.3.7-rc.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Optimize Ulid fallback equality check with branchless XOR comparison. (

…#43)

v1.3.6

Toggle v1.3.6's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Optimize `ToString()` performance via JIT bounds-check elimination an…

…d update documentation (#38)

* Improve ToString() performance by hinting JIT to not do bounds-checking later

* Update benchmark results in README.md with latest performance data. Add `AsByteSpan()` benchmark along with `ToByteArray()` benchmarks.

* Refine README: Add ULID vs UUIDv7 heading, badge for .NET AOT readiness, and lock-free synchronization details. Update PACKAGE.md as necessary.

v1.3.5

Toggle v1.3.5's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Small source code optimizations. Clarified ULID advantages in `README…

….md`. (#35)

* Refactored ULID string formatting logic to remove redundant checks and improve overall performance. Added additional test for Unix timestamp and random input validation.

* Removed "readonly" marker from methods where it is not necessary.

* Updated README to clarify ULID advantages over GUIDs, highlight strict monotonicity, and address limitations in UUIDv7 implementations.

v1.3.4

Toggle v1.3.4's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Fixed incorrect span size variable in `Ulid.New` random source initia…

…lization. (#31)

Fixes #30

v1.3.3

Toggle v1.3.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Performance improvements on new Ulid generation and `Parse()`/`ToStri…

…ng()` (#29)

* Improved timestamp handling in `Ulid.New` implementation, and added test for timestamp and random validation. Rewrote ULID generation methods to use refs instead of Spans for performance.

* Refactor ULID parsing/encoding to use Unsafe.As/Add for direct memory access, improving performance and eliminating bounds checks.

* Updated benchmark results in README.

v1.3.2

Toggle v1.3.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
.NET 10 support (#23)

* Add .NET 10.0 support across projects, actions, and documentation; minor adjustments in README and validations.

* Enable manual workflow dispatch in build-and-test GitHub Action.

* Update README and dependencies for latest benchmarks

v1.3.1

Toggle v1.3.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Refactored `FillTime` for simplicity and performance, improved `FillR…

…andom` performance, and replaced `lock` with spinlock. (#18)

* Enhanced performance via `[MethodImpl(MethodImplOptions.AggressiveOptimization)]` for .NET Core 3.0+ methods.

* Replaced `lock` with lightweight spinlock for improved performance in `Ulid.New`.

* Refactored `FillTime` for simplicity and performance. Improved `FillRandom` performance by comparing timestamps as `ulong` values instead of as sequences of bytes. Updated benchmark results in README.

v1.3.0

Toggle v1.3.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Enhanced ULID Generation with `GenerationOptions` and Improved Random…

…ness (#17)

Introduces significant enhancements to the ULID generation mechanism, providing greater flexibility, modularity, and addressing potential predictability concerns in monotonic ULID sequences.

Features:
* Configuration Object for ULID Generation (`GenerationOptions`)
* Modularized Random Number Provider Implementations
* Implemented Random-Sized Incrementing for Monotonic ULID Generation

Deprecates:
* `public static bool Ulid.DefaultIsMonotonic { get; set; }`
* All public static `Ulid.New(..., bool? isMonotonic)` overloads.

v1.2.0

Toggle v1.2.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Make Ulid AoT compatible (#12)

Mark Ulid library as AoT compatible.
Add AoT Console application to use Ulid in various ways to test AoT compatibility.
Added GitHub Action workflow to run the AoT Console application.