diff --git a/doc/.htaccess b/doc/.htaccess index 6986969c..0d3cbbde 100644 --- a/doc/.htaccess +++ b/doc/.htaccess @@ -25,8 +25,8 @@ RewriteRule ^libs/development/libs/([^./]+)$ libs/development/libs/$1/ [R=301] # Any edits will be overwritten. # # Redirect from symbolic names to current versions. -RewriteRule ^libs/release(/.*)?$ libs/1_85_0$1 [R=303] -RewriteRule ^libs/development(/.*)?$ libs/1_85_0$1 [R=303] +RewriteRule ^libs/release(/.*)?$ libs/1_86_0$1 [R=303] +RewriteRule ^libs/development(/.*)?$ libs/1_86_0$1 [R=303] # # REDIRECT_UPDATE_END diff --git a/doc/libraries.xml b/doc/libraries.xml index e25c7068..89293570 100644 --- a/doc/libraries.xml +++ b/doc/libraries.xml @@ -1,6 +1,6 @@ - + String and text processing @@ -371,6 +371,19 @@ 11 Data + + any + libs/any/ + 1.23.0 + 1.86.0 + Any + Kevlin Henney + Antony Polukhin <antoshkka -at- gmail.com> + Safe, generic container for single values of different value types. + libs/any/ + 11 + Data + any libs/any/ @@ -419,6 +432,19 @@ 03 Containers + + array + libs/array/ + 1.17.0 + 1.86.0 + Array + Nicolai Josuttis + Marshall Clow <marshall -at- idio.com> + STL compliant container wrapper for arrays of constant size. + libs/array/ + 03 + Containers + array libs/array/ @@ -749,6 +775,19 @@ 11 Function-objects + + bind + libs/bind/ + 1.25.0 + 1.86.0 + Bind + Peter Dimov + Peter Dimov <pdimov -at- gmail.com> + boost::bind is a generalization of the standard functions std::bind1st and std::bind2nd. It supports arbitrary function objects, functions, function pointers, and member function pointers, and is able to bind any argument to a specific value or route input arguments into arbitrary positions. + libs/bind/ + 11 + Function-objects + bind libs/bind/ @@ -796,6 +835,18 @@ 11 Function-objects + + bind/mem_fn + libs/bind/ + 1.25.0 + 1.86.0 + Member Function + Peter Dimov + Generalized binders for function/object/pointers and member functions. + libs/bind/mem_fn.html + 11 + Function-objects + bind/mem_fn libs/bind/ @@ -850,6 +901,21 @@ 03 Function-objects + + bind/ref + libs/core/ + 1.25.0 + 1.86.0 + Ref + Jaako Järvi + Peter Dimov + Doug Gregor + Dave Abrahams + A utility library for passing references to generic functions. + libs/core/ref.html + 03 + Function-objects + bind/ref libs/core/ @@ -985,6 +1051,22 @@ Domain System + + chrono + libs/chrono/ + 1.47.0 + 1.86.0 + Chrono + Howard Hinnant + Beman Dawes + Vicente J. Botet Escriba + Vicente J. Botet Escriba <vicente.botet -at- wanadoo.fr> + Useful time utilities. C++11. + libs/chrono/ + 11 + Domain + System + chrono libs/chrono/ @@ -1269,6 +1351,19 @@ 11 Function-objects + + container_hash + libs/container_hash/ + 1.33.0 + 1.86.0 + Container Hash + Daniel James + Peter Dimov <pdimov -at- gmail.com> + An STL-compatible hash function object that can be extended to hash user defined types. + libs/container_hash/ + 11 + Function-objects + container_hash libs/container_hash/ @@ -1895,6 +1990,20 @@ 11 System + + dll + libs/dll/ + 1.61.0 + 1.86.0 + DLL + Antony Polukhin + Renato Tegon Forti + Antony Polukhin <antoshkka -at- gmail.com> + Library for comfortable work with DLL and DSO. + libs/dll/ + 11 + System + dll libs/dll/ @@ -2429,6 +2538,20 @@ Function-objects Programming + + function + libs/function/ + 1.23.0 + 1.86.0 + Function + Doug Gregor + Peter Dimov <pdimov -at- gmail.com> + Function object wrappers for deferred calls or callbacks. + libs/function/ + 11 + Function-objects + Programming + function libs/function/ @@ -3507,8 +3630,7 @@ geometry/index libs/geometry/index/ - hidden - master + 1.86.0 hidden Geometry Index Barend Gehrels @@ -5795,6 +5917,21 @@ Patterns Programming + + outcome + libs/outcome/ + 1.70.0 + 1.86.0 + Outcome + Niall Douglas + Niall Douglas <s -underscore- sourceforge -at- nedprod -dot- com> + A deterministic failure handling library partially simulating lightweight exceptions. + libs/outcome/ + 14 + Emulation + Patterns + Programming + outcome libs/outcome/ @@ -5937,6 +6074,20 @@ Data Metaprogramming + + pfr + libs/pfr/ + 1.75.0 + 1.86.0 + PFR + Antony Polukhin + Antony Polukhin <antoshkka -at- gmail.com> + Basic reflection for user defined types. + libs/pfr/ + 14 + Data + Metaprogramming + pfr libs/pfr/ @@ -6619,6 +6770,20 @@ 11 Math + + random + libs/random/ + 1.15.0 + 1.86.0 + Random + Jens Maurer + Steven Watanabe <watanabesj -at- gmail.com> + Matt Borland <matt -at- mattborland.com> + A complete system for random number generation. + libs/random/ + 11 + Math + random libs/random/ @@ -6754,6 +6919,21 @@ 11 Math + + ratio + libs/ratio/ + 1.47.0 + 1.86.0 + Ratio + Howard Hinnant + Beman Dawes + Vicente J. Botet Escriba + Vicente J. Botet Escriba <vicente.botet -at- wanadoo.fr> + Compile time rational arithmetic. C++11. + libs/ratio/ + 11 + Math + ratio libs/ratio/ @@ -6877,6 +7057,19 @@ 11 String + + regex + libs/regex/ + 1.18.0 + 1.86.0 + Regex + John Maddock + John Maddock <john -at- johnmaddock.co.uk> + Regular expression library. + libs/regex/ + 11 + String + regex libs/regex/ @@ -7191,6 +7384,23 @@ 03 Memory + + smart_ptr + libs/smart_ptr/ + 1.23.0 + 1.86.0 + Smart Ptr + Greg Colvin + Beman Dawes + Peter Dimov + Darin Adler + Glen Fernandes + Peter Dimov <pdimov -at- gmail.com> + Smart pointer class templates. + libs/smart_ptr/ + 03 + Memory + smart_ptr libs/smart_ptr/ @@ -7441,6 +7651,20 @@ Correctness System + + stacktrace + libs/stacktrace/ + 1.65.0 + 1.86.0 + Stacktrace + Antony Polukhin + Antony Polukhin <antoshkka -at- gmail.com> + Gather, store, copy and print backtraces. + libs/stacktrace/ + 11 + Correctness + System + stacktrace libs/stacktrace/ @@ -7917,6 +8141,21 @@ Concurrent System + + thread + libs/thread/ + 1.25.0 + 1.86.0 + Thread + Anthony Williams + Vicente J. Botet Escriba + Vicente J. Botet Escriba <vicente.botet -at- wanadoo.fr> + Portable C++ multi-threading. C++11, C++14, C++17. + libs/thread/ + 11 + Concurrent + System + thread libs/thread/ @@ -8164,6 +8403,19 @@ 03 Data + + tuple + libs/tuple/ + 1.24.0 + 1.86.0 + Tuple + Jaakko Järvi + Jaakko Jarvi <jarvi -at- cs.tamu.edu> + Ease definition of functions returning multiple values, and more. + libs/tuple/ + 03 + Data + tuple libs/tuple/ @@ -8302,6 +8554,20 @@ Generic Metaprogramming + + type_traits + libs/type_traits/ + 1.13.0 + 1.86.0 + Type Traits + John Maddock, Steve Cleary, et al + John Maddock <john -at- johnmaddock.co.uk> + Templates for fundamental properties of types. + libs/type_traits/ + 03 + Generic + Metaprogramming + type_traits libs/type_traits/ @@ -8915,6 +9181,20 @@ Containers String + + utility/string_view + libs/utility/ + 1.84.0 + 1.86.0 + String View + Marshall Clow + Marshall Clow <marshall -at- idio.com> + String view templates. + libs/utility/doc/html/utility/utilities/string_view.html + 03 + Containers + String + utility/string_view libs/utility/ diff --git a/generated/current_version.txt b/generated/current_version.txt index 2db3303f..59d7d104 100644 --- a/generated/current_version.txt +++ b/generated/current_version.txt @@ -1 +1 @@ -1.85.0 \ No newline at end of file +1.86.0 \ No newline at end of file diff --git a/generated/dev.rss b/generated/dev.rss index 7282968c..33181dc9 100644 --- a/generated/dev.rss +++ b/generated/dev.rss @@ -8,7 +8,7 @@ en-us Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or https://www.boost.org/LICENSE_1_0.txt) -Version 1.86.0https://www.boost.org/users/history/version_1_86_0.htmlhttps://www.boost.org/users/history/version_1_86_0.htmlFri, 26 Jul 2024 17:19:51 +0000 +Version 1.86.0https://www.boost.org/users/history/version_1_86_0.htmlhttps://www.boost.org/users/history/version_1_86_0.htmlWed, 14 Aug 2024 16:07:17 +0000 <div id="version_1_86_0.new_libraries"> @@ -16,7 +16,7 @@ <ul> <li> <div> - <em>TODO</em> + No new libraries. </div> </li> </ul> @@ -26,7 +26,7 @@ <ul> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/atomic/">Atomic</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/atomic/">Atomic</a>:</span> <ul> <li> <div> @@ -40,7 +40,7 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/beast/">Beast</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/beast/">Beast</a>:</span> <ul> <li> <div> @@ -200,7 +200,42 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/cobalt">Cobalt</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/charconv">Charconv</a>:</span> + <ul> + <li> + <div> + Fixed support for PPC64LE architecture. + </div> + </li> + <li> + <div> + Fixed support for platforms like Alpine linux that provide the <code><span class="special">&lt;</span><span class="identifier">quadmath</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span></code> header but not the compiled library. + </div> + </li> + <li> + <div> + Fixed first character pattern matching in <code><span class="identifier">from_chars</span></code> + for integer types. + </div> + </li> + <li> + <div> + Fixed overflow detection for integers with base greater than 10. + </div> + </li> + <li> + <div> + Added native support for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">float16_t</span></code> + and <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bfloat16_t</span></code> instead of using interchange + formats. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/cobalt">Cobalt</a>:</span> <ul> <li> <div> @@ -233,7 +268,7 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/compat/">Compat</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/compat/">Compat</a>:</span> <ul> <li> <div> @@ -253,7 +288,96 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/core/">Core</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/container/">Container</a>:</span> + <ul> + <li> + <div> + Fixed bugs/issues: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/285">GitHub + #285: <em>"devector&lt;&gt;::push_front asserts + after clear()"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/280">GitHub + #280: <em>"Several containers don't support non-movable + types when move assigning"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/279">GitHub + #279: <em>"small_vector cannot go back to use stack + space"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/277">GitHub + #277: <em>"Remove dep on boost::static_assert"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/275">GitHub + #275: <em>"Compilation fails if custom key comparison + is used"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/273">GitHub + #273: <em>"flat_map/vector crashes on appends (memory + corruption)"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/269">GitHub + #269: <em>"flat_multimap::emplace not sorting elements + under GCC"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/266">GitHub + #266: <em>"small_vector&lt;T&gt; is misaligned on + the stack in 32 bits"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/259">GitHub + #259: <em>"Global variables"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/245">GitHub + #245: <em>"flat_tree::insert ordered range doesn't + assert sorting"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/241">GitHub + #241: <em>"flat_map should support same interface + as std::map"</em></a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/core/">Core</a>:</span> <ul> <li> <div> @@ -274,12 +398,19 @@ type. (<a href="https://github.com/boostorg/core/issues/173">#173</a>) </div> </li> + <li> + <div> + Added a workaround for an MSVC <a href="https://developercommunity.visualstudio.com/t/Compiler-bug:-Incorrect-C2247-and-C2248/10690025">bug</a> + causing <code><span class="identifier">empty_value</span></code> + compilation errors when it is used with a nested class. (<a href="https://github.com/boostorg/core/pull/175">PR#175</a>) + </div> + </li> </ul> </div> </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/crc/">CRC</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/crc/">CRC</a>:</span> <ul> <li> <div> @@ -298,7 +429,7 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/filesystem/">Filesystem</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/filesystem/">Filesystem</a>:</span> <ul> <li> <div> @@ -354,7 +485,7 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/format/">Format</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/format/">Format</a>:</span> <ul> <li> <div> @@ -367,7 +498,7 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/function/">Function</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/function/">Function</a>:</span> <ul> <li> <div> @@ -385,7 +516,7 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/gil/">GIL</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/gil/">GIL</a>:</span> <ul> <li> <div> @@ -467,7 +598,7 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/graph/">Graph</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/graph/">Graph</a>:</span> <ul> <li> <div> @@ -566,7 +697,101 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/lexical_cast/">LexicalCast</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/interprocess/">Interprocess</a>:</span> + <ul> + <li> + <div> + Fixed bugs: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/191">GitHub + #191 (<em>"vectorstream: support file sizes larger + than INT_MAX "</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/198">GitHub + #198 (<em>"Minor fixes for documentation of offset_ptr"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/202">GitHub + #202 (<em>"Allow to map message_queue in anonymous + memory"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/207">GitHub + #207 (<em>"cmake: link system libraries"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/214">GitHub + #214 (<em>"Doc: Fix github links"</em>)</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/intrusive/">Intrusive</a>:</span> + <ul> + <li> + <div> + Fixed bug <a href="https://github.com/boostorg/intrusive/issues/86">GitHub + #86: <em>Invalid UTF-8 character in comment</em></a> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/json/">JSON</a>:</span> + <ul> + <li> + <div> + Support for GCC versions older than version 5.0 is deprecated and + <strong>will stop in Boost 1.88.0</strong>. + </div> + </li> + <li> + <div> + <code><span class="identifier">source_location</span></code> parameter + was added to throwing accessor functions. + </div> + </li> + <li> + <div> + Parse option to tolerate invalid UTF-16 surrogate pairs, and produce + <a href="https://simonsapin.github.io/wtf-8/">WTF-8</a>. + </div> + </li> + <li> + <div> + Added accessor functions that return <code><span class="identifier">system</span><span class="special">::</span><span class="identifier">result</span></code>. + </div> + </li> + <li> + <div> + Handle missing error case in direct parsing. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/lexical_cast/">LexicalCast</a>:</span> <ul> <li> <div> @@ -581,7 +806,29 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/locale/">Locale</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/leaf/">leaf</a>:</span> + <ul> + <li> + <div> + More optimal verbose_diagnostic_info implementation. + </div> + </li> + <li> + <div> + Bug fixes. + </div> + </li> + <li> + <div> + Added [[nodiscard]] to class result&lt;&gt;. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/locale/">Locale</a>:</span> <ul> <li> <div> @@ -598,7 +845,7 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/log/">Log</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/log/">Log</a>:</span> <ul> <li> <div> @@ -612,7 +859,79 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/mysql/">MySQL</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/math/">Math</a>:</span> + <ul> + <li> + <div> + Correct Bessel function results at infinity, see <a href="https://github.com/boostorg/math/issues/1143">1143</a>. + </div> + </li> + <li> + <div> + Improve Non Central T numerical stability, see <a href="https://github.com/scipy/scipy/issues/20693">scipy20693</a>. + </div> + </li> + <li> + <div> + Correct <code><span class="identifier">float_next</span></code>/<code><span class="identifier">float_prior</span></code> behaviour at infinity. + </div> + </li> + <li> + <div> + Prevent spurious underflow in non-central beta, see <a href="https://github.com/scipy/scipy/issues/20693">scipy20693</a>. + </div> + </li> + <li> + <div> + Add improvement to Heuman Lambda precision. + </div> + </li> + <li> + <div> + Improve Skew Normal root finding, see <a href="https://github.com/boostorg/math/issues/1120">1120</a>. + </div> + </li> + <li> + <div> + Lots of minor fixes and improved code coverage. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/multiprecision/">Multiprecision</a>:</span> + <ul> + <li> + <div> + Make sure <code><span class="identifier">eval_convert_to</span><span class="special">()</span></code> does not terminate with super large + numbers, see <a href="https://github.com/boostorg/multiprecision/pull/618">618</a>. + </div> + </li> + <li> + <div> + Fix <code><span class="identifier">sinc</span></code> implementation + to match behavior of Boost.Math. + </div> + </li> + <li> + <div> + Fix divide-by-zero in cpp_int modulus operations. + </div> + </li> + <li> + <div> + Fix underflow behavior consistency for integers greater than 128-bits, + see <a href="https://github.com/boostorg/multiprecision/issues/626">626</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/mysql/">MySQL</a>:</span> <ul> <li> <div> @@ -751,7 +1070,25 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/process/">Process</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/odeint/">Odeint</a>:</span> + <ul> + <li> + <div> + Added CMake Option <code><span class="identifier">BOOST_NUMERIC_ODEINT_NO_ADAPTORS</span></code> + to reduce dependencies, see <a href="https://github.com/boostorg/odeint/issues/82">82</a> + </div> + </li> + <li> + <div> + Fixed CMake detection of MPI. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/process/">Process</a>:</span> <ul> <li> <div> @@ -774,7 +1111,7 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/stacktrace/">Stacktrace</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/stacktrace/">Stacktrace</a>:</span> <ul> <li> <div> @@ -848,7 +1185,25 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/unordered/">Unordered</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/test/">Test</a>:</span> + <ul> + <li> + <div> + Fix <code><span class="special">-</span><span class="identifier">Wundef</span></code> + in configuration step. + </div> + </li> + <li> + <div> + Fix unreachable return compilation error on MSVC. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/unordered/">Unordered</a>:</span> <ul> <li> <div> @@ -892,7 +1247,7 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/uuid/">UUID</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/uuid/">UUID</a>:</span> <ul> <li> <div> @@ -925,7 +1280,7 @@ <li> <div> <em>Many</em> other improvements, see - the <a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/uuid/doc/html/uuid.html#changes">revision history</a>. + the <a href="https://www.boost.org/libs/uuid/doc/html/uuid.html#changes">revision history</a>. </div> </li> </ul> @@ -933,7 +1288,32 @@ </li> <li> <div> - <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/winapi/">WinAPI</a>:</span> + <span class="library"><a href="https://www.boost.org/libs/wave/">Wave</a>:</span> + <ul> + <li> + <div> + Replaced one use of vsprintf with the more secure vsnprintf + </div> + </li> + <li> + <div> + Fixed bug: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/wave/issues/197">#197</a>: Improper signed overflow handling (UB and a missing + division check) + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/winapi/">WinAPI</a>:</span> <ul> <li> <div> @@ -1186,6 +1566,29 @@ Version 1.85.0https://www.boost.org/users/history/version_1_85_0.htmlhttps://www.boost.org/users/history/version_1_85_0.htmlMon, 15 Apr 2024 17:38:25 +0000 + <div id="version_1_85_0.known_issues"> + <h3><span class="link">Known Issues</span></h3> + <p> + These are patches from library authors which were found too late to be fixed + in the release. + </p> + <ul> + <li> + <div> + Container + <ul> + <li> + <div> + flat_map/multimap containers can crash or return invalid results + in some compilers due to UB in the library, see <a href="https://github.com/boostorg/container/issues/273">#273</a>. + <a href="https://www.boost.org/patches/1_85_0/0001-container-fix-flat_map.patch">Patch</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> <div id="version_1_85_0.new_libraries"> <h3><span class="link">New Libraries</span></h3> <ul> diff --git a/generated/download-items.html b/generated/download-items.html index b0ababe4..1ca7c513 100644 --- a/generated/download-items.html +++ b/generated/download-items.html @@ -1,36 +1,13 @@

Current Release

Version 1.85.0

+ "news-title">Version 1.86.0 -

April 15th, 2024 17:38 GMT

- -

- - New Libraries: Charconv, Scope. Updated Libraries: Asio, Atomic, Beast, Bimap, - Bind, Conversion, Core, Filesystem, Function, Geometry, Iterator, JSON, LEAF, - LexicalCast, Locale, Math, MSM, Multi-index, Multiprecision, MySQL, Odeint, - PFR, Random, System, Stacktrace, STLInterfaces, Test, Unordered, Variant, Wave. -

- - - - -
Downloads
PlatformFileSHA256 Hash
unixboost_1_85_0.tar.bz27009fe1faa1697476bdc7027703a2badb84e849b7b0baad5086b087b971f8617
boost_1_85_0.tar.gzbe0d91732d5b0cc6fbb275c7939974457e79b54d6f07ce2e3dfdd68bef883b0b
windowsboost_1_85_0.7z16d16b9658753117c1434e5450c5eac194957f4b6d0b390b9d07900d37c115a4
boost_1_85_0.zipe712fe7eb1b9ec37ac25102525412fb4d74e638996443944025791f48f29408a
* The download links are supported by grants from The C++ Alliance.

-

Beta Release

-

Version 1.86.0 beta 1

- -

July 26th, 2024 17:19 GMT

+

August 14th, 2024 16:07 GMT

@@ -39,9 +16,9 @@

- - -
Beta Downloads
PlatformFileSHA256 Hash
unixboost_1_86_0_b1.tar.bz26c3b6b6b1760090ebd658b764c9006d9579df2a20763ede356e059fe52989277
boost_1_86_0_b1.tar.gz82b59c0ca4d3b8bbf910ffdbbf535ef738fa1d648b8ba6f2608b516a58f89c55
windowsboost_1_86_0_b1.7zcad677f5b746bd83c68131766554b56ebf40eb7ba94823526b03820db9dbc049
boost_1_86_0_b1.zipcc0e5c0fb54ea8762c2eb9fbfd185cb8ccbe1ad33c218883f9438dbe2f9a795b
* The download links are supported by grants from The C++ Alliance.

+ + +
Downloads
PlatformFileSHA256 Hash
unixboost_1_86_0.tar.bz21bed88e40401b2cb7a1f76d4bab499e352fa4d0c5f31c0dbae64e24d34d7513b
boost_1_86_0.tar.gz2575e74ffc3ef1cd0babac2c1ee8bdb5782a0ee672b1912da40e5b4b591ca01f
windowsboost_1_86_0.7z413ee9d5754d0ac5994a3bf70c3b5606b10f33824fdd56cf04d425f2fc6bb8ce
boost_1_86_0.zipcd20a5694e753683e1dc2ee10e2d1bb11704e65893ebcc6ced234ba68e5d8646
* The download links are supported by grants from The C++ Alliance.

diff --git a/generated/downloads.rss b/generated/downloads.rss index 7b4ee384..f7bb08e9 100644 --- a/generated/downloads.rss +++ b/generated/downloads.rss @@ -8,9 +8,1587 @@ en-us Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or https://www.boost.org/LICENSE_1_0.txt) -Version 1.85.0https://www.boost.org/users/history/version_1_85_0.htmlhttps://www.boost.org/users/history/version_1_85_0.htmlMon, 15 Apr 2024 17:38:25 +0000 +Version 1.86.0https://www.boost.org/users/history/version_1_86_0.htmlhttps://www.boost.org/users/history/version_1_86_0.htmlWed, 14 Aug 2024 16:07:17 +0000 + <div id="version_1_86_0.new_libraries"> + <h3><span class="link">New Libraries</span></h3> + <ul> + <li> + <div> + No new libraries. + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.updated_libraries"> + <h3><span class="link">Updated Libraries</span></h3> + <ul> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/atomic/">Atomic</a>:</span> + <ul> + <li> + <div> + Use <a href="https://man.openbsd.org/OpenBSD-6.2/futex.2"><code><span class="identifier">futex</span><span class="special">(</span><span class="number">2</span><span class="special">)</span></code></a> + system call on OpenBSD since recent OpenBSD versions have removed + support for <code><span class="identifier">syscall</span><span class="special">(</span><span class="number">2</span><span class="special">)</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/beast/">Beast</a>:</span> + <ul> + <li> + <div> + API Changes + <ul> + <li> + <div> + Added HTTP status code 418 <code><span class="identifier">I</span><span class="error">'</span><span class="identifier">m</span> + <span class="identifier">a</span> <span class="identifier">teapot</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Fixes + <ul> + <li> + <div> + Narrowing conversion in <code><span class="identifier">read_size_hint_db</span><span class="special">()</span></code>. + </div> + </li> + <li> + <div> + Overloads that are ambiguous when using default completion + tokens. + </div> + </li> + <li> + <div> + Misplaced static_assert in <code><span class="identifier">http</span><span class="special">::</span><span class="identifier">basic_fields</span></code> + move-assignment operator. + </div> + </li> + <li> + <div> + Underflow of <code><span class="identifier">bytes_transferred</span></code> + in WebSocket partial write operations. + </div> + </li> + <li> + <div> + <code><span class="identifier">websocket</span><span class="special">::</span><span class="identifier">stream</span><span class="special">::</span><span class="identifier">read_size_hint</span><span class="special">()</span></code> + does not exceed <code><span class="identifier">read_message_max</span></code>. + </div> + </li> + <li> + <div> + Various warnings in tests. + </div> + </li> + <li> + <div> + Error handling in SSL shutdown operations in examples. + </div> + </li> + <li> + <div> + Annotate fallthrough case in zlib. + </div> + </li> + <li> + <div> + Handling of expired timers in <code><span class="identifier">basic_stream</span><span class="special">::</span><span class="identifier">ops</span><span class="special">::</span><span class="identifier">transfer_op</span></code>. + </div> + </li> + <li> + <div> + Ambiguity in <code><span class="identifier">test</span><span class="special">::</span><span class="identifier">basic_stream</span></code> + constructor overloads. + </div> + </li> + <li> + <div> + Partial parsing of the final chunk in <code><span class="identifier">http</span><span class="special">::</span><span class="identifier">parser</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Improvements + <ul> + <li> + <div> + Graceful shutdown in <code><span class="identifier">server_flex_awaitable</span></code> + example. + </div> + </li> + <li> + <div> + Simplified awaitable examples. + </div> + </li> + <li> + <div> + Added fuzzing targets. + </div> + </li> + <li> + <div> + Remove superfluous uses of <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bind</span></code> + in some examples. + </div> + </li> + <li> + <div> + <code><span class="identifier">ssl_stream</span></code> + does not use <code><span class="identifier">flat_stream</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Documentation + <ul> + <li> + <div> + <code><span class="identifier">ssl_stream</span></code> + and <code><span class="identifier">flat_stream</span></code> + marked as deprecated. + </div> + </li> + <li> + <div> + <code><span class="identifier">net</span><span class="special">::</span><span class="identifier">ssl</span><span class="special">::</span><span class="identifier">stream</span></code> is canonical in snippets + and examples. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">SSL</span><span class="special">/</span><span class="identifier">TLS</span> <span class="identifier">Shutdown</span> + <span class="identifier">Procedure</span></code> section. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Acknowledgements + <ul> + <li> + <div> + tyler92, Ruslan Zakirov, Orgad Shaneh, Alexander Kernozhitsky + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/charconv">Charconv</a>:</span> + <ul> + <li> + <div> + Fixed support for PPC64LE architecture. + </div> + </li> + <li> + <div> + Fixed support for platforms like Alpine linux that provide the <code><span class="special">&lt;</span><span class="identifier">quadmath</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span></code> header but not the compiled library. + </div> + </li> + <li> + <div> + Fixed first character pattern matching in <code><span class="identifier">from_chars</span></code> + for integer types. + </div> + </li> + <li> + <div> + Fixed overflow detection for integers with base greater than 10. + </div> + </li> + <li> + <div> + Added native support for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">float16_t</span></code> + and <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bfloat16_t</span></code> instead of using interchange + formats. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/cobalt">Cobalt</a>:</span> + <ul> + <li> + <div> + Added support for asio::cancel_after + </div> + </li> + <li> + <div> + Made <code><span class="identifier">asio</span><span class="special">::</span><span class="identifier">deferred</span></code> co_await-able, because + it's asio's default token + </div> + </li> + <li> + <div> + Added <code><span class="identifier">noop</span></code> utility + </div> + </li> + <li> + <div> + Added experimental support for stackful coroutines/fibers + </div> + </li> + <li> + <div> + Fixed movability of channel &amp; coroutine types + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/compat/">Compat</a>:</span> + <ul> + <li> + <div> + Added <code><span class="identifier">bind_front</span><span class="special">.</span><span class="identifier">hpp</span></code>, + <code><span class="identifier">bind_back</span><span class="special">.</span><span class="identifier">hpp</span></code>, <code><span class="identifier">invoke</span><span class="special">.</span><span class="identifier">hpp</span></code>, + <code><span class="identifier">mem_fn</span><span class="special">.</span><span class="identifier">hpp</span></code>, <code><span class="identifier">integer_sequence</span><span class="special">.</span><span class="identifier">hpp</span></code> + and <code><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span></code>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">function_ref</span><span class="special">.</span><span class="identifier">hpp</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/container/">Container</a>:</span> + <ul> + <li> + <div> + Fixed bugs/issues: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/285">GitHub + #285: <em>"devector&lt;&gt;::push_front asserts + after clear()"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/280">GitHub + #280: <em>"Several containers don't support non-movable + types when move assigning"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/279">GitHub + #279: <em>"small_vector cannot go back to use stack + space"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/277">GitHub + #277: <em>"Remove dep on boost::static_assert"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/275">GitHub + #275: <em>"Compilation fails if custom key comparison + is used"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/273">GitHub + #273: <em>"flat_map/vector crashes on appends (memory + corruption)"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/269">GitHub + #269: <em>"flat_multimap::emplace not sorting elements + under GCC"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/266">GitHub + #266: <em>"small_vector&lt;T&gt; is misaligned on + the stack in 32 bits"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/259">GitHub + #259: <em>"Global variables"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/245">GitHub + #245: <em>"flat_tree::insert ordered range doesn't + assert sorting"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/241">GitHub + #241: <em>"flat_map should support same interface + as std::map"</em></a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/core/">Core</a>:</span> + <ul> + <li> + <div> + Added a <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">pointer_in_range</span><span class="special">.</span><span class="identifier">hpp</span></code> header with a <code><span class="identifier">pointer_in_range</span></code> function template + to check if a pointer is within a given range. + </div> + </li> + <li> + <div> + Fixed <code><span class="identifier">type_name</span></code> for + abstract classes. (<a href="https://github.com/boostorg/core/issues/172">#172</a>) + </div> + </li> + <li> + <div> + Fixed <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">type_name</span><span class="special">.</span><span class="identifier">hpp</span></code> compilation error with MSVC + with disabled native <code><span class="keyword">wchar_t</span></code> + type. (<a href="https://github.com/boostorg/core/issues/173">#173</a>) + </div> + </li> + <li> + <div> + Added a workaround for an MSVC <a href="https://developercommunity.visualstudio.com/t/Compiler-bug:-Incorrect-C2247-and-C2248/10690025">bug</a> + causing <code><span class="identifier">empty_value</span></code> + compilation errors when it is used with a nested class. (<a href="https://github.com/boostorg/core/pull/175">PR#175</a>) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/crc/">CRC</a>:</span> + <ul> + <li> + <div> + C++03 is no longer supported; a C++11 compiler is required. (This + includes GCC 4.6 or later, and MSVC 10.0 (VS 2010) or later.) + </div> + </li> + <li> + <div> + Removed dependencies on Array, Config, Integer, and TypeTraits. The + library is now standalone. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/filesystem/">Filesystem</a>:</span> + <ul> + <li> + <div> + <code><span class="identifier">is_empty</span></code> operation + is now better protected against concurrent filesystem modifications. + </div> + </li> + <li> + <div> + On POSIX systems, <code><span class="identifier">is_empty</span></code> + now indicates error if invoked on a file other than a regular file + or a directory. + </div> + </li> + <li> + <div> + On Windows, fixed <code><span class="identifier">file_size</span></code> + and <code><span class="identifier">is_empty</span></code> operating + on symlinks rather than the files the symlinks refer to. (<a href="https://github.com/boostorg/filesystem/issues/313">#313</a>) + </div> + </li> + <li> + <div> + <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">refresh</span></code> no longer throws an exception + if the file referenced by the entry doesn't exist. This makes <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">status</span></code> and <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">symlink_status</span></code>, + as well as methods based on them, behave similarly to the equivalent + standalone operations. The fact that the file does not exist is still + indicated via the <code><span class="identifier">error_code</span></code> + returned by the corresponding <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">refresh</span></code> + overload, or can be seen by testing if the file type returned by + <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">status</span></code> or <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">symlink_status</span></code> + calls is <code><span class="identifier">file_type</span><span class="special">::</span><span class="identifier">file_not_found</span></code>. + (<a href="https://github.com/boostorg/filesystem/issues/314">#314</a>) + </div> + </li> + <li> + <div> + Fixed <code><span class="identifier">weakly_canonical</span></code> + testing path elements for existence relative to the current path + instead of the base path specified in the call, if the input path + was a relative path. + </div> + </li> + <li> + <div> + On Windows, fixed <code><span class="identifier">weakly_canonical</span></code> + producing incorrect result path when the input path started with + "..". (<a href="https://github.com/boostorg/filesystem/issues/311">#311</a>) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/format/">Format</a>:</span> + <ul> + <li> + <div> + C++03 is no longer supported; a C++11 compiler is required. (This + includes GCC 4.7 or later, and MSVC 12.0 (VS 2013) or later.) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/function/">Function</a>:</span> + <ul> + <li> + <div> + Removed dependency on Boost.TypeTraits. + </div> + </li> + <li> + <div> + Brought back the <code><span class="identifier">argN_type</span></code> + typedefs that were accidentally lost in 1.85. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/gil/">GIL</a>:</span> + <ul> + <li> + <div> + Added + <ul> + <li> + <div> + Added <code><span class="identifier">tell</span><span class="special">()</span></code> and <code><span class="identifier">error</span><span class="special">()</span></code> functions to <code><span class="identifier">istream_device</span></code> and <code><span class="identifier">ostream_device</span></code> classes (<a href="https://github.com/boostorg/gil/pull/747">PR#747</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Changed + <ul> + <li> + <div> + Don't ignore custom color converter in <code><span class="identifier">color_converted_view</span></code> + function (<a href="https://github.com/boostorg/gil/pull/726">PR#726</a>). + </div> + </li> + <li> + <div> + Added workaround for conflict with <code><span class="identifier">min</span><span class="special">()</span></code> and <code><span class="identifier">max</span><span class="special">()</span></code> macros on WinAPI (<a href="https://github.com/boostorg/gil/pull/745">PR#745</a>). + </div> + </li> + <li> + <div> + The use of <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">filesystem</span></code> + in GIL is now configurable in CMake via option <code><span class="identifier">BOOST_GIL_USE_BOOST_FILESYSTEM</span></code> + (<a href="https://github.com/boostorg/gil/pull/743">PR#743</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Fixed + <ul> + <li> + <div> + Fixed convolution in <code><span class="identifier">convolve_2d</span></code> + (<a href="https://github.com/boostorg/gil/pull/723">PR#723</a>) + </div> + </li> + <li> + <div> + Normalize Gaussian 2D kernel to avoid darkening (<a href="https://github.com/boostorg/gil/pull/725">PR#725</a>) + </div> + </li> + <li> + <div> + Wrong buffer size in path string conversion functions for + <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">wstring</span></code> is fixed, avoiding + buffer overflows when using I/O-related functions with <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">wstring</span></code> paths (<a href="https://github.com/boostorg/gil/pull/746">PR#746</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Acknowledgements + <ul> + <li> + <div> + Christoph Gringmuth, Christopher Kormanyos, nicolacandussi, + Dirk Stolle, Olzhas Zhumabek + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/graph/">Graph</a>:</span> + <ul> + <li> + <div> + <em>Major</em> update: C++14 is the + new minimum standard; this was partly dictated by dependencies (at + least to C++11) and partly by choice. If you require support for + an older standard, please contact the maintainer. + </div> + </li> + <li> + <div> + Remove direct dependency on Boost.Regex. + </div> + </li> + <li> + <div> + Fix several compilation errors caused by not explicitly including + common headers. + </div> + </li> + <li> + <div> + <code><span class="identifier">isomorphism</span></code>: Fix + docs, ignore <code><span class="identifier">vertex_max_invariant</span></code> + parameter in favour of cheaply calculating upper exclusive bound, + fix bug with Associative Property Map, improve space efficiency from + linear in the size of the maximum invariant to linear in the size + of g1. + </div> + </li> + <li> + <div> + <code><span class="identifier">boykov_kolmogorov_max_flow</span></code>: + Fix named parameter overload. + </div> + </li> + <li> + <div> + <code><span class="identifier">adj_list_edge_iterator</span></code>: + Fix maybe-uninitialized warnings. + </div> + </li> + <li> + <div> + <code><span class="identifier">hawick_circuits</span></code>: + Add a parameter to optionally limit the depth of the search, causing + a potentially suboptimal answer to be returned early. + </div> + </li> + <li> + <div> + <code><span class="identifier">disjoint_sets</span></code>: Improve + performance of <code><span class="identifier">link_sets</span></code> + by removing redundant lookup of set representatives. + </div> + </li> + <li> + <div> + <code><span class="identifier">maximum_adjacency_search</span></code>: + Refactor and more tests. + </div> + </li> + <li> + <div> + <code><span class="identifier">property</span></code>: Use <code><span class="identifier">BOOST_ATTRIBUTE_NO_UNIQUE_ADDRESS</span></code> + to remove wasted space. + </div> + </li> + <li> + <div> + <code><span class="identifier">labeled_graph</span></code>: Fix + <code><span class="identifier">remove_labeled_vertex</span></code> + so that it actually removes the label too. + </div> + </li> + <li> + <div> + <code><span class="identifier">r_c_shortest_paths</span></code>: + Fix bug that the single-solution variant did not always return the + shortest path. + </div> + </li> + <li> + <div> + <code><span class="identifier">read_graphviz</span></code>: Fix + stack overflow (oss-fuzz issue 66719) and non-keyword subgraph parsing. + </div> + </li> + <li> + <div> + Many miscellaneous improvements: broken links, typos, etc. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/interprocess/">Interprocess</a>:</span> + <ul> + <li> + <div> + Fixed bugs: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/191">GitHub + #191 (<em>"vectorstream: support file sizes larger + than INT_MAX "</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/198">GitHub + #198 (<em>"Minor fixes for documentation of offset_ptr"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/202">GitHub + #202 (<em>"Allow to map message_queue in anonymous + memory"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/207">GitHub + #207 (<em>"cmake: link system libraries"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/214">GitHub + #214 (<em>"Doc: Fix github links"</em>)</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/intrusive/">Intrusive</a>:</span> + <ul> + <li> + <div> + Fixed bug <a href="https://github.com/boostorg/intrusive/issues/86">GitHub + #86: <em>Invalid UTF-8 character in comment</em></a> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/json/">JSON</a>:</span> + <ul> + <li> + <div> + Support for GCC versions older than version 5.0 is deprecated and + <strong>will stop in Boost 1.88.0</strong>. + </div> + </li> + <li> + <div> + <code><span class="identifier">source_location</span></code> parameter + was added to throwing accessor functions. + </div> + </li> + <li> + <div> + Parse option to tolerate invalid UTF-16 surrogate pairs, and produce + <a href="https://simonsapin.github.io/wtf-8/">WTF-8</a>. + </div> + </li> + <li> + <div> + Added accessor functions that return <code><span class="identifier">system</span><span class="special">::</span><span class="identifier">result</span></code>. + </div> + </li> + <li> + <div> + Handle missing error case in direct parsing. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/lexical_cast/">LexicalCast</a>:</span> + <ul> + <li> + <div> + Fixed conversion of <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string_view</span></code> + and <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">basic_string_view</span></code> containing one + or more <code><span class="special">\</span><span class="number">0</span></code> + characters. Issue was introduced in 1.85.0. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/leaf/">leaf</a>:</span> + <ul> + <li> + <div> + More optimal verbose_diagnostic_info implementation. + </div> + </li> + <li> + <div> + Bug fixes. + </div> + </li> + <li> + <div> + Added [[nodiscard]] to class result&lt;&gt;. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/locale/">Locale</a>:</span> + <ul> + <li> + <div> + Add support for custom allocators in <code><span class="identifier">conv</span><span class="special">::</span><span class="identifier">utf_to_utf</span></code> + </div> + </li> + <li> + <div> + Don't build examples by default + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/log/">Log</a>:</span> + <ul> + <li> + <div> + Added a workaround for <code><span class="identifier">windres</span><span class="special">.</span><span class="identifier">exe</span></code> + issue, when it is used in CMake to compile event log resource files + on MinGW-w64. (<a href="https://github.com/boostorg/log/pull/231">PR#231</a>) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/math/">Math</a>:</span> + <ul> + <li> + <div> + Correct Bessel function results at infinity, see <a href="https://github.com/boostorg/math/issues/1143">1143</a>. + </div> + </li> + <li> + <div> + Improve Non Central T numerical stability, see <a href="https://github.com/scipy/scipy/issues/20693">scipy20693</a>. + </div> + </li> + <li> + <div> + Correct <code><span class="identifier">float_next</span></code>/<code><span class="identifier">float_prior</span></code> behaviour at infinity. + </div> + </li> + <li> + <div> + Prevent spurious underflow in non-central beta, see <a href="https://github.com/scipy/scipy/issues/20693">scipy20693</a>. + </div> + </li> + <li> + <div> + Add improvement to Heuman Lambda precision. + </div> + </li> + <li> + <div> + Improve Skew Normal root finding, see <a href="https://github.com/boostorg/math/issues/1120">1120</a>. + </div> + </li> + <li> + <div> + Lots of minor fixes and improved code coverage. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/multiprecision/">Multiprecision</a>:</span> + <ul> + <li> + <div> + Make sure <code><span class="identifier">eval_convert_to</span><span class="special">()</span></code> does not terminate with super large + numbers, see <a href="https://github.com/boostorg/multiprecision/pull/618">618</a>. + </div> + </li> + <li> + <div> + Fix <code><span class="identifier">sinc</span></code> implementation + to match behavior of Boost.Math. + </div> + </li> + <li> + <div> + Fix divide-by-zero in cpp_int modulus operations. + </div> + </li> + <li> + <div> + Fix underflow behavior consistency for integers greater than 128-bits, + see <a href="https://github.com/boostorg/multiprecision/issues/626">626</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/mysql/">MySQL</a>:</span> + <ul> + <li> + <div> + The long-deprecated functions <code><span class="identifier">query</span></code>, + <code><span class="identifier">start_query</span></code>, <code><span class="identifier">execute_statement</span></code> and <code><span class="identifier">start_statement_execution</span></code> (and + their async equivalents) have been removed. + </div> + </li> + <li> + <div> + Breaking changes to experimental APIs: + <ul> + <li> + <div> + The <code><span class="identifier">identifier</span></code> + class (client-side SQL formatting) has been removed. Use the + new format specifiers feature, instead. + </div> + </li> + <li> + <div> + The required interface for custom formatters has been changed + to accomodate the new format specifiers API. + </div> + </li> + <li> + <div> + <code><span class="identifier">any_connection</span><span class="special">::</span><span class="identifier">async_connect</span></code> + now requires that its <code><span class="identifier">connect_params</span></code> + argument be kept alive until the operation completes. The overload + taking a <code><span class="keyword">const</span> <span class="identifier">connect_params</span><span class="special">*</span></code> + has been removed. + </div> + </li> + <li> + <div> + <code><span class="identifier">character_set</span><span class="special">::</span><span class="identifier">name</span></code> + is now a <code><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span></code> + instead of a <code><span class="identifier">string_view</span></code>, + as MySQL character set names can't contain NULL characters. + </div> + </li> + <li> + <div> + <code><span class="identifier">any_connection</span></code> + internal buffer is now limited to 64MB. If you need to read + or write rows bigger than that, increase <code><span class="identifier">any_connection_params</span><span class="special">::</span><span class="identifier">max_buffer_size</span></code>. + <code><span class="identifier">connection</span></code> + and their helper typedefs are not limited. + </div> + </li> + <li> + <div> + Renamed <code><span class="identifier">any_connection_params</span><span class="special">::</span><span class="identifier">initial_read_buffer_size</span></code> + to <code><span class="identifier">initial_buffer_size</span></code>. + </div> + </li> + <li> + <div> + Renamed <code><span class="identifier">pool_params</span><span class="special">::</span><span class="identifier">initial_read_buffer_size</span></code> + to <code><span class="identifier">initial_buffer_size</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + New experimental API: <strong>pipelines</strong>. + Pipelines can increase efficiency by coalescing several requests + in a single network packet. Pipelines can be used to run text queries, + prepare, execute and close statements, reset session state and set + the connection's character set. + </div> + </li> + <li> + <div> + Client-side SQL formatting now supports ranges out of the box. Formatting + can be further customized using the new <code><span class="identifier">sequence</span></code> + function. Use cases like batch inserts and batch lookups can be significantly + simplified using this functionality. + </div> + </li> + <li> + <div> + Client-side SQL formatting now supports format specifiers which modify + how values are formatted. <code><span class="special">{:</span><span class="identifier">i</span><span class="special">}</span></code> + formats a string as a dynamic SQL identifiers, and <code><span class="special">{:</span><span class="identifier">r</span><span class="special">}</span></code> outputs a raw unescaped + </div> + </li> + <li> + <div> + The static interface (<code><span class="identifier">static_results</span></code> + and <code><span class="identifier">static_execution_state</span></code>) + now supports Boost.Pfr types using <code><span class="identifier">pfr_by_name</span></code> + and <code><span class="identifier">pfr_by_position</span></code>. + Added <code><span class="identifier">underlying_row_t</span></code> + to support such types. + </div> + </li> + <li> + <div> + <code><span class="identifier">date</span></code> and <code><span class="identifier">datetime</span></code> can now be constructed + from and converted to C++20 <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">chrono</span><span class="special">::</span><span class="identifier">local_time</span></code>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">any_connection_params</span><span class="special">::</span><span class="identifier">max_buffer_size</span></code>, + which allows to set a limit to the connection's internal buffer. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">is_fatal_error</span></code>, + which allows users can now distinguish between fatal (which require + closing and re-opening the connection) and non-fatal error codes. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">formattable_ref</span></code>, + a type-erased reference type that can refer to any type satisfying + the <code><span class="identifier">Formattable</span></code> concept. + </div> + </li> + <li> + <div> + Fixed an ODR violation under MSVC which could cause crashes in release + builds when using Boost.MySQL with other code also using <code><span class="identifier">asio</span><span class="special">::</span><span class="identifier">coroutine</span></code> in different translation + units. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/odeint/">Odeint</a>:</span> + <ul> + <li> + <div> + Added CMake Option <code><span class="identifier">BOOST_NUMERIC_ODEINT_NO_ADAPTORS</span></code> + to reduce dependencies, see <a href="https://github.com/boostorg/odeint/issues/82">82</a> + </div> + </li> + <li> + <div> + Fixed CMake detection of MPI. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/process/">Process</a>:</span> + <ul> + <li> + <div> + Moved the old boost.process to v1 subfolder and inline namespace. + deprecated process/*.hpp v1 headers + </div> + </li> + <li> + <div> + Turned v2 into a compile library. + </div> + </li> + <li> + <div> + Fixed usage on alpine linux / musl + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/stacktrace/">Stacktrace</a>:</span> + <ul> + <li> + <div> + <strong>Big new feature: stacktrace from arbitrary + exception for Windows</strong>. <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">stacktrace</span><span class="special">::</span><span class="identifier">from_current_exception</span><span class="special">()</span></code> now works on Windows platform. + Many thanks to <a href="https://github.com/huangqinjin">huangqinjin</a> + for the implementation <a href="https://github.com/boostorg/stacktrace/pull/159">PR#159</a> + Now on POSIX and Windows + the <code><span class="identifier">from_current_exception</span><span class="special">()</span> </code> function returns the stacktrace + of the current exception object as if the stacktrace was captured + at the point of throwing the exception. + </div> + </li> + <li> + <div> + Fixed inclusion of rarely used Windows SDK headers which can cause + conflict with other code using Windows SDK. Thanks to <a href="https://github.com/mabrarov">Marat + Abrarov</a> for fixing the issue <a href="https://github.com/boostorg/stacktrace/pull/157">PR#157</a>. + </div> + </li> + <li> + <div> + Build option <code><span class="identifier">boost</span><span class="special">.</span><span class="identifier">stacktrace</span><span class="special">.</span><span class="identifier">from_exception</span></code> + now properly works on MacOS. Thanks to <a href="https://github.com/pdimov">Peter + Dimov</a> for the fix <a href="https://github.com/boostorg/stacktrace/pull/166">PR#166</a>. + </div> + </li> + <li> + <div> + Fixed a typo in assert expression. Thanks to <a href="https://github.com/Ukilele">Kilian + Henneberger</a> for the bug report <a href="https://github.com/boostorg/stacktrace/issues/164">#164</a>. + </div> + </li> + <li> + <div> + Fixed shadowing warnings. Thanks to <a href="https://github.com/nigels-com">Nigel + Stewart</a> for the bug report <a href="https://github.com/boostorg/stacktrace/issues/141">#141</a>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">dladdr</span></code> minimal + support for AIX. Many thanks to Clément Chigot for the implementation + <a href="https://github.com/boostorg/stacktrace/pull/114">PR#114</a>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">Boost</span><span class="special">::</span><span class="identifier">stacktrace</span></code> CMake alias that refers + to the best supported implementation of Boost.Stacktrace on the platform. + Thanks to <a href="https://github.com/leha-bot">Alex</a> for + the feature <a href="https://github.com/boostorg/stacktrace/pull/167">PR#167</a>. + </div> + </li> + <li> + <div> + Significant improvement of CMake: multiple fixes, added many new + tests, improved CI. Many thanks to <a href="https://github.com/pdimov">Peter + Dimov</a> for all the improvements. + </div> + </li> + <li> + <div> + Fix addr2line work when the process is looked up via <code><span class="identifier">PATH</span></code>. Thanks to <a href="https://github.com/Schreischildkroete">Schreischildkroete</a> + for the bug report and to <a href="https://github.com/j-jr-richter">Jens + Richter</a> for fix <a href="https://github.com/boostorg/stacktrace/issues/72">#72</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/test/">Test</a>:</span> + <ul> + <li> + <div> + Fix <code><span class="special">-</span><span class="identifier">Wundef</span></code> + in configuration step. + </div> + </li> + <li> + <div> + Fix unreachable return compilation error on MSVC. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/unordered/">Unordered</a>:</span> + <ul> + <li> + <div> + Added container <code><span class="identifier">pmr</span></code> + aliases when header <code><span class="special">&lt;</span><span class="identifier">memory_resource</span><span class="special">&gt;</span></code> + is available. The alias <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unordered</span><span class="special">::</span><span class="identifier">pmr</span><span class="special">::[</span><span class="identifier">container</span><span class="special">]</span></code> refers to <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unordered</span><span class="special">::[</span><span class="identifier">container</span><span class="special">]</span></code> with a <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">pmr</span><span class="special">::</span><span class="identifier">polymorphic_allocator</span></code> + allocator type. + </div> + </li> + <li> + <div> + Equipped open-addressing and concurrent containers to internally + calculate and provide statistical metrics affected by the quality + of the hash function. This functionality is enabled by the global + macro <code><span class="identifier">BOOST_UNORDERED_ENABLE_STATS</span></code>. + </div> + </li> + <li> + <div> + Avalanching hash functions must now be marked via an <code><span class="identifier">is_avalanching</span></code> typedef with an + embedded <code><span class="identifier">value</span></code> constant + set to <code><span class="keyword">true</span></code> (typically, + defining <code><span class="identifier">is_avalanching</span></code> + as <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">true_type</span></code>). <code><span class="keyword">using</span> + <span class="identifier">is_avalanching</span> <span class="special">=</span> + <span class="keyword">void</span></code> is deprecated but allowed + for backwards compatibility. + </div> + </li> + <li> + <div> + Added Visual Studio Natvis framework custom visualizations for containers + and iterators. This works for all containers with an allocator using + raw pointers. In this release, containers and iterators are not supported + if their allocator uses fancy pointers. This may be addressed in + later releases. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/uuid/">UUID</a>:</span> + <ul> + <li> + <div> + <em>Major</em> update. + </div> + </li> + <li> + <div> + C++03 is no longer supported, a C++11 compiler is required. (This + includes GCC 4.8 or later, MSVC 14.0 (VS 2015) or later, and MinGW-w64.) + </div> + </li> + <li> + <div> + Decreased number of Boost dependencies from 39 (in total) to just + 5. + </div> + </li> + <li> + <div> + Updated to reflect the newer <a href="https://datatracker.ietf.org/doc/rfc9562/">RFC + 9562</a>. + </div> + </li> + <li> + <div> + Added generators for time-based UUIDs. + </div> + </li> + <li> + <div> + <em>Many</em> other improvements, see + the <a href="https://www.boost.org/libs/uuid/doc/html/uuid.html#changes">revision history</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/wave/">Wave</a>:</span> + <ul> + <li> + <div> + Replaced one use of vsprintf with the more secure vsnprintf + </div> + </li> + <li> + <div> + Fixed bug: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/wave/issues/197">#197</a>: Improper signed overflow handling (UB and a missing + division check) + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/winapi/">WinAPI</a>:</span> + <ul> + <li> + <div> + Added <code><span class="identifier">BOOST_USE_WINAPI_VERSION</span></code> + CMake option, which allows users to specify the Windows version for + Boost to target. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.updated_tools"> + <h3><span class="link">Updated Tools</span></h3> + <ul> + <li> + <div> + <span class="library"><a href="https://www.boost.org/tools/boostbook/">BoostBook</a>:</span> + <ul> + <li> + <div> + DTD updated: <code><span class="identifier">constructor</span></code>, + <code><span class="identifier">copy</span><span class="special">-</span><span class="identifier">assignment</span></code> and <code><span class="identifier">destructor</span></code> + elements are now allowed inside <code><span class="identifier">method</span><span class="special">-</span><span class="identifier">group</span></code> + elements. + </div> + </li> + <li> + <div> + Many fixes and improvements in Doxygen-generated documentation: + <ul> + <li> + <div> + Fixed duplicate equal signs in Doxygen-generated enum value + initializers. + </div> + </li> + <li> + <div> + Disabled alphabetical sorting of function arguments. The sorting + can be re-enabled by setting the new <code><span class="identifier">boost</span><span class="special">.</span><span class="identifier">sort</span><span class="special">.</span><span class="identifier">params</span></code> + XSL parameter to 1. + </div> + </li> + <li> + <div> + Added support for custom class member grouping. See Doxygen + tags <code><span class="error">@</span><span class="identifier">name</span></code> + and <code><span class="error">@</span><span class="special">{</span></code>/<code><span class="error">@</span><span class="special">}</span></code>. + </div> + </li> + <li> + <div> + Added support for Doxygen references to classes, methods, enums, + variables, etc. (see <code><span class="error">@</span><span class="identifier">ref</span></code> tag). + </div> + </li> + <li> + <div> + Added support for <code><span class="error">@</span><span class="identifier">remark</span></code> and <code><span class="error">@</span><span class="identifier">important</span></code> + tags. + </div> + </li> + <li> + <div> + Added support for <code><span class="error">@</span><span class="identifier">parblock</span></code> tags, which can + be used to place multiple paragraphs under a tag that expects + a single paragraph as an argument (e.g. <code><span class="error">@</span><span class="identifier">returns</span></code>). + </div> + </li> + <li> + <div> + Template parameter defaults that refer to implementation details + are now concealed, similar to function parameter defaults. + </div> + </li> + <li> + <div> + Improved presentation of unnamed enums. Instead of showing + a synthesized name such as <code><span class="error">@</span><span class="number">0</span></code>, the name is either omitted + or is <code><span class="special">[</span><span class="identifier">unnamed</span><span class="special">]</span></code>, if the name is necessary + to introduce a link to the enum documentation. + </div> + </li> + <li> + <div> + Changed the "See Also" (<code><span class="error">@</span><span class="identifier">sa</span></code>) blocks to be displayed + inline, similar to "Returns". + </div> + </li> + <li> + <div> + Fixed presentation of multiple exception specifications (<code><span class="error">@</span><span class="identifier">throws</span></code>). + </div> + </li> + <li> + <div> + Added support for free form description of throwing behavior. + If the exception type after the <code><span class="error">@</span><span class="identifier">throws</span></code> tag is "~" + then the exception type is omitted from the output, and the + following description is displayed directly in the "Throws" + section. + </div> + </li> + <li> + <div> + Removed redundant spaces in return types and template parameters. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/tools/build/">Build</a>:</span> + <ul> + <li> + <div> + Includes release of <a href="https://www.boost.org/tools/build/doc/html/#_version_5_2_1">B2 + version 5.2.1</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.compilers_tested"> + <h3><span class="link">Compilers Tested</span></h3> + <p> + Boost's primary test compilers are: + </p> + <ul> + <li> + <div> + Linux: + <ul> + <li> + <div> + 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 + </div> + </li> + <li> + <div> + Clang, C++11: 3.4, 11.0.0, 13.0.0, 14.0.0, 15.0.0 + </div> + </li> + <li> + <div> + 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 + </div> + </li> + <li> + <div> + 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 + </div> + </li> + <li> + <div> + Clang, C++20: 11.0.0, 12.0.0, 13.0.0, 14.0.0, 15.0.0 + </div> + </li> + <li> + <div> + GCC, C++03: 4.6.3, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++11: 4.7.3, 4.8.5, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++14: 5.4.0, 6.4.0, 7.3.0, 8.0.1, 9.1.0, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++17: 7.3.0, 8.0.1, 9.1.0, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++20: 8.0.1, 9.1.0, 10, 11, 12 + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + OS X: + <ul> + <li> + <div> + Apple Clang, C++03: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++11: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++14: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++17: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++20: 11.0.3 + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Windows: + <ul> + <li> + <div> + Visual C++: 10.0, 11.0, 12.0, 14.0, 14.1, 14.2, 14.3 + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.acknowledgements"> + <h3><span class="link">Acknowledgements</span></h3> + <p> + Marshall Clow and Glen Fernandes managed this release. + </p> + </div> +Version 1.85.0https://www.boost.org/users/history/version_1_85_0.htmlhttps://www.boost.org/users/history/version_1_85_0.htmlMon, 15 Apr 2024 17:38:25 +0000 + + + <div id="version_1_85_0.known_issues"> + <h3><span class="link">Known Issues</span></h3> + <p> + These are patches from library authors which were found too late to be fixed + in the release. + </p> + <ul> + <li> + <div> + Container + <ul> + <li> + <div> + flat_map/multimap containers can crash or return invalid results + in some compilers due to UB in the library, see <a href="https://github.com/boostorg/container/issues/273">#273</a>. + <a href="https://www.boost.org/patches/1_85_0/0001-container-fix-flat_map.patch">Patch</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> <div id="version_1_85_0.new_libraries"> <h3><span class="link">New Libraries</span></h3> <ul> @@ -2654,1043 +4232,6 @@ Marshall Clow and Glen Fernandes managed this release. </p> </div> -Version 1.83.0https://www.boost.org/users/history/version_1_83_0.htmlhttps://www.boost.org/users/history/version_1_83_0.htmlFri, 11 Aug 2023 16:23:02 +0000 - - - <div id="version_1_83_0.known_issues"> - <h3><span class="link">Known Issues</span></h3> - <p> - These are patches from library authors which were found too late to be fixed - in the release. - </p> - <ul> - <li> - <div> - JSON - <ul> - <li> - <div> - Compilation on Windows ARM platforms may fail for missing intrinsics, - see <a href="https://github.com/boostorg/json/issues/926">#926</a> and <a href="https://github.com/boostorg/json/issues/927">#927</a>. <a href="https://github.com/boostorg/json/commit/c4ce8509d015a0b75cfa9d36609b8409821a9c86.patch">Patch</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Unordered - <ul> - <li> - <div> - Fix erroneous copy assigment operator that would destroy non-existent - elements, see <a href="https://github.com/boostorg/unordered/issues/205">#205</a>. <a href="https://www.boost.org/patches/1_83_0/0001-unordered-fix-copy-assign.patch">Patch</a>. - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - <div id="version_1_83_0.new_libraries"> - <h3><span class="link">New Libraries</span></h3> - <ul> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/compat/">Compat</a>:</span> A repository of C++11 - implementations of standard components added in later C++ standards, from - Peter Dimov and contributors. - </div> - </li> - </ul> - </div> - <div id="version_1_83_0.updated_libraries"> - <h3><span class="link">Updated Libraries</span></h3> - <ul> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/any/">Any</a>:</span> - <ul> - <li> - <div> - New <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">anys</span><span class="special">::</span><span class="identifier">unique_any</span></code> C++11 class - an alternative - to <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">any</span></code> (or to <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">any</span></code>) - that does not require copy or move construction from the held type. - </div> - </li> - <li> - <div> - Ported documentation to Quickbook, Doxygen comments now used in code. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/atomic/">Atomic</a>:</span> - <ul> - <li> - <div> - Fixed compilation of <code><span class="identifier">atomic_ref</span></code> - for <code><span class="keyword">const</span></code>-qualified - types. Note that even <code><span class="keyword">const</span></code>-qualified - atomic objects must still reside in read-write memory. (<a href="https://github.com/boostorg/atomic/issues/62">#62</a>) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/chrono/">Chrono</a>:</span> - <ul> - <li> - <div> - Remove use of deprecated Boost.Ratio features. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/compat/">Compat</a>:</span> - <ul> - <li> - <div> - Added <code><span class="identifier">latch</span><span class="special">.</span><span class="identifier">hpp</span></code>, an implementation of <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">latch</span></code> (contributed by Christian - Mazakas.) - </div> - </li> - <li> - <div> - Added <code><span class="identifier">shared_lock</span><span class="special">.</span><span class="identifier">hpp</span></code>, - a (partial) implementation of <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">shared_lock</span></code> - (contributed by Christian Mazakas.) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/core/">Core</a>:</span> - <ul> - <li> - <div> - Added support for incomplete types to <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">core</span><span class="special">::</span><span class="identifier">type_name</span></code>. - </div> - </li> - <li> - <div> - Bit manipulation functions in <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">bit</span><span class="special">.</span><span class="identifier">hpp</span></code> - are now <code><span class="keyword">constexpr</span></code> on - recent MSVC versions (VS2019 update 5 and later.) - </div> - </li> - <li> - <div> - Added <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">core</span><span class="special">::</span><span class="identifier">byteswap</span></code> (an implementation of - <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">byteswap</span></code> from C++23) to <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">bit</span><span class="special">.</span><span class="identifier">hpp</span></code>. - </div> - </li> - <li> - <div> - Moved the yield primitives <code><span class="identifier">sp_thread_pause</span></code>, - <code><span class="identifier">sp_thread_yield</span></code>, - <code><span class="identifier">sp_thread_sleep</span></code> from - SmartPtr implementation details to <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">yield_primitives</span><span class="special">.</span><span class="identifier">hpp</span></code>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/dll/">DLL</a>:</span> - <ul> - <li> - <div> - Fixed tests failures on glibc 2.36+, thanks to <a href="https://github.com/sgn">Đoàn - Trần Công Danh</a> for the bugreport <a href="https://github.com/boostorg/dll/issues/58">#58</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/filesystem/">Filesystem</a>:</span> - <ul> - <li> - <div> - Added <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">refresh</span></code> - method that updates internal cached file statuses for the directory - entry identified by path. - </div> - </li> - <li> - <div> - <strong>v4:</strong> <code><span class="identifier">directory_entry</span></code> - constructors and modifiers that initialize or modify the path now - automatically call <code><span class="identifier">refresh</span></code>. - This may result in errors that were not indicated before and in - <strong>v3</strong>, if querying the filesystem for - file statuses fails (e.g. if the file does not exist). This new behavior - is similar to std::filesystem. - </div> - </li> - <li> - <div> - <strong>v4:</strong> <code><span class="identifier">directory_entry</span></code> - constructors and methods taking <code><span class="identifier">file_status</span></code> - parameters are removed. Users are recommended to remove these arguments - and rely on <code><span class="identifier">directory_entry</span></code> - calling <code><span class="identifier">refresh</span></code> internally. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">directory_entry</span></code> - member methods for checking the file type of the file, similar to - std::filesystem. - </div> - </li> - <li> - <div> - Added more methods for testing file status: <code><span class="identifier">is_block_file</span></code>, - <code><span class="identifier">is_character_file</span></code>, - <code><span class="identifier">is_fifo</span></code>, <code><span class="identifier">is_socket</span></code> and <code><span class="identifier">is_reparse_file</span></code>. - </div> - </li> - <li> - <div> - <code><span class="identifier">recursive_directory_iterator</span></code> - is now more likely to reuse information about the file type that - is obtained during filesystem iteration. This may improve performance. - (<a href="https://github.com/boostorg/filesystem/issues/288">#288</a>) - </div> - </li> - <li> - <div> - File streams defined in <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">filesystem</span><span class="special">/</span><span class="identifier">fstream</span><span class="special">.</span><span class="identifier">hpp</span></code> - are now movable, if the standard library file streams are. (<a href="https://github.com/boostorg/filesystem/issues/280">#280</a>) - </div> - </li> - <li> - <div> - Added a new header <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">filesystem</span><span class="special">/</span><span class="identifier">cstdio</span><span class="special">.</span><span class="identifier">hpp</span></code> - with a portable <code><span class="identifier">fopen</span></code> - overload that takes <code><span class="identifier">path</span></code> - as the first argument. This function is equivalent to <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">fopen</span></code>, except that on Windows it - uses the native wide character encoding for paths. - </div> - </li> - <li> - <div> - Generic <code><span class="identifier">path</span></code> comparison - operators are now more restricted to avoid potential ambiguities - when user's code contains a <code><span class="keyword">using</span> - <span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">filesystem</span><span class="special">;</span></code> directive. (<a href="https://github.com/boostorg/filesystem/issues/285">#285</a>) - </div> - </li> - <li> - <div> - Fixed potential overload resolution ambiguity in users' code, where - <code><span class="identifier">path</span></code> constructors - from iterators could interfere with function overloads taking a - <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">initializer_list</span></code> argument. (<a href="https://github.com/boostorg/filesystem/issues/287">#287</a>) - </div> - </li> - <li> - <div> - On Windows, added more workarounds for errors returned by various - filesystems when creating a directory iterator. (<a href="https://github.com/boostorg/filesystem/issues/284">#284</a>, - <a href="https://github.com/boostorg/filesystem/issues/286">#286</a>) - </div> - </li> - <li> - <div> - On Windows, relaxed access rights needed for querying file times. - (<a href="https://github.com/boostorg/filesystem/issues/290">#290</a>) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/flyweight/index.html">Flyweight</a>:</span> - <ul> - <li> - <div> - Added smart-pointer syntax to <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">flyweight</span></code> - (<code><span class="keyword">operator</span><span class="special">*</span></code> - and <code><span class="keyword">operator</span><span class="special">-&gt;</span></code> - dereferencing to the underlying value). - </div> - </li> - <li> - <div> - Fixed a situation where the mutex used by <a href="https://www.boost.org/libs/flyweight/doc/reference/locking.html#simple_locking_synopsis"><code><span class="identifier">simple_locking</span></code></a> was not - recursive (issue <a href="https://github.com/boostorg/flyweight/issues/12">#12</a>). - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/geometry/">Geometry</a>:</span> - <ul> - <li> - <div> - Improvements - <ul> - <li> - <div> - <a href="https://github.com/boostorg/geometry/pull/1140">PR#1140</a> Drop dependencies and replace boost with - std in several places - </div> - </li> - <li> - <div> - <a href="https://github.com/boostorg/geometry/pull/1154">PR#1154</a> Add missing headers so that all headers - compile independently complying with Boost policy - </div> - </li> - <li> - <div> - <a href="https://github.com/boostorg/geometry/pull/1157">PR#1157</a> Check const Ring concept in calculate_point_order - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Solved issues - <ul> - <li> - <div> - <a href="https://github.com/boostorg/geometry/issues/1100">#1100</a> Fix for union - </div> - </li> - <li> - <div> - <a href="https://github.com/boostorg/geometry/issues/1139">#1139</a> Fix for different geometry types - </div> - </li> - <li> - <div> - <a href="https://github.com/boostorg/geometry/issues/1158">#1158</a> Fix for convex hull - </div> - </li> - <li> - <div> - <a href="https://github.com/boostorg/geometry/issues/1161">#1161</a> Fix within algorithm for geometries having - a pole as a vertex - </div> - </li> - <li> - <div> - Various fixes of errors and warnings - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/iterator/">Iterator</a>:</span> - <ul> - <li> - <div> - Added <code><span class="identifier">is_iterator</span></code> - type trait that allows to test whether the type qualifies as an iterator - type. - </div> - </li> - <li> - <div> - <code><span class="identifier">filter_iterator</span></code> now - supports move-construction of the adopted iterator and the function - object. (<a href="https://github.com/boostorg/iterator/pull/79">PR#79</a>) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/json/">JSON</a>:</span> - <ul> - <li> - <div> - The library now only throws <code><span class="identifier">system_error</span></code>, - except for when allocation failed, in which case <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bad_alloc</span></code> - is thrown. - </div> - </li> - <li> - <div> - Serialization behavior can now be changed by <code><span class="identifier">serialize_options</span></code>. - </div> - </li> - <li> - <div> - Contextual conversions. - </div> - </li> - <li> - <div> - Parser option for more precise number parsing. - </div> - </li> - <li> - <div> - Support <code><span class="identifier">parse_options</span></code> - in stream <code><span class="keyword">operator</span><span class="special">&lt;&lt;</span></code>. - </div> - </li> - <li> - <div> - Parser option to allow <code><span class="identifier">Infinity</span></code> - and <code><span class="identifier">NaN</span></code> JSON literals. - </div> - </li> - <li> - <div> - Parser mode that only validates numbers rather than parsing them. - </div> - </li> - <li> - <div> - Numbers with exponent larger than <code><span class="identifier">INT_MAX</span></code> - are accepted by the parser and treated as infinity. - </div> - </li> - <li> - <div> - Fix <code><span class="identifier">object</span></code> member - functions that should provide strong guarantee. - </div> - </li> - <li> - <div> - Fix ambiguity of <code><span class="identifier">end</span></code> - call when <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">range</span><span class="special">.</span><span class="identifier">hpp</span></code> is included. - </div> - </li> - <li> - <div> - Fix ASan failures. - </div> - </li> - <li> - <div> - Fix error message for <code><span class="identifier">error</span><span class="special">::</span><span class="identifier">size_mismatch</span></code>. - </div> - </li> - <li> - <div> - Fix conversion into tuple with const elements. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/locale/index.html">Locale</a>:</span> - <ul> - <li> - <div> - Bitwise/binary operators (left/right shift, binary and/or/xor/not) - are no longer supported in message catalog files matching GNU gettext - behavior - </div> - </li> - <li> - <div> - Std backend on Windows uses the classic locale instead of the system - locale when the requested locale does not exist (now same as on other - OSs) - </div> - </li> - <li> - <div> - <code><span class="identifier">localization_backend_manager</span><span class="special">::</span><span class="identifier">get</span></code> - is deprecated, use the generator instead - </div> - </li> - <li> - <div> - New converter classes as alternative to <code><span class="identifier">to_utf</span></code>/<code><span class="identifier">from_utf</span></code>/<code><span class="identifier">between</span></code> - </div> - </li> - <li> - <div> - Fix UB on invalid index in format strings - </div> - </li> - <li> - <div> - Fix conversion of UTF to e.g. iso-2022-jp on Windows without ICU - </div> - </li> - <li> - <div> - Use <code><span class="keyword">long</span> <span class="keyword">long</span></code> - as the count parameter for pluralized translations - </div> - </li> - <li> - <div> - Fix movability and exception specification for some classes - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/log/">Log</a>:</span> - <ul> - <li> - <div> - Fixed a possible infinite loop in <code><span class="identifier">text_file_backend</span></code>, - when the size of a formatted log record exceeds the <code><span class="identifier">rotation_size</span></code> limit. (<a href="https://github.com/boostorg/log/issues/209">#209</a>) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/math/">Math</a>:</span> - <ul> - <li> - <div> - Added Numerical evaluation of Fourier transform of Daubechies scaling - functions <a href="https://github.com/boostorg/math/pull/921">921</a>. - </div> - </li> - <li> - <div> - Added logcdf function to statistical distributions <a href="https://github.com/boostorg/math/pull/946">946</a>. - </div> - </li> - <li> - <div> - Added support for C++23's <code><span class="special">&lt;</span><span class="identifier">stdfloat</span><span class="special">&gt;</span></code> - types <a href="https://github.com/boostorg/math/pull/978">978</a>. - </div> - </li> - <li> - <div> - Fixed various <code><span class="special">-</span><span class="identifier">Wmaybe</span><span class="special">-</span><span class="identifier">uninitialized</span></code> - warnings - </div> - </li> - <li> - <div> - Fixed <code><span class="identifier">round</span></code> and - <code><span class="identifier">trunc</span></code> functions for - non-representable numbers <a href="https://github.com/boostorg/math/pull/968">968</a>. - </div> - </li> - <li> - <div> - Fixed calculation of mode for F-distribution <a href="https://github.com/boostorg/math/pull/976">976</a>. - </div> - </li> - <li> - <div> - Fixed overflow in beta distribution <a href="https://github.com/boostorg/math/pull/977">977</a>. - </div> - </li> - <li> - <div> - Fixed overflow in hypergeometric distribution <a href="https://github.com/boostorg/math/pull/987">987</a>. - </div> - </li> - <li> - <div> - Fixed calculation of median absolute deviation with non-zero center - <a href="https://github.com/boostorg/math/pull/997">997</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/mp11/">Mp11</a>:</span> - <ul> - <li> - <div> - Added an offset/from parameter to <code><span class="identifier">mp_from_sequence</span></code>, - <code><span class="identifier">mp_iota</span></code>, <code><span class="identifier">mp_iota_c</span></code>. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">mp_value</span></code>, - <code><span class="identifier">mp_list_v</span></code>, <code><span class="identifier">mp_rename_v</span></code>, <code><span class="identifier">mp_is_value_list</span></code>. - </div> - </li> - <li> - <div> - Added value list support to the primitives in <code><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">mp11</span><span class="special">/</span><span class="identifier">list</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>. - </div> - </li> - <li> - <div> - Added value list support to <code><span class="identifier">mp_repeat</span></code>, - <code><span class="identifier">mp_fill</span></code>, <code><span class="identifier">mp_at</span></code>, <code><span class="identifier">mp_back</span></code>, - <code><span class="identifier">mp_take</span></code>, <code><span class="identifier">mp_pop_back</span></code>, <code><span class="identifier">mp_drop</span></code>, - <code><span class="identifier">mp_insert</span></code>, <code><span class="identifier">mp_erase</span></code>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/multi_index/">Multi-index Containers</a>:</span> - <ul> - <li> - <div> - Updated range <code><span class="identifier">insert</span></code> - in non-unique ordered indices to preserve insertion order of equivalent - elements (issue <a href="https://github.com/boostorg/multi_index/issues/68">#68</a>). - </div> - </li> - <li> - <div> - Serialization now uses <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span></code> - instead of <code><span class="keyword">unsigned</span> <span class="keyword">long</span></code> to save and load the size of - a <code><span class="identifier">multi_index_container</span></code> - (<code><span class="keyword">unsigned</span> <span class="keyword">long</span></code> - is smaller than <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span></code> - in LLP64 data models). <code><span class="identifier">multi_index_container</span></code> - serialization <a href="https://www.boost.org/libs/serialization/doc/tutorial.html#versioning">class - version</a> has been bumped from 3 to 4 to reflect this change. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/multiprecision/">Multiprecision</a>:</span> - <ul> - <li> - <div> - Fixed bug in rational adapter division <a href="https://github.com/boostorg/multiprecision/pull/542">542</a>. - </div> - </li> - <li> - <div> - Fixed handling of global precsion changes in multi-threaded environments - <a href="https://github.com/boostorg/multiprecision/pull/552">552</a>. - </div> - </li> - <li> - <div> - Fixed <code><span class="identifier">cpp_int</span><span class="special">::</span><span class="identifier">eval_convert_to</span></code> noexcept specification - <a href="https://github.com/boostorg/multiprecision/pull/555">555</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/mysql/">MySQL</a>:</span> - <ul> - <li> - <div> - <strong>Major update.</strong> - </div> - </li> - <li> - <div> - Stored procedures are now fully supported, including <code><span class="identifier">SELECT</span></code> statements producing data - and procedures with <code><span class="identifier">OUT</span></code> - parameters. - </div> - </li> - <li> - <div> - Added support for multi-queries, which allows running multiple semicolon-separated - statements with a single call. - </div> - </li> - <li> - <div> - A statically-typed interface has been added, which allows parsing - query results into user-provided types, using <a href="https://www.boost.org/libs/describe/">Boost.Describe</a> - structs and tuples. - </div> - </li> - <li> - <div> - Text queries and prepared statements can now be executed using the - new <code><span class="identifier">connection</span><span class="special">::</span><span class="identifier">execute</span></code> and <code><span class="identifier">connection</span><span class="special">::</span><span class="identifier">start_execution</span></code> - functions (and their async counterparts). These superseed <code><span class="identifier">connection</span><span class="special">::</span><span class="identifier">query</span></code>, <code><span class="identifier">connection</span><span class="special">::</span><span class="identifier">execute_statement</span></code>, - <code><span class="identifier">connection</span><span class="special">::</span><span class="identifier">start_query</span></code> and <code><span class="identifier">connection</span><span class="special">::</span><span class="identifier">start_statement_execution</span></code>. - The new functions allow access to new features, like the static interface. - </div> - </li> - <li> - <div> - A separate compilation mode has been added to help reduce build times. - Sources are included in <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">mysql</span><span class="special">/</span><span class="identifier">src</span><span class="special">.</span><span class="identifier">hpp</span></code>, - which must be included in exactly one translation unit. - </div> - </li> - <li> - <div> - Prepared statements can now be executed using an iterator pair to - specify parameters, using <code><span class="identifier">statement</span><span class="special">::</span><span class="identifier">bind</span></code> - and <code><span class="identifier">connection</span><span class="special">::</span><span class="identifier">execute</span></code>. This enables use cases - where the number and type of parameters is not known at compile-time. - </div> - </li> - <li> - <div> - Prepared statement execution now accepts parameters of type <code><span class="keyword">bool</span></code>, <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">optional</span></code> - and <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">optional</span></code>. - </div> - </li> - <li> - <div> - Added error codes and verified compatibility with MySQL v8.0.33 and - MariaDB v11.0. - </div> - </li> - <li> - <div> - Fixed potential problems with Windows' <code><span class="identifier">min</span><span class="special">()</span></code> and <code><span class="identifier">max</span><span class="special">()</span></code> macros. - </div> - </li> - <li> - <div> - All assertions now use <a href="https://www.boost.org/libs/assert/">Boost.Assert</a>. - </div> - </li> - <li> - <div> - All exceptions are now thrown via <a href="https://www.boost.org/libs/throw_exception/">Boost.ThrowException</a>. - </div> - </li> - <li> - <div> - Immediate completions are now correctly dispatched through the I/O - object executor. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/ratio/">Ratio</a>:</span> - <ul> - <li> - <div> - Change default <code><span class="identifier">BOOST_RATIO_VERSION</span></code> - to 2. - </div> - </li> - <li> - <div> - Support for <code><span class="identifier">BOOST_RATIO_EXTENSIONS</span></code> - is now deprecated and will eventually be removed when Boost.Ratio - is implemented in terms of the standard <code><span class="special">&lt;</span><span class="identifier">ratio</span><span class="special">&gt;</span></code> - header. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/test/">Test</a>:</span> - <ul> - <li> - <div> - Added addtional older platforms to CI system (e.g. GCC 4.6) - </div> - </li> - <li> - <div> - Fixed handling of <code><span class="identifier">uintptr_t</span></code> - to make sure it is portable on 32-bit systems <a href="https://github.com/boostorg/test/pull/353">353</a>. - </div> - </li> - <li> - <div> - Fixed warnings from <code><span class="special">-</span><span class="identifier">Wdeprecated</span><span class="special">-</span><span class="identifier">copy</span><span class="special">-</span><span class="identifier">dtor</span></code> and <code><span class="special">-</span><span class="identifier">Wdeprecated</span><span class="special">-</span><span class="identifier">copy</span><span class="special">-</span><span class="identifier">with</span><span class="special">-</span><span class="identifier">user</span><span class="special">-</span><span class="identifier">provided</span><span class="special">-</span><span class="identifier">dtor</span></code> <a href="https://github.com/boostorg/test/pull/375">375</a>. - </div> - </li> - <li> - <div> - Fixed handling of <code><span class="identifier">check_is_close</span></code> - for C++23 <code><span class="special">&lt;</span><span class="identifier">stdfloat</span><span class="special">&gt;</span></code> types <a href="https://github.com/boostorg/test/pull/382">382</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/timer/">Timer</a>:</span> - <ul> - <li> - <div> - Remove dependency on Boost.Chrono, Boost.System, and others. - </div> - </li> - <li> - <div> - Disable deprecated headers unless <code><span class="identifier">BOOST_TIMER_ENABLE_DEPRECATED</span></code> - is defined. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/unordered/">Unordered</a>:</span> - <ul> - <li> - <div> - <strong>Major update.</strong> - </div> - </li> - <li> - <div> - Added <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">concurrent_flat_map</span></code>, a fast, thread-safe - hashmap based on open addressing. - </div> - </li> - <li> - <div> - Sped up iteration of open-addressing containers. - </div> - </li> - <li> - <div> - In open-addressing containers, <code><span class="identifier">erase</span><span class="special">(</span><span class="identifier">iterator</span><span class="special">)</span></code>, which previously returned nothing, - now returns a proxy object convertible to an iterator to the next - element. This enables the typical <code><span class="identifier">it</span> - <span class="special">=</span> <span class="identifier">c</span><span class="special">.</span><span class="identifier">erase</span><span class="special">(</span><span class="identifier">it</span><span class="special">)</span></code> idiom without incurring any performance - penalty when the returned proxy is not used. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/url/">URL</a>:</span> - <ul> - <li> - <div> - <code><span class="identifier">parse_query</span></code> does - not recreate <code><span class="identifier">string_view</span></code>. - (<a href="https://github.com/boostorg/url/issues/757">#757</a>) - </div> - </li> - <li> - <div> - <code><span class="identifier">url_view</span></code>/<code><span class="identifier">string_view</span></code> constructor requires - non-<code><span class="identifier">url_view_base</span></code>. - (<a href="https://github.com/boostorg/url/issues/756">#756</a>) - </div> - </li> - <li> - <div> - <code><span class="identifier">IP</span><span class="special">-</span><span class="identifier">literal</span></code> can be <code><span class="identifier">IPv6addrz</span></code>. - (<a href="https://github.com/boostorg/url/issues/711">#711</a>) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/uuid/">UUID</a>:</span> - <ul> - <li> - <div> - Improved generated x86 code for AVX targets. Removed the use of - <code><span class="identifier">lddqu</span></code> instruction - on SSE3 targets, which penalize performance on Intel NetBurst CPUs - but is more optimal on Skylake and later CPUs. (<a href="https://github.com/boostorg/uuid/pull/138">PR#138</a>) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/variant2/">Variant2</a>:</span> - <ul> - <li> - <div> - Added <code><span class="identifier">uses_double_storage</span><span class="special">()</span></code>. - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - <div id="version_1_83_0.updated_tools"> - <h3><span class="link">Updated Tools</span></h3> - <ul> - <li> - <div> - <span class="library"><a href="https://www.boost.org/tools/build/">Build</a>:</span> - <ul> - <li> - <div> - Includes release of <a href="https://www.boost.org/tools/build/doc/html/#_version_4_10_1">B2 - version 4.10.1</a>. - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - <div id="version_1_83_0.compilers_tested"> - <h3><span class="link">Compilers Tested</span></h3> - <p> - Boost's primary test compilers are: - </p> - <ul> - <li> - <div> - Linux: - <ul> - <li> - <div> - 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 - </div> - </li> - <li> - <div> - Clang, C++11: 3.4, 11.0.0, 13.0.0, 14.0.0, 15.0.0 - </div> - </li> - <li> - <div> - 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 - </div> - </li> - <li> - <div> - 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 - </div> - </li> - <li> - <div> - Clang, C++20: 11.0.0, 12.0.0, 13.0.0, 14.0.0, 15.0.0 - </div> - </li> - <li> - <div> - GCC, C++03: 4.6.3, 11, 12 - </div> - </li> - <li> - <div> - GCC, C++11: 4.7.3, 4.8.5, 11, 12 - </div> - </li> - <li> - <div> - GCC, C++14: 5.4.0, 6.4.0, 7.3.0, 8.0.1, 9.1.0, 11, 12 - </div> - </li> - <li> - <div> - GCC, C++17: 7.3.0, 8.0.1, 9.1.0, 11, 12 - </div> - </li> - <li> - <div> - GCC, C++20: 8.0.1, 9.1.0, 10, 11, 12 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - OS X: - <ul> - <li> - <div> - Apple Clang, C++03: 11.0.3 - </div> - </li> - <li> - <div> - Apple Clang, C++11: 11.0.3 - </div> - </li> - <li> - <div> - Apple Clang, C++14: 11.0.3 - </div> - </li> - <li> - <div> - Apple Clang, C++17: 11.0.3 - </div> - </li> - <li> - <div> - Apple Clang, C++20: 11.0.3 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Windows: - <ul> - <li> - <div> - Visual C++: 10.0, 11.0, 12.0, 14.0, 14.1, 14.2, 14.3 - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - <div id="version_1_83_0.acknowledgements"> - <h3><span class="link">Acknowledgements</span></h3> - <p> - Marshall Clow and Glen Fernandes managed this release. - </p> - </div> diff --git a/generated/history-items.html b/generated/history-items.html index 2b488e23..424952d5 100644 --- a/generated/history-items.html +++ b/generated/history-items.html @@ -1,4 +1,21 @@ +

+ Version 1.86.0

+ +

August 14th, 2024 16:07 GMT

+ +
+ + New Libraries: Updated Libraries: + +
+ + +

Version 1.85.0

diff --git a/generated/history.rss b/generated/history.rss index 4614146d..8b41ac22 100644 --- a/generated/history.rss +++ b/generated/history.rss @@ -8,9 +8,1587 @@ en-us Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or https://www.boost.org/LICENSE_1_0.txt) -Version 1.85.0https://www.boost.org/users/history/version_1_85_0.htmlhttps://www.boost.org/users/history/version_1_85_0.htmlMon, 15 Apr 2024 17:38:25 +0000 +Version 1.86.0https://www.boost.org/users/history/version_1_86_0.htmlhttps://www.boost.org/users/history/version_1_86_0.htmlWed, 14 Aug 2024 16:07:17 +0000 + <div id="version_1_86_0.new_libraries"> + <h3><span class="link">New Libraries</span></h3> + <ul> + <li> + <div> + No new libraries. + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.updated_libraries"> + <h3><span class="link">Updated Libraries</span></h3> + <ul> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/atomic/">Atomic</a>:</span> + <ul> + <li> + <div> + Use <a href="https://man.openbsd.org/OpenBSD-6.2/futex.2"><code><span class="identifier">futex</span><span class="special">(</span><span class="number">2</span><span class="special">)</span></code></a> + system call on OpenBSD since recent OpenBSD versions have removed + support for <code><span class="identifier">syscall</span><span class="special">(</span><span class="number">2</span><span class="special">)</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/beast/">Beast</a>:</span> + <ul> + <li> + <div> + API Changes + <ul> + <li> + <div> + Added HTTP status code 418 <code><span class="identifier">I</span><span class="error">'</span><span class="identifier">m</span> + <span class="identifier">a</span> <span class="identifier">teapot</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Fixes + <ul> + <li> + <div> + Narrowing conversion in <code><span class="identifier">read_size_hint_db</span><span class="special">()</span></code>. + </div> + </li> + <li> + <div> + Overloads that are ambiguous when using default completion + tokens. + </div> + </li> + <li> + <div> + Misplaced static_assert in <code><span class="identifier">http</span><span class="special">::</span><span class="identifier">basic_fields</span></code> + move-assignment operator. + </div> + </li> + <li> + <div> + Underflow of <code><span class="identifier">bytes_transferred</span></code> + in WebSocket partial write operations. + </div> + </li> + <li> + <div> + <code><span class="identifier">websocket</span><span class="special">::</span><span class="identifier">stream</span><span class="special">::</span><span class="identifier">read_size_hint</span><span class="special">()</span></code> + does not exceed <code><span class="identifier">read_message_max</span></code>. + </div> + </li> + <li> + <div> + Various warnings in tests. + </div> + </li> + <li> + <div> + Error handling in SSL shutdown operations in examples. + </div> + </li> + <li> + <div> + Annotate fallthrough case in zlib. + </div> + </li> + <li> + <div> + Handling of expired timers in <code><span class="identifier">basic_stream</span><span class="special">::</span><span class="identifier">ops</span><span class="special">::</span><span class="identifier">transfer_op</span></code>. + </div> + </li> + <li> + <div> + Ambiguity in <code><span class="identifier">test</span><span class="special">::</span><span class="identifier">basic_stream</span></code> + constructor overloads. + </div> + </li> + <li> + <div> + Partial parsing of the final chunk in <code><span class="identifier">http</span><span class="special">::</span><span class="identifier">parser</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Improvements + <ul> + <li> + <div> + Graceful shutdown in <code><span class="identifier">server_flex_awaitable</span></code> + example. + </div> + </li> + <li> + <div> + Simplified awaitable examples. + </div> + </li> + <li> + <div> + Added fuzzing targets. + </div> + </li> + <li> + <div> + Remove superfluous uses of <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bind</span></code> + in some examples. + </div> + </li> + <li> + <div> + <code><span class="identifier">ssl_stream</span></code> + does not use <code><span class="identifier">flat_stream</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Documentation + <ul> + <li> + <div> + <code><span class="identifier">ssl_stream</span></code> + and <code><span class="identifier">flat_stream</span></code> + marked as deprecated. + </div> + </li> + <li> + <div> + <code><span class="identifier">net</span><span class="special">::</span><span class="identifier">ssl</span><span class="special">::</span><span class="identifier">stream</span></code> is canonical in snippets + and examples. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">SSL</span><span class="special">/</span><span class="identifier">TLS</span> <span class="identifier">Shutdown</span> + <span class="identifier">Procedure</span></code> section. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Acknowledgements + <ul> + <li> + <div> + tyler92, Ruslan Zakirov, Orgad Shaneh, Alexander Kernozhitsky + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/charconv">Charconv</a>:</span> + <ul> + <li> + <div> + Fixed support for PPC64LE architecture. + </div> + </li> + <li> + <div> + Fixed support for platforms like Alpine linux that provide the <code><span class="special">&lt;</span><span class="identifier">quadmath</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span></code> header but not the compiled library. + </div> + </li> + <li> + <div> + Fixed first character pattern matching in <code><span class="identifier">from_chars</span></code> + for integer types. + </div> + </li> + <li> + <div> + Fixed overflow detection for integers with base greater than 10. + </div> + </li> + <li> + <div> + Added native support for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">float16_t</span></code> + and <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bfloat16_t</span></code> instead of using interchange + formats. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/cobalt">Cobalt</a>:</span> + <ul> + <li> + <div> + Added support for asio::cancel_after + </div> + </li> + <li> + <div> + Made <code><span class="identifier">asio</span><span class="special">::</span><span class="identifier">deferred</span></code> co_await-able, because + it's asio's default token + </div> + </li> + <li> + <div> + Added <code><span class="identifier">noop</span></code> utility + </div> + </li> + <li> + <div> + Added experimental support for stackful coroutines/fibers + </div> + </li> + <li> + <div> + Fixed movability of channel &amp; coroutine types + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/compat/">Compat</a>:</span> + <ul> + <li> + <div> + Added <code><span class="identifier">bind_front</span><span class="special">.</span><span class="identifier">hpp</span></code>, + <code><span class="identifier">bind_back</span><span class="special">.</span><span class="identifier">hpp</span></code>, <code><span class="identifier">invoke</span><span class="special">.</span><span class="identifier">hpp</span></code>, + <code><span class="identifier">mem_fn</span><span class="special">.</span><span class="identifier">hpp</span></code>, <code><span class="identifier">integer_sequence</span><span class="special">.</span><span class="identifier">hpp</span></code> + and <code><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span></code>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">function_ref</span><span class="special">.</span><span class="identifier">hpp</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/container/">Container</a>:</span> + <ul> + <li> + <div> + Fixed bugs/issues: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/285">GitHub + #285: <em>"devector&lt;&gt;::push_front asserts + after clear()"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/280">GitHub + #280: <em>"Several containers don't support non-movable + types when move assigning"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/279">GitHub + #279: <em>"small_vector cannot go back to use stack + space"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/277">GitHub + #277: <em>"Remove dep on boost::static_assert"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/275">GitHub + #275: <em>"Compilation fails if custom key comparison + is used"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/273">GitHub + #273: <em>"flat_map/vector crashes on appends (memory + corruption)"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/269">GitHub + #269: <em>"flat_multimap::emplace not sorting elements + under GCC"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/266">GitHub + #266: <em>"small_vector&lt;T&gt; is misaligned on + the stack in 32 bits"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/259">GitHub + #259: <em>"Global variables"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/245">GitHub + #245: <em>"flat_tree::insert ordered range doesn't + assert sorting"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/241">GitHub + #241: <em>"flat_map should support same interface + as std::map"</em></a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/core/">Core</a>:</span> + <ul> + <li> + <div> + Added a <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">pointer_in_range</span><span class="special">.</span><span class="identifier">hpp</span></code> header with a <code><span class="identifier">pointer_in_range</span></code> function template + to check if a pointer is within a given range. + </div> + </li> + <li> + <div> + Fixed <code><span class="identifier">type_name</span></code> for + abstract classes. (<a href="https://github.com/boostorg/core/issues/172">#172</a>) + </div> + </li> + <li> + <div> + Fixed <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">type_name</span><span class="special">.</span><span class="identifier">hpp</span></code> compilation error with MSVC + with disabled native <code><span class="keyword">wchar_t</span></code> + type. (<a href="https://github.com/boostorg/core/issues/173">#173</a>) + </div> + </li> + <li> + <div> + Added a workaround for an MSVC <a href="https://developercommunity.visualstudio.com/t/Compiler-bug:-Incorrect-C2247-and-C2248/10690025">bug</a> + causing <code><span class="identifier">empty_value</span></code> + compilation errors when it is used with a nested class. (<a href="https://github.com/boostorg/core/pull/175">PR#175</a>) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/crc/">CRC</a>:</span> + <ul> + <li> + <div> + C++03 is no longer supported; a C++11 compiler is required. (This + includes GCC 4.6 or later, and MSVC 10.0 (VS 2010) or later.) + </div> + </li> + <li> + <div> + Removed dependencies on Array, Config, Integer, and TypeTraits. The + library is now standalone. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/filesystem/">Filesystem</a>:</span> + <ul> + <li> + <div> + <code><span class="identifier">is_empty</span></code> operation + is now better protected against concurrent filesystem modifications. + </div> + </li> + <li> + <div> + On POSIX systems, <code><span class="identifier">is_empty</span></code> + now indicates error if invoked on a file other than a regular file + or a directory. + </div> + </li> + <li> + <div> + On Windows, fixed <code><span class="identifier">file_size</span></code> + and <code><span class="identifier">is_empty</span></code> operating + on symlinks rather than the files the symlinks refer to. (<a href="https://github.com/boostorg/filesystem/issues/313">#313</a>) + </div> + </li> + <li> + <div> + <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">refresh</span></code> no longer throws an exception + if the file referenced by the entry doesn't exist. This makes <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">status</span></code> and <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">symlink_status</span></code>, + as well as methods based on them, behave similarly to the equivalent + standalone operations. The fact that the file does not exist is still + indicated via the <code><span class="identifier">error_code</span></code> + returned by the corresponding <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">refresh</span></code> + overload, or can be seen by testing if the file type returned by + <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">status</span></code> or <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">symlink_status</span></code> + calls is <code><span class="identifier">file_type</span><span class="special">::</span><span class="identifier">file_not_found</span></code>. + (<a href="https://github.com/boostorg/filesystem/issues/314">#314</a>) + </div> + </li> + <li> + <div> + Fixed <code><span class="identifier">weakly_canonical</span></code> + testing path elements for existence relative to the current path + instead of the base path specified in the call, if the input path + was a relative path. + </div> + </li> + <li> + <div> + On Windows, fixed <code><span class="identifier">weakly_canonical</span></code> + producing incorrect result path when the input path started with + "..". (<a href="https://github.com/boostorg/filesystem/issues/311">#311</a>) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/format/">Format</a>:</span> + <ul> + <li> + <div> + C++03 is no longer supported; a C++11 compiler is required. (This + includes GCC 4.7 or later, and MSVC 12.0 (VS 2013) or later.) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/function/">Function</a>:</span> + <ul> + <li> + <div> + Removed dependency on Boost.TypeTraits. + </div> + </li> + <li> + <div> + Brought back the <code><span class="identifier">argN_type</span></code> + typedefs that were accidentally lost in 1.85. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/gil/">GIL</a>:</span> + <ul> + <li> + <div> + Added + <ul> + <li> + <div> + Added <code><span class="identifier">tell</span><span class="special">()</span></code> and <code><span class="identifier">error</span><span class="special">()</span></code> functions to <code><span class="identifier">istream_device</span></code> and <code><span class="identifier">ostream_device</span></code> classes (<a href="https://github.com/boostorg/gil/pull/747">PR#747</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Changed + <ul> + <li> + <div> + Don't ignore custom color converter in <code><span class="identifier">color_converted_view</span></code> + function (<a href="https://github.com/boostorg/gil/pull/726">PR#726</a>). + </div> + </li> + <li> + <div> + Added workaround for conflict with <code><span class="identifier">min</span><span class="special">()</span></code> and <code><span class="identifier">max</span><span class="special">()</span></code> macros on WinAPI (<a href="https://github.com/boostorg/gil/pull/745">PR#745</a>). + </div> + </li> + <li> + <div> + The use of <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">filesystem</span></code> + in GIL is now configurable in CMake via option <code><span class="identifier">BOOST_GIL_USE_BOOST_FILESYSTEM</span></code> + (<a href="https://github.com/boostorg/gil/pull/743">PR#743</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Fixed + <ul> + <li> + <div> + Fixed convolution in <code><span class="identifier">convolve_2d</span></code> + (<a href="https://github.com/boostorg/gil/pull/723">PR#723</a>) + </div> + </li> + <li> + <div> + Normalize Gaussian 2D kernel to avoid darkening (<a href="https://github.com/boostorg/gil/pull/725">PR#725</a>) + </div> + </li> + <li> + <div> + Wrong buffer size in path string conversion functions for + <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">wstring</span></code> is fixed, avoiding + buffer overflows when using I/O-related functions with <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">wstring</span></code> paths (<a href="https://github.com/boostorg/gil/pull/746">PR#746</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Acknowledgements + <ul> + <li> + <div> + Christoph Gringmuth, Christopher Kormanyos, nicolacandussi, + Dirk Stolle, Olzhas Zhumabek + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/graph/">Graph</a>:</span> + <ul> + <li> + <div> + <em>Major</em> update: C++14 is the + new minimum standard; this was partly dictated by dependencies (at + least to C++11) and partly by choice. If you require support for + an older standard, please contact the maintainer. + </div> + </li> + <li> + <div> + Remove direct dependency on Boost.Regex. + </div> + </li> + <li> + <div> + Fix several compilation errors caused by not explicitly including + common headers. + </div> + </li> + <li> + <div> + <code><span class="identifier">isomorphism</span></code>: Fix + docs, ignore <code><span class="identifier">vertex_max_invariant</span></code> + parameter in favour of cheaply calculating upper exclusive bound, + fix bug with Associative Property Map, improve space efficiency from + linear in the size of the maximum invariant to linear in the size + of g1. + </div> + </li> + <li> + <div> + <code><span class="identifier">boykov_kolmogorov_max_flow</span></code>: + Fix named parameter overload. + </div> + </li> + <li> + <div> + <code><span class="identifier">adj_list_edge_iterator</span></code>: + Fix maybe-uninitialized warnings. + </div> + </li> + <li> + <div> + <code><span class="identifier">hawick_circuits</span></code>: + Add a parameter to optionally limit the depth of the search, causing + a potentially suboptimal answer to be returned early. + </div> + </li> + <li> + <div> + <code><span class="identifier">disjoint_sets</span></code>: Improve + performance of <code><span class="identifier">link_sets</span></code> + by removing redundant lookup of set representatives. + </div> + </li> + <li> + <div> + <code><span class="identifier">maximum_adjacency_search</span></code>: + Refactor and more tests. + </div> + </li> + <li> + <div> + <code><span class="identifier">property</span></code>: Use <code><span class="identifier">BOOST_ATTRIBUTE_NO_UNIQUE_ADDRESS</span></code> + to remove wasted space. + </div> + </li> + <li> + <div> + <code><span class="identifier">labeled_graph</span></code>: Fix + <code><span class="identifier">remove_labeled_vertex</span></code> + so that it actually removes the label too. + </div> + </li> + <li> + <div> + <code><span class="identifier">r_c_shortest_paths</span></code>: + Fix bug that the single-solution variant did not always return the + shortest path. + </div> + </li> + <li> + <div> + <code><span class="identifier">read_graphviz</span></code>: Fix + stack overflow (oss-fuzz issue 66719) and non-keyword subgraph parsing. + </div> + </li> + <li> + <div> + Many miscellaneous improvements: broken links, typos, etc. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/interprocess/">Interprocess</a>:</span> + <ul> + <li> + <div> + Fixed bugs: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/191">GitHub + #191 (<em>"vectorstream: support file sizes larger + than INT_MAX "</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/198">GitHub + #198 (<em>"Minor fixes for documentation of offset_ptr"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/202">GitHub + #202 (<em>"Allow to map message_queue in anonymous + memory"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/207">GitHub + #207 (<em>"cmake: link system libraries"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/214">GitHub + #214 (<em>"Doc: Fix github links"</em>)</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/intrusive/">Intrusive</a>:</span> + <ul> + <li> + <div> + Fixed bug <a href="https://github.com/boostorg/intrusive/issues/86">GitHub + #86: <em>Invalid UTF-8 character in comment</em></a> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/json/">JSON</a>:</span> + <ul> + <li> + <div> + Support for GCC versions older than version 5.0 is deprecated and + <strong>will stop in Boost 1.88.0</strong>. + </div> + </li> + <li> + <div> + <code><span class="identifier">source_location</span></code> parameter + was added to throwing accessor functions. + </div> + </li> + <li> + <div> + Parse option to tolerate invalid UTF-16 surrogate pairs, and produce + <a href="https://simonsapin.github.io/wtf-8/">WTF-8</a>. + </div> + </li> + <li> + <div> + Added accessor functions that return <code><span class="identifier">system</span><span class="special">::</span><span class="identifier">result</span></code>. + </div> + </li> + <li> + <div> + Handle missing error case in direct parsing. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/lexical_cast/">LexicalCast</a>:</span> + <ul> + <li> + <div> + Fixed conversion of <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string_view</span></code> + and <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">basic_string_view</span></code> containing one + or more <code><span class="special">\</span><span class="number">0</span></code> + characters. Issue was introduced in 1.85.0. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/leaf/">leaf</a>:</span> + <ul> + <li> + <div> + More optimal verbose_diagnostic_info implementation. + </div> + </li> + <li> + <div> + Bug fixes. + </div> + </li> + <li> + <div> + Added [[nodiscard]] to class result&lt;&gt;. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/locale/">Locale</a>:</span> + <ul> + <li> + <div> + Add support for custom allocators in <code><span class="identifier">conv</span><span class="special">::</span><span class="identifier">utf_to_utf</span></code> + </div> + </li> + <li> + <div> + Don't build examples by default + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/log/">Log</a>:</span> + <ul> + <li> + <div> + Added a workaround for <code><span class="identifier">windres</span><span class="special">.</span><span class="identifier">exe</span></code> + issue, when it is used in CMake to compile event log resource files + on MinGW-w64. (<a href="https://github.com/boostorg/log/pull/231">PR#231</a>) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/math/">Math</a>:</span> + <ul> + <li> + <div> + Correct Bessel function results at infinity, see <a href="https://github.com/boostorg/math/issues/1143">1143</a>. + </div> + </li> + <li> + <div> + Improve Non Central T numerical stability, see <a href="https://github.com/scipy/scipy/issues/20693">scipy20693</a>. + </div> + </li> + <li> + <div> + Correct <code><span class="identifier">float_next</span></code>/<code><span class="identifier">float_prior</span></code> behaviour at infinity. + </div> + </li> + <li> + <div> + Prevent spurious underflow in non-central beta, see <a href="https://github.com/scipy/scipy/issues/20693">scipy20693</a>. + </div> + </li> + <li> + <div> + Add improvement to Heuman Lambda precision. + </div> + </li> + <li> + <div> + Improve Skew Normal root finding, see <a href="https://github.com/boostorg/math/issues/1120">1120</a>. + </div> + </li> + <li> + <div> + Lots of minor fixes and improved code coverage. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/multiprecision/">Multiprecision</a>:</span> + <ul> + <li> + <div> + Make sure <code><span class="identifier">eval_convert_to</span><span class="special">()</span></code> does not terminate with super large + numbers, see <a href="https://github.com/boostorg/multiprecision/pull/618">618</a>. + </div> + </li> + <li> + <div> + Fix <code><span class="identifier">sinc</span></code> implementation + to match behavior of Boost.Math. + </div> + </li> + <li> + <div> + Fix divide-by-zero in cpp_int modulus operations. + </div> + </li> + <li> + <div> + Fix underflow behavior consistency for integers greater than 128-bits, + see <a href="https://github.com/boostorg/multiprecision/issues/626">626</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/mysql/">MySQL</a>:</span> + <ul> + <li> + <div> + The long-deprecated functions <code><span class="identifier">query</span></code>, + <code><span class="identifier">start_query</span></code>, <code><span class="identifier">execute_statement</span></code> and <code><span class="identifier">start_statement_execution</span></code> (and + their async equivalents) have been removed. + </div> + </li> + <li> + <div> + Breaking changes to experimental APIs: + <ul> + <li> + <div> + The <code><span class="identifier">identifier</span></code> + class (client-side SQL formatting) has been removed. Use the + new format specifiers feature, instead. + </div> + </li> + <li> + <div> + The required interface for custom formatters has been changed + to accomodate the new format specifiers API. + </div> + </li> + <li> + <div> + <code><span class="identifier">any_connection</span><span class="special">::</span><span class="identifier">async_connect</span></code> + now requires that its <code><span class="identifier">connect_params</span></code> + argument be kept alive until the operation completes. The overload + taking a <code><span class="keyword">const</span> <span class="identifier">connect_params</span><span class="special">*</span></code> + has been removed. + </div> + </li> + <li> + <div> + <code><span class="identifier">character_set</span><span class="special">::</span><span class="identifier">name</span></code> + is now a <code><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span></code> + instead of a <code><span class="identifier">string_view</span></code>, + as MySQL character set names can't contain NULL characters. + </div> + </li> + <li> + <div> + <code><span class="identifier">any_connection</span></code> + internal buffer is now limited to 64MB. If you need to read + or write rows bigger than that, increase <code><span class="identifier">any_connection_params</span><span class="special">::</span><span class="identifier">max_buffer_size</span></code>. + <code><span class="identifier">connection</span></code> + and their helper typedefs are not limited. + </div> + </li> + <li> + <div> + Renamed <code><span class="identifier">any_connection_params</span><span class="special">::</span><span class="identifier">initial_read_buffer_size</span></code> + to <code><span class="identifier">initial_buffer_size</span></code>. + </div> + </li> + <li> + <div> + Renamed <code><span class="identifier">pool_params</span><span class="special">::</span><span class="identifier">initial_read_buffer_size</span></code> + to <code><span class="identifier">initial_buffer_size</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + New experimental API: <strong>pipelines</strong>. + Pipelines can increase efficiency by coalescing several requests + in a single network packet. Pipelines can be used to run text queries, + prepare, execute and close statements, reset session state and set + the connection's character set. + </div> + </li> + <li> + <div> + Client-side SQL formatting now supports ranges out of the box. Formatting + can be further customized using the new <code><span class="identifier">sequence</span></code> + function. Use cases like batch inserts and batch lookups can be significantly + simplified using this functionality. + </div> + </li> + <li> + <div> + Client-side SQL formatting now supports format specifiers which modify + how values are formatted. <code><span class="special">{:</span><span class="identifier">i</span><span class="special">}</span></code> + formats a string as a dynamic SQL identifiers, and <code><span class="special">{:</span><span class="identifier">r</span><span class="special">}</span></code> outputs a raw unescaped + </div> + </li> + <li> + <div> + The static interface (<code><span class="identifier">static_results</span></code> + and <code><span class="identifier">static_execution_state</span></code>) + now supports Boost.Pfr types using <code><span class="identifier">pfr_by_name</span></code> + and <code><span class="identifier">pfr_by_position</span></code>. + Added <code><span class="identifier">underlying_row_t</span></code> + to support such types. + </div> + </li> + <li> + <div> + <code><span class="identifier">date</span></code> and <code><span class="identifier">datetime</span></code> can now be constructed + from and converted to C++20 <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">chrono</span><span class="special">::</span><span class="identifier">local_time</span></code>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">any_connection_params</span><span class="special">::</span><span class="identifier">max_buffer_size</span></code>, + which allows to set a limit to the connection's internal buffer. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">is_fatal_error</span></code>, + which allows users can now distinguish between fatal (which require + closing and re-opening the connection) and non-fatal error codes. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">formattable_ref</span></code>, + a type-erased reference type that can refer to any type satisfying + the <code><span class="identifier">Formattable</span></code> concept. + </div> + </li> + <li> + <div> + Fixed an ODR violation under MSVC which could cause crashes in release + builds when using Boost.MySQL with other code also using <code><span class="identifier">asio</span><span class="special">::</span><span class="identifier">coroutine</span></code> in different translation + units. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/odeint/">Odeint</a>:</span> + <ul> + <li> + <div> + Added CMake Option <code><span class="identifier">BOOST_NUMERIC_ODEINT_NO_ADAPTORS</span></code> + to reduce dependencies, see <a href="https://github.com/boostorg/odeint/issues/82">82</a> + </div> + </li> + <li> + <div> + Fixed CMake detection of MPI. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/process/">Process</a>:</span> + <ul> + <li> + <div> + Moved the old boost.process to v1 subfolder and inline namespace. + deprecated process/*.hpp v1 headers + </div> + </li> + <li> + <div> + Turned v2 into a compile library. + </div> + </li> + <li> + <div> + Fixed usage on alpine linux / musl + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/stacktrace/">Stacktrace</a>:</span> + <ul> + <li> + <div> + <strong>Big new feature: stacktrace from arbitrary + exception for Windows</strong>. <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">stacktrace</span><span class="special">::</span><span class="identifier">from_current_exception</span><span class="special">()</span></code> now works on Windows platform. + Many thanks to <a href="https://github.com/huangqinjin">huangqinjin</a> + for the implementation <a href="https://github.com/boostorg/stacktrace/pull/159">PR#159</a> + Now on POSIX and Windows + the <code><span class="identifier">from_current_exception</span><span class="special">()</span> </code> function returns the stacktrace + of the current exception object as if the stacktrace was captured + at the point of throwing the exception. + </div> + </li> + <li> + <div> + Fixed inclusion of rarely used Windows SDK headers which can cause + conflict with other code using Windows SDK. Thanks to <a href="https://github.com/mabrarov">Marat + Abrarov</a> for fixing the issue <a href="https://github.com/boostorg/stacktrace/pull/157">PR#157</a>. + </div> + </li> + <li> + <div> + Build option <code><span class="identifier">boost</span><span class="special">.</span><span class="identifier">stacktrace</span><span class="special">.</span><span class="identifier">from_exception</span></code> + now properly works on MacOS. Thanks to <a href="https://github.com/pdimov">Peter + Dimov</a> for the fix <a href="https://github.com/boostorg/stacktrace/pull/166">PR#166</a>. + </div> + </li> + <li> + <div> + Fixed a typo in assert expression. Thanks to <a href="https://github.com/Ukilele">Kilian + Henneberger</a> for the bug report <a href="https://github.com/boostorg/stacktrace/issues/164">#164</a>. + </div> + </li> + <li> + <div> + Fixed shadowing warnings. Thanks to <a href="https://github.com/nigels-com">Nigel + Stewart</a> for the bug report <a href="https://github.com/boostorg/stacktrace/issues/141">#141</a>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">dladdr</span></code> minimal + support for AIX. Many thanks to Clément Chigot for the implementation + <a href="https://github.com/boostorg/stacktrace/pull/114">PR#114</a>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">Boost</span><span class="special">::</span><span class="identifier">stacktrace</span></code> CMake alias that refers + to the best supported implementation of Boost.Stacktrace on the platform. + Thanks to <a href="https://github.com/leha-bot">Alex</a> for + the feature <a href="https://github.com/boostorg/stacktrace/pull/167">PR#167</a>. + </div> + </li> + <li> + <div> + Significant improvement of CMake: multiple fixes, added many new + tests, improved CI. Many thanks to <a href="https://github.com/pdimov">Peter + Dimov</a> for all the improvements. + </div> + </li> + <li> + <div> + Fix addr2line work when the process is looked up via <code><span class="identifier">PATH</span></code>. Thanks to <a href="https://github.com/Schreischildkroete">Schreischildkroete</a> + for the bug report and to <a href="https://github.com/j-jr-richter">Jens + Richter</a> for fix <a href="https://github.com/boostorg/stacktrace/issues/72">#72</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/test/">Test</a>:</span> + <ul> + <li> + <div> + Fix <code><span class="special">-</span><span class="identifier">Wundef</span></code> + in configuration step. + </div> + </li> + <li> + <div> + Fix unreachable return compilation error on MSVC. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/unordered/">Unordered</a>:</span> + <ul> + <li> + <div> + Added container <code><span class="identifier">pmr</span></code> + aliases when header <code><span class="special">&lt;</span><span class="identifier">memory_resource</span><span class="special">&gt;</span></code> + is available. The alias <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unordered</span><span class="special">::</span><span class="identifier">pmr</span><span class="special">::[</span><span class="identifier">container</span><span class="special">]</span></code> refers to <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unordered</span><span class="special">::[</span><span class="identifier">container</span><span class="special">]</span></code> with a <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">pmr</span><span class="special">::</span><span class="identifier">polymorphic_allocator</span></code> + allocator type. + </div> + </li> + <li> + <div> + Equipped open-addressing and concurrent containers to internally + calculate and provide statistical metrics affected by the quality + of the hash function. This functionality is enabled by the global + macro <code><span class="identifier">BOOST_UNORDERED_ENABLE_STATS</span></code>. + </div> + </li> + <li> + <div> + Avalanching hash functions must now be marked via an <code><span class="identifier">is_avalanching</span></code> typedef with an + embedded <code><span class="identifier">value</span></code> constant + set to <code><span class="keyword">true</span></code> (typically, + defining <code><span class="identifier">is_avalanching</span></code> + as <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">true_type</span></code>). <code><span class="keyword">using</span> + <span class="identifier">is_avalanching</span> <span class="special">=</span> + <span class="keyword">void</span></code> is deprecated but allowed + for backwards compatibility. + </div> + </li> + <li> + <div> + Added Visual Studio Natvis framework custom visualizations for containers + and iterators. This works for all containers with an allocator using + raw pointers. In this release, containers and iterators are not supported + if their allocator uses fancy pointers. This may be addressed in + later releases. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/uuid/">UUID</a>:</span> + <ul> + <li> + <div> + <em>Major</em> update. + </div> + </li> + <li> + <div> + C++03 is no longer supported, a C++11 compiler is required. (This + includes GCC 4.8 or later, MSVC 14.0 (VS 2015) or later, and MinGW-w64.) + </div> + </li> + <li> + <div> + Decreased number of Boost dependencies from 39 (in total) to just + 5. + </div> + </li> + <li> + <div> + Updated to reflect the newer <a href="https://datatracker.ietf.org/doc/rfc9562/">RFC + 9562</a>. + </div> + </li> + <li> + <div> + Added generators for time-based UUIDs. + </div> + </li> + <li> + <div> + <em>Many</em> other improvements, see + the <a href="https://www.boost.org/libs/uuid/doc/html/uuid.html#changes">revision history</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/wave/">Wave</a>:</span> + <ul> + <li> + <div> + Replaced one use of vsprintf with the more secure vsnprintf + </div> + </li> + <li> + <div> + Fixed bug: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/wave/issues/197">#197</a>: Improper signed overflow handling (UB and a missing + division check) + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/winapi/">WinAPI</a>:</span> + <ul> + <li> + <div> + Added <code><span class="identifier">BOOST_USE_WINAPI_VERSION</span></code> + CMake option, which allows users to specify the Windows version for + Boost to target. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.updated_tools"> + <h3><span class="link">Updated Tools</span></h3> + <ul> + <li> + <div> + <span class="library"><a href="https://www.boost.org/tools/boostbook/">BoostBook</a>:</span> + <ul> + <li> + <div> + DTD updated: <code><span class="identifier">constructor</span></code>, + <code><span class="identifier">copy</span><span class="special">-</span><span class="identifier">assignment</span></code> and <code><span class="identifier">destructor</span></code> + elements are now allowed inside <code><span class="identifier">method</span><span class="special">-</span><span class="identifier">group</span></code> + elements. + </div> + </li> + <li> + <div> + Many fixes and improvements in Doxygen-generated documentation: + <ul> + <li> + <div> + Fixed duplicate equal signs in Doxygen-generated enum value + initializers. + </div> + </li> + <li> + <div> + Disabled alphabetical sorting of function arguments. The sorting + can be re-enabled by setting the new <code><span class="identifier">boost</span><span class="special">.</span><span class="identifier">sort</span><span class="special">.</span><span class="identifier">params</span></code> + XSL parameter to 1. + </div> + </li> + <li> + <div> + Added support for custom class member grouping. See Doxygen + tags <code><span class="error">@</span><span class="identifier">name</span></code> + and <code><span class="error">@</span><span class="special">{</span></code>/<code><span class="error">@</span><span class="special">}</span></code>. + </div> + </li> + <li> + <div> + Added support for Doxygen references to classes, methods, enums, + variables, etc. (see <code><span class="error">@</span><span class="identifier">ref</span></code> tag). + </div> + </li> + <li> + <div> + Added support for <code><span class="error">@</span><span class="identifier">remark</span></code> and <code><span class="error">@</span><span class="identifier">important</span></code> + tags. + </div> + </li> + <li> + <div> + Added support for <code><span class="error">@</span><span class="identifier">parblock</span></code> tags, which can + be used to place multiple paragraphs under a tag that expects + a single paragraph as an argument (e.g. <code><span class="error">@</span><span class="identifier">returns</span></code>). + </div> + </li> + <li> + <div> + Template parameter defaults that refer to implementation details + are now concealed, similar to function parameter defaults. + </div> + </li> + <li> + <div> + Improved presentation of unnamed enums. Instead of showing + a synthesized name such as <code><span class="error">@</span><span class="number">0</span></code>, the name is either omitted + or is <code><span class="special">[</span><span class="identifier">unnamed</span><span class="special">]</span></code>, if the name is necessary + to introduce a link to the enum documentation. + </div> + </li> + <li> + <div> + Changed the "See Also" (<code><span class="error">@</span><span class="identifier">sa</span></code>) blocks to be displayed + inline, similar to "Returns". + </div> + </li> + <li> + <div> + Fixed presentation of multiple exception specifications (<code><span class="error">@</span><span class="identifier">throws</span></code>). + </div> + </li> + <li> + <div> + Added support for free form description of throwing behavior. + If the exception type after the <code><span class="error">@</span><span class="identifier">throws</span></code> tag is "~" + then the exception type is omitted from the output, and the + following description is displayed directly in the "Throws" + section. + </div> + </li> + <li> + <div> + Removed redundant spaces in return types and template parameters. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/tools/build/">Build</a>:</span> + <ul> + <li> + <div> + Includes release of <a href="https://www.boost.org/tools/build/doc/html/#_version_5_2_1">B2 + version 5.2.1</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.compilers_tested"> + <h3><span class="link">Compilers Tested</span></h3> + <p> + Boost's primary test compilers are: + </p> + <ul> + <li> + <div> + Linux: + <ul> + <li> + <div> + 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 + </div> + </li> + <li> + <div> + Clang, C++11: 3.4, 11.0.0, 13.0.0, 14.0.0, 15.0.0 + </div> + </li> + <li> + <div> + 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 + </div> + </li> + <li> + <div> + 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 + </div> + </li> + <li> + <div> + Clang, C++20: 11.0.0, 12.0.0, 13.0.0, 14.0.0, 15.0.0 + </div> + </li> + <li> + <div> + GCC, C++03: 4.6.3, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++11: 4.7.3, 4.8.5, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++14: 5.4.0, 6.4.0, 7.3.0, 8.0.1, 9.1.0, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++17: 7.3.0, 8.0.1, 9.1.0, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++20: 8.0.1, 9.1.0, 10, 11, 12 + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + OS X: + <ul> + <li> + <div> + Apple Clang, C++03: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++11: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++14: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++17: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++20: 11.0.3 + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Windows: + <ul> + <li> + <div> + Visual C++: 10.0, 11.0, 12.0, 14.0, 14.1, 14.2, 14.3 + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.acknowledgements"> + <h3><span class="link">Acknowledgements</span></h3> + <p> + Marshall Clow and Glen Fernandes managed this release. + </p> + </div> +Version 1.85.0https://www.boost.org/users/history/version_1_85_0.htmlhttps://www.boost.org/users/history/version_1_85_0.htmlMon, 15 Apr 2024 17:38:25 +0000 + + + <div id="version_1_85_0.known_issues"> + <h3><span class="link">Known Issues</span></h3> + <p> + These are patches from library authors which were found too late to be fixed + in the release. + </p> + <ul> + <li> + <div> + Container + <ul> + <li> + <div> + flat_map/multimap containers can crash or return invalid results + in some compilers due to UB in the library, see <a href="https://github.com/boostorg/container/issues/273">#273</a>. + <a href="https://www.boost.org/patches/1_85_0/0001-container-fix-flat_map.patch">Patch</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> <div id="version_1_85_0.new_libraries"> <h3><span class="link">New Libraries</span></h3> <ul> diff --git a/generated/home-items.html b/generated/home-items.html index b4453467..b45d0e4f 100644 --- a/generated/home-items.html +++ b/generated/home-items.html @@ -3,11 +3,7 @@

Current Release

-

Beta Release

-

More Downloads... (RSS)

@@ -18,6 +14,14 @@
    +
  • Version 1.86.0 + + New Libraries: Updated Libraries: + + August 14th, 2024 16:07 GMT
  • Version 1.85.0 December 13th, 2023 23:54 GMT
  • -
  • Version 1.83.0 - - New Libraries: Compat. Updated Libraries: Any, Atomic, Chrono, Compat, Core, - DLL, Filesystem, Flyweight, Geometry, Iterator, JSON, Locale, Log, Math, Mp11, - Multi-index Containers, Multiprecision, MySQL, Ratio, Test, Timer, Unordered, - URL, UUID, Variant2. Updated Tools: Build. - - August 11th, 2023 16:23 GMT
+ "news-date">December 13th, 2023 23:54 GMT

More News... (RSS)

diff --git a/generated/libraries.txt b/generated/libraries.txt index 9f0c077d..3a815e3c 100644 Binary files a/generated/libraries.txt and b/generated/libraries.txt differ diff --git a/generated/menu-doc.html b/generated/menu-doc.html index 74e514ed..6d8fed03 100644 --- a/generated/menu-doc.html +++ b/generated/menu-doc.html @@ -9,9 +9,12 @@ Libraries > -

- Version 1.81.0

- -

December 14th, 2022 17:44 GMT

- -
- - New Libraries: URL. Updated Libraries: Beast, ContainerHash, Core, Describe, - DLL, Filesystem, Fusion, Geometry, Histogram, Iterator, JSON, LexicalCast, - Locale, Nowide, Stacktrace, PFR, STLInterfaces, System, Unordered, Variant, - Variant2. - -
- - \ No newline at end of file diff --git a/generated/news.rss b/generated/news.rss index 5eb1993e..2871b8ce 100644 --- a/generated/news.rss +++ b/generated/news.rss @@ -8,9 +8,1587 @@ en-us Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or https://www.boost.org/LICENSE_1_0.txt) -Version 1.85.0https://www.boost.org/users/history/version_1_85_0.htmlhttps://www.boost.org/users/history/version_1_85_0.htmlMon, 15 Apr 2024 17:38:25 +0000 +Version 1.86.0https://www.boost.org/users/history/version_1_86_0.htmlhttps://www.boost.org/users/history/version_1_86_0.htmlWed, 14 Aug 2024 16:07:17 +0000 + <div id="version_1_86_0.new_libraries"> + <h3><span class="link">New Libraries</span></h3> + <ul> + <li> + <div> + No new libraries. + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.updated_libraries"> + <h3><span class="link">Updated Libraries</span></h3> + <ul> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/atomic/">Atomic</a>:</span> + <ul> + <li> + <div> + Use <a href="https://man.openbsd.org/OpenBSD-6.2/futex.2"><code><span class="identifier">futex</span><span class="special">(</span><span class="number">2</span><span class="special">)</span></code></a> + system call on OpenBSD since recent OpenBSD versions have removed + support for <code><span class="identifier">syscall</span><span class="special">(</span><span class="number">2</span><span class="special">)</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/beast/">Beast</a>:</span> + <ul> + <li> + <div> + API Changes + <ul> + <li> + <div> + Added HTTP status code 418 <code><span class="identifier">I</span><span class="error">'</span><span class="identifier">m</span> + <span class="identifier">a</span> <span class="identifier">teapot</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Fixes + <ul> + <li> + <div> + Narrowing conversion in <code><span class="identifier">read_size_hint_db</span><span class="special">()</span></code>. + </div> + </li> + <li> + <div> + Overloads that are ambiguous when using default completion + tokens. + </div> + </li> + <li> + <div> + Misplaced static_assert in <code><span class="identifier">http</span><span class="special">::</span><span class="identifier">basic_fields</span></code> + move-assignment operator. + </div> + </li> + <li> + <div> + Underflow of <code><span class="identifier">bytes_transferred</span></code> + in WebSocket partial write operations. + </div> + </li> + <li> + <div> + <code><span class="identifier">websocket</span><span class="special">::</span><span class="identifier">stream</span><span class="special">::</span><span class="identifier">read_size_hint</span><span class="special">()</span></code> + does not exceed <code><span class="identifier">read_message_max</span></code>. + </div> + </li> + <li> + <div> + Various warnings in tests. + </div> + </li> + <li> + <div> + Error handling in SSL shutdown operations in examples. + </div> + </li> + <li> + <div> + Annotate fallthrough case in zlib. + </div> + </li> + <li> + <div> + Handling of expired timers in <code><span class="identifier">basic_stream</span><span class="special">::</span><span class="identifier">ops</span><span class="special">::</span><span class="identifier">transfer_op</span></code>. + </div> + </li> + <li> + <div> + Ambiguity in <code><span class="identifier">test</span><span class="special">::</span><span class="identifier">basic_stream</span></code> + constructor overloads. + </div> + </li> + <li> + <div> + Partial parsing of the final chunk in <code><span class="identifier">http</span><span class="special">::</span><span class="identifier">parser</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Improvements + <ul> + <li> + <div> + Graceful shutdown in <code><span class="identifier">server_flex_awaitable</span></code> + example. + </div> + </li> + <li> + <div> + Simplified awaitable examples. + </div> + </li> + <li> + <div> + Added fuzzing targets. + </div> + </li> + <li> + <div> + Remove superfluous uses of <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bind</span></code> + in some examples. + </div> + </li> + <li> + <div> + <code><span class="identifier">ssl_stream</span></code> + does not use <code><span class="identifier">flat_stream</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Documentation + <ul> + <li> + <div> + <code><span class="identifier">ssl_stream</span></code> + and <code><span class="identifier">flat_stream</span></code> + marked as deprecated. + </div> + </li> + <li> + <div> + <code><span class="identifier">net</span><span class="special">::</span><span class="identifier">ssl</span><span class="special">::</span><span class="identifier">stream</span></code> is canonical in snippets + and examples. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">SSL</span><span class="special">/</span><span class="identifier">TLS</span> <span class="identifier">Shutdown</span> + <span class="identifier">Procedure</span></code> section. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Acknowledgements + <ul> + <li> + <div> + tyler92, Ruslan Zakirov, Orgad Shaneh, Alexander Kernozhitsky + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/charconv">Charconv</a>:</span> + <ul> + <li> + <div> + Fixed support for PPC64LE architecture. + </div> + </li> + <li> + <div> + Fixed support for platforms like Alpine linux that provide the <code><span class="special">&lt;</span><span class="identifier">quadmath</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span></code> header but not the compiled library. + </div> + </li> + <li> + <div> + Fixed first character pattern matching in <code><span class="identifier">from_chars</span></code> + for integer types. + </div> + </li> + <li> + <div> + Fixed overflow detection for integers with base greater than 10. + </div> + </li> + <li> + <div> + Added native support for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">float16_t</span></code> + and <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bfloat16_t</span></code> instead of using interchange + formats. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/cobalt">Cobalt</a>:</span> + <ul> + <li> + <div> + Added support for asio::cancel_after + </div> + </li> + <li> + <div> + Made <code><span class="identifier">asio</span><span class="special">::</span><span class="identifier">deferred</span></code> co_await-able, because + it's asio's default token + </div> + </li> + <li> + <div> + Added <code><span class="identifier">noop</span></code> utility + </div> + </li> + <li> + <div> + Added experimental support for stackful coroutines/fibers + </div> + </li> + <li> + <div> + Fixed movability of channel &amp; coroutine types + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/compat/">Compat</a>:</span> + <ul> + <li> + <div> + Added <code><span class="identifier">bind_front</span><span class="special">.</span><span class="identifier">hpp</span></code>, + <code><span class="identifier">bind_back</span><span class="special">.</span><span class="identifier">hpp</span></code>, <code><span class="identifier">invoke</span><span class="special">.</span><span class="identifier">hpp</span></code>, + <code><span class="identifier">mem_fn</span><span class="special">.</span><span class="identifier">hpp</span></code>, <code><span class="identifier">integer_sequence</span><span class="special">.</span><span class="identifier">hpp</span></code> + and <code><span class="identifier">type_traits</span><span class="special">.</span><span class="identifier">hpp</span></code>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">function_ref</span><span class="special">.</span><span class="identifier">hpp</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/container/">Container</a>:</span> + <ul> + <li> + <div> + Fixed bugs/issues: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/285">GitHub + #285: <em>"devector&lt;&gt;::push_front asserts + after clear()"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/280">GitHub + #280: <em>"Several containers don't support non-movable + types when move assigning"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/279">GitHub + #279: <em>"small_vector cannot go back to use stack + space"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/277">GitHub + #277: <em>"Remove dep on boost::static_assert"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/275">GitHub + #275: <em>"Compilation fails if custom key comparison + is used"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/273">GitHub + #273: <em>"flat_map/vector crashes on appends (memory + corruption)"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/269">GitHub + #269: <em>"flat_multimap::emplace not sorting elements + under GCC"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/266">GitHub + #266: <em>"small_vector&lt;T&gt; is misaligned on + the stack in 32 bits"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/259">GitHub + #259: <em>"Global variables"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/245">GitHub + #245: <em>"flat_tree::insert ordered range doesn't + assert sorting"</em></a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/container/issues/241">GitHub + #241: <em>"flat_map should support same interface + as std::map"</em></a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/core/">Core</a>:</span> + <ul> + <li> + <div> + Added a <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">pointer_in_range</span><span class="special">.</span><span class="identifier">hpp</span></code> header with a <code><span class="identifier">pointer_in_range</span></code> function template + to check if a pointer is within a given range. + </div> + </li> + <li> + <div> + Fixed <code><span class="identifier">type_name</span></code> for + abstract classes. (<a href="https://github.com/boostorg/core/issues/172">#172</a>) + </div> + </li> + <li> + <div> + Fixed <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">type_name</span><span class="special">.</span><span class="identifier">hpp</span></code> compilation error with MSVC + with disabled native <code><span class="keyword">wchar_t</span></code> + type. (<a href="https://github.com/boostorg/core/issues/173">#173</a>) + </div> + </li> + <li> + <div> + Added a workaround for an MSVC <a href="https://developercommunity.visualstudio.com/t/Compiler-bug:-Incorrect-C2247-and-C2248/10690025">bug</a> + causing <code><span class="identifier">empty_value</span></code> + compilation errors when it is used with a nested class. (<a href="https://github.com/boostorg/core/pull/175">PR#175</a>) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/crc/">CRC</a>:</span> + <ul> + <li> + <div> + C++03 is no longer supported; a C++11 compiler is required. (This + includes GCC 4.6 or later, and MSVC 10.0 (VS 2010) or later.) + </div> + </li> + <li> + <div> + Removed dependencies on Array, Config, Integer, and TypeTraits. The + library is now standalone. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/filesystem/">Filesystem</a>:</span> + <ul> + <li> + <div> + <code><span class="identifier">is_empty</span></code> operation + is now better protected against concurrent filesystem modifications. + </div> + </li> + <li> + <div> + On POSIX systems, <code><span class="identifier">is_empty</span></code> + now indicates error if invoked on a file other than a regular file + or a directory. + </div> + </li> + <li> + <div> + On Windows, fixed <code><span class="identifier">file_size</span></code> + and <code><span class="identifier">is_empty</span></code> operating + on symlinks rather than the files the symlinks refer to. (<a href="https://github.com/boostorg/filesystem/issues/313">#313</a>) + </div> + </li> + <li> + <div> + <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">refresh</span></code> no longer throws an exception + if the file referenced by the entry doesn't exist. This makes <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">status</span></code> and <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">symlink_status</span></code>, + as well as methods based on them, behave similarly to the equivalent + standalone operations. The fact that the file does not exist is still + indicated via the <code><span class="identifier">error_code</span></code> + returned by the corresponding <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">refresh</span></code> + overload, or can be seen by testing if the file type returned by + <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">status</span></code> or <code><span class="identifier">directory_entry</span><span class="special">::</span><span class="identifier">symlink_status</span></code> + calls is <code><span class="identifier">file_type</span><span class="special">::</span><span class="identifier">file_not_found</span></code>. + (<a href="https://github.com/boostorg/filesystem/issues/314">#314</a>) + </div> + </li> + <li> + <div> + Fixed <code><span class="identifier">weakly_canonical</span></code> + testing path elements for existence relative to the current path + instead of the base path specified in the call, if the input path + was a relative path. + </div> + </li> + <li> + <div> + On Windows, fixed <code><span class="identifier">weakly_canonical</span></code> + producing incorrect result path when the input path started with + "..". (<a href="https://github.com/boostorg/filesystem/issues/311">#311</a>) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/format/">Format</a>:</span> + <ul> + <li> + <div> + C++03 is no longer supported; a C++11 compiler is required. (This + includes GCC 4.7 or later, and MSVC 12.0 (VS 2013) or later.) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/function/">Function</a>:</span> + <ul> + <li> + <div> + Removed dependency on Boost.TypeTraits. + </div> + </li> + <li> + <div> + Brought back the <code><span class="identifier">argN_type</span></code> + typedefs that were accidentally lost in 1.85. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/gil/">GIL</a>:</span> + <ul> + <li> + <div> + Added + <ul> + <li> + <div> + Added <code><span class="identifier">tell</span><span class="special">()</span></code> and <code><span class="identifier">error</span><span class="special">()</span></code> functions to <code><span class="identifier">istream_device</span></code> and <code><span class="identifier">ostream_device</span></code> classes (<a href="https://github.com/boostorg/gil/pull/747">PR#747</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Changed + <ul> + <li> + <div> + Don't ignore custom color converter in <code><span class="identifier">color_converted_view</span></code> + function (<a href="https://github.com/boostorg/gil/pull/726">PR#726</a>). + </div> + </li> + <li> + <div> + Added workaround for conflict with <code><span class="identifier">min</span><span class="special">()</span></code> and <code><span class="identifier">max</span><span class="special">()</span></code> macros on WinAPI (<a href="https://github.com/boostorg/gil/pull/745">PR#745</a>). + </div> + </li> + <li> + <div> + The use of <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">filesystem</span></code> + in GIL is now configurable in CMake via option <code><span class="identifier">BOOST_GIL_USE_BOOST_FILESYSTEM</span></code> + (<a href="https://github.com/boostorg/gil/pull/743">PR#743</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Fixed + <ul> + <li> + <div> + Fixed convolution in <code><span class="identifier">convolve_2d</span></code> + (<a href="https://github.com/boostorg/gil/pull/723">PR#723</a>) + </div> + </li> + <li> + <div> + Normalize Gaussian 2D kernel to avoid darkening (<a href="https://github.com/boostorg/gil/pull/725">PR#725</a>) + </div> + </li> + <li> + <div> + Wrong buffer size in path string conversion functions for + <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">wstring</span></code> is fixed, avoiding + buffer overflows when using I/O-related functions with <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">wstring</span></code> paths (<a href="https://github.com/boostorg/gil/pull/746">PR#746</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Acknowledgements + <ul> + <li> + <div> + Christoph Gringmuth, Christopher Kormanyos, nicolacandussi, + Dirk Stolle, Olzhas Zhumabek + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/graph/">Graph</a>:</span> + <ul> + <li> + <div> + <em>Major</em> update: C++14 is the + new minimum standard; this was partly dictated by dependencies (at + least to C++11) and partly by choice. If you require support for + an older standard, please contact the maintainer. + </div> + </li> + <li> + <div> + Remove direct dependency on Boost.Regex. + </div> + </li> + <li> + <div> + Fix several compilation errors caused by not explicitly including + common headers. + </div> + </li> + <li> + <div> + <code><span class="identifier">isomorphism</span></code>: Fix + docs, ignore <code><span class="identifier">vertex_max_invariant</span></code> + parameter in favour of cheaply calculating upper exclusive bound, + fix bug with Associative Property Map, improve space efficiency from + linear in the size of the maximum invariant to linear in the size + of g1. + </div> + </li> + <li> + <div> + <code><span class="identifier">boykov_kolmogorov_max_flow</span></code>: + Fix named parameter overload. + </div> + </li> + <li> + <div> + <code><span class="identifier">adj_list_edge_iterator</span></code>: + Fix maybe-uninitialized warnings. + </div> + </li> + <li> + <div> + <code><span class="identifier">hawick_circuits</span></code>: + Add a parameter to optionally limit the depth of the search, causing + a potentially suboptimal answer to be returned early. + </div> + </li> + <li> + <div> + <code><span class="identifier">disjoint_sets</span></code>: Improve + performance of <code><span class="identifier">link_sets</span></code> + by removing redundant lookup of set representatives. + </div> + </li> + <li> + <div> + <code><span class="identifier">maximum_adjacency_search</span></code>: + Refactor and more tests. + </div> + </li> + <li> + <div> + <code><span class="identifier">property</span></code>: Use <code><span class="identifier">BOOST_ATTRIBUTE_NO_UNIQUE_ADDRESS</span></code> + to remove wasted space. + </div> + </li> + <li> + <div> + <code><span class="identifier">labeled_graph</span></code>: Fix + <code><span class="identifier">remove_labeled_vertex</span></code> + so that it actually removes the label too. + </div> + </li> + <li> + <div> + <code><span class="identifier">r_c_shortest_paths</span></code>: + Fix bug that the single-solution variant did not always return the + shortest path. + </div> + </li> + <li> + <div> + <code><span class="identifier">read_graphviz</span></code>: Fix + stack overflow (oss-fuzz issue 66719) and non-keyword subgraph parsing. + </div> + </li> + <li> + <div> + Many miscellaneous improvements: broken links, typos, etc. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/interprocess/">Interprocess</a>:</span> + <ul> + <li> + <div> + Fixed bugs: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/191">GitHub + #191 (<em>"vectorstream: support file sizes larger + than INT_MAX "</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/198">GitHub + #198 (<em>"Minor fixes for documentation of offset_ptr"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/202">GitHub + #202 (<em>"Allow to map message_queue in anonymous + memory"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/207">GitHub + #207 (<em>"cmake: link system libraries"</em>)</a>. + </div> + </li> + <li> + <div> + <a href="https://github.com/boostorg/interprocess/pull/214">GitHub + #214 (<em>"Doc: Fix github links"</em>)</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/intrusive/">Intrusive</a>:</span> + <ul> + <li> + <div> + Fixed bug <a href="https://github.com/boostorg/intrusive/issues/86">GitHub + #86: <em>Invalid UTF-8 character in comment</em></a> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/json/">JSON</a>:</span> + <ul> + <li> + <div> + Support for GCC versions older than version 5.0 is deprecated and + <strong>will stop in Boost 1.88.0</strong>. + </div> + </li> + <li> + <div> + <code><span class="identifier">source_location</span></code> parameter + was added to throwing accessor functions. + </div> + </li> + <li> + <div> + Parse option to tolerate invalid UTF-16 surrogate pairs, and produce + <a href="https://simonsapin.github.io/wtf-8/">WTF-8</a>. + </div> + </li> + <li> + <div> + Added accessor functions that return <code><span class="identifier">system</span><span class="special">::</span><span class="identifier">result</span></code>. + </div> + </li> + <li> + <div> + Handle missing error case in direct parsing. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/lexical_cast/">LexicalCast</a>:</span> + <ul> + <li> + <div> + Fixed conversion of <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">basic_string_view</span></code> + and <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">basic_string_view</span></code> containing one + or more <code><span class="special">\</span><span class="number">0</span></code> + characters. Issue was introduced in 1.85.0. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/leaf/">leaf</a>:</span> + <ul> + <li> + <div> + More optimal verbose_diagnostic_info implementation. + </div> + </li> + <li> + <div> + Bug fixes. + </div> + </li> + <li> + <div> + Added [[nodiscard]] to class result&lt;&gt;. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/locale/">Locale</a>:</span> + <ul> + <li> + <div> + Add support for custom allocators in <code><span class="identifier">conv</span><span class="special">::</span><span class="identifier">utf_to_utf</span></code> + </div> + </li> + <li> + <div> + Don't build examples by default + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/log/">Log</a>:</span> + <ul> + <li> + <div> + Added a workaround for <code><span class="identifier">windres</span><span class="special">.</span><span class="identifier">exe</span></code> + issue, when it is used in CMake to compile event log resource files + on MinGW-w64. (<a href="https://github.com/boostorg/log/pull/231">PR#231</a>) + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/math/">Math</a>:</span> + <ul> + <li> + <div> + Correct Bessel function results at infinity, see <a href="https://github.com/boostorg/math/issues/1143">1143</a>. + </div> + </li> + <li> + <div> + Improve Non Central T numerical stability, see <a href="https://github.com/scipy/scipy/issues/20693">scipy20693</a>. + </div> + </li> + <li> + <div> + Correct <code><span class="identifier">float_next</span></code>/<code><span class="identifier">float_prior</span></code> behaviour at infinity. + </div> + </li> + <li> + <div> + Prevent spurious underflow in non-central beta, see <a href="https://github.com/scipy/scipy/issues/20693">scipy20693</a>. + </div> + </li> + <li> + <div> + Add improvement to Heuman Lambda precision. + </div> + </li> + <li> + <div> + Improve Skew Normal root finding, see <a href="https://github.com/boostorg/math/issues/1120">1120</a>. + </div> + </li> + <li> + <div> + Lots of minor fixes and improved code coverage. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/multiprecision/">Multiprecision</a>:</span> + <ul> + <li> + <div> + Make sure <code><span class="identifier">eval_convert_to</span><span class="special">()</span></code> does not terminate with super large + numbers, see <a href="https://github.com/boostorg/multiprecision/pull/618">618</a>. + </div> + </li> + <li> + <div> + Fix <code><span class="identifier">sinc</span></code> implementation + to match behavior of Boost.Math. + </div> + </li> + <li> + <div> + Fix divide-by-zero in cpp_int modulus operations. + </div> + </li> + <li> + <div> + Fix underflow behavior consistency for integers greater than 128-bits, + see <a href="https://github.com/boostorg/multiprecision/issues/626">626</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/mysql/">MySQL</a>:</span> + <ul> + <li> + <div> + The long-deprecated functions <code><span class="identifier">query</span></code>, + <code><span class="identifier">start_query</span></code>, <code><span class="identifier">execute_statement</span></code> and <code><span class="identifier">start_statement_execution</span></code> (and + their async equivalents) have been removed. + </div> + </li> + <li> + <div> + Breaking changes to experimental APIs: + <ul> + <li> + <div> + The <code><span class="identifier">identifier</span></code> + class (client-side SQL formatting) has been removed. Use the + new format specifiers feature, instead. + </div> + </li> + <li> + <div> + The required interface for custom formatters has been changed + to accomodate the new format specifiers API. + </div> + </li> + <li> + <div> + <code><span class="identifier">any_connection</span><span class="special">::</span><span class="identifier">async_connect</span></code> + now requires that its <code><span class="identifier">connect_params</span></code> + argument be kept alive until the operation completes. The overload + taking a <code><span class="keyword">const</span> <span class="identifier">connect_params</span><span class="special">*</span></code> + has been removed. + </div> + </li> + <li> + <div> + <code><span class="identifier">character_set</span><span class="special">::</span><span class="identifier">name</span></code> + is now a <code><span class="keyword">const</span> <span class="keyword">char</span><span class="special">*</span></code> + instead of a <code><span class="identifier">string_view</span></code>, + as MySQL character set names can't contain NULL characters. + </div> + </li> + <li> + <div> + <code><span class="identifier">any_connection</span></code> + internal buffer is now limited to 64MB. If you need to read + or write rows bigger than that, increase <code><span class="identifier">any_connection_params</span><span class="special">::</span><span class="identifier">max_buffer_size</span></code>. + <code><span class="identifier">connection</span></code> + and their helper typedefs are not limited. + </div> + </li> + <li> + <div> + Renamed <code><span class="identifier">any_connection_params</span><span class="special">::</span><span class="identifier">initial_read_buffer_size</span></code> + to <code><span class="identifier">initial_buffer_size</span></code>. + </div> + </li> + <li> + <div> + Renamed <code><span class="identifier">pool_params</span><span class="special">::</span><span class="identifier">initial_read_buffer_size</span></code> + to <code><span class="identifier">initial_buffer_size</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + New experimental API: <strong>pipelines</strong>. + Pipelines can increase efficiency by coalescing several requests + in a single network packet. Pipelines can be used to run text queries, + prepare, execute and close statements, reset session state and set + the connection's character set. + </div> + </li> + <li> + <div> + Client-side SQL formatting now supports ranges out of the box. Formatting + can be further customized using the new <code><span class="identifier">sequence</span></code> + function. Use cases like batch inserts and batch lookups can be significantly + simplified using this functionality. + </div> + </li> + <li> + <div> + Client-side SQL formatting now supports format specifiers which modify + how values are formatted. <code><span class="special">{:</span><span class="identifier">i</span><span class="special">}</span></code> + formats a string as a dynamic SQL identifiers, and <code><span class="special">{:</span><span class="identifier">r</span><span class="special">}</span></code> outputs a raw unescaped + </div> + </li> + <li> + <div> + The static interface (<code><span class="identifier">static_results</span></code> + and <code><span class="identifier">static_execution_state</span></code>) + now supports Boost.Pfr types using <code><span class="identifier">pfr_by_name</span></code> + and <code><span class="identifier">pfr_by_position</span></code>. + Added <code><span class="identifier">underlying_row_t</span></code> + to support such types. + </div> + </li> + <li> + <div> + <code><span class="identifier">date</span></code> and <code><span class="identifier">datetime</span></code> can now be constructed + from and converted to C++20 <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">chrono</span><span class="special">::</span><span class="identifier">local_time</span></code>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">any_connection_params</span><span class="special">::</span><span class="identifier">max_buffer_size</span></code>, + which allows to set a limit to the connection's internal buffer. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">is_fatal_error</span></code>, + which allows users can now distinguish between fatal (which require + closing and re-opening the connection) and non-fatal error codes. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">formattable_ref</span></code>, + a type-erased reference type that can refer to any type satisfying + the <code><span class="identifier">Formattable</span></code> concept. + </div> + </li> + <li> + <div> + Fixed an ODR violation under MSVC which could cause crashes in release + builds when using Boost.MySQL with other code also using <code><span class="identifier">asio</span><span class="special">::</span><span class="identifier">coroutine</span></code> in different translation + units. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/odeint/">Odeint</a>:</span> + <ul> + <li> + <div> + Added CMake Option <code><span class="identifier">BOOST_NUMERIC_ODEINT_NO_ADAPTORS</span></code> + to reduce dependencies, see <a href="https://github.com/boostorg/odeint/issues/82">82</a> + </div> + </li> + <li> + <div> + Fixed CMake detection of MPI. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/process/">Process</a>:</span> + <ul> + <li> + <div> + Moved the old boost.process to v1 subfolder and inline namespace. + deprecated process/*.hpp v1 headers + </div> + </li> + <li> + <div> + Turned v2 into a compile library. + </div> + </li> + <li> + <div> + Fixed usage on alpine linux / musl + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/stacktrace/">Stacktrace</a>:</span> + <ul> + <li> + <div> + <strong>Big new feature: stacktrace from arbitrary + exception for Windows</strong>. <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">stacktrace</span><span class="special">::</span><span class="identifier">from_current_exception</span><span class="special">()</span></code> now works on Windows platform. + Many thanks to <a href="https://github.com/huangqinjin">huangqinjin</a> + for the implementation <a href="https://github.com/boostorg/stacktrace/pull/159">PR#159</a> + Now on POSIX and Windows + the <code><span class="identifier">from_current_exception</span><span class="special">()</span> </code> function returns the stacktrace + of the current exception object as if the stacktrace was captured + at the point of throwing the exception. + </div> + </li> + <li> + <div> + Fixed inclusion of rarely used Windows SDK headers which can cause + conflict with other code using Windows SDK. Thanks to <a href="https://github.com/mabrarov">Marat + Abrarov</a> for fixing the issue <a href="https://github.com/boostorg/stacktrace/pull/157">PR#157</a>. + </div> + </li> + <li> + <div> + Build option <code><span class="identifier">boost</span><span class="special">.</span><span class="identifier">stacktrace</span><span class="special">.</span><span class="identifier">from_exception</span></code> + now properly works on MacOS. Thanks to <a href="https://github.com/pdimov">Peter + Dimov</a> for the fix <a href="https://github.com/boostorg/stacktrace/pull/166">PR#166</a>. + </div> + </li> + <li> + <div> + Fixed a typo in assert expression. Thanks to <a href="https://github.com/Ukilele">Kilian + Henneberger</a> for the bug report <a href="https://github.com/boostorg/stacktrace/issues/164">#164</a>. + </div> + </li> + <li> + <div> + Fixed shadowing warnings. Thanks to <a href="https://github.com/nigels-com">Nigel + Stewart</a> for the bug report <a href="https://github.com/boostorg/stacktrace/issues/141">#141</a>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">dladdr</span></code> minimal + support for AIX. Many thanks to Clément Chigot for the implementation + <a href="https://github.com/boostorg/stacktrace/pull/114">PR#114</a>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">Boost</span><span class="special">::</span><span class="identifier">stacktrace</span></code> CMake alias that refers + to the best supported implementation of Boost.Stacktrace on the platform. + Thanks to <a href="https://github.com/leha-bot">Alex</a> for + the feature <a href="https://github.com/boostorg/stacktrace/pull/167">PR#167</a>. + </div> + </li> + <li> + <div> + Significant improvement of CMake: multiple fixes, added many new + tests, improved CI. Many thanks to <a href="https://github.com/pdimov">Peter + Dimov</a> for all the improvements. + </div> + </li> + <li> + <div> + Fix addr2line work when the process is looked up via <code><span class="identifier">PATH</span></code>. Thanks to <a href="https://github.com/Schreischildkroete">Schreischildkroete</a> + for the bug report and to <a href="https://github.com/j-jr-richter">Jens + Richter</a> for fix <a href="https://github.com/boostorg/stacktrace/issues/72">#72</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/test/">Test</a>:</span> + <ul> + <li> + <div> + Fix <code><span class="special">-</span><span class="identifier">Wundef</span></code> + in configuration step. + </div> + </li> + <li> + <div> + Fix unreachable return compilation error on MSVC. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/unordered/">Unordered</a>:</span> + <ul> + <li> + <div> + Added container <code><span class="identifier">pmr</span></code> + aliases when header <code><span class="special">&lt;</span><span class="identifier">memory_resource</span><span class="special">&gt;</span></code> + is available. The alias <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unordered</span><span class="special">::</span><span class="identifier">pmr</span><span class="special">::[</span><span class="identifier">container</span><span class="special">]</span></code> refers to <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unordered</span><span class="special">::[</span><span class="identifier">container</span><span class="special">]</span></code> with a <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">pmr</span><span class="special">::</span><span class="identifier">polymorphic_allocator</span></code> + allocator type. + </div> + </li> + <li> + <div> + Equipped open-addressing and concurrent containers to internally + calculate and provide statistical metrics affected by the quality + of the hash function. This functionality is enabled by the global + macro <code><span class="identifier">BOOST_UNORDERED_ENABLE_STATS</span></code>. + </div> + </li> + <li> + <div> + Avalanching hash functions must now be marked via an <code><span class="identifier">is_avalanching</span></code> typedef with an + embedded <code><span class="identifier">value</span></code> constant + set to <code><span class="keyword">true</span></code> (typically, + defining <code><span class="identifier">is_avalanching</span></code> + as <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">true_type</span></code>). <code><span class="keyword">using</span> + <span class="identifier">is_avalanching</span> <span class="special">=</span> + <span class="keyword">void</span></code> is deprecated but allowed + for backwards compatibility. + </div> + </li> + <li> + <div> + Added Visual Studio Natvis framework custom visualizations for containers + and iterators. This works for all containers with an allocator using + raw pointers. In this release, containers and iterators are not supported + if their allocator uses fancy pointers. This may be addressed in + later releases. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/uuid/">UUID</a>:</span> + <ul> + <li> + <div> + <em>Major</em> update. + </div> + </li> + <li> + <div> + C++03 is no longer supported, a C++11 compiler is required. (This + includes GCC 4.8 or later, MSVC 14.0 (VS 2015) or later, and MinGW-w64.) + </div> + </li> + <li> + <div> + Decreased number of Boost dependencies from 39 (in total) to just + 5. + </div> + </li> + <li> + <div> + Updated to reflect the newer <a href="https://datatracker.ietf.org/doc/rfc9562/">RFC + 9562</a>. + </div> + </li> + <li> + <div> + Added generators for time-based UUIDs. + </div> + </li> + <li> + <div> + <em>Many</em> other improvements, see + the <a href="https://www.boost.org/libs/uuid/doc/html/uuid.html#changes">revision history</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/wave/">Wave</a>:</span> + <ul> + <li> + <div> + Replaced one use of vsprintf with the more secure vsnprintf + </div> + </li> + <li> + <div> + Fixed bug: + <ul> + <li> + <div> + <a href="https://github.com/boostorg/wave/issues/197">#197</a>: Improper signed overflow handling (UB and a missing + division check) + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/libs/winapi/">WinAPI</a>:</span> + <ul> + <li> + <div> + Added <code><span class="identifier">BOOST_USE_WINAPI_VERSION</span></code> + CMake option, which allows users to specify the Windows version for + Boost to target. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.updated_tools"> + <h3><span class="link">Updated Tools</span></h3> + <ul> + <li> + <div> + <span class="library"><a href="https://www.boost.org/tools/boostbook/">BoostBook</a>:</span> + <ul> + <li> + <div> + DTD updated: <code><span class="identifier">constructor</span></code>, + <code><span class="identifier">copy</span><span class="special">-</span><span class="identifier">assignment</span></code> and <code><span class="identifier">destructor</span></code> + elements are now allowed inside <code><span class="identifier">method</span><span class="special">-</span><span class="identifier">group</span></code> + elements. + </div> + </li> + <li> + <div> + Many fixes and improvements in Doxygen-generated documentation: + <ul> + <li> + <div> + Fixed duplicate equal signs in Doxygen-generated enum value + initializers. + </div> + </li> + <li> + <div> + Disabled alphabetical sorting of function arguments. The sorting + can be re-enabled by setting the new <code><span class="identifier">boost</span><span class="special">.</span><span class="identifier">sort</span><span class="special">.</span><span class="identifier">params</span></code> + XSL parameter to 1. + </div> + </li> + <li> + <div> + Added support for custom class member grouping. See Doxygen + tags <code><span class="error">@</span><span class="identifier">name</span></code> + and <code><span class="error">@</span><span class="special">{</span></code>/<code><span class="error">@</span><span class="special">}</span></code>. + </div> + </li> + <li> + <div> + Added support for Doxygen references to classes, methods, enums, + variables, etc. (see <code><span class="error">@</span><span class="identifier">ref</span></code> tag). + </div> + </li> + <li> + <div> + Added support for <code><span class="error">@</span><span class="identifier">remark</span></code> and <code><span class="error">@</span><span class="identifier">important</span></code> + tags. + </div> + </li> + <li> + <div> + Added support for <code><span class="error">@</span><span class="identifier">parblock</span></code> tags, which can + be used to place multiple paragraphs under a tag that expects + a single paragraph as an argument (e.g. <code><span class="error">@</span><span class="identifier">returns</span></code>). + </div> + </li> + <li> + <div> + Template parameter defaults that refer to implementation details + are now concealed, similar to function parameter defaults. + </div> + </li> + <li> + <div> + Improved presentation of unnamed enums. Instead of showing + a synthesized name such as <code><span class="error">@</span><span class="number">0</span></code>, the name is either omitted + or is <code><span class="special">[</span><span class="identifier">unnamed</span><span class="special">]</span></code>, if the name is necessary + to introduce a link to the enum documentation. + </div> + </li> + <li> + <div> + Changed the "See Also" (<code><span class="error">@</span><span class="identifier">sa</span></code>) blocks to be displayed + inline, similar to "Returns". + </div> + </li> + <li> + <div> + Fixed presentation of multiple exception specifications (<code><span class="error">@</span><span class="identifier">throws</span></code>). + </div> + </li> + <li> + <div> + Added support for free form description of throwing behavior. + If the exception type after the <code><span class="error">@</span><span class="identifier">throws</span></code> tag is "~" + then the exception type is omitted from the output, and the + following description is displayed directly in the "Throws" + section. + </div> + </li> + <li> + <div> + Removed redundant spaces in return types and template parameters. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="https://www.boost.org/tools/build/">Build</a>:</span> + <ul> + <li> + <div> + Includes release of <a href="https://www.boost.org/tools/build/doc/html/#_version_5_2_1">B2 + version 5.2.1</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.compilers_tested"> + <h3><span class="link">Compilers Tested</span></h3> + <p> + Boost's primary test compilers are: + </p> + <ul> + <li> + <div> + Linux: + <ul> + <li> + <div> + 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 + </div> + </li> + <li> + <div> + Clang, C++11: 3.4, 11.0.0, 13.0.0, 14.0.0, 15.0.0 + </div> + </li> + <li> + <div> + 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 + </div> + </li> + <li> + <div> + 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 + </div> + </li> + <li> + <div> + Clang, C++20: 11.0.0, 12.0.0, 13.0.0, 14.0.0, 15.0.0 + </div> + </li> + <li> + <div> + GCC, C++03: 4.6.3, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++11: 4.7.3, 4.8.5, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++14: 5.4.0, 6.4.0, 7.3.0, 8.0.1, 9.1.0, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++17: 7.3.0, 8.0.1, 9.1.0, 11, 12 + </div> + </li> + <li> + <div> + GCC, C++20: 8.0.1, 9.1.0, 10, 11, 12 + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + OS X: + <ul> + <li> + <div> + Apple Clang, C++03: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++11: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++14: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++17: 11.0.3 + </div> + </li> + <li> + <div> + Apple Clang, C++20: 11.0.3 + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Windows: + <ul> + <li> + <div> + Visual C++: 10.0, 11.0, 12.0, 14.0, 14.1, 14.2, 14.3 + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_86_0.acknowledgements"> + <h3><span class="link">Acknowledgements</span></h3> + <p> + Marshall Clow and Glen Fernandes managed this release. + </p> + </div> +Version 1.85.0https://www.boost.org/users/history/version_1_85_0.htmlhttps://www.boost.org/users/history/version_1_85_0.htmlMon, 15 Apr 2024 17:38:25 +0000 + + + <div id="version_1_85_0.known_issues"> + <h3><span class="link">Known Issues</span></h3> + <p> + These are patches from library authors which were found too late to be fixed + in the release. + </p> + <ul> + <li> + <div> + Container + <ul> + <li> + <div> + flat_map/multimap containers can crash or return invalid results + in some compilers due to UB in the library, see <a href="https://github.com/boostorg/container/issues/273">#273</a>. + <a href="https://www.boost.org/patches/1_85_0/0001-container-fix-flat_map.patch">Patch</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> <div id="version_1_85_0.new_libraries"> <h3><span class="link">New Libraries</span></h3> <ul> @@ -5227,1158 +6805,6 @@ Marshall Clow and Glen Fernandes managed this release. </p> </div> -Version 1.81.0https://www.boost.org/users/history/version_1_81_0.htmlhttps://www.boost.org/users/history/version_1_81_0.htmlWed, 14 Dec 2022 17:44:48 +0000 - - - <div id="version_1_81_0.new_libraries"> - <h3><span class="link">New Libraries</span></h3> - <ul> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/url/">URL</a>:</span> A library for parsing, modifying, - and printing URLs using only C++11, from Vinnie Falco and Alan de Freitas. - Features include fast compilation, strong invariants, and strict compliance - using a memory-friendly approach. - </div> - </li> - </ul> - </div> - <div id="version_1_81_0.updated_libraries"> - <h3><span class="link">Updated Libraries</span></h3> - <ul> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/asio/">Asio</a>:</span> - <ul> - <li> - <div> - Added the <code><span class="identifier">consign</span></code> - completion token adapter, which can be used to attach additional - values to a completion handler. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">any_completion_handler</span><span class="special">&lt;&gt;</span></code>, which can be used to type-erase - completion handlers. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">experimental</span><span class="special">::</span><span class="identifier">co_composed</span></code> - to enable lightweight implementations of user-defined asynchronous - operations using C++20 coroutines. - </div> - </li> - <li> - <div> - Add range-based <code><span class="identifier">experimental</span><span class="special">::</span><span class="identifier">make_parallel_group</span><span class="special">()</span></code> overloads. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">any_completion_executor</span></code>, - a type-erased wrapper for executors that are associated with completion - handlers. - </div> - </li> - <li> - <div> - Added missing <code><span class="identifier">context</span></code> - query to use_future's executor. - </div> - </li> - <li> - <div> - Added nothrow constructor overloads to <code><span class="identifier">execution</span><span class="special">::</span><span class="identifier">any_executor</span><span class="special">&lt;&gt;</span></code> and <code><span class="identifier">any_io_executor</span></code>. - </div> - </li> - <li> - <div> - Optimised representation of empty <code><span class="identifier">execution</span><span class="special">::</span><span class="identifier">any_executor</span></code> - objects to improve the performance of copy and move operations. - </div> - </li> - <li> - <div> - Added an <code><span class="identifier">associated_cancellation_slot</span></code> - specialisation for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">reference_wrapper</span></code>. - </div> - </li> - <li> - <div> - Changed I/O objects to return their executors by const reference. - </div> - </li> - <li> - <div> - Changed associated to use deduced return types for all two-argument - <code><span class="identifier">get</span></code> functions. - </div> - </li> - <li> - <div> - Fixed <code><span class="identifier">spawn</span></code> implementation - to catch unhandled exceptions and rethrow them outside of the spawned - "thread". - </div> - </li> - <li> - <div> - Fixed <code><span class="identifier">spawn</span></code> to ensure - the completion handler is dispatched through the correct executor. - </div> - </li> - <li> - <div> - Fixed cleanup of of terminal-state <code><span class="identifier">spawn</span></code> - "thread" objects. - </div> - </li> - <li> - <div> - Fixed <code><span class="identifier">spawn</span></code> and - <code><span class="identifier">co_spawn</span></code> implementations - to dispatch cancellation handlers on the correct executor. - </div> - </li> - <li> - <div> - Changed semantics of 'dispatch' to mean the executor is used as-is. - </div> - </li> - <li> - <div> - Deprecated the <code><span class="identifier">execution</span><span class="special">::</span><span class="identifier">execute</span></code> - customisation point and sender/receiver facilities. - </div> - </li> - <li> - <div> - Added a C++11 <code><span class="identifier">parallel_group</span></code> - example. - </div> - </li> - <li> - <div> - Fixed example code to not use the deprecated <code><span class="identifier">resolve</span></code> - conversions. - </div> - </li> - <li> - <div> - Fixed an ambiguity in <code><span class="identifier">experimental</span><span class="special">::</span><span class="identifier">channel_traits</span></code> - specialisations. - </div> - </li> - <li> - <div> - Added a specialised channel implementation for the for <code><span class="identifier">R</span><span class="special">(</span><span class="identifier">error_code</span><span class="special">)</span></code> - signature. - </div> - </li> - <li> - <div> - Made <code><span class="identifier">cancelled</span><span class="special">()</span></code> - public on the <code><span class="identifier">async_compose</span></code> - 'self' object. - </div> - </li> - <li> - <div> - Added io_executor_type and get_io_executor to the <code><span class="identifier">async_compose</span></code> - 'self' object. - </div> - </li> - <li> - <div> - Fixed implementation of <code><span class="identifier">release</span><span class="special">()</span></code> for Windows overlapped handles. - </div> - </li> - <li> - <div> - Enabled deferred awaiting for <code><span class="identifier">experimental</span><span class="special">::</span><span class="identifier">coro</span></code>, - regularised <code><span class="identifier">experimental</span><span class="special">::</span><span class="identifier">use_coro</span></code>, - and fixed allocator handling. - </div> - </li> - <li> - <div> - Cleaned up <code><span class="identifier">experimental</span><span class="special">::</span><span class="identifier">promise</span></code> - and made it an asynchronous operation object. - </div> - </li> - <li> - <div> - Constrained <code><span class="identifier">post</span></code>/<code><span class="identifier">defer</span></code> overloads on ability to require - <code><span class="identifier">blocking</span><span class="special">.</span><span class="identifier">never</span></code>. - </div> - </li> - <li> - <div> - Changed descriptor implementation to fall back to <code><span class="identifier">fcntl</span></code> - if <code><span class="identifier">ioctl</span></code> fails with - <code><span class="identifier">ENOTTY</span></code> when setting - non-blocking mode. - </div> - </li> - <li> - <div> - Fixed Xcode deprecation warnings related to use of <code><span class="identifier">sprintf</span></code>. - </div> - </li> - <li> - <div> - Fixed the arguments passed to <code><span class="identifier">select_reactor</span><span class="special">::</span><span class="identifier">run</span></code> - when it is run on an internal thread. - </div> - </li> - <li> - <div> - Fixed compilation errors when <code><span class="identifier">BOOST_ASIO_DISABLE_SMALL_BLOCK_RECYCLING</span></code> - is defined. - </div> - </li> - <li> - <div> - Updated detection of C++20 coroutine support on clang 14 and later. - </div> - </li> - <li> - <div> - Changed standard library feature detection to always enable <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">invoke_result</span></code> when targeting C++17 - or later. - </div> - </li> - <li> - <div> - Fixed detection of return type deduction with MSVC. - </div> - </li> - <li> - <div> - Updated the asynchronous operation requirements to relax the requirements - on the associated executor. - </div> - </li> - <li> - <div> - Added <tt>io_uring</tt> to the implementation notes. - </div> - </li> - <li> - <div> - Consult the <a href="https://www.boost.org/doc/libs/1_81_0/doc/html/boost_asio/history.html">Revision - History</a> for further details. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/beast/">Beast</a>:</span> - <ul> - <li> - <div> - Add <code><span class="identifier">buffers_generator</span></code> - </div> - </li> - <li> - <div> - Add <code><span class="identifier">beast</span><span class="special">::</span><span class="identifier">http</span><span class="special">::</span><span class="identifier">message_generator</span></code> - </div> - </li> - <li> - <div> - Added <code><span class="identifier">buffer_ref</span></code>, - so beast buffers can be used with asio. - </div> - </li> - <li> - <div> - Support for per-operation cancellation - </div> - </li> - <li> - <div> - C++20 awaitable examples. - </div> - </li> - <li> - <div> - websocket per-message compression options - </div> - </li> - <li> - <div> - websocket timeout option api - </div> - </li> - <li> - <div> - multiple content length error - </div> - </li> - <li> - <div> - Support for default-completion and rebind - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/container_hash/">Container Hash</a>:</span> - <ul> - <li> - <div> - <strong>Major update.</strong> - </div> - </li> - <li> - <div> - The specializations of <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">hash</span></code> - have been removed; it now always calls <code><span class="identifier">hash_value</span></code>. - </div> - </li> - <li> - <div> - Support for <code><span class="identifier">BOOST_HASH_NO_EXTENSIONS</span></code> - has been removed. The extensions are always enabled. - </div> - </li> - <li> - <div> - All standard containers are now supported. This includes <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">forward_list</span></code> and the unordered - associative containers. - </div> - </li> - <li> - <div> - User-defined containers (types that have <code><span class="identifier">begin</span><span class="special">()</span></code> and <code><span class="identifier">end</span><span class="special">()</span></code> member functions that return iterators) - are now supported out of the box. - </div> - </li> - <li> - <div> - Described structs and classes (those annotated with <code><span class="identifier">BOOST_DESCRIBE_STRUCT</span></code> or <code><span class="identifier">BOOST_DESCRIBE_CLASS</span></code>) are now supported - out of the box. - </div> - </li> - <li> - <div> - <code><span class="identifier">hash_combine</span></code> has - been improved. - </div> - </li> - <li> - <div> - The performance (and quality, as a result of the above change) of - string hashing has been improved. <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">hash</span></code> - for strings now passes SMHasher in 64 bit mode. - </div> - </li> - <li> - <div> - The documentation has been substantially revised to reflect the changes. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/core/">Core</a>:</span> - <ul> - <li> - <div> - <code><span class="identifier">empty_value</span></code> members - are now marked as <code><span class="keyword">constexpr</span></code>. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">fclose_deleter</span></code>, - a deleter that calls <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">fclose</span></code> - on a pointer to <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">FILE</span></code>. - </div> - </li> - <li> - <div> - Bit manipulation utilities in <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">core</span><span class="special">/</span><span class="identifier">bit</span><span class="special">.</span><span class="identifier">hpp</span></code> - now explicitly require unsigned integers on input. (<a href="https://github.com/boostorg/core/issues/129">#129</a>) - </div> - </li> - <li> - <div> - <code><span class="identifier">bit_width</span></code> now returns - <code><span class="keyword">int</span></code> instead of a value - of the input argument type. This follows resolution of <a href="https://cplusplus.github.io/LWG/issue3656">LWG3656</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/describe/">Describe</a>:</span> - <ul> - <li> - <div> - To allow the inclusion of <code><span class="identifier">enumerators</span><span class="special">.</span><span class="identifier">hpp</span></code>, - <code><span class="identifier">bases</span><span class="special">.</span><span class="identifier">hpp</span></code>, and <code><span class="identifier">members</span><span class="special">.</span><span class="identifier">hpp</span></code> - when the option <code><span class="special">-</span><span class="identifier">pedantic</span></code> - is used, the invocation of <code><span class="identifier">BOOST_DESCRIBE_ENUM</span></code> - has been moved from <code><span class="identifier">modifiers</span><span class="special">.</span><span class="identifier">hpp</span></code> - into a separate header, <code><span class="identifier">modifier_description</span><span class="special">.</span><span class="identifier">hpp</span></code>. - As a consequence, <code><span class="identifier">modifiers</span><span class="special">.</span><span class="identifier">hpp</span></code> - no longer includes <code><span class="keyword">enum</span><span class="special">.</span><span class="identifier">hpp</span></code>. - Code that has been relying on this implicit inclusion may fail, and - will need to be fixed to include <code><span class="keyword">enum</span><span class="special">.</span><span class="identifier">hpp</span></code>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/dll/">DLL</a>:</span> - <ul> - <li> - <div> - Fixed <code><span class="identifier">path_from_handle</span></code> - implementation for Windows platforms, thanks to @SaltfishAmi for - the bug report <a href="https://github.com/apolukhin/Boost.DLL/issues/57">57</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/filesystem/">Filesystem</a>:</span> - <ul> - <li> - <div> - <strong>Deprecated:</strong> <code><span class="identifier">path</span></code> - construction, assignment and appending from containers of characters, - such as <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special">&lt;</span><span class="keyword">char</span><span class="special">&gt;</span></code> - or <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">list</span><span class="special">&lt;</span><span class="keyword">wchar_t</span><span class="special">&gt;</span></code>, - is deprecated in <strong>v3</strong> and removed - in <strong>v4</strong>. Please use string types or - iterators instead. - </div> - </li> - <li> - <div> - <strong>Deprecated:</strong> <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">filesystem</span><span class="special">/</span><span class="identifier">path_traits</span><span class="special">.</span><span class="identifier">hpp</span></code> - header is deprecated and will be removed in a future release. The - header contained implementation details of <code><span class="identifier">path</span></code> - and should not be used in user's code. - </div> - </li> - <li> - <div> - Previously deprecated APIs will now generate compilation warnings - on use. To suppress these warnings, <code><span class="identifier">BOOST_FILESYSTEM_ALLOW_DEPRECATED</span></code> - macro can be defined when compiling user's code. - </div> - </li> - <li> - <div> - Fixed compilation due to a missing include on POSIX systems that - do not support <code><span class="special">*</span><span class="identifier">at</span></code> - APIs. (<a href="https://github.com/boostorg/filesystem/issues/250">#250</a>) - </div> - </li> - <li> - <div> - On Windows prior to 10, added a workaround for network share filesystem - that produces <code><span class="identifier">ERROR_INVALID_PARAMETER</span></code> - when constructing directory iterators. (<a href="https://github.com/boostorg/filesystem/pull/246">PR#246</a>, <a href="https://github.com/boostorg/filesystem/issues/245">#245</a>) - </div> - </li> - <li> - <div> - On Windows, fixed <code><span class="identifier">weakly_canonical</span></code> - failing with an <code><span class="identifier">ERROR_INVALID_FUNCTION</span></code> - error code if the path started with the "\\?\" prefix. - (<a href="https://github.com/boostorg/filesystem/issues/247">#247</a>) - </div> - </li> - <li> - <div> - Added support for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">string_view</span></code>, - <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">string_view</span></code> and <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">container</span><span class="special">::</span><span class="identifier">string</span></code> - (as well as respective <code><span class="keyword">wchar_t</span></code> - counterparts) in <code><span class="identifier">path</span></code> - constructors, assignment and appending operations. (<a href="https://github.com/boostorg/filesystem/issues/208">#208</a>) - </div> - </li> - <li> - <div> - <code><span class="identifier">path</span></code> constructors, - assignment and appending operations taking a pair of iterators will - no longer accept iterators with value types that are not one of the - supported path character types. - </div> - </li> - <li> - <div> - On Windows, improved compatibility of <code><span class="identifier">directory_iterator</span></code> - with various mounted filesystems and Wine releases prior to 7.21. - (<a href="https://github.com/boostorg/filesystem/issues/255">#255</a>, <a href="https://github.com/boostorg/filesystem/issues/266">#266</a>) - </div> - </li> - <li> - <div> - On Windows, deduplicated files are now reported as regular files - rather than reparse files. (<a href="https://github.com/boostorg/filesystem/issues/262">#262</a>) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/fusion/">Fusion</a>:</span> - <ul> - <li> - <div> - Added <code><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">identity_view</span></code> (<a href="https://github.com/boostorg/fusion/pull/240">PR#240</a>) - </div> - </li> - <li> - <div> - Added support for associative sequences on <code><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">transform_view</span></code> - (<a href="https://github.com/boostorg/fusion/pull/239">PR#239</a>) - </div> - </li> - <li> - <div> - Fixed compilation for the case when <code><span class="identifier">fusion</span><span class="special">::</span><span class="identifier">reverse_view</span></code> - used with an associative sequence (<a href="https://github.com/boostorg/fusion/pull/237">PR#237</a>) - </div> - </li> - <li> - <div> - Fixed Clang 13 -Wdeprecated-copy warnings (<a href="https://github.com/boostorg/fusion/pull/261">PR#261</a>) - </div> - </li> - <li> - <div> - A small dependency reorganization. Now <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">ref</span></code> - and <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">noncopyable</span></code> are used from Boost.Core - (<a href="https://github.com/boostorg/fusion/pull/249">PR#249</a>) - </div> - </li> - <li> - <div> - Added CI testing on Linux and MacOS for clang and gcc, fixed CI testing - on Windows (<a href="https://github.com/boostorg/fusion/pull/245">PR#245</a>, <a href="https://github.com/boostorg/fusion/pull/236">PR#236</a>) - </div> - </li> - <li> - <div> - Improved docs and fixed typos (<a href="https://github.com/boostorg/fusion/issues/234">#234</a>, <a href="https://github.com/boostorg/fusion/pull/235">PR#235</a>, <a href="https://github.com/boostorg/fusion/pull/238">PR#238</a>) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/geometry/">Geometry</a>:</span> - <ul> - <li> - <div> - Solved issues - <ul> - <li> - <div> - <a href="https://github.com/boostorg/geometry/issues/1048">#1048</a> Index: Fix dangling references when Indexable - is returned by value by IndexableGetter - </div> - </li> - <li> - <div> - <a href="https://github.com/boostorg/geometry/issues/1076">#1076</a> Union: in rare cases it might miss one polygon - </div> - </li> - <li> - <div> - <a href="https://github.com/boostorg/geometry/issues/1081">#1081</a> Union: due to precision it might miss interior - rings - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Bugfixes - <ul> - <li> - <div> - <a href="https://github.com/boostorg/geometry/issues/1063">#1063</a> Intersection: fix a bug in intersection of - simple spherical polygons - </div> - </li> - <li> - <div> - <a href="https://github.com/boostorg/geometry/issues/1064">#1064</a> Formulas: fix a consistency issue in geodesic - direct formulas - </div> - </li> - <li> - <div> - <a href="https://github.com/boostorg/geometry/issues/1088">#1088</a> Point: Fix regression for custom point types - </div> - </li> - <li> - <div> - Various fixes for missing include files, warnings, C++20 compilation - errors and documentation - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/histogram/">Histogram</a>:</span> - <ul> - <li> - <div> - <strong>Major update.</strong> - </div> - </li> - <li> - <div> - Added new <code><span class="identifier">accumulators</span><span class="special">::</span><span class="identifier">fraction</span></code> - to compute fractions, their variance, and confidence intervals - </div> - </li> - <li> - <div> - Added interval computers for fractions: <code><span class="identifier">utility</span><span class="special">::</span><span class="identifier">clopper_pearson</span></code>, - <code><span class="identifier">utility</span><span class="special">::</span><span class="identifier">wilson_interval</span></code>, <code><span class="identifier">utility</span><span class="special">::</span><span class="identifier">jeffreys_interval</span></code>, <code><span class="identifier">utility</span><span class="special">::</span><span class="identifier">wald_interval</span></code> which can compute - intervals with arbitrary confidence level - </div> - </li> - <li> - <div> - Added <code><span class="identifier">utility</span><span class="special">::</span><span class="identifier">confidence_level</span></code> and <code><span class="identifier">utility</span><span class="special">::</span><span class="identifier">deviation</span></code> types to pass confidence - levels as probabilities or in multiples of standard deviation for - all interval computers, respectively - </div> - </li> - <li> - <div> - Fixed internal <code><span class="identifier">sub_array</span></code> - and <code><span class="identifier">span</span></code> in C++20 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/iterator/">Iterator</a>:</span> - <ul> - <li> - <div> - <code><span class="identifier">function_output_iterator</span></code> - now supports perfect forwarding of the assigned values to the wrapped - function object. (<a href="https://github.com/boostorg/iterator/pull/73">PR#73</a>) - </div> - </li> - <li> - <div> - Fixed compilation of constructing a <code><span class="identifier">function_input_iterator</span></code> - from result of post-incrementing another <code><span class="identifier">function_input_iterator</span></code>. - (<a href="https://github.com/boostorg/iterator/issues/75">#75</a>) - </div> - </li> - <li> - <div> - The result of post-incrementing an iterator based on <code><span class="identifier">iterator_facade</span></code> now supports <code><span class="keyword">operator</span><span class="special">-&gt;</span></code>. - <code><span class="special">(</span><span class="identifier">it</span><span class="special">++)-&gt;</span><span class="identifier">foo</span></code> - is equivalent to <code><span class="special">(*</span><span class="identifier">it</span><span class="special">++).</span><span class="identifier">foo</span></code>, which was supported before. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/json/">JSON</a>:</span> - <ul> - <li> - <div> - Added <code><span class="identifier">object</span><span class="special">::</span><span class="identifier">stable_erase</span></code>. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">parse</span></code> overload - for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">istream</span></code> and <code><span class="keyword">operator</span><span class="special">&gt;&gt;</span></code> for <code><span class="identifier">value</span></code>. - </div> - </li> - <li> - <div> - Added rvalue ref-qualified accessors for <code><span class="identifier">value</span></code>. - </div> - </li> - <li> - <div> - Conversion traits were redesigned. - </div> - </li> - <li> - <div> - Added conversion support for described classes and enums, <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">optional</span></code>, <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">variant</span></code>, - and null-like types (including <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">nullptr_t</span></code>, - <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">nullopt_t</span></code>, and <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">monotype</span></code>). - </div> - </li> - <li> - <div> - Added non-throwing conversion from <code><span class="identifier">value</span></code> - to user types. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/lexical_cast/">LexicalCast</a>:</span> - <ul> - <li> - <div> - Fixed compilation while casting volatile arithmetic types. Thanks - to Giovanni Cerretani for the bug report <a href="https://github.com/boostorg/lexical_cast/issues/50">#50</a>. - </div> - </li> - <li> - <div> - Removed usage of deprecated headers. Thanks to Michael Ford for the - PR <a href="https://github.com/boostorg/lexical_cast/pull/53">PR#53</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/locale/">Locale</a>:</span> - <ul> - <li> - <div> - <strong>Major update with some breaking changes.</strong> - </div> - </li> - <li> - <div> - C++11 support is now required, support for C++03 and earlier is dropped - </div> - </li> - <li> - <div> - Some enums have been converted to enum classes - Avoids name clashes - </div> - </li> - <li> - <div> - Replace <code><span class="special">-</span><span class="identifier">sICU_LINK_LOCALE</span></code> - &amp; <code><span class="special">-</span><span class="identifier">sICU_LINK</span></code> - by fine-grained configuration options as done in Boost.RegEx - </div> - </li> - <li> - <div> - Fix detection of libiconv allowing Boost.Locale to be build (again) - on some platforms - </div> - </li> - <li> - <div> - Remove use of and support for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">auto_ptr</span></code> - </div> - </li> - <li> - <div> - Make the <code><span class="identifier">codecvt</span></code> - using <code><span class="keyword">wchar_t</span></code> on Windows - assume/use UTF-16 enconding - </div> - </li> - <li> - <div> - Performance improvements: Make <code><span class="identifier">basic_format</span></code>, - <code><span class="identifier">date_time</span></code> &amp; - <code><span class="identifier">hold_ptr</span></code> movable, - Fix use of format cache - </div> - </li> - <li> - <div> - Make Boost.Locale compatible with more ICU versions (especially the - tests) - </div> - </li> - <li> - <div> - Fix RTTI definitions for some classes (visibility issues) - </div> - </li> - <li> - <div> - Fix compatibility of the ICU backend with some libc++ versions - </div> - </li> - <li> - <div> - Fix return value of some operators to correctly return non-const - <code><span class="special">*</span><span class="keyword">this</span></code> - </div> - </li> - <li> - <div> - Fix int-overflow on negative roll of years in <code><span class="identifier">date_time</span></code> - </div> - </li> - <li> - <div> - Handle or suppress many warnings which makes the build log cleaner - </div> - </li> - <li> - <div> - Add support for more Windows codepages - </div> - </li> - <li> - <div> - Fix support for Windows codepages like ISO-2022-JP - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/nowide/">Nowide</a>:</span> - <ul> - <li> - <div> - Fix build failure of tests on MSVC - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/stacktrace/">Stacktrace</a>:</span> - <ul> - <li> - <div> - The library <strong>does not use COM initialization - any more</strong>. Thanks to Alex Guteniev for the bug report, - clarifications and PR <a href="https://github.com/boostorg/stacktrace/pull/123">PR#123</a>! - </div> - </li> - <li> - <div> - The library now may use <code><span class="identifier">BOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE</span></code> - macro value while detecting the libbacktrace availability in b2, - thanks to Ben Gemmill for the bug report <a href="https://github.com/boostorg/stacktrace/issues/115">#115</a>. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">BOOST_STACKTRACE_BACKTRACE_FORCE_STATIC</span></code> - macro to force a single backtrace_state static instance while using - the libbacktrace. Thanks to the Rasmus Thomsen for the bug report - <a href="https://github.com/boostorg/stacktrace/issues/118">#118</a>! - </div> - </li> - <li> - <div> - Avoid unresolved references when including only the <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">stacktrace</span><span class="special">/</span><span class="identifier">stacktrace</span><span class="special">.</span><span class="identifier">hpp</span></code> header. Thanks to the Long - Deng for the bug report <a href="https://github.com/boostorg/stacktrace/issues/116">#116</a>. - </div> - </li> - <li> - <div> - Optimized stacktrace printing by not calling <code><span class="identifier">strlen</span></code> - on Windows platforms. Thanks to Alex Guteniev for the bug report - <a href="https://github.com/boostorg/stacktrace/issues/122">#122</a> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/pfr/">PFR</a>:</span> - <ul> - <li> - <div> - Improved detection of aggregate initializables in C++14 mode, thanks - to Denis Mikhailov for the PR <a href="https://github.com/boostorg/pfr/pull/97">PR#97</a>. - </div> - </li> - <li> - <div> - Suppress clang-tidy warnings, thanks to Alexander Malkov for the - PRs <a href="https://github.com/boostorg/pfr/pull/109">PR#109</a>, <a href="https://github.com/boostorg/pfr/pull/104">PR#104</a>. - </div> - </li> - <li> - <div> - Use fold expressions if they are supported by the compiler. Thanks - to Jean-Michaël Celerier for the PR <a href="https://github.com/boostorg/pfr/pull/96">PR#96</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/stl_interfaces/">STLInterfaces</a>:</span> - <ul> - <li> - <div> - Fix two ill-formed <code><span class="identifier">iterator_interface</span></code> - operators in pre-C++20 iterators with a <code><span class="keyword">const</span></code> - <code><span class="identifier">value_type</span></code>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/system/">System</a>:</span> - <ul> - <li> - <div> - The macro <code><span class="identifier">BOOST_SYSTEM_DISABLE_THREADS</span></code> - can now be defined to disable the use of <code><span class="special">&lt;</span><span class="identifier">mutex</span><span class="special">&gt;</span></code> - (e.g. on single-threaded libstdc++). - </div> - </li> - <li> - <div> - Added <code><span class="identifier">value_type</span></code>, - <code><span class="identifier">error_type</span></code>, <code><span class="identifier">in_place_value</span></code>, <code><span class="identifier">in_place_error</span></code> - to <code><span class="identifier">result</span><span class="special">&lt;&gt;</span></code>. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">emplace</span></code> to - <code><span class="identifier">result</span><span class="special">&lt;&gt;</span></code>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/unordered/">Unordered</a>:</span> - <ul> - <li> - <div> - <strong>Major update.</strong> - </div> - </li> - <li> - <div> - Added fast containers <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unordered_flat_map</span></code> - and <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">unordered_flat_set</span></code> based on open - addressing. - </div> - </li> - <li> - <div> - Added CTAD deduction guides for all containers. - </div> - </li> - <li> - <div> - Added missing constructors as specified in <a href="https://cplusplus.github.io/LWG/issue2713">LWG - issue 2713</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/variant/">Variant</a>:</span> - <ul> - <li> - <div> - Avoid recursive inclusion of headers, thanks to Nathan Sidwell for - the bug report <a href="https://github.com/boostorg/variant/issues/101">#101</a>. - </div> - </li> - <li> - <div> - Removed usage of deprecated headers, thanks to Michael Ford for the - PR <a href="https://github.com/boostorg/variant/pull/96">PR#96</a>. - </div> - </li> - <li> - <div> - Fixed compilation on clang in C++23 mode, thanks to Ed Catmur for - the PR <a href="https://github.com/boostorg/variant/pull/98">PR#98</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="https://www.boost.org/libs/variant2/">Variant2</a>:</span> - <ul> - <li> - <div> - Added support for <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">json</span><span class="special">::</span><span class="identifier">value_from</span></code> - and <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">json</span><span class="special">::</span><span class="identifier">value_to</span></code>. - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - <div id="version_1_81_0.compilers_tested"> - <h3><span class="link">Compilers Tested</span></h3> - <p> - Boost's primary test compilers are: - </p> - <ul> - <li> - <div> - Linux: - <ul> - <li> - <div> - Clang: 3.4, 3.5, 3.6, 3.7, 3.8, 3.9, 12.0.0, 13.0.0, 14.0.0, 15.0.0 - </div> - </li> - <li> - <div> - Clang, C++11: 3.4, 11.0.0, 13.0.0, 14.0.0, 15.0.0 - </div> - </li> - <li> - <div> - 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 - </div> - </li> - <li> - <div> - 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 - </div> - </li> - <li> - <div> - Clang, C++20: 11.0.0, 12.0.0, 13.0.0, 14.0.0, 15.0.0 - </div> - </li> - <li> - <div> - GCC: 4.6.3, 11, 12 - </div> - </li> - <li> - <div> - GCC, C++11: 4.7.3, 4.8.5, 11, 12 - </div> - </li> - <li> - <div> - GCC, C++14: 5.4.0, 6.4.0, 7.3.0, 8.0.1, 9.1.0, 11, 12 - </div> - </li> - <li> - <div> - GCC, C++17: 7.3.0, 8.0.1, 9.1.0, 11, 12 - </div> - </li> - <li> - <div> - GCC, C++20: 8.0.1, 9.1.0, 10, 11, 12 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - OS X: - <ul> - <li> - <div> - Apple Clang: 11.0.3 - </div> - </li> - <li> - <div> - Apple Clang, C++11: 11.0.3 - </div> - </li> - <li> - <div> - Apple Clang, C++14: 11.0.3 - </div> - </li> - <li> - <div> - Apple Clang, C++17: 11.0.3 - </div> - </li> - <li> - <div> - Apple Clang, C++20: 11.0.3 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Windows: - <ul> - <li> - <div> - Visual C++: 10.0, 11.0, 12.0, 14.0, 14.1, 14.2, 14.3 - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - <div id="version_1_81_0.acknowledgements"> - <h3><span class="link">Acknowledgements</span></h3> - <p> - Marshall Clow and Glen Fernandes managed this release. - </p> - </div> diff --git a/generated/state/feed-pages.txt b/generated/state/feed-pages.txt index 96e3531a..648953e2 100644 --- a/generated/state/feed-pages.txt +++ b/generated/state/feed-pages.txt @@ -2823,7 +2823,6 @@ -notice -notice_url -page_state -"changed -pub_date -purpose " @@ -2839,7 +2838,7 @@ -title "Version 1.85.0 -update_count -=4 +=5 ) (feed/history/boost_1_86_0.qbk -guid @@ -2847,7 +2846,7 @@ -id "version_1_86_0 -last_modified -@Fri, 26 Jul 2024 17:19:51 +0000 +@Wed, 14 Aug 2024 16:07:18 +0000 -location "users/history/version_1_86_0.html -notice @@ -2859,13 +2858,13 @@ " New Libraries: Updated Libraries: " -qbk_hash -"55aef60534b63cc3e4aadf52a17db300c6f2af786b46da3e878434370810ef67 +"19f1a19ab7b1d8613dd30138d7b21d3a6b8f61b206dbace7a8b21fd3591b969b -section "history -title "Version 1.86.0 -update_count -=1 +=2 ) (feed/history/unversioned.qbk -guid diff --git a/generated/state/page-cache.txt b/generated/state/page-cache.txt index 6fcad43f..e2ddbbeb 100644 --- a/generated/state/page-cache.txt +++ b/generated/state/page-cache.txt @@ -39622,6 +39622,29 @@ " " " +"
+"

Known Issues

+"

+" These are patches from library authors which were found too late to be fixed +" in the release. +"

+"
    +"
  • +"
    +" Container +"
      +"
    • +"
      +" flat_map/multimap containers can crash or return invalid results +" in some compilers due to UB in the library, see #273. +" Patch. +"
      +"
    • +"
    +"
    +"
  • +"
+"
"
"

New Libraries

"
    @@ -41022,7 +41045,7 @@ "
" -hash -"0539f7b750fa27b0e2510924eb8a35e743623baaeef3b4b8e0e164703dd2bfb6 +"c2cbee22b42041e63378291373d8576cc2192772f095ceb216a102bb2a8120ed -id "version_1_85_0 -notice_url @@ -41048,7 +41071,7 @@ "
    "
  • "
    -" TODO +" No new libraries. "
    "
  • "
@@ -42597,7 +42620,7 @@ " " -hash -"10dff5467273ec965b4b8d17edf6e9f0758d2af75139250d63a02e36e92b75ac +"0326630ce31eb13736b1f67c3cf95acd657213fcc1309db7df620f5c2cb682c4 -id "version_1_86_0 -notice_url diff --git a/generated/state/release.txt b/generated/state/release.txt index 59cd3b7b..0c0c7f4a 100644 --- a/generated/state/release.txt +++ b/generated/state/release.txt @@ -2901,6 +2901,38 @@ "release_date": "Wed, 13 Mar 2024 17:03:47 +0000" }, + "boost-1.86.0": { + "documentation": + "\/doc\/libs\/1_86_0\/", + "download_page": + "https:\/\/archives.boost.io\/release\/1.86.0\/source\/", + "downloads.7z.line_endings": + "windows", + "downloads.7z.sha256": + "413ee9d5754d0ac5994a3bf70c3b5606b10f33824fdd56cf04d425f2fc6bb8ce", + "downloads.7z.url": + "https:\/\/archives.boost.io\/release\/1.86.0\/source\/boost_1_86_0.7z", + "downloads.bz2.line_endings": + "unix", + "downloads.bz2.sha256": + "1bed88e40401b2cb7a1f76d4bab499e352fa4d0c5f31c0dbae64e24d34d7513b", + "downloads.bz2.url": + "https:\/\/archives.boost.io\/release\/1.86.0\/source\/boost_1_86_0.tar.bz2", + "downloads.gz.line_endings": + "unix", + "downloads.gz.sha256": + "2575e74ffc3ef1cd0babac2c1ee8bdb5782a0ee672b1912da40e5b4b591ca01f", + "downloads.gz.url": + "https:\/\/archives.boost.io\/release\/1.86.0\/source\/boost_1_86_0.tar.gz", + "downloads.zip.line_endings": + "windows", + "downloads.zip.sha256": + "cd20a5694e753683e1dc2ee10e2d1bb11704e65893ebcc6ced234ba68e5d8646", + "downloads.zip.url": + "https:\/\/archives.boost.io\/release\/1.86.0\/source\/boost_1_86_0.zip", + "release_date": + "Wed, 14 Aug 2024 16:07:17 +0000" + }, "boost-1.86.0 beta1": { "documentation": "\/doc\/libs\/1_86_0_beta1\/", diff --git a/generated/state/rss-items.txt b/generated/state/rss-items.txt index adda161b..e4382e18 100644 --- a/generated/state/rss-items.txt +++ b/generated/state/rss-items.txt @@ -66328,6 +66328,29 @@ "Version 1.85.0https://www.boost.org/users/history/version_1_85_0.htmlhttps://www.boost.org/users/history/version_1_85_0.htmlMon, 15 Apr 2024 17:38:25 +0000 " " +" <div id="version_1_85_0.known_issues"> +" <h3><span class="link">Known Issues</span></h3> +" <p> +" These are patches from library authors which were found too late to be fixed +" in the release. +" </p> +" <ul> +" <li> +" <div> +" Container +" <ul> +" <li> +" <div> +" flat_map/multimap containers can crash or return invalid results +" in some compilers due to UB in the library, see <a href="https://github.com/boostorg/container/issues/273">#273</a>. +" <a href="https://www.boost.org/patches/1_85_0/0001-container-fix-flat_map.patch">Patch</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" </ul> +" </div> " <div id="version_1_85_0.new_libraries"> " <h3><span class="link">New Libraries</span></h3> " <ul> @@ -67728,15 +67751,15 @@ " </div> " -last_modified -@Thu, 23 May 2024 23:26:08 +0000 +@Fri, 02 Aug 2024 18:26:13 +0000 -quickbook "feed/history/boost_1_85_0.qbk -update_count -=4 +=5 ) (feed/history/boost_1_86_0.qbk -item -"Version 1.86.0https://www.boost.org/users/history/version_1_86_0.htmlhttps://www.boost.org/users/history/version_1_86_0.htmlFri, 26 Jul 2024 17:19:51 +0000 +"Version 1.86.0https://www.boost.org/users/history/version_1_86_0.htmlhttps://www.boost.org/users/history/version_1_86_0.htmlWed, 14 Aug 2024 16:07:17 +0000 " " " <div id="version_1_86_0.new_libraries"> @@ -67744,7 +67767,7 @@ " <ul> " <li> " <div> -" <em>TODO</em> +" No new libraries. " </div> " </li> " </ul> @@ -67754,7 +67777,7 @@ " <ul> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/atomic/">Atomic</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/atomic/">Atomic</a>:</span> " <ul> " <li> " <div> @@ -67768,7 +67791,7 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/beast/">Beast</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/beast/">Beast</a>:</span> " <ul> " <li> " <div> @@ -67928,7 +67951,42 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/cobalt">Cobalt</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/charconv">Charconv</a>:</span> +" <ul> +" <li> +" <div> +" Fixed support for PPC64LE architecture. +" </div> +" </li> +" <li> +" <div> +" Fixed support for platforms like Alpine linux that provide the <code><span class="special">&lt;</span><span class="identifier">quadmath</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span></code> header but not the compiled library. +" </div> +" </li> +" <li> +" <div> +" Fixed first character pattern matching in <code><span class="identifier">from_chars</span></code> +" for integer types. +" </div> +" </li> +" <li> +" <div> +" Fixed overflow detection for integers with base greater than 10. +" </div> +" </li> +" <li> +" <div> +" Added native support for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">float16_t</span></code> +" and <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bfloat16_t</span></code> instead of using interchange +" formats. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/cobalt">Cobalt</a>:</span> " <ul> " <li> " <div> @@ -67961,7 +68019,7 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/compat/">Compat</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/compat/">Compat</a>:</span> " <ul> " <li> " <div> @@ -67981,7 +68039,96 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/core/">Core</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/container/">Container</a>:</span> +" <ul> +" <li> +" <div> +" Fixed bugs/issues: +" <ul> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/285">GitHub +" #285: <em>"devector&lt;&gt;::push_front asserts +" after clear()"</em></a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/280">GitHub +" #280: <em>"Several containers don't support non-movable +" types when move assigning"</em></a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/279">GitHub +" #279: <em>"small_vector cannot go back to use stack +" space"</em></a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/277">GitHub +" #277: <em>"Remove dep on boost::static_assert"</em></a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/275">GitHub +" #275: <em>"Compilation fails if custom key comparison +" is used"</em></a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/273">GitHub +" #273: <em>"flat_map/vector crashes on appends (memory +" corruption)"</em></a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/269">GitHub +" #269: <em>"flat_multimap::emplace not sorting elements +" under GCC"</em></a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/266">GitHub +" #266: <em>"small_vector&lt;T&gt; is misaligned on +" the stack in 32 bits"</em></a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/259">GitHub +" #259: <em>"Global variables"</em></a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/245">GitHub +" #245: <em>"flat_tree::insert ordered range doesn't +" assert sorting"</em></a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/container/issues/241">GitHub +" #241: <em>"flat_map should support same interface +" as std::map"</em></a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/core/">Core</a>:</span> " <ul> " <li> " <div> @@ -68002,12 +68149,19 @@ " type. (<a href="https://github.com/boostorg/core/issues/173">#173</a>) " </div> " </li> +" <li> +" <div> +" Added a workaround for an MSVC <a href="https://developercommunity.visualstudio.com/t/Compiler-bug:-Incorrect-C2247-and-C2248/10690025">bug</a> +" causing <code><span class="identifier">empty_value</span></code> +" compilation errors when it is used with a nested class. (<a href="https://github.com/boostorg/core/pull/175">PR#175</a>) +" </div> +" </li> " </ul> " </div> " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/crc/">CRC</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/crc/">CRC</a>:</span> " <ul> " <li> " <div> @@ -68026,7 +68180,7 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/filesystem/">Filesystem</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/filesystem/">Filesystem</a>:</span> " <ul> " <li> " <div> @@ -68082,7 +68236,7 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/format/">Format</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/format/">Format</a>:</span> " <ul> " <li> " <div> @@ -68095,7 +68249,7 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/function/">Function</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/function/">Function</a>:</span> " <ul> " <li> " <div> @@ -68113,7 +68267,7 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/gil/">GIL</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/gil/">GIL</a>:</span> " <ul> " <li> " <div> @@ -68195,7 +68349,7 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/graph/">Graph</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/graph/">Graph</a>:</span> " <ul> " <li> " <div> @@ -68294,7 +68448,101 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/lexical_cast/">LexicalCast</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/interprocess/">Interprocess</a>:</span> +" <ul> +" <li> +" <div> +" Fixed bugs: +" <ul> +" <li> +" <div> +" <a href="https://github.com/boostorg/interprocess/pull/191">GitHub +" #191 (<em>"vectorstream: support file sizes larger +" than INT_MAX "</em>)</a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/interprocess/pull/198">GitHub +" #198 (<em>"Minor fixes for documentation of offset_ptr"</em>)</a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/interprocess/pull/202">GitHub +" #202 (<em>"Allow to map message_queue in anonymous +" memory"</em>)</a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/interprocess/pull/207">GitHub +" #207 (<em>"cmake: link system libraries"</em>)</a>. +" </div> +" </li> +" <li> +" <div> +" <a href="https://github.com/boostorg/interprocess/pull/214">GitHub +" #214 (<em>"Doc: Fix github links"</em>)</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/intrusive/">Intrusive</a>:</span> +" <ul> +" <li> +" <div> +" Fixed bug <a href="https://github.com/boostorg/intrusive/issues/86">GitHub +" #86: <em>Invalid UTF-8 character in comment</em></a> +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/json/">JSON</a>:</span> +" <ul> +" <li> +" <div> +" Support for GCC versions older than version 5.0 is deprecated and +" <strong>will stop in Boost 1.88.0</strong>. +" </div> +" </li> +" <li> +" <div> +" <code><span class="identifier">source_location</span></code> parameter +" was added to throwing accessor functions. +" </div> +" </li> +" <li> +" <div> +" Parse option to tolerate invalid UTF-16 surrogate pairs, and produce +" <a href="https://simonsapin.github.io/wtf-8/">WTF-8</a>. +" </div> +" </li> +" <li> +" <div> +" Added accessor functions that return <code><span class="identifier">system</span><span class="special">::</span><span class="identifier">result</span></code>. +" </div> +" </li> +" <li> +" <div> +" Handle missing error case in direct parsing. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/lexical_cast/">LexicalCast</a>:</span> " <ul> " <li> " <div> @@ -68309,7 +68557,29 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/locale/">Locale</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/leaf/">leaf</a>:</span> +" <ul> +" <li> +" <div> +" More optimal verbose_diagnostic_info implementation. +" </div> +" </li> +" <li> +" <div> +" Bug fixes. +" </div> +" </li> +" <li> +" <div> +" Added [[nodiscard]] to class result&lt;&gt;. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/locale/">Locale</a>:</span> " <ul> " <li> " <div> @@ -68326,7 +68596,7 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/log/">Log</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/log/">Log</a>:</span> " <ul> " <li> " <div> @@ -68340,7 +68610,79 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/mysql/">MySQL</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/math/">Math</a>:</span> +" <ul> +" <li> +" <div> +" Correct Bessel function results at infinity, see <a href="https://github.com/boostorg/math/issues/1143">1143</a>. +" </div> +" </li> +" <li> +" <div> +" Improve Non Central T numerical stability, see <a href="https://github.com/scipy/scipy/issues/20693">scipy20693</a>. +" </div> +" </li> +" <li> +" <div> +" Correct <code><span class="identifier">float_next</span></code>/<code><span class="identifier">float_prior</span></code> behaviour at infinity. +" </div> +" </li> +" <li> +" <div> +" Prevent spurious underflow in non-central beta, see <a href="https://github.com/scipy/scipy/issues/20693">scipy20693</a>. +" </div> +" </li> +" <li> +" <div> +" Add improvement to Heuman Lambda precision. +" </div> +" </li> +" <li> +" <div> +" Improve Skew Normal root finding, see <a href="https://github.com/boostorg/math/issues/1120">1120</a>. +" </div> +" </li> +" <li> +" <div> +" Lots of minor fixes and improved code coverage. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/multiprecision/">Multiprecision</a>:</span> +" <ul> +" <li> +" <div> +" Make sure <code><span class="identifier">eval_convert_to</span><span class="special">()</span></code> does not terminate with super large +" numbers, see <a href="https://github.com/boostorg/multiprecision/pull/618">618</a>. +" </div> +" </li> +" <li> +" <div> +" Fix <code><span class="identifier">sinc</span></code> implementation +" to match behavior of Boost.Math. +" </div> +" </li> +" <li> +" <div> +" Fix divide-by-zero in cpp_int modulus operations. +" </div> +" </li> +" <li> +" <div> +" Fix underflow behavior consistency for integers greater than 128-bits, +" see <a href="https://github.com/boostorg/multiprecision/issues/626">626</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/mysql/">MySQL</a>:</span> " <ul> " <li> " <div> @@ -68479,7 +68821,25 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/process/">Process</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/odeint/">Odeint</a>:</span> +" <ul> +" <li> +" <div> +" Added CMake Option <code><span class="identifier">BOOST_NUMERIC_ODEINT_NO_ADAPTORS</span></code> +" to reduce dependencies, see <a href="https://github.com/boostorg/odeint/issues/82">82</a> +" </div> +" </li> +" <li> +" <div> +" Fixed CMake detection of MPI. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/process/">Process</a>:</span> " <ul> " <li> " <div> @@ -68502,7 +68862,7 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/stacktrace/">Stacktrace</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/stacktrace/">Stacktrace</a>:</span> " <ul> " <li> " <div> @@ -68576,7 +68936,25 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/unordered/">Unordered</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/test/">Test</a>:</span> +" <ul> +" <li> +" <div> +" Fix <code><span class="special">-</span><span class="identifier">Wundef</span></code> +" in configuration step. +" </div> +" </li> +" <li> +" <div> +" Fix unreachable return compilation error on MSVC. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/unordered/">Unordered</a>:</span> " <ul> " <li> " <div> @@ -68620,7 +68998,7 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/uuid/">UUID</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/uuid/">UUID</a>:</span> " <ul> " <li> " <div> @@ -68653,7 +69031,7 @@ " <li> " <div> " <em>Many</em> other improvements, see -" the <a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/uuid/doc/html/uuid.html#changes">revision history</a>. +" the <a href="https://www.boost.org/libs/uuid/doc/html/uuid.html#changes">revision history</a>. " </div> " </li> " </ul> @@ -68661,7 +69039,32 @@ " </li> " <li> " <div> -" <span class="library"><a href="https://www.boost.org/doc/libs/1_86_0_beta1/libs/winapi/">WinAPI</a>:</span> +" <span class="library"><a href="https://www.boost.org/libs/wave/">Wave</a>:</span> +" <ul> +" <li> +" <div> +" Replaced one use of vsprintf with the more secure vsnprintf +" </div> +" </li> +" <li> +" <div> +" Fixed bug: +" <ul> +" <li> +" <div> +" <a href="https://github.com/boostorg/wave/issues/197">#197</a>: Improper signed overflow handling (UB and a missing +" division check) +" </div> +" </li> +" </ul> +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="https://www.boost.org/libs/winapi/">WinAPI</a>:</span> " <ul> " <li> " <div> @@ -68913,11 +69316,11 @@ " </div> " -last_modified -@Fri, 26 Jul 2024 17:19:51 +0000 +@Wed, 14 Aug 2024 16:07:18 +0000 -quickbook "feed/history/boost_1_86_0.qbk -update_count -=1 +=2 ) (feed/history/unversioned.qbk -item diff --git a/users/history/in_progress.html b/users/history/in_progress.html index a74eb4eb..600387bb 100644 --- a/users/history/in_progress.html +++ b/users/history/in_progress.html @@ -30,1569 +30,6 @@ subject to change.

-

Version 1.86.0

- -

In Progress

- -
-
- - -
-

New Libraries

-
    -
  • -
    - TODO -
    -
  • -
-
-
-

Updated Libraries

-
    -
  • -
    - Atomic: -
      -
    • -
      - Use futex(2) - system call on OpenBSD since recent OpenBSD versions have removed - support for syscall(2). -
      -
    • -
    -
    -
  • -
  • -
    - Beast: -
      -
    • -
      - API Changes -
        -
      • -
        - Added HTTP status code 418 I'm - a teapot. -
        -
      • -
      -
      -
    • -
    • -
      - Fixes -
        -
      • -
        - Narrowing conversion in read_size_hint_db(). -
        -
      • -
      • -
        - Overloads that are ambiguous when using default completion - tokens. -
        -
      • -
      • -
        - Misplaced static_assert in http::basic_fields - move-assignment operator. -
        -
      • -
      • -
        - Underflow of bytes_transferred - in WebSocket partial write operations. -
        -
      • -
      • -
        - websocket::stream::read_size_hint() - does not exceed read_message_max. -
        -
      • -
      • -
        - Various warnings in tests. -
        -
      • -
      • -
        - Error handling in SSL shutdown operations in examples. -
        -
      • -
      • -
        - Annotate fallthrough case in zlib. -
        -
      • -
      • -
        - Handling of expired timers in basic_stream::ops::transfer_op. -
        -
      • -
      • -
        - Ambiguity in test::basic_stream - constructor overloads. -
        -
      • -
      • -
        - Partial parsing of the final chunk in http::parser. -
        -
      • -
      -
      -
    • -
    • -
      - Improvements -
        -
      • -
        - Graceful shutdown in server_flex_awaitable - example. -
        -
      • -
      • -
        - Simplified awaitable examples. -
        -
      • -
      • -
        - Added fuzzing targets. -
        -
      • -
      • -
        - Remove superfluous uses of std::bind - in some examples. -
        -
      • -
      • -
        - ssl_stream - does not use flat_stream. -
        -
      • -
      -
      -
    • -
    • -
      - Documentation -
        -
      • -
        - ssl_stream - and flat_stream - marked as deprecated. -
        -
      • -
      • -
        - net::ssl::stream is canonical in snippets - and examples. -
        -
      • -
      • -
        - Added SSL/TLS Shutdown - Procedure section. -
        -
      • -
      -
      -
    • -
    • -
      - Acknowledgements -
        -
      • -
        - tyler92, Ruslan Zakirov, Orgad Shaneh, Alexander Kernozhitsky -
        -
      • -
      -
      -
    • -
    -
    -
  • -
  • -
    - Charconv: -
      -
    • -
      - Fixed support for PPC64LE architecture. -
      -
    • -
    • -
      - Fixed support for platforms like Alpine linux that provide the <quadmath.h> header but not the compiled library. -
      -
    • -
    • -
      - Fixed first character pattern matching in from_chars - for integer types. -
      -
    • -
    • -
      - Fixed overflow detection for integers with base greater than 10. -
      -
    • -
    • -
      - Added native support for std::float16_t - and std::bfloat16_t instead of using interchange - formats. -
      -
    • -
    -
    -
  • -
  • -
    - Cobalt: -
      -
    • -
      - Added support for asio::cancel_after -
      -
    • -
    • -
      - Made asio::deferred co_await-able, because - it's asio's default token -
      -
    • -
    • -
      - Added noop utility -
      -
    • -
    • -
      - Added experimental support for stackful coroutines/fibers -
      -
    • -
    • -
      - Fixed movability of channel & coroutine types -
      -
    • -
    -
    -
  • -
  • -
    - Compat: -
      -
    • -
      - Added bind_front.hpp, - bind_back.hpp, invoke.hpp, - mem_fn.hpp, integer_sequence.hpp - and type_traits.hpp. -
      -
    • -
    • -
      - Added function_ref.hpp. -
      -
    • -
    -
    -
  • -
  • -
    - Container: - -
    -
  • -
  • -
    - Core: -
      -
    • -
      - Added a boost/core/pointer_in_range.hpp header with a pointer_in_range function template - to check if a pointer is within a given range. -
      -
    • -
    • -
      - Fixed type_name for - abstract classes. (#172) -
      -
    • -
    • -
      - Fixed boost/core/type_name.hpp compilation error with MSVC - with disabled native wchar_t - type. (#173) -
      -
    • -
    • -
      - Added a workaround for an MSVC bug - causing empty_value - compilation errors when it is used with a nested class. (PR#175) -
      -
    • -
    -
    -
  • -
  • -
    - CRC: -
      -
    • -
      - C++03 is no longer supported; a C++11 compiler is required. (This - includes GCC 4.6 or later, and MSVC 10.0 (VS 2010) or later.) -
      -
    • -
    • -
      - Removed dependencies on Array, Config, Integer, and TypeTraits. The - library is now standalone. -
      -
    • -
    -
    -
  • -
  • -
    - Filesystem: -
      -
    • -
      - is_empty operation - is now better protected against concurrent filesystem modifications. -
      -
    • -
    • -
      - On POSIX systems, is_empty - now indicates error if invoked on a file other than a regular file - or a directory. -
      -
    • -
    • -
      - On Windows, fixed file_size - and is_empty operating - on symlinks rather than the files the symlinks refer to. (#313) -
      -
    • -
    • -
      - directory_entry::refresh no longer throws an exception - if the file referenced by the entry doesn't exist. This makes directory_entry::status and directory_entry::symlink_status, - as well as methods based on them, behave similarly to the equivalent - standalone operations. The fact that the file does not exist is still - indicated via the error_code - returned by the corresponding directory_entry::refresh - overload, or can be seen by testing if the file type returned by - directory_entry::status or directory_entry::symlink_status - calls is file_type::file_not_found. - (#314) -
      -
    • -
    • -
      - Fixed weakly_canonical - testing path elements for existence relative to the current path - instead of the base path specified in the call, if the input path - was a relative path. -
      -
    • -
    • -
      - On Windows, fixed weakly_canonical - producing incorrect result path when the input path started with - "..". (#311) -
      -
    • -
    -
    -
  • -
  • -
    - Format: -
      -
    • -
      - C++03 is no longer supported; a C++11 compiler is required. (This - includes GCC 4.7 or later, and MSVC 12.0 (VS 2013) or later.) -
      -
    • -
    -
    -
  • -
  • -
    - Function: -
      -
    • -
      - Removed dependency on Boost.TypeTraits. -
      -
    • -
    • -
      - Brought back the argN_type - typedefs that were accidentally lost in 1.85. -
      -
    • -
    -
    -
  • -
  • -
    - GIL: -
      -
    • -
      - Added -
        -
      • -
        - Added tell() and error() functions to istream_device and ostream_device classes (PR#747). -
        -
      • -
      -
      -
    • -
    • -
      - Changed -
        -
      • -
        - Don't ignore custom color converter in color_converted_view - function (PR#726). -
        -
      • -
      • -
        - Added workaround for conflict with min() and max() macros on WinAPI (PR#745). -
        -
      • -
      • -
        - The use of boost::filesystem - in GIL is now configurable in CMake via option BOOST_GIL_USE_BOOST_FILESYSTEM - (PR#743). -
        -
      • -
      -
      -
    • -
    • -
      - Fixed -
        -
      • -
        - Fixed convolution in convolve_2d - (PR#723) -
        -
      • -
      • -
        - Normalize Gaussian 2D kernel to avoid darkening (PR#725) -
        -
      • -
      • -
        - Wrong buffer size in path string conversion functions for - std::wstring is fixed, avoiding - buffer overflows when using I/O-related functions with std::wstring paths (PR#746). -
        -
      • -
      -
      -
    • -
    • -
      - Acknowledgements -
        -
      • -
        - Christoph Gringmuth, Christopher Kormanyos, nicolacandussi, - Dirk Stolle, Olzhas Zhumabek -
        -
      • -
      -
      -
    • -
    -
    -
  • -
  • -
    - Graph: -
      -
    • -
      - Major update: C++14 is the - new minimum standard; this was partly dictated by dependencies (at - least to C++11) and partly by choice. If you require support for - an older standard, please contact the maintainer. -
      -
    • -
    • -
      - Remove direct dependency on Boost.Regex. -
      -
    • -
    • -
      - Fix several compilation errors caused by not explicitly including - common headers. -
      -
    • -
    • -
      - isomorphism: Fix - docs, ignore vertex_max_invariant - parameter in favour of cheaply calculating upper exclusive bound, - fix bug with Associative Property Map, improve space efficiency from - linear in the size of the maximum invariant to linear in the size - of g1. -
      -
    • -
    • -
      - boykov_kolmogorov_max_flow: - Fix named parameter overload. -
      -
    • -
    • -
      - adj_list_edge_iterator: - Fix maybe-uninitialized warnings. -
      -
    • -
    • -
      - hawick_circuits: - Add a parameter to optionally limit the depth of the search, causing - a potentially suboptimal answer to be returned early. -
      -
    • -
    • -
      - disjoint_sets: Improve - performance of link_sets - by removing redundant lookup of set representatives. -
      -
    • -
    • -
      - maximum_adjacency_search: - Refactor and more tests. -
      -
    • -
    • -
      - property: Use BOOST_ATTRIBUTE_NO_UNIQUE_ADDRESS - to remove wasted space. -
      -
    • -
    • -
      - labeled_graph: Fix - remove_labeled_vertex - so that it actually removes the label too. -
      -
    • -
    • -
      - r_c_shortest_paths: - Fix bug that the single-solution variant did not always return the - shortest path. -
      -
    • -
    • -
      - read_graphviz: Fix - stack overflow (oss-fuzz issue 66719) and non-keyword subgraph parsing. -
      -
    • -
    • -
      - Many miscellaneous improvements: broken links, typos, etc. -
      -
    • -
    -
    -
  • -
  • - -
  • -
  • - -
  • -
  • -
    - JSON: -
      -
    • -
      - Support for GCC versions older than version 5.0 is deprecated and - will stop in Boost 1.88.0. -
      -
    • -
    • -
      - source_location parameter - was added to throwing accessor functions. -
      -
    • -
    • -
      - Parse option to tolerate invalid UTF-16 surrogate pairs, and produce - WTF-8. -
      -
    • -
    • -
      - Added accessor functions that return system::result. -
      -
    • -
    • -
      - Handle missing error case in direct parsing. -
      -
    • -
    -
    -
  • -
  • -
    - LexicalCast: -
      -
    • -
      - Fixed conversion of std::basic_string_view - and boost::basic_string_view containing one - or more \0 - characters. Issue was introduced in 1.85.0. -
      -
    • -
    -
    -
  • -
  • -
    - leaf: -
      -
    • -
      - More optimal verbose_diagnostic_info implementation. -
      -
    • -
    • -
      - Bug fixes. -
      -
    • -
    • -
      - Added [[nodiscard]] to class result<>. -
      -
    • -
    -
    -
  • -
  • -
    - Locale: -
      -
    • -
      - Add support for custom allocators in conv::utf_to_utf -
      -
    • -
    • -
      - Don't build examples by default -
      -
    • -
    -
    -
  • -
  • -
    - Log: -
      -
    • -
      - Added a workaround for windres.exe - issue, when it is used in CMake to compile event log resource files - on MinGW-w64. (PR#231) -
      -
    • -
    -
    -
  • -
  • -
    - Math: -
      -
    • -
      - Correct Bessel function results at infinity, see 1143. -
      -
    • -
    • -
      - Improve Non Central T numerical stability, see scipy20693. -
      -
    • -
    • -
      - Correct float_next/float_prior behaviour at infinity. -
      -
    • -
    • -
      - Prevent spurious underflow in non-central beta, see scipy20693. -
      -
    • -
    • -
      - Add improvement to Heuman Lambda precision. -
      -
    • -
    • -
      - Improve Skew Normal root finding, see 1120. -
      -
    • -
    • -
      - Lots of minor fixes and improved code coverage. -
      -
    • -
    -
    -
  • -
  • -
    - Multiprecision: -
      -
    • -
      - Make sure eval_convert_to() does not terminate with super large - numbers, see 618. -
      -
    • -
    • -
      - Fix sinc implementation - to match behavior of Boost.Math. -
      -
    • -
    • -
      - Fix divide-by-zero in cpp_int modulus operations. -
      -
    • -
    • -
      - Fix underflow behavior consistency for integers greater than 128-bits, - see 626. -
      -
    • -
    -
    -
  • -
  • -
    - MySQL: -
      -
    • -
      - The long-deprecated functions query, - start_query, execute_statement and start_statement_execution (and - their async equivalents) have been removed. -
      -
    • -
    • -
      - Breaking changes to experimental APIs: -
        -
      • -
        - The identifier - class (client-side SQL formatting) has been removed. Use the - new format specifiers feature, instead. -
        -
      • -
      • -
        - The required interface for custom formatters has been changed - to accomodate the new format specifiers API. -
        -
      • -
      • -
        - any_connection::async_connect - now requires that its connect_params - argument be kept alive until the operation completes. The overload - taking a const connect_params* - has been removed. -
        -
      • -
      • -
        - character_set::name - is now a const char* - instead of a string_view, - as MySQL character set names can't contain NULL characters. -
        -
      • -
      • -
        - any_connection - internal buffer is now limited to 64MB. If you need to read - or write rows bigger than that, increase any_connection_params::max_buffer_size. - connection - and their helper typedefs are not limited. -
        -
      • -
      • -
        - Renamed any_connection_params::initial_read_buffer_size - to initial_buffer_size. -
        -
      • -
      • -
        - Renamed pool_params::initial_read_buffer_size - to initial_buffer_size. -
        -
      • -
      -
      -
    • -
    • -
      - New experimental API: pipelines. - Pipelines can increase efficiency by coalescing several requests - in a single network packet. Pipelines can be used to run text queries, - prepare, execute and close statements, reset session state and set - the connection's character set. -
      -
    • -
    • -
      - Client-side SQL formatting now supports ranges out of the box. Formatting - can be further customized using the new sequence - function. Use cases like batch inserts and batch lookups can be significantly - simplified using this functionality. -
      -
    • -
    • -
      - Client-side SQL formatting now supports format specifiers which modify - how values are formatted. {:i} - formats a string as a dynamic SQL identifiers, and {:r} outputs a raw unescaped -
      -
    • -
    • -
      - The static interface (static_results - and static_execution_state) - now supports Boost.Pfr types using pfr_by_name - and pfr_by_position. - Added underlying_row_t - to support such types. -
      -
    • -
    • -
      - date and datetime can now be constructed - from and converted to C++20 std::chrono::local_time. -
      -
    • -
    • -
      - Added any_connection_params::max_buffer_size, - which allows to set a limit to the connection's internal buffer. -
      -
    • -
    • -
      - Added is_fatal_error, - which allows users can now distinguish between fatal (which require - closing and re-opening the connection) and non-fatal error codes. -
      -
    • -
    • -
      - Added formattable_ref, - a type-erased reference type that can refer to any type satisfying - the Formattable concept. -
      -
    • -
    • -
      - Fixed an ODR violation under MSVC which could cause crashes in release - builds when using Boost.MySQL with other code also using asio::coroutine in different translation - units. -
      -
    • -
    -
    -
  • -
  • -
    - Odeint: -
      -
    • -
      - Added CMake Option BOOST_NUMERIC_ODEINT_NO_ADAPTORS - to reduce dependencies, see 82 -
      -
    • -
    • -
      - Fixed CMake detection of MPI. -
      -
    • -
    -
    -
  • -
  • -
    - Process: -
      -
    • -
      - Moved the old boost.process to v1 subfolder and inline namespace. - deprecated process/*.hpp v1 headers -
      -
    • -
    • -
      - Turned v2 into a compile library. -
      -
    • -
    • -
      - Fixed usage on alpine linux / musl -
      -
    • -
    -
    -
  • -
  • -
    - Stacktrace: -
      -
    • -
      - Big new feature: stacktrace from arbitrary - exception for Windows. std::stacktrace::from_current_exception() now works on Windows platform. - Many thanks to huangqinjin - for the implementation PR#159 - Now on POSIX and Windows - the from_current_exception() function returns the stacktrace - of the current exception object as if the stacktrace was captured - at the point of throwing the exception. -
      -
    • -
    • -
      - Fixed inclusion of rarely used Windows SDK headers which can cause - conflict with other code using Windows SDK. Thanks to Marat - Abrarov for fixing the issue PR#157. -
      -
    • -
    • -
      - Build option boost.stacktrace.from_exception - now properly works on MacOS. Thanks to Peter - Dimov for the fix PR#166. -
      -
    • -
    • -
      - Fixed a typo in assert expression. Thanks to Kilian - Henneberger for the bug report #164. -
      -
    • -
    • -
      - Fixed shadowing warnings. Thanks to Nigel - Stewart for the bug report #141. -
      -
    • -
    • -
      - Added dladdr minimal - support for AIX. Many thanks to Clément Chigot for the implementation - PR#114. -
      -
    • -
    • -
      - Added Boost::stacktrace CMake alias that refers - to the best supported implementation of Boost.Stacktrace on the platform. - Thanks to Alex for - the feature PR#167. -
      -
    • -
    • -
      - Significant improvement of CMake: multiple fixes, added many new - tests, improved CI. Many thanks to Peter - Dimov for all the improvements. -
      -
    • -
    • -
      - Fix addr2line work when the process is looked up via PATH. Thanks to Schreischildkroete - for the bug report and to Jens - Richter for fix #72. -
      -
    • -
    -
    -
  • -
  • -
    - Test: -
      -
    • -
      - Fix -Wundef - in configuration step. -
      -
    • -
    • -
      - Fix unreachable return compilation error on MSVC. -
      -
    • -
    -
    -
  • -
  • -
    - Unordered: -
      -
    • -
      - Added container pmr - aliases when header <memory_resource> - is available. The alias boost::unordered::pmr::[container] refers to boost::unordered::[container] with a std::pmr::polymorphic_allocator - allocator type. -
      -
    • -
    • -
      - Equipped open-addressing and concurrent containers to internally - calculate and provide statistical metrics affected by the quality - of the hash function. This functionality is enabled by the global - macro BOOST_UNORDERED_ENABLE_STATS. -
      -
    • -
    • -
      - Avalanching hash functions must now be marked via an is_avalanching typedef with an - embedded value constant - set to true (typically, - defining is_avalanching - as std::true_type). using - is_avalanching = - void is deprecated but allowed - for backwards compatibility. -
      -
    • -
    • -
      - Added Visual Studio Natvis framework custom visualizations for containers - and iterators. This works for all containers with an allocator using - raw pointers. In this release, containers and iterators are not supported - if their allocator uses fancy pointers. This may be addressed in - later releases. -
      -
    • -
    -
    -
  • -
  • -
    - UUID: -
      -
    • -
      - Major update. -
      -
    • -
    • -
      - C++03 is no longer supported, a C++11 compiler is required. (This - includes GCC 4.8 or later, MSVC 14.0 (VS 2015) or later, and MinGW-w64.) -
      -
    • -
    • -
      - Decreased number of Boost dependencies from 39 (in total) to just - 5. -
      -
    • -
    • -
      - Updated to reflect the newer RFC - 9562. -
      -
    • -
    • -
      - Added generators for time-based UUIDs. -
      -
    • -
    • -
      - Many other improvements, see - the revision history. -
      -
    • -
    -
    -
  • -
  • -
    - Wave: -
      -
    • -
      - Replaced one use of vsprintf with the more secure vsnprintf -
      -
    • -
    • -
      - Fixed bug: -
        -
      • -
        - #197: Improper signed overflow handling (UB and a missing - division check) -
        -
      • -
      -
      -
    • -
    -
    -
  • -
  • -
    - WinAPI: -
      -
    • -
      - Added BOOST_USE_WINAPI_VERSION - CMake option, which allows users to specify the Windows version for - Boost to target. -
      -
    • -
    -
    -
  • -
-
-
-

Updated Tools

-
    -
  • -
    - BoostBook: -
      -
    • -
      - DTD updated: constructor, - copy-assignment and destructor - elements are now allowed inside method-group - elements. -
      -
    • -
    • -
      - Many fixes and improvements in Doxygen-generated documentation: -
        -
      • -
        - Fixed duplicate equal signs in Doxygen-generated enum value - initializers. -
        -
      • -
      • -
        - Disabled alphabetical sorting of function arguments. The sorting - can be re-enabled by setting the new boost.sort.params - XSL parameter to 1. -
        -
      • -
      • -
        - Added support for custom class member grouping. See Doxygen - tags @name - and @{/@}. -
        -
      • -
      • -
        - Added support for Doxygen references to classes, methods, enums, - variables, etc. (see @ref tag). -
        -
      • -
      • -
        - Added support for @remark and @important - tags. -
        -
      • -
      • -
        - Added support for @parblock tags, which can - be used to place multiple paragraphs under a tag that expects - a single paragraph as an argument (e.g. @returns). -
        -
      • -
      • -
        - Template parameter defaults that refer to implementation details - are now concealed, similar to function parameter defaults. -
        -
      • -
      • -
        - Improved presentation of unnamed enums. Instead of showing - a synthesized name such as @0, the name is either omitted - or is [unnamed], if the name is necessary - to introduce a link to the enum documentation. -
        -
      • -
      • -
        - Changed the "See Also" (@sa) blocks to be displayed - inline, similar to "Returns". -
        -
      • -
      • -
        - Fixed presentation of multiple exception specifications (@throws). -
        -
      • -
      • -
        - Added support for free form description of throwing behavior. - If the exception type after the @throws tag is "~" - then the exception type is omitted from the output, and the - following description is displayed directly in the "Throws" - section. -
        -
      • -
      • -
        - Removed redundant spaces in return types and template parameters. -
        -
      • -
      -
      -
    • -
    -
    -
  • -
  • -
    - Build: - -
    -
  • -
-
-
-

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 and Glen Fernandes managed this release. -

-
-
-
diff --git a/users/history/version_1_85_0.html b/users/history/version_1_85_0.html index 59a73a83..f9891b86 100644 --- a/users/history/version_1_85_0.html +++ b/users/history/version_1_85_0.html @@ -48,6 +48,29 @@
+
+

Known Issues

+

+ These are patches from library authors which were found too late to be fixed + in the release. +

+
    +
  • +
    + Container +
      +
    • +
      + flat_map/multimap containers can crash or return invalid results + in some compilers due to UB in the library, see #273. + Patch. +
      +
    • +
    +
    +
  • +
+

New Libraries