Skip to content

Commit e2232f0

Browse files
authored
Merge pull request #49 from dexcompiler/update-nuget-version
• chore: release 1.3.0
2 parents 251c781 + 82881dc commit e2232f0

3 files changed

Lines changed: 38 additions & 3 deletions

File tree

CHANGELOG.md

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,40 @@ and this project aims to follow [Semantic Versioning](https://semver.org/spec/v2
77

88
## [Unreleased]
99

10+
## [1.3.0] - 2026-02-19
11+
12+
### Fixed
13+
- Fix packed HLC decode for high-bit wall times.
14+
- Enforce HLC drift bounds when the clock moves backwards.
15+
- Harden `VectorClock` string parsing and coordinator locking.
16+
- Fix `VectorClock` overflow behavior.
17+
- Fix thread safety in demo `FailureInjector`.
18+
- Preserve correlation IDs correctly in at-least-once demo flows.
19+
- Prevent a template dictionary memory leak in the integration demo.
20+
- Stabilize demo `MessageId` generation.
21+
22+
### Changed
23+
- Optimize HLC timestamp serialization/parsing, and simplify witness max selection.
24+
- Make HLC message header `TryParse` non-exceptional.
25+
- Split HLC coordinator supporting types into separate files.
26+
- Optimize `VectorClock` merge/compare/increment and serialization.
27+
- Use `ArrayPool<T>` for vector clock merge buffers.
28+
- Use `CollectionsMarshal` for vector clock canonicalization.
29+
- UUIDv7 packing now uses `BinaryPrimitives` and a tighter packing path.
30+
- UUIDv7 factory batch generation throughput improvements.
31+
- Adopt C# 14 extension member blocks.
32+
33+
### Added
34+
- Add high-value property tests for HLC and vector clocks.
35+
- Demo: add distributed-systems at-least-once simulation with HLC/VC stats.
36+
37+
### Documentation
38+
- Update README with HLC and `VectorClock` wire formats.
39+
- Clarify HLC drift bounds and ordering scope.
40+
41+
### Build
42+
- Infrastructure scripts: improve setup/maintenance harness and dotnet installation step.
43+
1044
## [1.2.0] - 2026-01-27
1145

1246
### Changed
@@ -20,5 +54,6 @@ and this project aims to follow [Semantic Versioning](https://semver.org/spec/v2
2054
### Build
2155
- Centralized common build properties in `Directory.Build.props`.
2256

23-
[Unreleased]: https://github.com/dexcompiler/Clockworks/compare/v1.2.0...HEAD
57+
[Unreleased]: https://github.com/dexcompiler/Clockworks/compare/v1.3.0...HEAD
58+
[1.3.0]: https://github.com/dexcompiler/Clockworks/releases/tag/v1.3.0
2459
[1.2.0]: https://github.com/dexcompiler/Clockworks/releases/tag/v1.2.0

demo/Clockworks.IntegrationDemo/Infrastructure/InMemoryQueue.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ public sealed class InMemoryQueue
88

99
public void Enqueue(QueuedMessage msg) => _queue.Enqueue(msg);
1010

11-
public bool TryDequeue(out QueuedMessage msg) => _queue.TryDequeue(out msg);
11+
public bool TryDequeue(out QueuedMessage msg) => _queue.TryDequeue(out msg!);
1212

1313
public int Count => _queue.Count;
1414

src/Clockworks.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<PackageId>Clockworks</PackageId>
1414
<AssemblyName>Clockworks</AssemblyName>
1515
<RootNamespace>Clockworks</RootNamespace>
16-
<Version>1.2.0</Version>
16+
<Version>1.3.0</Version>
1717
<Authors>Dexter Ajoku</Authors>
1818
<Company>CloudyBox</Company>
1919
<Description>Clockworks is a .NET library for deterministic, fully controllable time in distributed-system simulations and tests. It provides a simulated TimeProvider with deterministic timer scheduling, TimeProvider-driven timeouts, UUIDv7 generation, and Hybrid Logical Clock (HLC) utilities with lightweight instrumentation.</Description>

0 commit comments

Comments
 (0)