The default hash algorithm if not specified is SHA1, so unless you are specifically choosing MD5 then you have nothing to worry about as none of these changes affect SHA1 name generation.
The code was not properly handling MD5_Final copy-to-buffer with respect to the overall result of the name generator on little-endian systems. While the SHA1 result is copied as integers, the MD5 result is copied into a byte buffer backed by integers, and not handled properly w.r.t. endianness.
The unit test for MD5 was using memcmp instead of accounting for the endianness, thus hiding the original issue.
Maintaining consistency in a hash-based implementation over time is critical.
The md5 based name generation has changed to ensure the generation of md5 digests is correct (and the same) on both little and big endian systems. Previously it was producing different results on little and big endian systems (and unfortunately, if was the little-endian systems that were incorrect).
Define BOOST_UUID_COMPAT_PRE_1_71_MD5 to ensure that any MD5 name generated UUIDs come out the same as they did in 1.66 through 1.70. Note that in this mode little and big endian systems produce a different uuid for md5 name based uuids with the same inputs (which is the defect that was fixed here).
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.