Repository navigation
Release v7.23.0
Summary
Concepts can now declare how they make a new value, and GenerateValue offers cryptographically secure UUID v4 and UUID v7 generation on .NET 8, 9 and 10.
Added
IGeneratable<TSelf>inCratis.Concepts: a concept implementsstatic TSelf New(), so constrained generic code can create it without reflection and with Native AOT (part of #1176)GenerateValue.Uuid()returns an RFC 9562 version 4 UUID fromRandomNumberGenerator(part of #1176)GenerateValue.UuidV7()returns an RFC 9562 version 7 UUID:Guid.CreateVersion7()on .NET 9 and later, and an equivalent implementation on .NET 8 (part of #1176)- Documentation page on generating values: https://github.com/Cratis/Fundamentals/blob/main/Documentation/csharp/generating-values.md (part of #1176)
Changed
CorrelationIdimplementsIGeneratable<CorrelationId>, andCorrelationId.New()usesGenerateValue.Uuid()(part of #1176)