New Features:
- Added MetroHash (64-bit and 128-bit)
- Added xxHash variants XXH32 and XXH64
- Added
PseudoRandomGenerator::uniformLong(long)to generate randomlongvalues over a bounded interval
Breaking Changes:
-
Renamed the JPMS module from
hash4jtocom.dynatrace.hash4jto align with standard naming convention. -
Renamed
Hashing::rapidhash3toHashing::rapidhashV3Legacyand introducedHashing::rapidhashV3.This change was required because a re-release of Rapidhash v3 changed the hash output for inputs with lengths of 5, 6, and 7 bytes. See #555 for details.
Migration guidance:
- If your inputs are never 5, 6, or 7 bytes long, for example, because they are always at least 8 bytes long or always a multiple of 4 bytes, you can safely migrate from
Hashing::rapidhash3toHashing::rapidhashV3. - If your inputs may be 5, 6, or 7 bytes long, use
Hashing::rapidhashV3Legacyto preserve the previous behavior. SinceHashing::rapidhashV3Legacyis deprecated and may be removed in a future release, consider moving relevant logic into your own codebase.
- If your inputs are never 5, 6, or 7 bytes long, for example, because they are always at least 8 bytes long or always a multiple of 4 bytes, you can safely migrate from
Full Changelog: v0.29.0...v0.30.0