53 lines
1.8 KiB
Plaintext
53 lines
1.8 KiB
Plaintext
|
////
|
||
|
Copyright 2022 Peter Dimov
|
||
|
Distributed under the Boost Software License, Version 1.0.
|
||
|
https://www.boost.org/LICENSE_1_0.txt
|
||
|
////
|
||
|
|
||
|
[#recent]
|
||
|
= Recent Changes
|
||
|
:idprefix: recent_
|
||
|
|
||
|
== Boost 1.82.0
|
||
|
|
||
|
* Added an overload of `hash_value` for `std::nullptr_t`.
|
||
|
* Added `is_tuple_like` and an overload of `hash_value` for
|
||
|
tuple-like types.
|
||
|
* Changed string hashing to use
|
||
|
https://github.com/pdimov/mulxp_hash[`mulxp1_hash`],
|
||
|
improving both quality and speed. This changes the hash values
|
||
|
for string-like types (ranges of `char`, `signed char`,
|
||
|
`unsigned char`, `std::byte`, `char8_t`).
|
||
|
|
||
|
== Boost 1.81.0
|
||
|
|
||
|
Major update.
|
||
|
|
||
|
* The specializations of `boost::hash` have been removed; it now
|
||
|
always calls `hash_value`.
|
||
|
* Support for `BOOST_HASH_NO_EXTENSIONS` has been removed. The
|
||
|
extensions are always enabled.
|
||
|
* All standard containers are now supported. This includes
|
||
|
`std::forward_list` and the unordered associative containers.
|
||
|
* User-defined containers (types that have `begin()` and `end()`
|
||
|
member functions that return iterators) are now supported out
|
||
|
of the box.
|
||
|
* Described structs and classes (those annotated with
|
||
|
`BOOST_DESCRIBE_STRUCT` or `BOOST_DESCRIBE_CLASS`) are now
|
||
|
supported out of the box.
|
||
|
* `hash_combine` has been improved. This changes the hash values
|
||
|
of composite (container and tuple) types and of scalar types
|
||
|
bigger than `size_t`.
|
||
|
* The performance (and quality, as a result of the above change)
|
||
|
of string hashing has been improved. `boost::hash` for strings
|
||
|
now passes SMHasher in 64 bit mode.
|
||
|
* The documentation has been substantially revised to reflect
|
||
|
the changes.
|
||
|
|
||
|
== Boost 1.78.0
|
||
|
|
||
|
* Fixed `hash_combine` so that its behavior no longer depends
|
||
|
on whether `size_t` is the exact same type as `boost::uint64_t`
|
||
|
(which wasn't the case on macOS). This changes the hash values
|
||
|
of composite (container and tuple) types on macOS.
|