Version 1.89.0
Version 1.89.0 beta 1
July 17th, 2025 18:13 GMT
Platform | File | SHA256 Hash |
---|---|---|
unix | boost_1_89_0_b1.tar.bz2 | 9ece9af2b243f90b76f679b278b512b6589c7843e4dd54cffcb719bbc0801998 |
boost_1_89_0_b1.tar.gz | 984ee193ddf192795ba635d4c73b2b43e1e596995d7ce5519a3a72fab9bc0b40 | |
windows | boost_1_89_0_b1.7z | f255b4a31558b3fb81be1dc7e8b367fb9997dbe5e71da98a730c681377abffa9 |
boost_1_89_0_b1.zip | bf45af4a58f39c2ec374ef6e70b26859b786ba2ed087bc869d92a2b4de14e0d2 |
New Libraries
-
Bloom: Bloom filters, from Joaquín M López Muñoz.
Updated Libraries
* [phrase library..[@/libs/any/ Any]:] * [*Initial support for C++20 Modules]. See the docs for more info.
-
Beast:
-
Fixes
-
Conditionally defined
immediate_executor_type
inasync_base
. -
Added missing
cstdint
header todetail/cpu_info.hpp
. -
Fixed
std::is_trivial
deprecation warnings. -
handshake_timeout
now applies to closing handshakes during reads.
-
-
Improvements
-
Replaced
detail/work_guard.hpp
withnet::executor_work_guard
. -
Fixed portability issues for building tests in MinGW.
-
-
Documentation
-
Removed moved sections from documentation.
-
Removed superfluous log messages from tests.
-
-
Acknowledgements
-
yliu1021
-
-
-
Compat:
-
Added
move_only_function.hpp
.
-
-
ContainerHash:
-
Added the
hash_is_avalanching
trait class.
-
-
Conversion:
-
Added an ability to use
polymorphic_downcast
andpolymorphic_cast
in constexpr (requires C++20).
-
-
DLL:
-
Fixed compiling and exporting on Cygwin. Many thanks to Luohao Wang for the PR!
-
Fixed building on FreeBSD. Thanks to ash for the bug report!
-
Added
BOOST_DLL_USE_STD_FS
CMake option to match the preprocessor option. Thanks to Yury Bura for the PR!
-
-
Hash2:
-
Added Blake2 algorithm (
blake2s_256
,blake2b_512
). -
Added XXH3 algorithm (
xxh3_128
).
-
-
MySQL:
-
The
caching_sha2_password
authentication plugin can now be used without TLS. This is the default in MySQL 8 and above. Plaintext connections that attempt to use this plugin no longer fail withclient_errc::auth_plugin_requires_ssl
(#313). -
The handshake algorithm is now more resilient to protocol violations (#469).
-
Fixed a build failure with gcc-15 due to a missing include (PR#475). Thanks hhoffstaette for the PR.
-
Optimized
metadata
representation to be faster to construct and take less memory (#461).
-
-
PFR:
-
Rewrite C++20 module following the new recommended Boost practice. See the docs for more info.
-
Fixed C++26 compilation on modern clang compilers. Thanks to Valery Mironov for the report!
-
Support types that use 'Arrays of Length Zero' compiler extension.
-
Fixed typos. Thanks to Egor for highlighting the issues!
-
Return
std::array<std::string_view, 0>
type forboost::pfr::names_as_array(empty_struct{})
to allow compilation offor (std::string_view name : boost::pfr::names_as_array(empty_struct{}))
. Many thanks to sabudilovskiy for the bug report!
-
-
TypeIndex:
-
Initial support for C++20 Modules. See the docs for more info.
-
-
Unordered:
-
Deprecated
boost::unordered::hash_is_avalanching
is now a using-declaration ofboost::hash_is_avalanching
in<boost/container_hash/hash_is_avalanching.hpp>
. Use that header directly instead.<boost/unordered/hash_traits.hpp>
will be removed in the future. -
Added
pull(const_iterator)
to open-addressing containers. This operation allows for efficient removal and retrieval of an element via move construction.
-
-
Histogram:
-
Update CMake minimum version and Python detection in CMake
-
Improve documentation
-
Add example on how to make an axis which accepts multiple value types that are not implicitly convertible
-
Show how to use
histogram::fill
with a multidimensional histogram efficiently when data per dimension is already available as contiguous data
-
-
Don't use deprecated form of user-defined literal operator
-
Add support for modular build structure with b2
-
Fixed warnings in MSVC about narrowed types
-
Added collector accumulator, which stores all values in a bin
-
Internal changes to tests and classes in detail namespace
-
Updated Tools
-
Build:
-
Includes release of B2 version 5.3.2.
-
Compilers Tested
Boost's primary test compilers are:
-
Linux:
-
Clang, C++03: 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 12.0.0, 13.0.0, 14.0.0, 15.0.0
-
Clang, C++11: 3.4, 11.0.0, 13.0.0, 14.0.0, 15.0.0
-
Clang, C++14: 3.5, 3.6, 3.7, 3.8, 3.9, 4.0, 5.0, 12.0.0, 13.0.0, 14.0.0, 15.0.0
-
Clang, C++17: 6.0.1, 7.0.0, 8.0.0, 9.0.0, 10.0.0, 11.0.0, 12.0.0, 13.0.0, 14.0.0, 15.0.0
-
Clang, C++20: 11.0.0, 12.0.0, 13.0.0, 14.0.0, 15.0.0
-
GCC, C++03: 4.6.3, 11, 12
-
GCC, C++11: 4.7.3, 4.8.5, 11, 12
-
GCC, C++14: 5.4.0, 6.4.0, 7.3.0, 8.0.1, 9.1.0, 11, 12
-
GCC, C++17: 7.3.0, 8.0.1, 9.1.0, 11, 12
-
GCC, C++20: 8.0.1, 9.1.0, 10, 11, 12
-
-
OS X:
-
Apple Clang, C++03: 11.0.3
-
Apple Clang, C++11: 11.0.3
-
Apple Clang, C++14: 11.0.3
-
Apple Clang, C++17: 11.0.3
-
Apple Clang, C++20: 11.0.3
-
-
Windows:
-
Visual C++: 10.0, 11.0, 12.0, 14.0, 14.1, 14.2, 14.3
-
Acknowledgements
Marshall Clow, Glen Fernandes and Ion Gaztañaga managed this release.