Jens-G opened a new pull request, #3366:
URL: https://github.com/apache/thrift/pull/3366

   Replace the Windows-only random CoCreateGuid() GUID generation with 
deterministic UUIDv8 (RFC 9562) derived from SHA-256 over a namespace hierarchy 
(DNS → thrift.apache.org → program → interface metadata).
   
   Uses SHA-256 implementation by Brad Conte (brad AT bradconte.com), which is 
explicitly public domain (no copyright claimed). Source: 
https://github.com/B-Con/crypto-algorithms
   
   - sha256.h: Brad Conte's algorithm verbatim, inlined to a header-only file, 
macros prefixed THRIFT_SHA256_ to avoid collisions
   - Add generate_guid_v8() for services and structs using a canonical string 
covering: program namespace UUID, entity name, parent service hash (for 
inheritance), and function/field signatures with Thrift IDL type names
   - Add type_name_for_guid(), canonical_service_string(), 
canonical_struct_string(), program_namespace_uuid() helpers
   - Add guid_v4 generator option to fall back to legacy random GUIDs (Windows 
only, for migration compatibility)
   - GUIDs are now emitted on all platforms, not just Windows
   - Add UuidV8Test.thrift fixture and CI step that validates determinism, 
UUIDv8 format, field-order sensitivity, and parent-service hash inclusion
   - LICENSE: add attribution section for the third-party public-domain code, 
following the existing pattern in the file
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to