2
0
mirror of https://github.com/boostorg/website.git synced 2026-01-23 18:12:16 +00:00
Files
website/generated/dev.rss
2019-05-06 22:43:08 -04:00

7641 lines
358 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:boostbook="urn:boost-org:boostbook" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<generator>Boost Website Site Tools</generator>
<title>Release notes for work in progress boost</title>
<link>https://www.boost.org/</link>
<atom:link href="https://www.boost.org/generated/dev.rss" rel="self" type="application/rss+xml" />
<description></description>
<language>en-us</language>
<copyright>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)</copyright>
<item><title>Version 1.70.0</title><link>https://www.boost.org/users/history/version_1_70_0.html</link><guid>https://www.boost.org/users/history/version_1_70_0.html</guid><pubDate>Fri, 12 Apr 2019 06:04:48 +0000</pubDate><description>
&lt;div id="version_1_70_0.known_issues"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Known Issues&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
These are patches from library authors which were found too late to be fixed
in the release. Be careful as they have not been through the normal testing
process.
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fix moved-from executor in idle ping timeout (&lt;a href="https://github.com/boostorg/beast/issues/1599"&gt;#1599&lt;/a&gt;)
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://www.boost.org/patches/1_70_0/0001-beast-fix-moved-from-executor.patch"&gt;Beast
patch&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_70_0.new_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;New Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/outcome/"&gt;Outcome&lt;/a&gt;:&lt;/span&gt; A set of tools for reporting
and handling function failures in contexts where &lt;em&gt;directly&lt;/em&gt;
using C++ exception handling is unsuitable, from Niall Douglas.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/histogram/"&gt;Histogram&lt;/a&gt;:&lt;/span&gt; Fast and extensible
multi-dimensional histograms with convenient interface for C++14, from
Hans Dembinski.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_70_0.updated_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Updated Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/asio/"&gt;Asio&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
This release includes a number of new features, bug fixes, performance
enhancements, and documentation improvements. Notable changes include:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added the ability to use custom I/O executors with I/O objects
(such as sockets).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added a new &lt;code&gt;&lt;span class="identifier"&gt;async_result&lt;/span&gt;&lt;/code&gt;
form with an &lt;code&gt;&lt;span class="identifier"&gt;initiate&lt;/span&gt;&lt;/code&gt;
static member function.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Updated the Coroutines TS support and promoted it to the &lt;code&gt;&lt;span class="identifier"&gt;asio&lt;/span&gt;&lt;/code&gt; namespace.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added a new &lt;code&gt;&lt;span class="identifier"&gt;DynamicBuffer_v2&lt;/span&gt;&lt;/code&gt;
concept which is CopyConstructible.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added a new &lt;code&gt;&lt;span class="identifier"&gt;async_compose&lt;/span&gt;&lt;/code&gt;
function that simplifies the implementation of user-defined
asynchronous operations.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added a &lt;code&gt;&lt;span class="identifier"&gt;make_strand&lt;/span&gt;&lt;/code&gt;
helper function.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Relaxed the completion condition type requirements to only
require move-constructibility rather than copy-constructibility.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added a constructor for &lt;code&gt;&lt;span class="identifier"&gt;local&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;basic_endpoint&lt;/span&gt;&lt;/code&gt;
that takes a &lt;code&gt;&lt;span class="identifier"&gt;string_view&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added the noexcept qualifier to various functions.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added a new &lt;code&gt;&lt;span class="identifier"&gt;BOOST_ASIO_DISABLE_VISIBILITY&lt;/span&gt;&lt;/code&gt;
configuration &lt;code&gt;&lt;span class="preprocessor"&gt;#define&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Enabled recycling of the memory used to type-erase a function
object with the polymorphic executor.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed receive operations to return the correct number of
bytes transferred when truncation (&lt;code&gt;&lt;span class="identifier"&gt;error&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;message_size&lt;/span&gt;&lt;/code&gt;)
occurs on a datagram-oriented socket.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed calculation of absolute timeout when the backend uses
&lt;code&gt;&lt;span class="identifier"&gt;pthread_cond_timedwait&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed the range-based asynchronous connect operation to deduce
the &lt;code&gt;&lt;span class="identifier"&gt;EndpointSequence&lt;/span&gt;&lt;/code&gt;
iterator type.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;buffer_sequence_begin&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;buffer_sequence_end&lt;/span&gt;&lt;/code&gt;
to prevent implicit conversion.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Ensured SSL handshake errors are propagated to the peer before
the local operation completes.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Suppressed the &lt;code&gt;&lt;span class="identifier"&gt;eof&lt;/span&gt;&lt;/code&gt;
error on SSL shutdown as it actually indicates success.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added a fallback error code for when we OpenSSL produces an
&lt;code&gt;&lt;span class="identifier"&gt;SSL_ERROR_SYSCALL&lt;/span&gt;&lt;/code&gt;
result without an associated error.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed composed asynchronous read and write operations to
move buffer sequence objects.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a macOS-specific warning about the deprecation of &lt;code&gt;&lt;span class="identifier"&gt;OSMemoryBarrier&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed compile errors that occur when using the composed read
and write operations with MSVC 11.0.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improved &lt;code&gt;&lt;span class="identifier"&gt;dispatch&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;post&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span class="identifier"&gt;defer&lt;/span&gt;&lt;/code&gt; documentation.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a Windows-specific memory leak that may occur when &lt;code&gt;&lt;span class="identifier"&gt;system_executor&lt;/span&gt;&lt;/code&gt; is used.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Consult the &lt;a href="https://www.boost.org/doc/libs/1_70_0/doc/html/boost_asio/history.html"&gt;Revision
History&lt;/a&gt; for further details.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/beast/"&gt;Beast&lt;/a&gt;:&lt;/span&gt;
&lt;strong&gt;BIG
Update!!!&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Some APIs have changed.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/quickref.html"&gt;reference&lt;/a&gt;
shows a star ★ next to each new item.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Beast needs your help!
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/beast/wiki/Companies-and-Individuals-Using-Beast"&gt;Tell
Us&lt;/a&gt; how you or your company use Beast
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Please &lt;a href="https://github.com/boostorg/beast/issues/new"&gt;report&lt;/a&gt;
any bugs, feature requests, or general feedback
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Join the &lt;a href="https://cppalliance.org/slack/"&gt;&lt;strong&gt;C++ Slack Workspace&lt;/strong&gt;&lt;/a&gt; for free
and chat with us in the #beast and #boost channels
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Don't forget to &lt;a href="https://github.com/boostorg/beast"&gt;star
the repository&lt;/a&gt; ⭐!
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
More tutorials, code like the pros!
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://www.boost.org/libs/beast/doc/html/beast/using_io/asio_refresher.html"&gt;Networking
Refresher&lt;/a&gt; teaches you from the ground up.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Updated &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/using_io/writing_composed_operations/echo.html"&gt;Asynchronous
Echo&lt;/a&gt; example
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Updated &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/using_io/writing_composed_operations/detect_ssl.html"&gt;&lt;strong&gt;Detect SSL&lt;/strong&gt;&lt;/a&gt; composed operation
tutorial
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://www.boost.org/libs/beast/example/websocket/server/chat-multi"&gt;websocket-chat-multi&lt;/a&gt;
threaded chat server with a JavaScript &lt;a href="https://www.boost.org/libs/beast/example/websocket/server/chat-multi/chat_client.html"&gt;browser
client&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://www.boost.org/libs/beast/doc/html/beast/ref/boost__beast__basic_stream.html"&gt;&lt;code&gt;&lt;span class="identifier"&gt;basic_stream&lt;/span&gt;&lt;/code&gt;&lt;/a&gt; and &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/ref/boost__beast__tcp_stream.html"&gt;&lt;code&gt;&lt;span class="identifier"&gt;tcp_stream&lt;/span&gt;&lt;/code&gt;&lt;/a&gt; offer:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Timeouts: &lt;code&gt;&lt;span class="identifier"&gt;async_read_some&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;async_write_some&lt;/span&gt;&lt;/code&gt;
complete with &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/ref/boost__beast__error.html"&gt;&lt;code&gt;&lt;span class="identifier"&gt;error&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;timeout&lt;/span&gt;&lt;/code&gt;&lt;/a&gt; on expiration!
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Traffic-shaping policies &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/ref/boost__beast__simple_rate_policy.html"&gt;&lt;code&gt;&lt;span class="identifier"&gt;simple&lt;/span&gt;&lt;/code&gt;&lt;/a&gt; and &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/ref/boost__beast__unlimited_rate_policy.html"&gt;&lt;code&gt;&lt;span class="identifier"&gt;unlimited&lt;/span&gt;&lt;/code&gt;&lt;/a&gt;, or a user-defined
&lt;a href="https://www.boost.org/libs/beast/doc/html/beast/concepts/RatePolicy.html"&gt;&lt;em&gt;RatePolicy&lt;/em&gt;&lt;/a&gt;!
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Put the strand directly on the socket using &lt;a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1322r0.html"&gt;P1322R0&lt;/a&gt;,
no more &lt;code&gt;&lt;span class="identifier"&gt;bind_executor&lt;/span&gt;&lt;/code&gt;
at call sites!
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Base classes &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/ref/boost__beast__async_base.html"&gt;&lt;code&gt;&lt;span class="identifier"&gt;async_base&lt;/span&gt;&lt;/code&gt;&lt;/a&gt; and &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/ref/boost__beast__stable_async_base.html"&gt;&lt;code&gt;&lt;span class="identifier"&gt;stable_async_base&lt;/span&gt;&lt;/code&gt;&lt;/a&gt; and handle
all composed operation boilerplate for you.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://www.boost.org/libs/beast/doc/html/beast/ref/boost__beast__ssl_stream.html"&gt;&lt;code&gt;&lt;span class="identifier"&gt;ssl_stream&lt;/span&gt;&lt;/code&gt;&lt;/a&gt; provides a movable,
assignable SSL stream with a flat write optimization.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
All asynchronous operations use Asio's &lt;code&gt;&lt;span class="identifier"&gt;async_initiate&lt;/span&gt;&lt;/code&gt;
for efficient integration with Coroutines TS.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;&lt;em&gt;faster compilation&lt;/em&gt;&lt;/strong&gt;,
define &lt;code&gt;&lt;span class="identifier"&gt;BOOST_BEAST_SEPARATE_COMPILATION&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="preprocessor"&gt;#include&lt;/span&gt; &lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;beast&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;src&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
in one of your .cpp files!
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
See the full &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/release_notes.html"&gt;Release
Notes&lt;/a&gt; for a complete list of changes.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/context/"&gt;Context&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/91"&gt;#91&lt;/a&gt;: cleanup of stack if creating ucontext fails
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/97"&gt;#97&lt;/a&gt;: add missing BOST_CONTEXT_DECL in stack_context
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/98"&gt;#98&lt;/a&gt;: fix jump_i386_sysv_macho writing garbage to the x87
control word
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/coroutine2/"&gt;Coroutine2&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/coroutine2/issues/28"&gt;#28&lt;/a&gt;: don't crash on pthread_cancel
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/dll/"&gt;DLL&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
New macro &lt;a href="https://www.boost.org/libs/dll/BOOST_DLL_USE_STD_FS.html"&gt;BOOST_DLL_USE_STD_FS&lt;/a&gt;.
Define it to &lt;code&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;/code&gt; to make
the Boost.DLL use C++17's &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;filesystem&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;path&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;system_error&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;error_code&lt;/span&gt;&lt;/code&gt; (&lt;a href="https://github.com/boostorg/dll/issues/21"&gt;#21&lt;/a&gt;). Note that
exception types change from &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;system&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;system_error&lt;/span&gt;&lt;/code&gt;
to &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;system_error&lt;/span&gt;&lt;/code&gt;, so make sure to update
&lt;code&gt;&lt;span class="keyword"&gt;catch&lt;/span&gt;&lt;/code&gt;es.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Significant rewrite of the dynamic loadable detection and decoration
logic. More precise errors are now reported in case of loading failures.
Added &lt;code&gt;&lt;span class="identifier"&gt;shared_library&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;decorate&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; function that returns a decorated
path to the library without doing any platform related queries and
detections. Prefer using &lt;code&gt;&lt;span class="identifier"&gt;shared_library&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;load&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;shared_library&lt;/span&gt;&lt;/code&gt;
constructors for better results (many thanks to Loïc Touraine for
the work &lt;a href="https://github.com/boostorg/dll/pull/23"&gt;PR#23&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
CI hardening, docs updates, typos fixes, cleanups and many portability
fixes.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/dynamic_bitset/"&gt;Dynamic Bitset&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Disabled hardware-assisted popcount (added in 1.69.0) on MSVC due
to undefined behavior on older CPUs. (&lt;a href="https://github.com/boostorg/dynamic_bitset/issues/33"&gt;#33&lt;/a&gt; &lt;a href="https://github.com/boostorg/dynamic_bitset/pull/35"&gt;PR#35&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/fiber/"&gt;Fiber&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/191"&gt;#191&lt;/a&gt;: ignore unused argument warning
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/196"&gt;#196&lt;/a&gt;: fix high contention on remote_ready_splk_
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/filesystem/"&gt;Filesystem&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a few instances of dereferencing &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;end&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; in &lt;code&gt;&lt;span class="identifier"&gt;path&lt;/span&gt;&lt;/code&gt;
implementation.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed program termination in case of out of memory condition in directory
iterators constructors and operations accepting a reference to &lt;code&gt;&lt;span class="identifier"&gt;error_code&lt;/span&gt;&lt;/code&gt;. (&lt;a href="https://github.com/boostorg/filesystem/issues/58"&gt;#58&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed possible linking errors caused by missing definitions of static
members of &lt;code&gt;&lt;span class="identifier"&gt;path&lt;/span&gt;&lt;/code&gt;.
(&lt;a href="https://svn.boost.org/trac/boost/ticket/12759"&gt;#12759&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed possible use of uninitialized data in directory iterator increment
operation on Linux.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added support for movability to directory iterators.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added file status query overloads for &lt;code&gt;&lt;span class="identifier"&gt;directory_entry&lt;/span&gt;&lt;/code&gt;.
This avoids a relatively expensive OS query when file status is requested
for a result of dereferencing a directory iterator. (&lt;a href="https://github.com/boostorg/filesystem/pull/55"&gt;PR#55&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Reworked &lt;code&gt;&lt;span class="identifier"&gt;current_path&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;read_symlink&lt;/span&gt;&lt;/code&gt;
implementation to avoid possible memory exhaustion on broken or tampered
with filesystems. The functions now have an internal limit of the
path size they will accept from the OS, which is currently 16 MiB.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Increased the size of the internal buffer used by &lt;code&gt;&lt;span class="identifier"&gt;copy_file&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/integer/"&gt;Integer&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added Extended Euclidean Algorithm and Modular Multiplicative Inverse
function. (Nick Thompson, &lt;a href="https://github.com/boostorg/integer/pull/11"&gt;PR#11&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/log/"&gt;Log&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
New features:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added support for generating another log file name before collecting
the file in the text file sink backend. This allows to combine
appending to an existing log file with timestamps and file
counters in log filenames, and, consequently, file collection
in general.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
See &lt;a href="https://www.boost.org/libs/log/doc/html/log/changelog.html"&gt;changelog&lt;/a&gt;
for more details.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/math/"&gt;Math&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
New features:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Add Lanczos smoothing derivatives
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Move &lt;code&gt;&lt;span class="identifier"&gt;numerical_differentiation&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;
from &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;math&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;tools&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;/code&gt; to &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;math&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;differentiation&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;finite_difference&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add mean, variance, skewness, kurtosis, median, Gini coefficient,
and median absolute deviation to &lt;code&gt;&lt;span class="identifier"&gt;tools&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;univariate_statistics&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add correlation coefficients and covariance to &lt;code&gt;&lt;span class="identifier"&gt;tools&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;bivariate_statistics&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add absolute Gini coefficient, Hoyer sparsity, oracle SNR,
and the &lt;em&gt;M&lt;/em&gt;[sub 2]&lt;em&gt;M&lt;/em&gt;[sub
4] SNR estimator to &lt;code&gt;&lt;span class="identifier"&gt;tools&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;signal_statistics&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add total variation, l0, l1, l2, and sup norms, as well as
corresponding distance functions to &lt;code&gt;&lt;span class="identifier"&gt;tools&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;norms&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add move constructors for polynomials, support complex coefficients,
add &lt;code&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;prime&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;integrate&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt;
methods.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add &lt;code&gt;&lt;span class="identifier"&gt;quadratic_roots&lt;/span&gt;&lt;/code&gt;
to &lt;code&gt;&lt;span class="identifier"&gt;tools&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;roots&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add support for complex-valued functions to Newton's method
in &lt;code&gt;&lt;span class="identifier"&gt;roots&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add Catmull-Rom interpolator.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/mp11/"&gt;Mp11&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Renamed &lt;code&gt;&lt;span class="identifier"&gt;mp_invoke&lt;/span&gt;&lt;/code&gt;
to &lt;code&gt;&lt;span class="identifier"&gt;mp_invoke_q&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;mp_similar&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;mp_set_union&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;mp_set_intersection&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;mp_set_difference&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;mp_not_fn&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;mp_transform_first&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;mp_transform_second&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;mp_transform_third&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;mp_filter&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;mp_eval_if_not&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;mp_eval_or&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;mp_valid_q&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;mp_back&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;mp_pop_back&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/multi_index/"&gt;Multi-index Containers&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;size_type&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span class="identifier"&gt;difference_type&lt;/span&gt;&lt;/code&gt; are now defined
as the allocator's same-named types. This will not make any difference
in the vast majority of cases, but allows for some degree of control
of resulting internal structures via user-defined allocator types
(see issue &lt;a href="https://github.com/boostorg/multi_index/issues/17"&gt;#17&lt;/a&gt; for motivation). For the moment being,
this change is not documented in the reference section (i.e., it
has semi-official status).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Maintenance work.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/multiprecision/"&gt;Multiprecision&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fix various conversion issues in the traits classes, check for compatibility
with Boost.Optional.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Prevent instantiation of &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;numeric_limits&lt;/span&gt;&lt;/code&gt;
on any old type when checking for convertibility. See &lt;a href="https://github.com/boostorg/multiprecision/issues/98"&gt;#98&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Update variable precision code to account for arbitrary precision
integers. See &lt;a href="https://github.com/boostorg/multiprecision/issues/103"&gt;#103&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add support for XML serialization archives.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix bug in fixed precision iostream formatting in &lt;code&gt;&lt;span class="identifier"&gt;mpf_float&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;mpfr_float&lt;/span&gt;&lt;/code&gt;. See
&lt;a href="https://github.com/boostorg/multiprecision/issues/113"&gt;#113&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add more overloads for special functions which are better handled
natively by MPFR.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed bug in generic &lt;code&gt;&lt;span class="identifier"&gt;exp&lt;/span&gt;&lt;/code&gt;
implementation which could cause invariant failure.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed generic conversion from float to integer to avoid undefined
behaviour. See &lt;a href="https://github.com/boostorg/multiprecision/issues/110"&gt;#110&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/poly_collection/"&gt;PolyCollection&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improved handling of stateful allocators and allocator propagation
traits, after an error reported by Billy O'Neal (&lt;a href="https://github.com/boostorg/poly_collection/pull/9"&gt;PR#9&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a potentially serious bug with an internal cache structure.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/spirit/"&gt;Spirit&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Removed use of deprecated &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;detail&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;iterator&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;
header. &lt;a href="https://github.com/boostorg/spirit/pull/432"&gt;PR#432&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
X3
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Integer parsers should now handle user defined types. &lt;a href="https://github.com/boostorg/spirit/pull/429"&gt;PR#429&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;Note:&lt;/strong&gt; The &lt;code&gt;&lt;span class="identifier"&gt;check_overflow&lt;/span&gt;&lt;/code&gt;
trait default implementation now relies on &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;numeric_limits&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;::&lt;/span&gt;&lt;span class="identifier"&gt;is_bounded&lt;/span&gt;&lt;/code&gt;
instead of &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;integer_traits&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;::&lt;/span&gt;&lt;span class="identifier"&gt;is_integral&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed sequence into plain parsing. Now it triggers a compile
time error instead of silently parsing the the sequence and
taking the last value as a result. &lt;a href="https://github.com/boostorg/spirit/pull/439"&gt;PR#439&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;parse_rule&lt;/span&gt;&lt;/code&gt;
instantiation with &lt;code&gt;&lt;span class="identifier"&gt;BOOST_SPIRIT_INSTANTIATE&lt;/span&gt;&lt;/code&gt;
when:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
A rule has no attribute. &lt;a href="https://github.com/boostorg/spirit/pull/455"&gt;PR#455&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
An actual attribute is not of type a rule was declared
with. &lt;a href="https://github.com/boostorg/spirit/pull/456"&gt;PR#456&lt;/a&gt; &lt;a href="https://github.com/boostorg/spirit/issues/457"&gt;#457&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
A &lt;strong&gt;huge&lt;/strong&gt; thanks goes out to
&lt;a href="https://github.com/Xeverous"&gt;Xeverous&lt;/a&gt; for
reporting a regression in &lt;a href="https://github.com/boostorg/spirit/issues/453"&gt;#453&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed unneded attribute synthesization and no-transformation
attribute reference pass-through in rules. &lt;a href="https://github.com/boostorg/spirit/issues/444"&gt;#444&lt;/a&gt; &lt;a href="https://github.com/boostorg/spirit/pull/449"&gt;PR#449&lt;/a&gt; &lt;a href="https://github.com/boostorg/spirit/pull/452"&gt;PR#452&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed broken 1.0#INF parser. It was poorly documented and
never worked. &lt;a href="https://github.com/boostorg/spirit/issues/415"&gt;#415&lt;/a&gt; &lt;a href="https://github.com/boostorg/spirit/pull/458"&gt;PR#458&lt;/a&gt; &lt;a href="https://svn.boost.org/trac/boost/ticket/8699"&gt;#8699&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The undocumented &lt;code&gt;&lt;span class="identifier"&gt;make_attribute&lt;/span&gt;&lt;/code&gt;
trait was removed due to bugs &lt;a href="https://github.com/boostorg/spirit/pull/449"&gt;PR#449&lt;/a&gt;
and to simplify
attribute transformation. &lt;a href="https://github.com/boostorg/spirit/pull/460"&gt;PR#460&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
If you were using it to workaround bugs in attribute transformation
- they should not be needed anymore as of this release.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The integer value parser now respects &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;numeric_limits&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;::&lt;/span&gt;&lt;span class="identifier"&gt;digits10&lt;/span&gt;&lt;/code&gt;
value. &lt;a href="https://github.com/boostorg/spirit/pull/469"&gt;PR#469&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed underflow check for a &lt;code&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="identifier"&gt;Min&lt;/span&gt; &lt;span class="special"&gt;%&lt;/span&gt;
&lt;span class="identifier"&gt;Base&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;
&lt;span class="special"&gt;==&lt;/span&gt; &lt;span class="number"&gt;0&lt;/span&gt;&lt;/code&gt;
corner case. &lt;a href="https://github.com/boostorg/spirit/pull/469"&gt;PR#469&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed an output value on overflow of IgnoreOverflowDigits=true
integer parser. &lt;a href="https://github.com/boostorg/spirit/pull/470"&gt;PR#470&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Container attribute elements were copyied, but not moved. &lt;a href="https://github.com/boostorg/spirit/pull/472"&gt;PR#472&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Special handling of references in &lt;code&gt;&lt;span class="identifier"&gt;transform_attribute&lt;/span&gt;&lt;/code&gt;
was removed. &lt;a href="https://github.com/boostorg/spirit/pull/480"&gt;PR#480&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
V2
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Macro name collisions and namespace conflicts with Boost.Endian
were fixed. &lt;a href="https://github.com/boostorg/spirit/pull/349"&gt;PR#349&lt;/a&gt; &lt;a href="https://github.com/boostorg/spirit/pull/482"&gt;PR#482&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
utree
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed UB in tag getter due to left shift of negative
value. &lt;a href="https://github.com/boostorg/spirit/pull/423"&gt;PR#423&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed double-conversion (&lt;code&gt;&lt;span class="identifier"&gt;spirit&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string&lt;/span&gt;
&lt;span class="special"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string&lt;/span&gt;
&lt;span class="special"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="identifier"&gt;spirit&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string&lt;/span&gt;&lt;/code&gt;).
&lt;a href="https://github.com/boostorg/spirit/pull/462"&gt;PR#462&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Qi
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added static asserts for rule skipper type problems.
&lt;a href="https://github.com/boostorg/spirit/pull/427"&gt;PR#427&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The &lt;code&gt;&lt;span class="identifier"&gt;check_overflow&lt;/span&gt;&lt;/code&gt;
trait default implementation now relies on &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;numeric_limits&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;::&lt;/span&gt;&lt;span class="identifier"&gt;is_bounded&lt;/span&gt;&lt;/code&gt; instead
of &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;integer_traits&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;::&lt;/span&gt;&lt;span class="identifier"&gt;is_integral&lt;/span&gt;&lt;/code&gt;
&lt;a href="https://github.com/boostorg/spirit/pull/429"&gt;PR#429&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Integer parsers should now handle user defined types.
&lt;a href="https://github.com/boostorg/spirit/pull/429"&gt;PR#429&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;Note:&lt;/strong&gt; The &lt;code&gt;&lt;span class="identifier"&gt;check_overflow&lt;/span&gt;&lt;/code&gt; trait
default implementation now relies on &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;numeric_limits&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;::&lt;/span&gt;&lt;span class="identifier"&gt;is_bounded&lt;/span&gt;&lt;/code&gt;
instead of &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;integer_traits&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;::&lt;/span&gt;&lt;span class="identifier"&gt;is_integral&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed broken 1.0#INF parser. It was poorly documented
and never worked. &lt;a href="https://github.com/boostorg/spirit/issues/415"&gt;#415&lt;/a&gt; &lt;a href="https://github.com/boostorg/spirit/pull/458"&gt;PR#458&lt;/a&gt; &lt;a href="https://svn.boost.org/trac/boost/ticket/8699"&gt;#8699&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The undocumented &lt;code&gt;&lt;span class="identifier"&gt;make_attribute&lt;/span&gt;&lt;/code&gt;
trait was merged into &lt;code&gt;&lt;span class="identifier"&gt;transform_attribute&lt;/span&gt;&lt;/code&gt;
trait. &lt;a href="https://github.com/boostorg/spirit/pull/471"&gt;PR#471&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The &lt;code&gt;&lt;span class="identifier"&gt;pre_transform&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;post_transform&lt;/span&gt;&lt;/code&gt;,
and &lt;code&gt;&lt;span class="identifier"&gt;fail_transform&lt;/span&gt;&lt;/code&gt;
utility functions were removed in favor of directly using
&lt;code&gt;&lt;span class="identifier"&gt;pre&lt;/span&gt;&lt;/code&gt;/&lt;code&gt;&lt;span class="identifier"&gt;post&lt;/span&gt;&lt;/code&gt;/&lt;code&gt;&lt;span class="identifier"&gt;fail&lt;/span&gt;&lt;/code&gt; of the transform
trait. &lt;a href="https://github.com/boostorg/spirit/pull/467"&gt;PR#467&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The integer value parser now respects &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;numeric_limits&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;::&lt;/span&gt;&lt;span class="identifier"&gt;digits10&lt;/span&gt;&lt;/code&gt;
value. &lt;a href="https://github.com/boostorg/spirit/pull/469"&gt;PR#469&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed underflow check for a &lt;code&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="identifier"&gt;Min&lt;/span&gt; &lt;span class="special"&gt;%&lt;/span&gt;
&lt;span class="identifier"&gt;Base&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;
&lt;span class="special"&gt;==&lt;/span&gt; &lt;span class="number"&gt;0&lt;/span&gt;&lt;/code&gt;
corner case. &lt;a href="https://github.com/boostorg/spirit/pull/469"&gt;PR#469&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed an output value on overflow of IgnoreOverflowDigits=true
integer parser. &lt;a href="https://github.com/boostorg/spirit/pull/470"&gt;PR#470&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Special handling of references in &lt;code&gt;&lt;span class="identifier"&gt;transform_attribute&lt;/span&gt;&lt;/code&gt;
was removed. &lt;a href="https://github.com/boostorg/spirit/pull/480"&gt;PR#480&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Lex
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed UB in default constructor of lexer with user specified
token type. &lt;a href="https://github.com/boostorg/spirit/pull/420"&gt;PR#420&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Classic:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;position_iterator&lt;/span&gt;&lt;/code&gt;
forming reference to local when the underlying iterator dereference
operator returns a non-reference type. &lt;a href="https://github.com/boostorg/spirit/pull/422"&gt;PR#422&lt;/a&gt; &lt;a href="https://svn.boost.org/trac/boost/ticket/9737"&gt;#9737&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/stacktrace/"&gt;Stacktrace&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Build fix for iOS 32-bit ARM (many thanks to Ivan Ponomarev for providing
the fix &lt;a href="https://github.com/boostorg/stacktrace/pull/70"&gt;PR#70&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed multiple typos, warnings and updated the docs.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/test/"&gt;Test&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Boost.test v3.10 see the &lt;a href="https://www.boost.org/users/history/libs/test/doc/html/boost_test/change_log.html"&gt;Changes
log&lt;/a&gt; for more details.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Breaking changes:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Boost.Test &lt;code&gt;&lt;span class="identifier"&gt;minimal&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;
is now showing a deprecation warning,
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Change in floating point comparison may fail tests that were
silently not using the floating point comparison logic prior
to this release,
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Internal API change to &lt;code&gt;&lt;span class="identifier"&gt;unit_test_log_formatter&lt;/span&gt;&lt;/code&gt;,
see detailed change log,
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
New feature:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Floating point comparison has been extended to capture non-floating
point and arithmetic operands: expressions like &lt;code&gt;&lt;span class="identifier"&gt;BOOST_TEST&lt;/span&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="number"&gt;3.0001&lt;/span&gt; &lt;span class="special"&gt;==&lt;/span&gt;
&lt;span class="number"&gt;3&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;&lt;/code&gt;
now use floating point support of Boost.Test,
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Custom datasets are not required to declare the &lt;code&gt;&lt;span class="identifier"&gt;sample&lt;/span&gt;&lt;/code&gt; type field anymore,
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Extending template test cases from &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;tuple&lt;/span&gt;&lt;/code&gt;
to any variadic definition,
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows support for timed tests,
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Timed test on test-suites,
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed dependency to Boost.Timer,
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
New macro &lt;code&gt;&lt;span class="identifier"&gt;BOOST_TEST_INFO_SCOPE&lt;/span&gt;&lt;/code&gt;
for scoped context declaration,
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improved &lt;code&gt;&lt;span class="identifier"&gt;BOOST_TEST_CONTEXT&lt;/span&gt;&lt;/code&gt;
syntax
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bug fixes and pull requests:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Trac tickets: &lt;a href="https://svn.boost.org/trac/boost/ticket/7397"&gt;#7397&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/9434"&gt;#9434&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13106"&gt;#13106&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13418"&gt;#13418&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GitHub Issues: &lt;a href="https://github.com/boostorg/test/issues/133"&gt;#133&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/138"&gt;#138&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/141"&gt;#141&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/157"&gt;#157&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/test/issues/160"&gt;#160&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/174"&gt;#174&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/176"&gt;#176&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/177"&gt;#177&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/180"&gt;#180&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/test/issues/181"&gt;#181&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/194"&gt;#194&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/196"&gt;#196&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/198"&gt;#198&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/199"&gt;#199&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/test/issues/202"&gt;#202&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/203"&gt;#203&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/204"&gt;#204&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GitHub Pull Requests: &lt;a href="https://github.com/boostorg/test/pull/171"&gt;PR#171&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/172"&gt;PR#172&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/182"&gt;PR#182&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/test/pull/183"&gt;PR#183&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/184"&gt;PR#184&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/190"&gt;PR#190&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/195"&gt;PR#195&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/test/pull/195"&gt;PR#195&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/197"&gt;PR#197&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/205"&gt;PR#205&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/type_index/"&gt;TypeIndex&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Support for the GHS C++ compiler added (many thanks to Brandon Castellano
for providing the patch &lt;a href="https://github.com/boostorg/type_index/pull/28"&gt;PR#28&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Optimized string and type comparisons (many thanks to Andrey Semashev
for providing the patch &lt;a href="https://github.com/boostorg/type_index/pull/23"&gt;PR#23&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed clang-win compilation (many thanks to Peter Dimov for providing
the patch &lt;a href="https://github.com/boostorg/type_index/pull/25"&gt;PR#25&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
CI hardening.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/type_traits/"&gt;TypeTraits&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added is_bounded_array and is_unbounded_array (Glen Fernandes).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added copy_reference and copy_cv_ref (Glen Fernandes).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improved support for msvc with /clr option.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Misc compiler compatibility fixes.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/variant/"&gt;Variant&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Many cleanups and internal improvements, many thanks to Nikita Kniazev
(&lt;a href="https://github.com/boostorg/variant/pull/55"&gt;PR#55&lt;/a&gt;, &lt;a href="https://github.com/boostorg/variant/pull/56"&gt;PR#56&lt;/a&gt;, &lt;a href="https://github.com/boostorg/variant/pull/57"&gt;PR#57&lt;/a&gt;) and Louis Dionne
(&lt;a href="https://github.com/boostorg/variant/pull/51"&gt;PR#51&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
CI hardening.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/numeric/ublas/"&gt;uBlas&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Addition of tensor framework (many thanks to Cem Bassoy &lt;a href="https://github.com/boostorg/ublas/pull/65"&gt;PR#65&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Addition of basic OpenCL support (many thanks to Fady Essam &lt;a href="https://github.com/boostorg/ublas/pull/59"&gt;PR#59&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Integration of basic benchmark suite (many thanks to Stefan Seefeld
&lt;a href="https://github.com/boostorg/ublas/pull/57"&gt;PR#57&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
CI integration and hardening
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_70_0.compilers_tested"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Compilers Tested&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
Boost's primary test compilers are:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Linux:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.0, 4.0.1, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++0x: 3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 6.0.1, 7.0.0, 8.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.2,
6.0.1, 7.0.0, 8.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++17: 5.0.2, 6.0.1, 7.0.0, 8.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.4.7, 4.5.3, 4.6.3, 5.4.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.4.7
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.4.0, 5.5.0, 6.4.0, 7.1.0, 7.3.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.3.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Intel, C++14: 18.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
OS X:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++11: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++14: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++17: 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++1z: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++2a: 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.6.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.1.0, 7.2.0, 7.3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
FreeBSD:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Boost's additional test compilers include:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Linux:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.0, 3.8.1, 3.9.1, 4.0.1, 5.0.2, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++0x: 3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 6.0.1, 7.0.0, 8.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.2,
6.0.1, 7.0.0, 8.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++17: 5.0.2, 6.0.1, 7.0.0, 8.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.4.7, 4.5.3, 4.6.3, 4.9.4, 5.4.0, 5.5.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.4.7
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.4.0, 5.5.0, 6.3.0, 6.4.0, 7.1.0, 7.3.0, 8.0.1, 8.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.3.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Intel, C++14: 18.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
OS X:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++11: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++14: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++17: 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++1z: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++2a: 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.6.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.1.0, 7.2.0, 7.3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
FreeBSD:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_70_0.acknowledgements"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Acknowledgements&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
Daniel James, Vladimir Prus, Marshall Clow and Michael Caisse managed this
release.
&lt;/p&gt;
&lt;/div&gt;
</description></item><item><title>Version 1.69.0</title><link>https://www.boost.org/users/history/version_1_69_0.html</link><guid>https://www.boost.org/users/history/version_1_69_0.html</guid><pubDate>Wed, 12 Dec 2018 02:58:32 +0000</pubDate><description>
&lt;div id="version_1_69_0.notes_for_non_windows_users"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Notes for non-Windows
users&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
The Boost build system now supports visibilities. If you are building shared
libraries, they will use hidden visibility by default. As a result Boost shared
libraries become smaller, load faster and have less chances to get a symbol
collision.
&lt;/p&gt;
&lt;p&gt;
See &lt;a href="https://www.boost.org/build/manual/develop/index.html#bbv2.builtin.features.visibility"&gt;Boost.Build
visibility and local-visibility&lt;/a&gt; for more info.
&lt;/p&gt;
&lt;p&gt;
To disable that feature you can use use a command line &lt;code&gt;&lt;span class="special"&gt;./&lt;/span&gt;&lt;span class="identifier"&gt;b2&lt;/span&gt; &lt;span class="identifier"&gt;visibility&lt;/span&gt;&lt;span class="special"&gt;=&lt;/span&gt;&lt;span class="identifier"&gt;global&lt;/span&gt;&lt;/code&gt; to
build.
&lt;/p&gt;
&lt;/div&gt;
&lt;div id="version_1_69_0.new_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;New Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/safe_numerics/"&gt;Safe Numerics&lt;/a&gt;:&lt;/span&gt; A library
for guaranteed correct integer arithmetic for C++14 and later, from Robert
Ramey.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_69_0.updated_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Updated Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/any/"&gt;Any&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed issue with visibility. Now &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;any&lt;/span&gt;&lt;/code&gt;
variables constructed in one shared library with hidden visibility
could be used and destroyed in other shared library with hidden visibility.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Maintenance: dropped some dependencies on other Boost libraries,
fixes for docs.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/asio/"&gt;Asio&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a problem with the detection of &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;future&lt;/span&gt;&lt;/code&gt;
availability with libstdc++.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed compile error in regex overload of &lt;code&gt;&lt;span class="identifier"&gt;read_until&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a timer heap corruption issue that can occur when moving a
cancelled timer.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed detection of &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;experimental&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string_view&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string_view&lt;/span&gt;&lt;/code&gt; with newer clang/libc++.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed MSVC version detection for availability of &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;invoke_result&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed the buffer sequence traits to test the new requirements, if
&lt;code&gt;&lt;span class="keyword"&gt;decltype&lt;/span&gt;&lt;/code&gt; is available.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed an MSVC issue when building with exceptions disabled.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added SSL context options for TLS v1.3.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added a compile-time test for TLS v1 support.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed the macro used to test for TLS v1.2 support.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Prevented global objects from being created once per thread on Windows.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a crash when using &lt;code&gt;&lt;span class="identifier"&gt;size&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;max_size&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; or &lt;code&gt;&lt;span class="identifier"&gt;empty&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; on default-constructed resolver
results.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed to move the return value in &lt;code&gt;&lt;span class="identifier"&gt;basic_resolver_results&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;begin&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; to avoid copying.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Enabled move support for the Intel Compiler.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string_view&lt;/span&gt;&lt;/code&gt; detection issue when
using clang-cl.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed the handler tracking operation name for &lt;code&gt;&lt;span class="identifier"&gt;io_context&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;executor_type&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;dispatch&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a buffer overflow that could occur when parsing an address
string with a 64-bit scope id.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added examples showing how to write composed operations.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added C++11 versions of the Timeouts, Timers, SOCKS4 and SSL examples.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed minor issues in documentation and examples.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/assign/"&gt;Assign&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Add rvalue reference, perfect forwarding, and variadic template support
(&lt;a href="https://github.com/boostorg/assign/pull/6"&gt;PR#6&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/10477"&gt;#10477&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Avoid conversion to container's allocator (&lt;a href="https://github.com/boostorg/assign/pull/29"&gt;PR#29&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/5419"&gt;#5419&lt;/a&gt;)
(&lt;a href="https://svn.boost.org/trac/boost/ticket/7364"&gt;#7364&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/beast/"&gt;Beast&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
This version fixes some issues in the examples, and provides a new
experimental socket which supports built-in timeouts on asynchronous
operations.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
New CppCon 2018 &lt;a href="https://www.boost.org/doc/libs/master/libs/beast/doc/html/beast/examples.html#beast.examples.cppcon_2018"&gt;websocket
chat example&lt;/a&gt; and &lt;a href="https://www.youtube.com/watch?v=7FQwAjELMek"&gt;presentation
video&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
For a complete list of changes, please view the official &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/release_notes.html"&gt;Release
Notes&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/circular_buffer/"&gt;CircularBuffer&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Use the empty base optimization for storing allocators that are empty
and not final (Glen Fernandes).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/concept_check/"&gt;Concept Check&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Removed dependency on mpl. (&lt;a href="https://github.com/boostorg/concept_check/pull/14"&gt;PR#14&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/context/"&gt;Context&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/85"&gt;#85&lt;/a&gt;: duplicate alias should be missing GCC alias
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/87"&gt;#87&lt;/a&gt;: the clang-win toolset (clang-cl.exe) uses masm from
the underlying msvc
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/90"&gt;#90&lt;/a&gt;: remove useless lines in Jamfile.v2
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/91"&gt;#91&lt;/a&gt;: add .file section for *_elf_gas.S files
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/core/"&gt;Core&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Implemented &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;empty_value&lt;/span&gt;&lt;/code&gt;,
for library authors to conveniently leverage the Empty Base Optimization
to store objects of potentially empty types (Glen Fernandes). This
facility is now used in Boost.Beast, Boost.CircularBuffer, Boost.MultiArray,
and more.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Implemented &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;quick_exit&lt;/span&gt;&lt;/code&gt;
to provide the C++11 standard library facility &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;quick_exit&lt;/span&gt;&lt;/code&gt;
functionality (Peter Dimov).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Reduced the number of statics in Lightweight Test, and employ lighter
abort behavior for MSVC compilers upon failure to call &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;report_errors&lt;/span&gt;&lt;/code&gt; (Glen Fernandes).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/dll/"&gt;DLL&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Resolved link issues with the smart library &lt;a href="https://github.com/boostorg/dll/issues/20"&gt;#20&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Maintenance: fixes for docs and tests.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/dynamic_bitset/"&gt;Dynamic Bitset&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Performance improvements (over 2x in some cases). (&lt;a href="https://github.com/boostorg/dynamic_bitset/pull/26"&gt;PR#26&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added range-based set, reset, flip methods (&lt;a href="https://github.com/boostorg/dynamic_bitset/pull/27"&gt;PR#27&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/fiber/"&gt;Fiber&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/181"&gt;#181&lt;/a&gt;: unbuffered_channel push not return
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/182"&gt;#182&lt;/a&gt;: Remove UTF-8 BOM at begining of the file
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/183"&gt;#183&lt;/a&gt;: Fix boost-install use; should only be issued once
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/filesystem/"&gt;Filesystem&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Don't use &lt;code&gt;&lt;span class="identifier"&gt;readdir_r&lt;/span&gt;&lt;/code&gt;
on Linux and Android since the &lt;code&gt;&lt;span class="identifier"&gt;readdir&lt;/span&gt;&lt;/code&gt;
function is already thread-safe. (&lt;a href="https://github.com/boostorg/filesystem/pull/68"&gt;PR#68&lt;/a&gt;, &lt;a href="https://github.com/boostorg/filesystem/issues/72"&gt;#72&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed crashes in &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;filesystem&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;copy&lt;/span&gt;&lt;/code&gt;
due to undefined behavior in the implementation. (&lt;a href="https://github.com/boostorg/filesystem/pull/71"&gt;PR#71&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed undefined behavior in &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;filesystem&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;directory_iterator&lt;/span&gt;&lt;/code&gt;
implementation. (&lt;a href="https://github.com/boostorg/filesystem/pull/77"&gt;PR#77&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed compilation errors when using directory iterators with &lt;code&gt;&lt;span class="identifier"&gt;BOOST_FOREACH&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed workarounds for older PGI C++ compiler versions to fix compilation
on the newer ones. (&lt;a href="https://github.com/boostorg/filesystem/pull/49"&gt;PR#49&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed MSVC warnings about narrowing conversions. (&lt;a href="https://github.com/boostorg/filesystem/pull/44"&gt;PR#44&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/flyweight/index.html"&gt;Flyweight&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed some issues in GCC related to Boost.MPL placeholder expression
handling.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Maintenance fixes.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/function/"&gt;Function&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Removed dependencies on mpl, test (&lt;a href="https://github.com/boostorg/function/pull/20"&gt;PR#20&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/function/pull/22"&gt;PR#22&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/geometry/"&gt;Geometry&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improvements
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/486"&gt;PR#486&lt;/a&gt; Karney's solution of direct geodesic problem
for internal use (thanks to Adeel Ahmad).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/490"&gt;PR#490&lt;/a&gt; Discrete Frechet and Hausdorff distance algorithms
(thanks to Yaghyavardhan Singh Khangarot).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/496"&gt;PR#496&lt;/a&gt; New run-time and upgraded compile-time SRS
transformation interfaces (undocumented for now due to potential
interface changes).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Solved issues
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/issues/520"&gt;#520&lt;/a&gt; Missing documentation for dsv().
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/issues/521"&gt;#521&lt;/a&gt; Wrong documentation description for distance().
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/issues/524"&gt;#524&lt;/a&gt; Fixed 'enumeration values not handled in switch'
warnings.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/issues/527"&gt;#527&lt;/a&gt; Workaround for VS 2017 (msvc-15).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bugfixes
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/505"&gt;PR#505&lt;/a&gt; Fixed overflow in overlay algorithms (thanks
to Dane Springmeyer).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/518"&gt;PR#518&lt;/a&gt; Fixed passing of temporaries in append() (thanks
to xventura81).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/522"&gt;PR#522&lt;/a&gt; Support python3 in building documentation.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/integer/"&gt;Integer&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;pending&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;integer_log2&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt; header is deprecated and will
be removed in future releases. Use &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;integer&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;integer_log2&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;
instead.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/iostreams/"&gt;Iostreams&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Remove call to nonexistent member seekpos() of std::fpos (&lt;a href="https://github.com/boostorg/iostreams/pull/58"&gt;PR#58&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/iterator/"&gt;Iterator&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed compilation problems with ambiguous unqualified calls to &lt;code&gt;&lt;span class="identifier"&gt;advance&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span class="identifier"&gt;distance&lt;/span&gt;&lt;/code&gt;
on iterators whose types involve types in the namespace &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;/code&gt;. (&lt;a href="https://github.com/boostorg/iterator/issues/43"&gt;#43&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/lexical_cast/"&gt;LexicalCast&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed sign-conversion warnings &lt;a href="https://svn.boost.org/trac/boost/ticket/8991"&gt;#8991&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Maintenance: dropped some dependencies on other Boost libraries,
fixed build system warnings.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/log/"&gt;Log&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
General changes:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Updated syslog sink backend to avoid using deprecated Boost.ASIO
interfaces. (&lt;a href="https://github.com/boostorg/log/issues/59"&gt;#59&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bug fixes:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a possible incorrect estimation of the total size of
rotated files in the target directory of a text file sink in
some cases.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
See &lt;a href="https://www.boost.org/libs/log/doc/html/log/changelog.html"&gt;changelog&lt;/a&gt;
for more details.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/logic/"&gt;Logic&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;Breaking change:&lt;/strong&gt; Use explicit operator
bool when available (&lt;a href="https://github.com/boostorg/logic/pull/5"&gt;PR#5&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/math/"&gt;Math&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Add LambertW functions.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Update integration routines to support complex valued integrands
and contour integrals.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added the derivative of the Barycentric rational approximation.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Minor fixes to better support variable precision floating point types.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed use of deprecated Boost.Endian in favour of Predef.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Updated continued fraction and series evaluation code to support
complex types.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Prevent logic error leading to infinite loop in toms748_solve. See
&lt;a href="https://github.com/boostorg/math/issues/138"&gt;#138&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix mean and standard_deviation for extreme_value_distribution. See
&lt;a href="https://github.com/boostorg/math/issues/139"&gt;#139&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improve heuristics used in newton_raphson_iterate. See &lt;a href="https://github.com/boostorg/math/issues/145"&gt;#145&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix result of &lt;code&gt;&lt;span class="identifier"&gt;erf&lt;/span&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="identifier"&gt;NaN&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;&lt;/code&gt;. See &lt;a href="https://github.com/boostorg/math/issues/141 #141"&gt;#141 #141&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Big push to reduce GCC warnings. See &lt;a href="https://github.com/boostorg/math/issues/136 #136"&gt;#136 #136&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Refactor polynomial addition. See &lt;a href="https://github.com/boostorg/math/pull/132"&gt;PR#132&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix for vxWorks having a &lt;code&gt;&lt;span class="identifier"&gt;real&lt;/span&gt;&lt;/code&gt;
function in the global namespace. See &lt;a href="https://github.com/boostorg/math/pull/131"&gt;PR#131&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improve &lt;code&gt;&lt;span class="identifier"&gt;sinc&lt;/span&gt;&lt;/code&gt; approximations
and add better tests.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix typo in Student's T hypothesis testing documentation, see &lt;a href="https://github.com/boostorg/math/issues/143"&gt;#143&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/mp11/"&gt;Mp11&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Implemented the &lt;code&gt;&lt;span class="identifier"&gt;mp_starts_with&lt;/span&gt;&lt;/code&gt;
facility (Glen Fernandes).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/multi_array/"&gt;MultiArray&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improve C++11 allocator model support including: Support for C++11
minimal allocators, support for stateful allocators, using the allocator
for construction and destruction of the value type, and using the
empty base optimization for storing empty or stateless allocators
(Glen Fernandes).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/multi_index/"&gt;Multi-index Containers&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Introduced an alternative &lt;a href="https://www.boost.org/libs/multi_index/doc/tutorial/key_extraction.html#key"&gt;terse
key specification syntax&lt;/a&gt; for C++17 compliant environments.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/multiprecision/"&gt;Multiprecision&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Big update to better support variable precision types so that the
precision of the result is always the largest of all the arguments.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add support for allocators that are &lt;code&gt;&lt;span class="identifier"&gt;final&lt;/span&gt;&lt;/code&gt;
in __cpp_int (Glen Fernandes).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed use of deprecated Boost.Endian in favour of Predef.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add support for &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string_view&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed minor bug in constant initialization. See &lt;a href="https://github.com/boostorg/multiprecision/issues/67"&gt;#67&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Make assignment of non-finite value to &lt;code&gt;&lt;span class="identifier"&gt;cpp_int&lt;/span&gt;&lt;/code&gt;
a runtime errors. See &lt;a href="https://github.com/boostorg/multiprecision/issues/58"&gt;#58&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added typedefs for &lt;code&gt;&lt;span class="identifier"&gt;cpp_bin_float_oct&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;cpp_complex_oct&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/poly_collection/"&gt;PolyCollection&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added Boost.PolyCollection-specific versions of algorithms &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;for_each_n&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;sample&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/pool/"&gt;Pool&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Replace boost::mutex use to avoid a dependency on Boost.Thread (&lt;a href="https://github.com/boostorg/pool/pull/23"&gt;PR#23&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/preprocessor/"&gt;Preprocessor&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Supports the new C++ standard conforming preprocessor in VC++ 14.1,
which is currently enabled by using the /experimental:preprocessor
switch, in Visual Studio 2017 15.8 on up.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/rational/"&gt;Rational&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Add constexpr support (&lt;a href="https://github.com/boostorg/rational/pull/28"&gt;PR#28&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/rational/pull/32"&gt;PR#32&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/spirit/"&gt;Spirit&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.X3:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Drop own FP routines in favor of &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;math&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/392"&gt;#392&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/13531"&gt;#13531&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Missing visibility mark on exception types (&lt;a href="https://github.com/boostorg/spirit/issues/409"&gt;#409&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
to_utf8: Fixed wchar_t handling on Windows (&lt;a href="https://github.com/boostorg/spirit/issues/413"&gt;#413&lt;/a&gt;)
(&lt;a href="https://github.com/boostorg/spirit/issues/395"&gt;#395&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit V2
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Drop own FP routines in favor of &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;math&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/392"&gt;#392&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/13531"&gt;#13531&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Missing visibility mark on exception types (&lt;a href="https://github.com/boostorg/spirit/issues/409"&gt;#409&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed transform_attribute ambiguity (&lt;a href="https://github.com/boostorg/spirit/issues/407"&gt;#407&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/spirit/issues/396"&gt;#396&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
to_utf8: Fixed wchar_t handling on Windows (&lt;a href="https://github.com/boostorg/spirit/issues/413"&gt;#413&lt;/a&gt;)
(&lt;a href="https://github.com/boostorg/spirit/issues/395"&gt;#395&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.Classic:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Missing visibility mark on exception types (&lt;a href="https://github.com/boostorg/spirit/issues/409"&gt;#409&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/stacktrace/"&gt;Stacktrace&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;libbacktrace&lt;/span&gt;&lt;/code&gt; usage
was significantly improved. &lt;code&gt;&lt;span class="identifier"&gt;BOOST_STACKTRACE_USE_BACKTRACE&lt;/span&gt;&lt;/code&gt;
or &lt;code&gt;&lt;span class="identifier"&gt;boost_stacktrace_backtrace&lt;/span&gt;&lt;/code&gt;
users are encouraged to update:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Memory consumprion dropped down.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Stack capturing became faster by an order of magnitude.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;syminfo&lt;/span&gt;&lt;/code&gt; fallback
enabled to provide information for visible symbols even without
debug information (thanks to github user driesdeschout!)&lt;a href="https://github.com/boostorg/stacktrace/issues/60"&gt;#60&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/stacktrace/issues/61"&gt;#61&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Exact location of the &lt;code&gt;&lt;span class="identifier"&gt;backtrace&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;h&lt;/span&gt;&lt;/code&gt;
header now can be specified via &lt;code&gt;&lt;span class="identifier"&gt;BOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE&lt;/span&gt;&lt;/code&gt;,
to allow &lt;code&gt;&lt;span class="identifier"&gt;backtrace&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;h&lt;/span&gt;&lt;/code&gt;
header usage on platforms and compilers where that header is
unreachable otherwise (for example Ubuntu Xenial + Clang) &lt;a href="https://github.com/boostorg/stacktrace/issues/59"&gt;#59&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Optimized stack capturing if &lt;code&gt;&lt;span class="identifier"&gt;max_depth&lt;/span&gt;&lt;/code&gt;
is set (thanks to Jan Eisenhauer for the PR!) &lt;a href="https://github.com/boostorg/stacktrace/issues/67"&gt;#67&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;to_string&lt;/span&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="keyword"&gt;const&lt;/span&gt; &lt;span class="identifier"&gt;stacktrace&lt;/span&gt;&lt;span class="special"&gt;&amp;amp;&lt;/span&gt; &lt;span class="special"&gt;)&lt;/span&gt;&lt;/code&gt;
functions for fast conversion of stacktraces to &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string&lt;/span&gt;&lt;/code&gt;
&lt;a href="https://github.com/boostorg/stacktrace/issues/57"&gt;#57&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Maintenance: updated docs &lt;a href="https://github.com/boostorg/stacktrace/issues/62"&gt;#62&lt;/a&gt;, tests updated.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/system/"&gt;System&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Boost.System is now header-only. A stub library is still built for
compatibility, but linking to it is no longer necessary.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Even more functions have been marked &lt;code&gt;&lt;span class="keyword"&gt;constexpr&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The destructor of &lt;code&gt;&lt;span class="identifier"&gt;error_category&lt;/span&gt;&lt;/code&gt;
is now &lt;code&gt;&lt;span class="keyword"&gt;protected&lt;/span&gt;&lt;/code&gt; and
no longer &lt;code&gt;&lt;span class="keyword"&gt;virtual&lt;/span&gt;&lt;/code&gt;. This
is a potentially breaking change, but its impact is expected to be
limited.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;error_category&lt;/span&gt;&lt;/code&gt; now
has a constructor that accepts a 64 bit identifier, enabling distinct
category objects to compare equal.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The constructors of &lt;code&gt;&lt;span class="identifier"&gt;error_category&lt;/span&gt;&lt;/code&gt;
are now &lt;code&gt;&lt;span class="keyword"&gt;protected&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
A non-allocating, nonthrowing overload of &lt;code&gt;&lt;span class="identifier"&gt;message&lt;/span&gt;&lt;/code&gt;
has been added.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
A virtual function &lt;code&gt;&lt;span class="identifier"&gt;failed&lt;/span&gt;&lt;/code&gt;
has been added, allowing categories for which success is not synonymous
with 0.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The deprecated &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;system&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;throws&lt;/span&gt;&lt;/code&gt;
object has been removed.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;throws&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt;
is now deprecated and its use is discouraged.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The constructor of &lt;code&gt;&lt;span class="identifier"&gt;system_error&lt;/span&gt;&lt;/code&gt;
taking a single &lt;code&gt;&lt;span class="identifier"&gt;error_code&lt;/span&gt;&lt;/code&gt;
argument is now &lt;code&gt;&lt;span class="keyword"&gt;explicit&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;system_error&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;code&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt;
now returns by value.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/test/"&gt;Test&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Boost.test v3.9 see the &lt;a href="https://www.boost.org/users/history/libs/test/doc/html/boost_test/change_log.html"&gt;Changes
log&lt;/a&gt; for more details.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
New feature:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Official support of header-only variant of Boost.Test with
multiple translation units.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Now possible to manually add a test case by specifying its
name, with &lt;code&gt;&lt;span class="identifier"&gt;BOOST_TEST_CASE_NAME&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Better support of &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;exception&lt;/span&gt;&lt;/code&gt;
in the logs
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bug fixes and pull requests:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Trac tickets: &lt;a href="https://svn.boost.org/trac/boost/ticket/13380"&gt;#13380&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13625"&gt;#13625&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13637"&gt;#13637&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GitHub Issues: &lt;a href="https://github.com/boostorg/test/issues/149"&gt;#149&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/150"&gt;#150&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/156"&gt;#156&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/158"&gt;#158&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/test/issues/163"&gt;#163&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GitHub Pull Requests: &lt;a href="https://github.com/boostorg/test/pull/147"&gt;PR#147&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/148"&gt;PR#148&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/151"&gt;PR#151&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/test/pull/154"&gt;PR#154&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/161"&gt;PR#161&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/type_index/"&gt;TypeIndex&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fix the regression and speed up parsing of the &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;type_traits&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;
header by 30% (thanks to Nikita Kniazev for the PR!) &lt;a href="https://github.com/boostorg/type_index/issues/21"&gt;#21&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/utility/"&gt;Utility&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added support for non-inheritable empty types to &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;compressed_pair&lt;/span&gt;&lt;/code&gt;
by avoiding the empty base optimization for types which are declared
as final (Glen Fernandes).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/variant/"&gt;Variant&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed issue with visibility. Now &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;bad_visit&lt;/span&gt;&lt;/code&gt;
exception could cross the boundaries of shared library with hidden
visibility and could be catched in other shared library with hidden
visibility.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/yap/"&gt;YAP&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Minor changes to support MSVC++ version 14.15 (Visual Studio 2017
version 15.8).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Doc fixes.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_69_0.discontinued_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Discontinued Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Signals (v1) is now removed. Its removal was announced in 1.68 and its
deprecation was announced in 1.54. Boost 1.68 is the last release that
provides this library. Users are encouraged to use Signals2 instead. The
Boost community thanks Douglas Gregor for his work on Signals which served
its users well and which also inspired Signals2.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_69_0.compilers_tested"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Compilers Tested&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
Boost's primary test compilers are:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Linux:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.0, 4.0.1, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++0x: 3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.2,
6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++17: 5.0.2, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.4.7, 4.5.3, 4.6.3, 5.4.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.4.7
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.4.0, 5.5.0, 6.4.0, 7.1.0, 7.3.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.3.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Intel, C++14: 18.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
OS X:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++11: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++14: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++17: 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++1z: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++2a: 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.6.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.1.0, 7.2.0, 7.3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
FreeBSD:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Boost's additional test compilers include:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Linux:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.0, 3.8.1, 3.9.1, 4.0.1, 5.0.2, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++0x: 3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.2,
6.0.1, 7.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++17: 5.0.2, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.4.7, 4.5.3, 4.6.3, 4.9.4, 5.4.0, 5.5.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.4.7
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.4.0, 5.5.0, 6.3.0, 6.4.0, 7.1.0, 7.3.0, 8.0.1, 8.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.3.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Intel, C++14: 18.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
OS X:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++11: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++14: 9.0.0, 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++17: 9.1.0, 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++1z: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++2a: 10.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.6.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.1.0, 7.2.0, 7.3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
FreeBSD:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_69_0.acknowledgements"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Acknowledgements&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
Daniel James, Vladimir Prus, Marshall Clow and Michael Caisse managed this
release.
&lt;/p&gt;
&lt;/div&gt;
</description></item><item><title>Version 1.68.0</title><link>https://www.boost.org/users/history/version_1_68_0.html</link><guid>https://www.boost.org/users/history/version_1_68_0.html</guid><pubDate>Thu, 09 Aug 2018 03:46:16 +0000</pubDate><description>
&lt;div id="version_1_68_0.notes_for_windows_users"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Notes for Windows
users&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
Boost.WinAPI has been updated to target Windows 7 by default, where possible.
In previous releases Windows Vista was the default.
&lt;/p&gt;
&lt;p&gt;
Boost.WinAPI is used internally as the Windows SDK abstraction layer in a number
of Boost libraries, including Boost.Beast, Boost.Chrono, Boost.DateTime, Boost.Dll,
Boost.Log, Boost.Process, Boost.Stacktrace, Boost.System, Boost.Thread and
Boost.UUID. To select the target Windows version define &lt;code&gt;&lt;span class="identifier"&gt;BOOST_USE_WINAPI_VERSION&lt;/span&gt;&lt;/code&gt;
to the numeric version similar to &lt;code&gt;&lt;span class="identifier"&gt;_WIN32_WINNT&lt;/span&gt;&lt;/code&gt;
while compiling Boost and user's code. For example:
&lt;/p&gt;
&lt;pre&gt; b2 release define=BOOST_USE_WINAPI_VERSION=0x0501 stage
&lt;/pre&gt;
&lt;p&gt;
The list of Windows API version numbers can be seen on &lt;a href="https://msdn.microsoft.com/en-us/library/6sehtctf.aspx"&gt;this&lt;/a&gt;
page.
&lt;/p&gt;
&lt;/div&gt;
&lt;div id="version_1_68_0.new_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;New Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/yap/"&gt;YAP&lt;/a&gt;:&lt;/span&gt; An expression template library
for C++14 and later, from Zach Laine.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_68_0.updated_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Updated Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/beast/"&gt;Beast&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
This version fixes a missing executor work guard in all composed
operations used in the implementation. Users who are experiencing
crashes related to asynchronous completion handlers are encouraged
to upgrade.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
For a complete list of changes, please view the official &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/release_notes.html"&gt;Release
Notes&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/context/"&gt;Context&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/78"&gt;#78&lt;/a&gt;: Linker error with &lt;code&gt;&lt;span class="identifier"&gt;context&lt;/span&gt;&lt;span class="special"&gt;-&lt;/span&gt;&lt;span class="identifier"&gt;impl&lt;/span&gt;&lt;span class="special"&gt;=&lt;/span&gt;&lt;span class="identifier"&gt;ucontext&lt;/span&gt;&lt;/code&gt;:
multiple definition of &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;context&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;detail&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;current_rec&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/coroutine2/"&gt;Coroutine2&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/coroutine2/issues/14"&gt;#14&lt;/a&gt;: crash while stack unwinding
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/coroutine2/issues/18"&gt;#18&lt;/a&gt;: some guidance on why to use coroutine2
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/coroutine2/issues/20"&gt;#20&lt;/a&gt;: failes to compile test in due to the error C2039
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/coroutine2/issues/22"&gt;#22&lt;/a&gt;: undefined behaviour documentation
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/fiber/"&gt;Fiber&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/170"&gt;#170&lt;/a&gt;: buffered_channel::try_push has incorrect documentation
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/172: WIN64"&gt;#172: WIN64&lt;/a&gt;: 'invalid conversion from 'HANDLE' to
'std::thread::native_handle_type' errors for builds using mingw-w64
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/175"&gt;#175&lt;/a&gt;: throw exception "Operation not permitted"
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
NUMA support moved to extra library (fiber-numa); enabled via property
numa (numa=on)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/fusion/"&gt;Fusion&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added a workaround for ambiguous call of &lt;code&gt;&lt;span class="identifier"&gt;fusion&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;deque&lt;/span&gt;&lt;/code&gt;
constructor on GCC 4.4/c++0x (&lt;a href="https://github.com/boostorg/fusion/pull/178"&gt;PR#178&lt;/a&gt;, &lt;a href="https://github.com/boostorg/fusion/pull/178/commits/9de32721749b635ff3e04e690da89cf06602c122"&gt;commit&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a bug with C-style array (&lt;a href="https://github.com/boostorg/fusion/pull/177"&gt;PR#177&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a &lt;code&gt;&lt;span class="identifier"&gt;fusion&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;for_each&lt;/span&gt;&lt;/code&gt; signature to take functor
by value (&lt;a href="https://svn.boost.org/trac/boost/ticket/4427"&gt;#4427&lt;/a&gt;).
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
This may break existing code with non-copyable (non-movable)
functor, but the implementation wasn't correct for a long time;
the documantation was correct from the first. So, please make
sure your usage.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed unintentional MPL placeholder substitution bug on &lt;code&gt;&lt;span class="identifier"&gt;fusion&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;transform&lt;/span&gt;&lt;/code&gt; (&lt;a href="https://svn.boost.org/trac/boost/ticket/5490"&gt;#5490&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Moved description, how to conform Fusion sequence as MPL sequence,
to mpl section (&lt;a href="https://svn.boost.org/trac/boost/ticket/4029"&gt;#4029&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added notes regarding IO facility for adapted type (&lt;a href="https://svn.boost.org/trac/boost/ticket/6091"&gt;#6091&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/geometry/"&gt;Geometry&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improvements
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/469"&gt;469&lt;/a&gt;
Horizontal grid shift (nadgrids) in SRS transformations (undocumented
for now due to potential interface changes).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/478"&gt;478&lt;/a&gt;
Box-Segment distance for spherical and geographic coordinate
systems.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/487"&gt;487&lt;/a&gt;
Missing combinations of geometries in distance for spherical
and geographic cs
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/489"&gt;489&lt;/a&gt;
Additional direct geodesic problem formulas for internal use
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Solved issues
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/issues/470"&gt;470&lt;/a&gt;
Assertion failure with short spherical and geographic segments.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/issues/471"&gt;471&lt;/a&gt;
Invalid envelope of spherical polygon
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/issues/498"&gt;498&lt;/a&gt;
Unexpected results with expand() and make_inverse() for spherical
and geographic CS
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/issues/504"&gt;504&lt;/a&gt;
Unused parameter warnings.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bugfixes
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/488"&gt;488&lt;/a&gt;
Handle non-true-references in closing_iterator and ever_circling_range_iterator
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/geometry/pull/495"&gt;495&lt;/a&gt;
VxWorks 7 cross-compilation issue.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/gil/"&gt;GIL&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
The I/O extensions have been entirely rewritten.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The library now requires a C++11-compliant compiler.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Documentation has been reformatted and updated.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/graph/"&gt;Graph&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Conditionally replace deprecated/removed C++98 &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;bind1st&lt;/span&gt;&lt;/code&gt;
by &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;bind&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;auto_ptr&lt;/span&gt;&lt;/code&gt;
by &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;unique_ptr&lt;/span&gt;&lt;/code&gt;, and &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;random_shuffle&lt;/span&gt;&lt;/code&gt;
by &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;shuffle&lt;/span&gt;&lt;/code&gt;. (&lt;a href="https://github.com/boostorg/graph/pull/89"&gt;PR#89&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix compiler error with release builds on VS2015 (&lt;a href="https://github.com/boostorg/graph/pull/84"&gt;PR#84&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix the Stanford GraphBase examples (&lt;a href="https://github.com/boostorg/graph/pull/87"&gt;PR#87&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix friend declarations for iterator_core_access (&lt;a href="https://github.com/boostorg/graph/pull/103"&gt;PR#103&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add missing &lt;code&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;iterator&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt; include (&lt;a href="https://github.com/boostorg/graph/pull/104"&gt;PR#104&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Avoid an unused variable warning (&lt;a href="https://github.com/boostorg/graph/pull/90"&gt;PR#90&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix some typos in documentation (&lt;a href="https://github.com/boostorg/graph/pull/88"&gt;PR#88&lt;/a&gt;, &lt;a href="https://github.com/boostorg/graph/pull/98"&gt;PR#98&lt;/a&gt;, &lt;a href="https://github.com/boostorg/graph/pull/102"&gt;PR#102&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix some issues in tests and examples (&lt;a href="https://github.com/boostorg/graph/pull/85"&gt;PR#85&lt;/a&gt;, &lt;a href="https://github.com/boostorg/graph/pull/105"&gt;PR#105&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/lexical_cast/"&gt;Lexical Cast&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixes for clang-tidy warnings &lt;a href="https://svn.boost.org/trac/boost/ticket/12092"&gt;#12092&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/log/"&gt;Log&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improved support for VxWorks. (&lt;a href="https://github.com/boostorg/log/pull/39"&gt;PR#39&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Save and restore &lt;code&gt;&lt;span class="identifier"&gt;ebx&lt;/span&gt;&lt;/code&gt;
register on x86 PIE targets in the &lt;code&gt;&lt;span class="identifier"&gt;dump&lt;/span&gt;&lt;/code&gt;
stream manipulator implementation.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/math/"&gt;Math&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Support for arbitrary precision complex valued quadrature and hence
contour integration
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improve performance of polynomial addition
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Continue to improve numerical integration routines, and in particular
add support for contour integrals.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improve accuracy of erfc function's rational approximations.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/multi_index/index.html"&gt;Multi-index Containers&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Containers of moveable but non-copyable elements can now be serialized
(ticket &lt;a href="https://svn.boost.org/trac/boost/ticket/13478"&gt;#13478&lt;/a&gt;). Thanks to Sébastien Paris for the report.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;multi_index_container&lt;/span&gt;&lt;/code&gt;'s
default constructor is no longer &lt;code&gt;&lt;span class="keyword"&gt;explicit&lt;/span&gt;&lt;/code&gt;
(ticket &lt;a href="https://svn.boost.org/trac/boost/ticket/13518"&gt;#13518&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/multiprecision"&gt;Multiprecision&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Support added for complex multiprecision numbers.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed conversion to unsigned integer types to be truncating to
match standard defined behaviour.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Correct bug in MPFR string formatting.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix undefined behaviour in cpp_dec_float conversion from long long.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add support for Eigen interoperability.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
float128.hpp: Fix Intel on Windows build.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix type used in temporaries when expanding expression templates
containing mixed expressions.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix infinite loop in gmp_float to fixed-point string conversion.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Update the expression templates to issue static_asserts with better
error messages when you try and do something unsupported.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix bug in cpp_int where incrementing to zero doesn't set the sign
correctly.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Remove erroneous use of std::move, and rely on NVRO instead.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix up support for changes to MPIR-3.0.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix various conversion errors in cpp_bin_float when the exponent
type is a &lt;code&gt;&lt;span class="keyword"&gt;long&lt;/span&gt; &lt;span class="keyword"&gt;long&lt;/span&gt;&lt;/code&gt;,
or else we're converting to an integer that is wider than we are.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix compatibility issue with GCC-8 caused by the introduction of
&lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;byte&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/optional/"&gt;Optional&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added member function &lt;code&gt;&lt;span class="identifier"&gt;has_value&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; for compatibility with &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;optional&lt;/span&gt;&lt;/code&gt; (&lt;a href="https://github.com/boostorg/optional/issues/52"&gt;issue
#52&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added member function &lt;code&gt;&lt;span class="identifier"&gt;map&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; for transforming &lt;code&gt;&lt;span class="identifier"&gt;optional&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
into &lt;code&gt;&lt;span class="identifier"&gt;optional&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;U&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
using a function of type &lt;code&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;
&lt;span class="special"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="identifier"&gt;U&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added member function &lt;code&gt;&lt;span class="identifier"&gt;flat_map&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; for transforming &lt;code&gt;&lt;span class="identifier"&gt;optional&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
into &lt;code&gt;&lt;span class="identifier"&gt;optional&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;U&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
using a function of type &lt;code&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;
&lt;span class="special"&gt;-&amp;gt;&lt;/span&gt; &lt;span class="identifier"&gt;optonal&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;U&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/predef/"&gt;Predef&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Add support for __ARM_ARCH macro. (from Tim Blechmann)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add detection for PTX architecture. (from Benjamin Worpitz)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add nvcc compiler detection. (from Benjamin Worpitz)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add support for detecting CUDA. (from Benjamin Worpitz)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Remove reference to obsolete BOOST_ARCH_AMD64. (from Peter Kolbus)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/program_options/"&gt;Program Options&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Support for multiple long names for an option, thanks to Eyal Rozenberg
(&lt;a href="https://github.com/boostorg/program_options/pull/53"&gt;PR#53&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/python/"&gt;Python&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Bug fixes to correct autolink support (Windows) (&lt;a href="https://github.com/boostorg/python/issues/193"&gt;#193&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/rational/"&gt;Rational&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed undefined behavior in normalize() (&lt;a href="https://github.com/boostorg/rational/pull/19"&gt;PR#19&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/system/"&gt;System&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Add constexpr to error_code and error_condition members under C++14
and above (&lt;a href="https://github.com/boostorg/system/pull/23"&gt;PR#23&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/signals/"&gt;Signals&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;Removal Notice:&lt;/strong&gt; Boost.Signals will
be removed in the next release. Boost.Signals was deprecated in version
1.54.0. Transition to Boost.Signals2 now to avoid disruption.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/spirit/"&gt;Spirit&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.X3:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Small list parser optimization (&lt;a href="https://github.com/boostorg/spirit/pull/368"&gt;PR#368&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Pass container attributes through sequence parser or unary
ending down to a sequence parser (&lt;a href="https://github.com/boostorg/spirit/pull/370"&gt;PR#370&lt;/a&gt; &lt;a href="https://svn.boost.org/trac/boost/ticket/12085"&gt;#12085&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
More fine grained sequence attribute check message (&lt;a href="https://github.com/boostorg/spirit/pull/371"&gt;PR#371&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed redundant check in &lt;code&gt;&lt;span class="identifier"&gt;skip_over&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/pull/373"&gt;PR#373&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Workaround constexpr in noexcept VS2015 bug in entire &lt;code&gt;&lt;span class="identifier"&gt;x3&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;variant&lt;/span&gt;&lt;/code&gt; (&lt;a href="https://github.com/boostorg/spirit/pull/379"&gt;PR#379&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed calc4b example compilation (&lt;a href="https://github.com/boostorg/spirit/pull/384"&gt;PR#384&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Minor code improvements (&lt;a href="https://github.com/boostorg/spirit/pull/374"&gt;PR#374&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.Qi:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed ADT support by permutation and sequence_or operator (&lt;a href="https://github.com/boostorg/spirit/pull/376"&gt;PR#376&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Specialize iterator_source for random access (&lt;a href="https://github.com/boostorg/spirit/pull/383"&gt;PR#383&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed redundant check in &lt;code&gt;&lt;span class="identifier"&gt;skip_over&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/pull/373"&gt;PR#373&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.Karma:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed UB in &lt;code&gt;&lt;span class="identifier"&gt;get_absolute_value&lt;/span&gt;&lt;/code&gt;
function (&lt;a href="https://github.com/boostorg/spirit/pull/246"&gt;PR#246&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed use after scope bug if ADT getter returns by value (&lt;a href="https://github.com/boostorg/spirit/pull/375"&gt;PR#375&lt;/a&gt; &lt;a href="https://svn.boost.org/trac/boost/ticket/6126"&gt;#6126&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.Classic:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a regression introduced in &lt;a href="https://github.com/boostorg/spirit/pull/336"&gt;PR#336&lt;/a&gt; (&lt;a href="https://github.com/boostorg/spirit/pull/386"&gt;PR#386&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Minor code improvements (&lt;a href="https://github.com/boostorg/spirit/pull/367"&gt;PR#367&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/stacktrace/"&gt;Stacktrace&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed compilation on Solaris and other platforms that do qualify
address as const in &lt;code&gt;&lt;span class="identifier"&gt;dladdr&lt;/span&gt;&lt;/code&gt;
function (github 54).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Dropped dependency on Boost.LexicalCast.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/test/"&gt;Test&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Boost.test v3.8 see the &lt;a href="https://www.boost.org/users/history/libs/test/doc/html/boost_test/change_log.html"&gt;Changes
log&lt;/a&gt; for more details.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Breaking changes
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
The &lt;code&gt;&lt;span class="identifier"&gt;master_test_suite_t&lt;/span&gt;&lt;/code&gt;
object is no more copyable
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
New feature:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Dataset test case can now use command line parameters
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bug fixes and pull requests:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Trac tickets: &lt;a href="https://svn.boost.org/trac/boost/ticket/12095"&gt;#12095&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/12953"&gt;#12953&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13504"&gt;#13504&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13525"&gt;#13525&lt;/a&gt;,
&lt;a href="https://svn.boost.org/trac/boost/ticket/13528"&gt;#13528&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Pull requests: &lt;a href="https://github.com/boostorg/test/pull/143"&gt;PR#143&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/pull/145"&gt;PR#145&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/type_index/"&gt;TypeIndex&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Dropped dependency on Boost.MPL.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/uuid/"&gt;Uuid&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;Breaking change:&lt;/strong&gt; sha1 detail namespace
header redirection for backwards compatibility was removed (&lt;a href="https://github.com/boostorg/uuid/pull/69"&gt;PR#69&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added support for std::hash (&lt;a href="https://github.com/boostorg/uuid/pull/67"&gt;PR#67&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added support for move semantics on random generators (&lt;a href="https://github.com/boostorg/uuid/pull/74"&gt;PR#74&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Properly handle EINTR when acquiring entropy (&lt;a href="https://github.com/boostorg/uuid/pull/74"&gt;PR#74&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Use getrandom(2) instead of getentropy(3) on linux (&lt;a href="https://github.com/boostorg/uuid/pull/75"&gt;PR#75&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_68_0.compilers_tested"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Compilers Tested&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
Boost's primary test compilers are:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Linux:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.0, 4.0.1, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++0x: 3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.2,
6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++17: 5.0.2, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.4.7, 4.5.3, 4.6.3, 5.4.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.4.7
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.4.0, 5.5.0, 6.4.0, 7.1.0, 7.3.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.3.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Intel, C++14: 18.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
OS X:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang: 9.0.0, 9.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++11: 9.0.0, 9.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++14: 9.0.0, 9.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++17: 9.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++1z: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.6.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.1.0, 7.2.0, 7.3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
FreeBSD:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Boost's additional test compilers include:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Linux:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.0, 3.8.1, 3.9.1, 4.0.1, 5.0.2, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++0x: 3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.2,
6.0.1, 7.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++17: 5.0.2, 6.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.4.7, 4.5.3, 4.6.3, 4.9.4, 5.4.0, 5.5.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.4.7
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.4.0, 5.5.0, 6.3.0, 6.4.0, 7.1.0, 7.3.0, 8.0.1, 8.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.3.0, 8.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Intel, C++14: 18.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
OS X:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang: 9.0.0, 9.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++11: 9.0.0, 9.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++14: 9.0.0, 9.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++17: 9.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Apple Clang, C++1z: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.6.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.1.0, 7.2.0, 7.3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
FreeBSD:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_68_0.acknowledgements"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Acknowledgements&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
Daniel James, Vladimir Prus, and Marshall Clow managed this release.
&lt;/p&gt;
&lt;/div&gt;
</description></item><item><title>Version 1.67.0</title><link>https://www.boost.org/users/history/version_1_67_0.html</link><guid>http://www.boost.org/users/history/version_1_67_0.html</guid><pubDate>Sat, 14 Apr 2018 20:37:12 +0000</pubDate><description>
&lt;div id="version_1_67_0.known_issues"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Known Issues&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
These are patches from library authors which were found too late to be fixed
in the release. Be careful as they have not been through the normal testing
process.
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fix compiling with FreeBSD:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://www.boost.org/patches/1_67_0/0001-Fiber-Use-pthread_setaffinity_np-on-FreeBSD-as-well.patch"&gt;/patches/1_67_0/0001-Fiber-Use-pthread_setaffinity_np-on-FreeBSD-as-well.patch&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://www.boost.org/patches/1_67_0/0002-Wave-Avoid-using-wrong-T_DIVIDE-on-BSDs.patch"&gt;/patches/1_67_0/0002-Wave-Avoid-using-wrong-T_DIVIDE-on-BSDs.patch&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix Python auto-linking:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://www.boost.org/patches/1_67_0/0003-Python-Fix-auto-linking-logic-Windows-only.patch"&gt;/patches/1_67_0/0003-Python-Fix-auto-linking-logic-Windows-only.patch&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_67_0.new_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;New Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/contract/"&gt;Contract&lt;/a&gt;:&lt;/span&gt;
Contract programming
for C++. All contract programming features are supported: Subcontracting,
class invariants, postconditions (with old and return values), preconditions,
customizable actions on assertion failure (e.g., terminate or throw), optional
compilation and checking of assertions, etc, from Lorenzo Caminiti.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/hof/"&gt;HOF&lt;/a&gt;:&lt;/span&gt;
Higher-order functions for C++,
from Paul Fultz II.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_67_0.updated_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Updated Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/asio/"&gt;Asio&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added missing const qualifier to &lt;code&gt;&lt;span class="identifier"&gt;basic_socket_acceptor&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;get_option&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Worked around a parsing error that occurs with some versions of gcc.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed broken code samples in tutorial.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added new experimental features. (Note that "experimental"
features may be changed without notice in subsequent releases.)
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;experimental&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;detached&lt;/span&gt;&lt;/code&gt;
completion token.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;experimental&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;redirect_error&lt;/span&gt;&lt;/code&gt;
completion token.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added &lt;code&gt;&lt;span class="identifier"&gt;experimental&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;co_spawn&lt;/span&gt;&lt;/code&gt;
facility for integration with the coroutines technical specification.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Updated timeout examples to use latest features.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Used &lt;code&gt;&lt;span class="identifier"&gt;asio&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;steady_timer&lt;/span&gt;&lt;/code&gt; rather than
&lt;code&gt;&lt;span class="identifier"&gt;asio&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;deadline_timer&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Used &lt;code&gt;&lt;span class="identifier"&gt;asio&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;dynamic_buffer&lt;/span&gt;&lt;/code&gt; rather than
&lt;code&gt;&lt;span class="identifier"&gt;asio&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;streambuf&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Used timed &lt;code&gt;&lt;span class="identifier"&gt;asio&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;io_context&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;run_for&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; function for blocking clients.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added example showing a custom completion token for blocking
with timeouts.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed unit tests to compile when &lt;code&gt;&lt;span class="identifier"&gt;BOOST_ASIO_NO_DEPRECATED&lt;/span&gt;&lt;/code&gt;
is defined.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed socket iostreams to use chrono by default, to fix compatibility
with the Networking TS. Define &lt;code&gt;&lt;span class="identifier"&gt;BOOST_ASIO_USE_BOOST_DATE_TIME_FOR_SOCKET_IOSTREAM&lt;/span&gt;&lt;/code&gt;
to enable the old Boost.Date_Time interface in &lt;code&gt;&lt;span class="identifier"&gt;basic_socket_streambuf&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;basic_socket_iostream&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Updated examples to use chrono rather than Boost.Date_Time.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed an incorrect member function detector in the &lt;code&gt;&lt;span class="identifier"&gt;is_dynamic_buffer&lt;/span&gt;&lt;/code&gt; trait.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed an &lt;code&gt;&lt;span class="identifier"&gt;async_result&lt;/span&gt;&lt;/code&gt;
incompatibility with deprecated &lt;code&gt;&lt;span class="identifier"&gt;handler_type&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added a missing move optimisation in the SSL stream implementation.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed incorrect &lt;code&gt;&lt;span class="identifier"&gt;basic_resolver_results&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;value_type&lt;/span&gt;&lt;/code&gt;
typedef.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a compile error with some OpenSSL versions when &lt;code&gt;&lt;span class="identifier"&gt;SSL_OP_NO_COMPRESSION&lt;/span&gt;&lt;/code&gt; is defined.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed &lt;code&gt;&lt;span class="identifier"&gt;add_certificate_authority&lt;/span&gt;&lt;/code&gt;
to process multiple certificates in a bundle.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Eliminated deprecation warning with MSVC by using &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;invoke_result&lt;/span&gt;&lt;/code&gt;
rather than &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;result_of&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed to use &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string_view&lt;/span&gt;&lt;/code&gt;
for C++17 or later, and &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;experimental&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string_view&lt;/span&gt;&lt;/code&gt;
for C++14. Define the preprocessor macro &lt;code&gt;&lt;span class="identifier"&gt;BOOST_ASIO_DISABLE_STD_STRING_VIEW&lt;/span&gt;&lt;/code&gt;
to force the use of std::experimental::string_view (assuming it is
available) when compiling in C++17 mode.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Ensured &lt;code&gt;&lt;span class="identifier"&gt;DynamicBuffer&lt;/span&gt;&lt;/code&gt;
template arguments are decayed before using in &lt;code&gt;&lt;span class="identifier"&gt;enable_if&lt;/span&gt;&lt;/code&gt;
tests.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed documentation to distinguish legacy completion handlers (which
are still required to be CopyConstructible) from new MoveConstructible
handlers.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Suppressed a discarded return value warning in the buffer debugging
support.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;basic_yield_context&lt;/span&gt;&lt;/code&gt;
to work with completion signatures containing reference parameters.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Ensured that stackful coroutines launched using &lt;code&gt;&lt;span class="identifier"&gt;spawn&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; correctly store decayed copies
of their function and handler arguments.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed some compatibility issues with Android.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added cross-compilation support to Jamfiles.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed some minor portability issues in examples.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/atomic/"&gt;Atomic&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;Breaking change:&lt;/strong&gt; Changed the result
of the &lt;code&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="identifier"&gt;op&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;&lt;span class="identifier"&gt;_and_test&lt;/span&gt;&lt;/code&gt;
operations added in Boost 1.66 to the opposite - the functions now
return &lt;code&gt;&lt;span class="keyword"&gt;true&lt;/span&gt;&lt;/code&gt; if the operation
result is non-zero. This is consistent with other &lt;code&gt;&lt;span class="identifier"&gt;test&lt;/span&gt;&lt;/code&gt;
methods in Boost.Atomic and the C++ standard library. Users can define
&lt;code&gt;&lt;span class="identifier"&gt;BOOST_ATOMIC_DETAIL_HIGHLIGHT_OP_AND_TEST&lt;/span&gt;&lt;/code&gt;
when compiling their code to emit warnings on every use of the changed
functions. This way users can locate the code that needs to be updated.
(&lt;a href="https://github.com/boostorg/atomic/issues/11"&gt;#11&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Update for C++2a. On C++11 compilers that support scoped enums, the
&lt;code&gt;&lt;span class="identifier"&gt;memory_order&lt;/span&gt;&lt;/code&gt; enumeration
is now scoped and contains constants with shorter names like &lt;code&gt;&lt;span class="identifier"&gt;acquire&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;release&lt;/span&gt;&lt;/code&gt;
or &lt;code&gt;&lt;span class="identifier"&gt;seq_cst&lt;/span&gt;&lt;/code&gt; (i.e.
users can use &lt;code&gt;&lt;span class="identifier"&gt;memory_order&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;acquire&lt;/span&gt;&lt;/code&gt;
instead of &lt;code&gt;&lt;span class="identifier"&gt;memory_order_acquire&lt;/span&gt;&lt;/code&gt;).
The old constants are also provided for backward compatibility. (&lt;a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0439r0.html"&gt;P0439R0&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Update for C++2a. Added experimental support for atomic operations
on floating point types. In addition to general operations, &lt;code&gt;&lt;span class="identifier"&gt;add&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;sub&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;negate&lt;/span&gt;&lt;/code&gt; operations
and their &lt;code&gt;&lt;span class="identifier"&gt;fetch_&lt;/span&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="identifier"&gt;op&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span class="identifier"&gt;opaque_&lt;/span&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="identifier"&gt;op&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;&lt;/code&gt; versions are supported. Lock-free
property can be tested with the new macros &lt;code&gt;&lt;span class="identifier"&gt;BOOST_ATOMIC_FLOAT&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;DOUBLE&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;LONG_DOUBLE_LOCK_FREE&lt;/span&gt;&lt;/code&gt;.
The support for floating point types is optional and can be disabled
by defining &lt;code&gt;&lt;span class="identifier"&gt;BOOST_ATOMIC_NO_FLOATING_POINT&lt;/span&gt;&lt;/code&gt;.
(&lt;a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0020r6.html"&gt;P0020R6&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added new experimental operations:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;negate_and_test&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;complement_and_test&lt;/span&gt;&lt;/code&gt;
which perform negation or bitwise complement and return &lt;code&gt;&lt;span class="keyword"&gt;true&lt;/span&gt;&lt;/code&gt; if the result is not zero.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;add&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;sub&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;negate&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;bitwise_and&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;bitwise_or&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;bitwise_xor&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;bitwise_complement&lt;/span&gt;&lt;/code&gt;
operations which perform the operation and return its result.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
For generic &lt;code&gt;&lt;span class="identifier"&gt;atomic&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt; specialization, the default constructor
is now trivial if &lt;code&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;/code&gt;'s
default constructor is.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The internal implementation of &lt;code&gt;&lt;span class="identifier"&gt;atomic&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt; has been updated to avoid undefined
behavior that stems from signed integer overflows. As required by
the C++ standard, the library uses two's complement representation
of signed integers internally and accroding rules of overflow. Currently,
the library requires the native signed integer types to also use
two's complement representation (but no defined overflow semantics).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improved Clang support. In particular, fixed DCAS not being lock-free
and fixed possible incorrect code generated on 32-bit x86.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improved MinGW support. For gcc versions up to 4.6, fixed compilation
of DCAS on x86.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
In x86 PIE code, asm blocks now preserve &lt;code&gt;&lt;span class="identifier"&gt;ebx&lt;/span&gt;&lt;/code&gt;
value.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/beast/"&gt;Beast&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
This version fixes significant defects in &lt;code&gt;&lt;span class="identifier"&gt;websocket&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;stream&lt;/span&gt;&lt;/code&gt;
which can lead to asserts or undefined behavior. Users are encouraged
to update to the latest Boost release.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
For a complete list of changes, please view the official &lt;a href="https://www.boost.org/libs/beast/doc/html/beast/release_notes.html"&gt;Release
Notes&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/container_hash/"&gt;ContainerHash&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Extracted from the functional module to break a dependency cycle.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Moved headers to new location to reflect name change, the old include
paths will still work.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added support for &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;string_view&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;error_code&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;error_condition&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;optional&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;variant&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;monostate&lt;/span&gt;&lt;/code&gt; where available.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added explicit support for &lt;code&gt;&lt;span class="identifier"&gt;vector&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="keyword"&gt;bool&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;, so that it will work with libc++
(&lt;a href="https://svn.boost.org/trac/boost/ticket/13501"&gt;#13501&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
More detail in the &lt;a href="https://www.boost.org/doc/html/hash/changes.html#hash.changes.boost_1_67_0"&gt;library
change log&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/context/"&gt;Context&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/62"&gt;#62&lt;/a&gt;/&lt;a href="https://github.com/boostorg/context/pull/64"&gt;PR#64&lt;/a&gt;: fix i386/macho routines to correctly
return transfer_t in EAX/EDX
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/65"&gt;#65&lt;/a&gt;: &lt;code&gt;&lt;span class="identifier"&gt;__sanitizer_finish_switch_fiber&lt;/span&gt;&lt;/code&gt;
should be called directly after context switch
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/66"&gt;#66&lt;/a&gt;: Clang on Windows : error: No best alternative for libs/context/build/asm_sources
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/context/issues/73"&gt;#73&lt;/a&gt;: fixing C2492 for execution_context (v1)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
known bug: including all.hpp + &amp;lt;context-impl&amp;gt;ucontext/winfib
causes error 'forced_unwind: is not a member of boost::context::detail'
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/core/"&gt;Core&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Updated &lt;code&gt;&lt;span class="identifier"&gt;to_address&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;pointer_traits&lt;/span&gt;&lt;/code&gt;
to reflect the design adopted for C++2a in &lt;a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0653r2.html"&gt;P0653R2&lt;/a&gt;
(Glen Fernandes).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/coroutine2/"&gt;Coroutine2&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/coroutine2/issues/13"&gt;#13&lt;/a&gt;: Pull coroutine does not rethrow an exception if
it is thrown on the first entry
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/date_time/"&gt;DateTime&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed various year 2038 (32-bit) issues (&lt;a href="https://svn.boost.org/trac/boost/ticket/2818"&gt;#2818&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/2819"&gt;#2819&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/3487"&gt;#3487&lt;/a&gt;)
(&lt;a href="https://svn.boost.org/trac/boost/ticket/4543"&gt;#4543&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/8450"&gt;#8450&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/9158"&gt;#9158&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/9489"&gt;#9489&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/10570"&gt;#10570&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/12609"&gt;#12609&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a binary serialization regression introduced in 1.66.0 (&lt;a href="https://github.com/boostorg/date_time/issues/56"&gt;#56&lt;/a&gt;)
(&lt;a href="https://github.com/boostorg/date_time/pull/58"&gt;PR#58&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/date_time/pull/70"&gt;PR#70&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Updated the timezone database file (&lt;a href="https://svn.boost.org/trac/boost/ticket/4430"&gt;#4430&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/10087"&gt;#10087&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/date_time/pull/68"&gt;PR#68&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Enhanced &lt;code&gt;&lt;span class="identifier"&gt;from_iso_string&lt;/span&gt;&lt;/code&gt;
so it can read output of &lt;code&gt;&lt;span class="identifier"&gt;to_iso_string&lt;/span&gt;&lt;/code&gt;
for special values (&lt;a href="https://svn.boost.org/trac/boost/ticket/1078"&gt;#1078&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/date_time/pull/69"&gt;PR#69&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed maximum supported year from 10000 to 9999 to resolve various
issues (&lt;a href="https://svn.boost.org/trac/boost/ticket/13159"&gt;#13159&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/12630"&gt;#12630&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/date_time/pull/71"&gt;PR#71&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;date_time&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;period_parser&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;delimiter_strings&lt;/span&gt;&lt;/code&gt; did nothing (&lt;a href="https://svn.boost.org/trac/boost/ticket/11142"&gt;#11142&lt;/a&gt;)
(&lt;a href="https://github.com/boostorg/date_time/pull/63"&gt;PR#63&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Ensure special values are not automatically translated to integral
types (&lt;a href="https://svn.boost.org/trac/boost/ticket/11168"&gt;#11168&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/date_time/pull/64"&gt;PR#64&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;int_adapter&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;is_signed&lt;/span&gt;&lt;/code&gt; should be const (&lt;a href="https://svn.boost.org/trac/boost/ticket/12363"&gt;#12363&lt;/a&gt;)
(&lt;a href="https://github.com/boostorg/date_time/pull/60"&gt;PR#60&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;date_time&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;time_input_facet&lt;/span&gt;&lt;/code&gt; throws when using
&lt;code&gt;&lt;span class="special"&gt;%&lt;/span&gt;&lt;span class="identifier"&gt;j&lt;/span&gt;&lt;/code&gt;
alone (&lt;a href="https://svn.boost.org/trac/boost/ticket/12910"&gt;#12910&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/date_time/pull/59"&gt;PR#59&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Time input facet is not able to parse &lt;code&gt;&lt;span class="special"&gt;%&lt;/span&gt;&lt;span class="identifier"&gt;e&lt;/span&gt;&lt;/code&gt; day (&lt;a href="https://svn.boost.org/trac/boost/ticket/13194"&gt;#13194&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/date_time/pull/54"&gt;PR#54&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improved Github CI build environment for better project metrics and
quality (&lt;a href="https://github.com/boostorg/date_time/pull/52"&gt;PR#52&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/date_time/pull/72"&gt;PR#72&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed various compiler warnings (&lt;a href="https://svn.boost.org/trac/boost/ticket/3606"&gt;#3606&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/9882"&gt;#9882&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/date_time/pull/62"&gt;PR#62&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/dll/"&gt;DLL&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixes for calling functions on dirty &lt;code&gt;&lt;span class="identifier"&gt;GetLastError&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; &lt;a href="https://github.com/boostorg/dll/issues/16"&gt;#16&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/fiber/"&gt;Fiber&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/128"&gt;#128&lt;/a&gt;: Assertion "! ctx-&amp;gt;ready_is_linked()" when
using condition_variable::wait_for
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/132"&gt;#132&lt;/a&gt;: fatal error: 'stdexception' file not found
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/141"&gt;#141&lt;/a&gt;: boost::fibers::async problem
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/146"&gt;#146&lt;/a&gt;: remove unecessary lock of remote-ready-queue spinlock
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/153"&gt;#153&lt;/a&gt;: docu: replace set_ready() by schedule()
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/154"&gt;#154&lt;/a&gt;: Document iterators on channels
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/155"&gt;#155&lt;/a&gt;: this_fiber is wrongly documented as being a member
of boost::fibers
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/156"&gt;#156&lt;/a&gt;: Many examples are using their own barrier.hpp
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/158"&gt;#158&lt;/a&gt;: add BOOST_FIBERS_DECL to work_stealing class
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/162"&gt;#162&lt;/a&gt;: remove use-coutner increment for timed wait ops
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/166"&gt;#166&lt;/a&gt;: remove assertion for wait_is_linked() in schedule()
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/167"&gt;#167&lt;/a&gt;: call shared_state::owner_destroyed() only if future
was created from
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fiber/issues/168"&gt;#168&lt;/a&gt;: fiber/doc/installing.qbk not not up to date
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/filesystem/"&gt;Filesystem&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fix static initialization issue that caused a crash if path operations
were used before main() (&lt;a href="https://github.com/boostorg/filesystem/pull/62"&gt;PR#62&lt;/a&gt;, &lt;a href="https://github.com/boostorg/filesystem/pull/43"&gt;PR#43&lt;/a&gt;, &lt;a href="https://github.com/boostorg/filesystem/pull/50"&gt;PR#50&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/filesystem/pull/59"&gt;PR#59&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/fusion/"&gt;Fusion&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Switch to SFINAE in template parameters on &lt;code&gt;&lt;span class="identifier"&gt;fusion&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;map&lt;/span&gt;&lt;/code&gt;
to fix compile error on newer MSVC 2017. (&lt;a href="https://github.com/boostorg/fusion/pull/164"&gt;PR#164&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix for compilers not compatible with CWG defect 945 on &lt;code&gt;&lt;span class="identifier"&gt;fusion&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;vector&lt;/span&gt;&lt;/code&gt;. (&lt;a href="https://github.com/boostorg/fusion/pull/166"&gt;PR#166&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added limits precheck on sequence converter to make error message
clearer. (&lt;a href="https://github.com/boostorg/fusion/pull/168"&gt;PR#168&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Allow incomplete types in &lt;code&gt;&lt;span class="identifier"&gt;fusion&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;tag_of&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;fusion&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;is_native_fusion_sequence&lt;/span&gt;&lt;/code&gt;. Note
that this changes no behaviour from previous release, but compliant
to TypeTraits's change. (&lt;a href="https://github.com/boostorg/fusion/pull/171"&gt;PR#171&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/geometry/"&gt;Geometry&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improvements:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
New map projection and SRS transformation representations (undocumented
for now due to potential interface changes).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
New densify() algorithm.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
No longer using std::iterator (thanks to Daniela Engert).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
No longer using allocator directly in the rtree. Replaced with
boost::container::allocator_traits (thanks to Daniela Engert).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Default rtree allocator changed to boost::container::new_allocator
to still support move semantics emulation in C++03 with boost::container::allocator_traits.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Area strategies interface changed. This is potentially a breaking
change.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Radius or Sphere can be passed into spherical strategies.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added Point-Box and Box-Box spherical and geographic distance()
strategies.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Simplify (multi)polygons will discard output rings of 2 points
or (for closed polygons) 3 points, but it tries to avoid creating
those
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Simplify (multi)polygons will omit empty interior rings or
polygons from output
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Solved issues:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/13386"&gt;13386&lt;/a&gt;
Workaround for some gcc compilers
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/13381"&gt;13381&lt;/a&gt;
Compile error with matrix_transformer in Visual C++ 2015
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/13436"&gt;13436&lt;/a&gt;
Incorrectness in boost::geometry::model::polygon documentation
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bugfixes:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Add missing strategy resolving in length() algorithm, affecting
Variant support.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Simplify (multi)polygons now simplifies closing point
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changes in behavior
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Simplify (multi)polygons now usually rotates input rings before
simplifying to select a non collinear point on its convex hull.
This improves output.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/locale/"&gt;Locale&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added support of &lt;code&gt;&lt;span class="identifier"&gt;unique_ptr&lt;/span&gt;&lt;/code&gt;
interface in addition to C++2003 &lt;code&gt;&lt;span class="identifier"&gt;auto_ptr&lt;/span&gt;&lt;/code&gt;
- in order to support C++2017, now you can use &lt;code&gt;&lt;span class="identifier"&gt;BOOST_LOCALE_HIDE_AUTO_PTR&lt;/span&gt;&lt;/code&gt;
definiton to remove &lt;code&gt;&lt;span class="identifier"&gt;auto_ptr&lt;/span&gt;&lt;/code&gt;
from the interfaces and prevent deprecated watnings.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed test problem with ICU &amp;gt;60.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix of solaris build
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed wired FreeBSD/clang issue on optimized build. Probably compiler
workaround
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added workaround for failing MSVC tests due to 932 codepage codecvt
issue
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed bugs 6851, 12572, 12453
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed missing throw in case of failure in &lt;code&gt;&lt;span class="identifier"&gt;icu&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;date_time&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed build agains Boost.Thread v4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed Year of week instead of year ICU backend formatting
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed formatting test for ICU 56.1 and above
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/log/"&gt;Log&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improved compatibility with C++17: use &lt;code&gt;&lt;span class="identifier"&gt;allocator_traits&lt;/span&gt;&lt;/code&gt;
to work with allocators instead of directly accessing its members.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improved compatibility with gcc 7 and later by updating library ABI
namespace definition.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added documentation for the "Append" config file parameter
for "TextFile" sinks. The parameter was supported previously,
only the documentation was missing.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/math/index.html"&gt;Math&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Add naive Monte Carlo integration support.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add Chebyshev interpolation routines.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/multi_index/index.html"&gt;Multi-index Containers&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Elements with overloaded &lt;code&gt;&lt;span class="keyword"&gt;operator&lt;/span&gt;&lt;span class="special"&gt;&amp;amp;&lt;/span&gt;&lt;/code&gt; are now fully accepted (ticket
&lt;a href="https://svn.boost.org/trac/boost/ticket/13307"&gt;#13307&lt;/a&gt;). Thanks to Daniel Frey for his updating &lt;a href="https://www.boost.org/libs/utility/operators.htm#deref"&gt;Boost.Operators&lt;/a&gt;
to help fix this issue.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Avoided usage of &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;allocator&lt;/span&gt;&lt;/code&gt;
members deprecated in C++17. Contributed by Daniela Engert.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Maintenance fixes.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/multiprecision/index.html"&gt;Multiprecision&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;Breaking Change:&lt;/strong&gt; When converting
a multiprecision integer to a narrower type, if the value is too
large (or negative) to fit in the smaller type, then the result is
either the maximum (or minimum) value of the target type. This was
always the intended behaviour, but was somewhat haphazardly enforced
before. If you really do want just the low order N bits of a value,
then you will need to mask these out prior to the case, for example:
&lt;code&gt;&lt;span class="keyword"&gt;static_cast&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="keyword"&gt;unsigned&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;(~&lt;/span&gt;&lt;span class="keyword"&gt;static_cast&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="keyword"&gt;unsigned&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;(&lt;/span&gt;&lt;span class="number"&gt;0&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt; &lt;span class="special"&gt;&amp;amp;&lt;/span&gt; &lt;span class="identifier"&gt;my_value&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;&lt;/code&gt;. Note that technically (to avoid
undefined behaviour) you should do the same thing with built in integer
types too. See &lt;a href="https://svn.boost.org/trac/boost/ticket/13109"&gt;#13109&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix bug in conversion of decimal to rational types (zero needs special
handling), see &lt;a href="https://svn.boost.org/trac/boost/ticket/13148"&gt;#13148&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix conversion from cpp_bin_float to a wider built in integer type,
see &lt;a href="https://svn.boost.org/trac/boost/ticket/13301"&gt;#13301&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improve performance heurists used in cpp_bin_float exp function.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix bug in floor/ceil and cpp_bin_float when the exponent type is
wider than an int, see &lt;a href="https://svn.boost.org/trac/boost/ticket/13264"&gt;#13264&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Disable explicit conversion operator when the target type is already
constructible from this type, see &lt;a href="https://github.com/boostorg/multiprecision/issues/30"&gt;#30&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix support for changes new to MPIR-3.0, see &lt;a href="https://svn.boost.org/trac/boost/ticket/13124"&gt;#13124&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/optional/index.html"&gt;Optional&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed issue &lt;a href="https://github.com/boostorg/optional/issues/46"&gt;#46&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="special"&gt;-&lt;/span&gt;&lt;span class="identifier"&gt;Wzero&lt;/span&gt;&lt;span class="special"&gt;-&lt;/span&gt;&lt;span class="identifier"&gt;as&lt;/span&gt;&lt;span class="special"&gt;-&lt;/span&gt;&lt;span class="identifier"&gt;null&lt;/span&gt;&lt;span class="special"&gt;-&lt;/span&gt;&lt;span class="identifier"&gt;pointer&lt;/span&gt;&lt;span class="special"&gt;-&lt;/span&gt;&lt;span class="identifier"&gt;constant&lt;/span&gt;&lt;/code&gt;
warnings.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/phoenix/"&gt;Phoenix&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Correct documentation and example code. (&lt;a href="https://svn.boost.org/trac/boost/ticket/8187"&gt;#8187&lt;/a&gt;, &lt;a href="https://github.com/boostorg/phoenix/pull/56"&gt;PR#56&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/phoenix/pull/57"&gt;PR#57&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed bug with initializing phoenix lazy from array types in C++11.
(&lt;a href="https://svn.boost.org/trac/boost/ticket/12733"&gt;#12733&lt;/a&gt;, &lt;a href="https://github.com/boostorg/phoenix/pull/58"&gt;PR#58&lt;/a&gt;, &lt;a href="https://github.com/boostorg/phoenix/pull/61"&gt;PR#61&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Use proto subscript and assignment overload operators buildins to
fix compile error with some lambda experssions on recent MSVC. (&lt;a href="https://github.com/boostorg/phoenix/issues/62"&gt;#62&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/phoenix/pull/64"&gt;PR#64&lt;/a&gt;, &lt;a href="https://github.com/boostorg/phoenix/pull/66"&gt;PR#66&lt;/a&gt;, &lt;a href="https://github.com/boostorg/phoenix/pull/67"&gt;PR#67&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Remove use of deprecated &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;iteratror&lt;/span&gt;&lt;/code&gt;.
Thanks to Daniela Engert. (&lt;a href="https://github.com/boostorg/phoenix/pull/59"&gt;PR#59&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/poly_collection/"&gt;PolyCollection&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Maintenance fixes.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/python/"&gt;Python&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
The library name now includes the version suffix of the Python version
used to compile it. For example, a variant compiled with Python 2.7
will produce library names &lt;code&gt;&lt;span class="identifier"&gt;boost_python27&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;boost_numpy27&lt;/span&gt;&lt;/code&gt;,
etc.. Combined with a related fix in Boost.Build, this means that
it is now possible to build variants for multiple Python versions
in a single build process.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/spirit/"&gt;Spirit&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.X3:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;Breaking change:&lt;/strong&gt; Removed
&lt;code&gt;&lt;span class="identifier"&gt;with_context&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/239"&gt;#239&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added noexcept to &lt;code&gt;&lt;span class="identifier"&gt;x3&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;variant&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;forward_ast&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/241"&gt;#241&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
CR+LF lines wrongly counted in &lt;code&gt;&lt;span class="identifier"&gt;error_handler&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;position&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; (&lt;a href="https://github.com/boostorg/spirit/issues/248"&gt;#248&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;unused_type&lt;/span&gt;&lt;/code&gt;
attribute case in &lt;code&gt;&lt;span class="identifier"&gt;parse_into_container&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/266"&gt;#266&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed parsing into associative containers (&lt;a href="https://github.com/boostorg/spirit/issues/289"&gt;#289&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed overflow problem in &lt;code&gt;&lt;span class="identifier"&gt;uint_parser&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="keyword"&gt;signed&lt;/span&gt;
&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/297"&gt;#297&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added VS2015 Update 3 support by using workarounds (&lt;a href="https://github.com/boostorg/spirit/issues/308"&gt;#308&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed include guard names collision with Qi (&lt;a href="https://github.com/boostorg/spirit/issues/313"&gt;#313&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added parsing into range (&lt;a href="https://github.com/boostorg/spirit/issues/316"&gt;#316&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/12928"&gt;#12928&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed iterator concept static assert from &lt;code&gt;&lt;span class="identifier"&gt;ForwardIterator&lt;/span&gt;&lt;/code&gt;
to &lt;code&gt;&lt;span class="identifier"&gt;ReadableIteratorConcept&lt;/span&gt;&lt;/code&gt;
&amp;amp;&amp;amp; &lt;code&gt;&lt;span class="identifier"&gt;ForwardTraversalConcept&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/320"&gt;#320&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Reenabled &lt;code&gt;&lt;span class="identifier"&gt;fusion&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;map&lt;/span&gt;&lt;/code&gt;
support (&lt;a href="https://github.com/boostorg/spirit/issues/330"&gt;#330&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;string&lt;/span&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="string"&gt;"..."&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;&lt;/code&gt; and &lt;code&gt;&lt;span class="identifier"&gt;attr&lt;/span&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="string"&gt;"..."&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;&lt;/code&gt; to single item sequence (&lt;a href="https://github.com/boostorg/spirit/issues/337"&gt;#337&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Dereference a single item view instead of unwrapping sequence
(&lt;a href="https://github.com/boostorg/spirit/issues/340"&gt;#340&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Prevent &lt;code&gt;&lt;span class="identifier"&gt;parse_nan&lt;/span&gt;&lt;/code&gt;
from dereferencing out of range iterator (&lt;a href="https://github.com/boostorg/spirit/issues/351"&gt;#351&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Use traits to test if container is empty (&lt;a href="https://github.com/boostorg/spirit/issues/355"&gt;#355&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit V2
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed keyword directives compilation on C++11 (&lt;a href="https://github.com/boostorg/spirit/issues/256"&gt;#256&lt;/a&gt;)
(&lt;a href="https://svn.boost.org/trac/boost/ticket/11493"&gt;#11493&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed subrules compilation (&lt;a href="https://github.com/boostorg/spirit/issues/279"&gt;#279&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/spirit/issues/259"&gt;#259&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed subrules use after scope bug (&lt;a href="https://github.com/boostorg/spirit/issues/284"&gt;#284&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/5270"&gt;#5270&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed undefined behavior in sequential or operator. Underlying
parsers order of execution was dependent on compiler (&lt;a href="https://github.com/boostorg/spirit/issues/310"&gt;#310&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit was accidentally relaying on &lt;code&gt;&lt;span class="identifier"&gt;types&lt;/span&gt;&lt;/code&gt;
typedef of &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;optional&lt;/span&gt;&lt;/code&gt;.
The typedef was removed in the new optional implementation
(&lt;a href="https://github.com/boostorg/spirit/issues/271"&gt;#271&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/12349"&gt;#12349&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed problems with &lt;code&gt;&lt;span class="identifier"&gt;BOOST_SPIRIT_NO_PREDEFINED_TERMINALS&lt;/span&gt;&lt;/code&gt;
(&lt;code&gt;&lt;span class="identifier"&gt;attr_cast&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;confix&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;distinct&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;keywords&lt;/span&gt;&lt;/code&gt;,
and &lt;code&gt;&lt;span class="identifier"&gt;flush_multi_pass&lt;/span&gt;&lt;/code&gt;)
(&lt;a href="https://github.com/boostorg/spirit/issues/314"&gt;#314&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/13311"&gt;#13311&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added missing copy assignment operator to &lt;code&gt;&lt;span class="identifier"&gt;hold_any&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/361"&gt;#361&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/8268"&gt;#8268&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.Qi:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed alternate operator (&lt;a href="https://github.com/boostorg/spirit/issues/201"&gt;#201&lt;/a&gt;) (&lt;a href="https://github.com/boostorg/spirit/issues/271"&gt;#271&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/12349"&gt;#12349&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed signed integer overflow in real parser (&lt;a href="https://github.com/boostorg/spirit/issues/245"&gt;#245&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed overflow problem in &lt;code&gt;&lt;span class="identifier"&gt;uint_parser&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="keyword"&gt;signed&lt;/span&gt;
&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/297"&gt;#297&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;get_current_line&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;get_line_start&lt;/span&gt;&lt;/code&gt;,
and added &lt;code&gt;&lt;span class="identifier"&gt;get_line_end&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/304"&gt;#304&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Permutations parser were always initializing optionals (&lt;a href="https://github.com/boostorg/spirit/issues/319"&gt;#319&lt;/a&gt;)
(&lt;a href="https://svn.boost.org/trac/boost/ticket/12473"&gt;#12473&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed iterator concept static assert from &lt;code&gt;&lt;span class="identifier"&gt;ForwardIterator&lt;/span&gt;&lt;/code&gt;
to &lt;code&gt;&lt;span class="identifier"&gt;ReadableIteratorConcept&lt;/span&gt;&lt;/code&gt;
&amp;amp;&amp;amp; &lt;code&gt;&lt;span class="identifier"&gt;ForwardTraversalConcept&lt;/span&gt;&lt;/code&gt;
(&lt;a href="https://github.com/boostorg/spirit/issues/320"&gt;#320&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added assertations to real parsers to ensure that the &lt;code&gt;&lt;span class="identifier"&gt;parse_frac_n&lt;/span&gt;&lt;/code&gt; from user defined
real policy does not return negative values and also to prevent
static analyzers false-positives (&lt;a href="https://github.com/boostorg/spirit/issues/358"&gt;#358&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.Karma:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed alternate operator (&lt;a href="https://github.com/boostorg/spirit/issues/271"&gt;#271&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;no_buffering_policy&lt;/span&gt;&lt;/code&gt;
missing copy constructor (&lt;a href="https://github.com/boostorg/spirit/issues/261"&gt;#261&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The &lt;code&gt;&lt;span class="identifier"&gt;ostream_iterator&lt;/span&gt;&lt;/code&gt;
was inheriting &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;iterator&lt;/span&gt;&lt;/code&gt;
which is deprecated in C++17 (&lt;a href="https://github.com/boostorg/spirit/issues/345"&gt;#345&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.Lex:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Store id as promoted type to allow out-of-enum values (&lt;a href="https://github.com/boostorg/spirit/issues/247"&gt;#247&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed C2001 'newline in constant' warning in generated lexers
(&lt;a href="https://github.com/boostorg/spirit/issues/324"&gt;#324&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/11540"&gt;#11540&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Spirit.Classic:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;remove_reference&lt;/span&gt;&lt;/code&gt;
usage without a namespace in Phoenix (&lt;a href="https://github.com/boostorg/spirit/issues/274"&gt;#274&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;complex&lt;/span&gt;&lt;/code&gt; usage without the
include (&lt;a href="https://github.com/boostorg/spirit/issues/273"&gt;#273&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed compilation of &lt;code&gt;&lt;span class="identifier"&gt;match&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;
&lt;span class="special"&gt;&amp;amp;&amp;gt;&lt;/span&gt;&lt;/code&gt; (&lt;a href="https://github.com/boostorg/spirit/issues/275"&gt;#275&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed compilation with &lt;code&gt;&lt;span class="identifier"&gt;BOOST_DISABLE_THREADS&lt;/span&gt;&lt;/code&gt;
defined (&lt;a href="https://github.com/boostorg/spirit/issues/323"&gt;#323&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/12639"&gt;#12639&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Increment scanner through iterator policy (&lt;a href="https://github.com/boostorg/spirit/issues/336"&gt;#336&lt;/a&gt;) (&lt;a href="https://svn.boost.org/trac/boost/ticket/7371"&gt;#7371&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed deprecated in C++17 &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;iterator&lt;/span&gt;&lt;/code&gt;
usage (&lt;a href="https://github.com/boostorg/spirit/issues/345"&gt;#345&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/stacktrace/"&gt;Stacktrace&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Async safe dumping into files on Windows OS was causing hangs on
some platforms and now is disabled &lt;a href="https://github.com/boostorg/stacktrace/issues/33"&gt;#33&lt;/a&gt;. Users are encouraged
to update to the latest Boost release.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://www.boost.org/libs/container_hash/"&gt;ContainerHash&lt;/a&gt; library
is now used to reduce dependencies.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Minor fixes (including &lt;a href="https://github.com/boostorg/stacktrace/issues/31"&gt;#31&lt;/a&gt;, &lt;a href="https://github.com/boostorg/stacktrace/issues/38"&gt;#38&lt;/a&gt;, &lt;a href="https://github.com/boostorg/stacktrace/issues/39"&gt;#39&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/stacktrace/issues/40"&gt;#40&lt;/a&gt;, &lt;a href="https://github.com/boostorg/stacktrace/issues/42"&gt;#42&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/test/"&gt;Test&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Boost.test v3.7 see the &lt;a href="https://www.boost.org/doc/libs/1_67_0/libs/test/doc/html/boost_test/change_log.html"&gt;Changes
log&lt;/a&gt; for more details.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Breaking changes
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Adding test cases with the same name to the same test suite
is now reported as an error. See the changes log for more details.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
New feature:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Colour output on by default and available on Windows,
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improved and clearer command line help
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;BOOST_AUTO_TEST_CASE_TEMPLATE&lt;/span&gt;&lt;/code&gt;
now accepts a sequence of types in an &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;tuple&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bug fixes and pull requests:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Trac tickets: &lt;a href="https://svn.boost.org/trac/boost/ticket/12092"&gt;#12092&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/12596"&gt;#12596&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/12597"&gt;#12597&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/12969"&gt;#12969&lt;/a&gt;,
&lt;a href="https://svn.boost.org/trac/boost/ticket/13058"&gt;#13058&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13149"&gt;#13149&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13170"&gt;#13170&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Trac tickets: &lt;a href="https://svn.boost.org/trac/boost/ticket/13181"&gt;#13181&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13371"&gt;#13371&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13387"&gt;#13387&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13398"&gt;#13398&lt;/a&gt;,
&lt;a href="https://svn.boost.org/trac/boost/ticket/13407"&gt;#13407&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13435"&gt;#13435&lt;/a&gt;, &lt;a href="https://svn.boost.org/trac/boost/ticket/13443"&gt;#13443&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Pull requests: &lt;a href="https://github.com/boostorg/test/issues/112"&gt;#112&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/118"&gt;#118&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/118"&gt;#118&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/121"&gt;#121&lt;/a&gt;,
&lt;a href="https://github.com/boostorg/test/issues/122"&gt;#122&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/125"&gt;#125&lt;/a&gt;, &lt;a href="https://github.com/boostorg/test/issues/127"&gt;#127&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/type_index/"&gt;TypeIndex&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://www.boost.org/libs/container_hash/"&gt;ContainerHash&lt;/a&gt; library
is now used to reduce dependencies.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Minor fixes (including &lt;a href="https://github.com/boostorg/type_index/issues/17"&gt;#17&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/type_traits/"&gt;TypeTraits&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Added new traits &lt;code&gt;&lt;span class="identifier"&gt;detected&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;detected_or&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;is_detected&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;is_detected_convertible&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;is_detected_exact&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;is_complete&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added greatly improved code for detecting binary operators.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add assertions for completeness to traits which require complete
types as arguments: this prevents various traits from giving eroneous
results from incomplete types.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fix minor issue with mpl compatibility, see &lt;a href="https://svn.boost.org/trac/boost/ticket/12212"&gt;#12212&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add macro to indicate when &lt;code&gt;&lt;span class="identifier"&gt;is_constructible&lt;/span&gt;&lt;/code&gt;
is fully implemented, see &lt;a href="https://svn.boost.org/trac/boost/ticket/12003"&gt;#12003&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Update &lt;code&gt;&lt;span class="identifier"&gt;is_function&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;is_member_function_pointer&lt;/span&gt;&lt;/code&gt;
to work correctly with C++17 noexcept specifications.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add workaround for &lt;code&gt;&lt;span class="identifier"&gt;is_default_constructible&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;pair&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added fallback for &lt;code&gt;&lt;span class="identifier"&gt;is_nothrow_swappable&lt;/span&gt;&lt;/code&gt;
on pre-C++11 compilers.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/utility/"&gt;Utility&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;Breaking change:&lt;/strong&gt; &lt;code&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;utility&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
header no longer includes &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;next&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;prior&lt;/span&gt;&lt;/code&gt; as they have been moved to
the iterator module. Instead include &lt;code&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;next_prior&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;.
Other uses of &lt;code&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;utility&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt; are discouraged, it's better
to use the header for the specific functionality instead.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/unordered/"&gt;Unordered&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Template deduction guides.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Standard conforming &lt;code&gt;&lt;span class="keyword"&gt;noexcept&lt;/span&gt;&lt;/code&gt;
specifications for &lt;code&gt;&lt;span class="identifier"&gt;swap&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="keyword"&gt;operator&lt;/span&gt;&lt;span class="special"&gt;=&lt;/span&gt;&lt;/code&gt;
and node handles.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add &lt;code&gt;&lt;span class="identifier"&gt;element_type&lt;/span&gt;&lt;/code&gt;
to iterators, so that &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;pointer_traits&lt;/span&gt;&lt;/code&gt;
will work.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Support &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;piecewise_construct&lt;/span&gt;&lt;/code&gt; on recent Visual
C++ and Dinkumware libraries.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Use &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;iterator_traits&lt;/span&gt;&lt;/code&gt; rather than the
boost iterator traits in order to remove dependency on Boost.Iterator.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Iterators no longer inherit from &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;iterator&lt;/span&gt;&lt;/code&gt;,
as it's deprecated (&lt;a href="https://github.com/boostorg/unordered/pull/7"&gt;PR#7&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
More detail in the &lt;a href="https://www.boost.org/doc/html/unordered/changes.html#unordered.changes.boost_1_67_0"&gt;library
change log&lt;/a&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/units/"&gt;Units&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fix sqrt for scaled units &lt;a href="https://svn.boost.org/trac/boost/ticket/10270"&gt;#10270&lt;/a&gt; &lt;a href="https://github.com/boostorg/units/issues/27"&gt;#27&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add constexpr support &lt;a href="https://github.com/boostorg/units/issues/22"&gt;#22&lt;/a&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
minor documentation fixes
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/uuid/"&gt;Uuid&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;strong&gt;Breaking change:&lt;/strong&gt; random_generator
is no longer copyable (&lt;a href="https://github.com/boostorg/uuid/issues/61"&gt;#61&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Optimized random_generator to use OS-provided entropy directly (&lt;a href="https://github.com/boostorg/uuid/pull/53"&gt;PR#53&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Provide &lt;code&gt;&lt;span class="identifier"&gt;random_generator_mt19937&lt;/span&gt;&lt;/code&gt;
for bulk UUID generation
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Handle entropy acquisition errors instead of ignoring them
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Support for Windows UWP (&lt;a href="https://github.com/boostorg/uuid/issues/24"&gt;#24&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Support for CloudABI
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="https://www.boost.org/libs/variant/"&gt;Variant&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Substitute function arguments on compilers with variadic templates
support and do not generate substitution metafunctions using preprocessor
&lt;a href="https://github.com/boostorg/variant/issues/42"&gt;#42&lt;/a&gt;, &lt;a href="https://github.com/boostorg/variant/issues/46"&gt;#46&lt;/a&gt;. Many thanks to Nikita Kniazev for providing
an initial fix.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Perfect forwarding for passing visitor in apply_visitor &lt;a href="https://github.com/boostorg/variant/issues/40"&gt;#40&lt;/a&gt;,
&lt;a href="https://svn.boost.org/trac/boost/ticket/13288"&gt;#13288&lt;/a&gt;. Many thanks to Paweł Dac!
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Minor fixes (including &lt;a href="https://github.com/boostorg/variant/issues/41"&gt;#41&lt;/a&gt;, &lt;a href="https://github.com/boostorg/variant/issues/44"&gt;#44&lt;/a&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_67_0.compilers_tested"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Compilers Tested&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
Boost's primary test compilers are:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Linux:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.0, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++0x: 3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++17: 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.4.7, 4.5.3, 4.6.3, 5.4.0, 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.4.7
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.4.0, 5.4.1, 6.3.0, 6.4.0, 7.1.0, 7.2.0, 7.3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Intel, C++14: 18.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
OS X:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.6.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0, 7.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Boost's additional test compilers include:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Linux:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.0, 3.8.1, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++0x: 3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++17: 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 4.9.2, 5.4.0, 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.4.7
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.4.0, 5.4.1, 6.3.0, 6.4.0, 7.1.0, 7.2.0, 7.3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Intel, C++14: 18.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
OS X:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.6.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0, 7.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
FreeBSD:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_67_0.acknowledgements"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Acknowledgements&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
&lt;a href="https://www.boost.org/users/people/beman_dawes.html"&gt;Beman Dawes&lt;/a&gt;, Daniel James,
Vladimir Prus and Marshall Clow managed this release.
&lt;/p&gt;
&lt;/div&gt;
</description></item><item><title>Version 1.66.0</title><link>http://www.boost.org/users/history/version_1_66_0.html</link><guid>http://www.boost.org/users/history/version_1_66_0.html</guid><pubDate>Mon, 18 Dec 2017 13:58:14 +0000</pubDate><description>
&lt;div id="version_1_66_0.note_about_the_new_visual_studio"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Note about
the new Visual Studio release&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
Visual Studio 15.5 was released too late for us to test this release with it.
&lt;/p&gt;
&lt;/div&gt;
&lt;div id="version_1_66_0.new_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;New Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/beast/"&gt;Beast&lt;/a&gt;:&lt;/span&gt;
Portable HTTP, WebSocket,
and network operations using only C++11 and Boost.Asio, from Vinnie Falco.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/callable_traits/"&gt;CallableTraits&lt;/a&gt;:&lt;/span&gt;
A spiritual
successor to Boost.FunctionTypes, Boost.CallableTraits is a header-only
C++11 library for the compile-time inspection and manipulation of all 'callable'
types. Additional support for C++17 features, from Barrett Adair.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/mp11/"&gt;Mp11&lt;/a&gt;:&lt;/span&gt;
A C++11 metaprogramming library,
from Peter Dimov.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_66_0.updated_libraries"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Updated Libraries&lt;/span&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/asio/"&gt;Asio&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Implemented interface changes to reflect the Networking TS (&lt;a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4656.pdf"&gt;N4656&lt;/a&gt;).
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
See the &lt;a href="http://www.boost.org/doc/libs/1_66_0/doc/html/boost_asio/net_ts.html"&gt;list&lt;/a&gt;
of new interfaces and, where applicable, the corresponding
old interfaces that have been superseded.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
The service template parameters, and the corresponding classes,
are disabled by default. For example, instead of &lt;code&gt;&lt;span class="identifier"&gt;basic_socket&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;Protocol&lt;/span&gt;&lt;span class="special"&gt;,&lt;/span&gt;
&lt;span class="identifier"&gt;SocketService&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
we now have simply &lt;code&gt;&lt;span class="identifier"&gt;basic_socket&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;Protocol&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;. The old interface can
be enabled by defining the &lt;code&gt;&lt;span class="identifier"&gt;BOOST_ASIO_ENABLE_OLD_SERVICES&lt;/span&gt;&lt;/code&gt;
macro.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Removed previously deprecated functions.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added support for customised handler tracking.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added reactor-related (i.e. descriptor readiness) events to handler
tracking.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added special "concurrency hint" values that may be used
to disable locking on a per &lt;code&gt;&lt;span class="identifier"&gt;io_context&lt;/span&gt;&lt;/code&gt;
basis.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Enabled perfect forwarding for the first &lt;code&gt;&lt;span class="identifier"&gt;ssl&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;stream&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;/code&gt; constructor argument.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Added ability to release ownership of the underlying native socket.
(Requires Windows 8.1 or later when using the I/O completion port
backend.)
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/atomic/"&gt;Atomic&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Implemented a set of experimental extended atomic operations for
integral types:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;fetch_negate&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;fetch_complement&lt;/span&gt;&lt;/code&gt;
- atomically replaces the value with a negated or binary complemented
value and returns the original value
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;opaque_&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;op&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
- equivalent to &lt;code&gt;&lt;span class="identifier"&gt;fetch_&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;op&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt; except that it doesn't
return the original value
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;op&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;span class="identifier"&gt;_and_test&lt;/span&gt;&lt;/code&gt;
- atomically applies &lt;code&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;op&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;&lt;/span&gt;&lt;/code&gt;
and returns &lt;code&gt;&lt;span class="keyword"&gt;true&lt;/span&gt;&lt;/code&gt;
if the result is zero. &lt;strong&gt;Note:&lt;/strong&gt;
The result of these operations will change to the opposite
in Boost 1.67. The code that uses these functions will need
to be updated.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;bit_test_and_set&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;bit_test_and_reset&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;bit_test_and_complement&lt;/span&gt;&lt;/code&gt;
- atomically sets, resets or complements the specified bit
and returns the original value of the bit
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Following C++17 (&lt;a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0558r1.pdf"&gt;P0558R1&lt;/a&gt;),
arithmetic operations for pointers to non-object types are no longer
provided.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Also following C++17 exposed &lt;code&gt;&lt;span class="identifier"&gt;atomic&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;::&lt;/span&gt;&lt;span class="identifier"&gt;value_type&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;atomic&lt;/span&gt;&lt;span class="special"&gt;&amp;lt;&lt;/span&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;span class="special"&gt;&amp;gt;::&lt;/span&gt;&lt;span class="identifier"&gt;difference_type&lt;/span&gt;&lt;/code&gt; member typedefs,
where applicable, to the user's code.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Improved compatibility with gcc 7. In particular, using 128-bit operations
on x86-64 should no longer require linking with libatomic (the compiler-supplied
library).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/date_time/"&gt;DateTime&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
The library has been converted to use Boost.WinAPI as the abstraction
layer for Windows SDK.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixed an integral overflow that could cause incorrect results when
adding or subtracting many years from a date (see &lt;a href="https://stackoverflow.com/questions/45537280/boost-datetime-issue-with-adding-long-year-durations"&gt;here&lt;/a&gt;).
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/fiber/"&gt;Fiber&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
synchronization with CUDA streams
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
synchronization with ROCm/HIP streams
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/format/"&gt;Format&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improvements:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Accept new conversion specifiers:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/format/pull/41"&gt;&lt;code&gt;&lt;span class="identifier"&gt;a&lt;/span&gt;&lt;/code&gt;&lt;/a&gt;: sets flags
&lt;code&gt;&lt;span class="identifier"&gt;fixed&lt;/span&gt; &lt;span class="special"&gt;|&lt;/span&gt; &lt;span class="identifier"&gt;scientific&lt;/span&gt;&lt;/code&gt;
(i.e. &lt;code&gt;&lt;span class="identifier"&gt;hexfloat&lt;/span&gt;&lt;/code&gt;)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/format/pull/43"&gt;&lt;code&gt;&lt;span class="identifier"&gt;b&lt;/span&gt;&lt;/code&gt;&lt;/a&gt;: sets flag
&lt;code&gt;&lt;span class="identifier"&gt;boolalpha&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/format/pull/41"&gt;&lt;code&gt;&lt;span class="identifier"&gt;A&lt;/span&gt;&lt;/code&gt;&lt;/a&gt;: same as
&lt;code&gt;&lt;span class="identifier"&gt;a&lt;/span&gt;&lt;/code&gt; plus
flag &lt;code&gt;&lt;span class="identifier"&gt;uppercase&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/format/pull/41"&gt;&lt;code&gt;&lt;span class="identifier"&gt;F&lt;/span&gt;&lt;/code&gt;&lt;/a&gt;: same as
&lt;code&gt;&lt;span class="identifier"&gt;f&lt;/span&gt;&lt;/code&gt; plus
flag &lt;code&gt;&lt;span class="identifier"&gt;uppercase&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/format/pull/42"&gt;42&lt;/a&gt;
Accept new argument types &lt;code&gt;&lt;span class="identifier"&gt;j&lt;/span&gt;&lt;/code&gt;
and &lt;code&gt;&lt;span class="identifier"&gt;z&lt;/span&gt;&lt;/code&gt; from
ISO C99 (parsed and ignored like all others).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/format/pull/44"&gt;44&lt;/a&gt;
Accept new argument types &lt;code&gt;&lt;span class="identifier"&gt;I&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;I32&lt;/span&gt;&lt;/code&gt;, &lt;code&gt;&lt;span class="identifier"&gt;I64&lt;/span&gt;&lt;/code&gt;, and &lt;code&gt;&lt;span class="identifier"&gt;w&lt;/span&gt;&lt;/code&gt;
from Microsoft (parsed and ignored like all others).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/format/issues/33"&gt;33&lt;/a&gt;
Added a development tool called &lt;code&gt;&lt;span class="identifier"&gt;format_matrix&lt;/span&gt;&lt;/code&gt;
that exercises as many different combinations of format strings
as possible and logs them to a file:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
helps prevent regressions in between boost releases
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
allows for comparison against &lt;code&gt;&lt;span class="identifier"&gt;snprintf&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bugfixes:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/format/issues/36"&gt;36&lt;/a&gt;
Safely allow volatile arguments to be used with operator%
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/4636"&gt;4636&lt;/a&gt;
Explicit clamping provided to allow MSVC /RTCc to succeed
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/7477"&gt;7477&lt;/a&gt;
Fix compatibility with MSVC /Za
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/10324"&gt;10324&lt;/a&gt;
Const-correct cast issue resolved
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/11632"&gt;11632&lt;/a&gt;
Fix &lt;code&gt;&lt;span class="special"&gt;-&lt;/span&gt;&lt;span class="identifier"&gt;fsanitize&lt;/span&gt;&lt;span class="special"&gt;=&lt;/span&gt;&lt;span class="identifier"&gt;undefined&lt;/span&gt;&lt;/code&gt;
issue in &lt;code&gt;&lt;span class="identifier"&gt;alt_sstream&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/fusion/"&gt;Fusion&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fusion/pull/149"&gt;PR#149&lt;/a&gt;
&lt;code&gt;&lt;span class="identifier"&gt;isspace&lt;/span&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="identifier"&gt;c&lt;/span&gt;&lt;span class="special"&gt;)&lt;/span&gt;&lt;/code&gt;
is not a macro in Dinkum clib for VxWorks, thanks to Brian Kuhl(@kuhlenough).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fusion/pull/150"&gt;PR#150&lt;/a&gt;
Remove circular preprocessor include, thanks to Gregor Jasny(@gjasny).
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fusion/pull/151"&gt;PR#151&lt;/a&gt;
Change base of &lt;code&gt;&lt;span class="identifier"&gt;fusion&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;tuple&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fusion/pull/153"&gt;PR#153&lt;/a&gt;
Fixed compile error with &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;array&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/fusion/pull/154"&gt;PR#154&lt;/a&gt;
Fixed bugs nesting and copying on c++03.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/geometry/"&gt;Geometry&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improvements:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Add distance for geographic PointLike/AnyGeometry.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bugfixes:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixes in results of union/intersection/difference which could
be incorrect in very complex cases
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixes in validity of union/intersection/difference/buffer
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Fixes in set and relational operations for non-cartesian coordinate
systems.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/iterator/"&gt;Iterator&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;next&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt;/&lt;code&gt;&lt;span class="identifier"&gt;prior&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt;
functions now support user's iterators that don't specify nested
types such as &lt;code&gt;&lt;span class="identifier"&gt;iterator_category&lt;/span&gt;&lt;/code&gt;,
&lt;code&gt;&lt;span class="identifier"&gt;difference_type&lt;/span&gt;&lt;/code&gt;,
etc. and instead specialize &lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;iterator_traits&lt;/span&gt;&lt;/code&gt;
to define those types. The compiler must support C++17-compatible
&lt;code&gt;&lt;span class="identifier"&gt;std&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;iterator_traits&lt;/span&gt;&lt;/code&gt; for this to work.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/log/"&gt;Log&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Bug fixes:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Fixed a bug in &lt;code&gt;&lt;span class="identifier"&gt;file_collector&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;scan_for_files&lt;/span&gt;&lt;/code&gt;
that could cause incorrectly named log files in the target
directory after the user's application restart.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
See &lt;a href="http://www.boost.org/libs/log/doc/html/log/changelog.html"&gt;changelog&lt;/a&gt;
for more details.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/math/"&gt;Math&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
New Features:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Add Gauss and Gauss-Kronrod quadrature routines.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add double-exponential (tanh-sinh, exp-sinh and sinh-sinh)
quadrature routines.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add Chebyshev polynomial evaluation, roots, integration, differentiation,
and interpolation routines.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/multi_index/index.html"&gt;Multi-index Containers&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Made &lt;code&gt;&lt;span class="identifier"&gt;modify&lt;/span&gt;&lt;/code&gt; and
&lt;code&gt;&lt;span class="identifier"&gt;modify_key&lt;/span&gt;&lt;/code&gt; more robust
so that the modified element is erased if the modifier throws or
the rollback functor does not properly restore the element (full
discussion at ticket &lt;a href="https://svn.boost.org/trac/boost/ticket/12542"&gt;#12542&lt;/a&gt;). This is technically backwards
incompatible; for instance, the following code:
&lt;/div&gt;
&lt;pre&gt;&lt;span class="identifier"&gt;c&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;modify&lt;/span&gt;&lt;span class="special"&gt;(&lt;/span&gt;&lt;span class="identifier"&gt;c&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;begin&lt;/span&gt;&lt;span class="special"&gt;(),[](&lt;/span&gt;&lt;span class="keyword"&gt;auto&lt;/span&gt;&lt;span class="special"&gt;&amp;amp;){&lt;/span&gt;&lt;span class="keyword"&gt;throw&lt;/span&gt; &lt;span class="number"&gt;0&lt;/span&gt;&lt;span class="special"&gt;;});&lt;/span&gt;
&lt;/pre&gt;
&lt;div&gt;
keeps the container &lt;code&gt;&lt;span class="identifier"&gt;c&lt;/span&gt;&lt;/code&gt;
untouched in former versions of Boost whereas now &lt;code&gt;&lt;span class="identifier"&gt;c&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;begin&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; is erased. Thanks to Jon Kalb for
raising the issue.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Maintenance fixes.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/optional/index.html"&gt;Optional&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
On newer compilers &lt;code&gt;&lt;span class="identifier"&gt;optional&lt;/span&gt;&lt;/code&gt;
is now trivially-copyable for scalar &lt;code&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;/code&gt;s.
This uses a different storage (just &lt;code&gt;&lt;span class="identifier"&gt;T&lt;/span&gt;&lt;/code&gt;
rather than &lt;code&gt;&lt;span class="identifier"&gt;aligned_storage&lt;/span&gt;&lt;/code&gt;).
We require the compiler to support defaulted functions.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Changed the implementation of &lt;code&gt;&lt;span class="keyword"&gt;operator&lt;/span&gt;&lt;span class="special"&gt;==&lt;/span&gt;&lt;/code&gt; to get rid of the &lt;code&gt;&lt;span class="special"&gt;-&lt;/span&gt;&lt;span class="identifier"&gt;Wmaybe&lt;/span&gt;&lt;span class="special"&gt;-&lt;/span&gt;&lt;span class="identifier"&gt;uninitialized&lt;/span&gt;&lt;/code&gt;
false-positive warning from GCC.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/poly_collection/"&gt;PolyCollection&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Boost.PolyCollection has been backported to GCC 4.8 to 4.9 and Clang
3.3 to 3.6. The version of libstdc++-v3 shipped with GCC 4.8 (which
can also be used by Clang) has deficiencies that result in the following
limitations when using Boost.PolyCollection:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Stateful allocators are not properly supported.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Allocator-extended move construction decays to allocator-extended
copy construction.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Copy construction crashes if an exception is thrown during
element copying.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Maintenance fixes.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/predef/"&gt;Predef&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improved Windows Universal Platform detection. (from James E. King,
III)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Add detection for CloudABI with cloudlibc. (from James E. King, III)
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Various other bug fixes.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/regex/"&gt;Regex&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Bug fixes:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Numerous small fixes for security issues discovered by de-fuzzing.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/stacktrace/"&gt;Stacktrace&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Now works out-of-the-box on MinGW-w64.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Now works on MinGW (without &lt;code&gt;&lt;span class="special"&gt;-&lt;/span&gt;&lt;span class="identifier"&gt;w64&lt;/span&gt;&lt;/code&gt;) if &lt;code&gt;&lt;span class="identifier"&gt;libbacktrace&lt;/span&gt;&lt;/code&gt;
is properly installed. See "MinGW specific notes" section
in documentation for more info.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/thread/"&gt;Thread&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Bugs Fixes
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="http://svn.boost.org/trac/boost/ticket/12323"&gt;#12323&lt;/a&gt;
windows - boost/thread/win32/mfc_thread_init.hpp has wrong
signature for _pRawDllMainOrig
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="http://svn.boost.org/trac/boost/ticket/12730"&gt;#12730&lt;/a&gt;
windows - static threads library is incompatible with MSVC
2017 RC
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="http://svn.boost.org/trac/boost/ticket/12976"&gt;#12976&lt;/a&gt;
Boost Thread Executors documentation mistakes
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="http://svn.boost.org/trac/boost/ticket/12949"&gt;#12949&lt;/a&gt;
using sleep_for in a thread context without including boost/thread/thread.hpp
yields incorrect behaviour when BOOST_THREAD_HAS_CONDATTR_SET_CLOCK_MONOTONIC
is defined
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="http://svn.boost.org/trac/boost/ticket/13019"&gt;#13019&lt;/a&gt;
ABI compatibility for BOOST_THREAD_PROVIDES_INTERRUPTIONS incomplete
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="http://svn.boost.org/trac/boost/ticket/13069"&gt;#13069&lt;/a&gt;
Boost unit test "sync_pq_multi_thread_p_lib.exe"
hung in thread library
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="http://svn.boost.org/trac/boost/ticket/13163"&gt;#13163&lt;/a&gt;
boost::detail::heap_new does not have a variadic variant
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="http://svn.boost.org/trac/boost/ticket/13226"&gt;#13226&lt;/a&gt;
getpagesize() is deprecated since 199506L
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/thread/issues/132"&gt;#132&lt;/a&gt;
VS 2017.4 Preview deadlocks on Test 10964
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/thread/issues/133"&gt;#133&lt;/a&gt;
windows - Spurious timing test failures on windows
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/thread/issues/134"&gt;#134&lt;/a&gt;
VS 2017.4 Preview deadlock in sync_pq_multi_thread_p_lib.exe
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/thread/issues/135"&gt;#135&lt;/a&gt;
VS 2017.4 Preview test_scheduled_tp_p.exe deadlock
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/thread/issues/136"&gt;#136&lt;/a&gt;
VS 2017.4 Preview test_scheduler_p.exe deadlock
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/thread/issues/137"&gt;#137&lt;/a&gt;
VS 2017.4 Preview executor_ex.exe deadlock
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/thread/issues/143"&gt;#143&lt;/a&gt;
Failures on msvc-12.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/thread/issues/145"&gt;#145&lt;/a&gt;
Clang build error with BOOST_THREAD_ATTRIBUTE_MAY_ALIAS
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
New Experimental Feature
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/thread/issues/116"&gt;#116&lt;/a&gt;
[Proposal] Add APIs for deferred set_value/exception
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/utility/"&gt;Utility&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;/&lt;/span&gt;&lt;span class="identifier"&gt;next_prior&lt;/span&gt;&lt;span class="special"&gt;.&lt;/span&gt;&lt;span class="identifier"&gt;hpp&lt;/span&gt;&lt;/code&gt; has been moved to Boost.Iterator.
No changes needed to the user's code.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/uuid/"&gt;Uuid&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Improvements:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/uuid/issues/26"&gt;26&lt;/a&gt;
Refactored &lt;code&gt;&lt;span class="identifier"&gt;name_generator&lt;/span&gt;&lt;/code&gt;
to support a configurable hash provider concept and provide
an optional MD5 hash implementation per RFC-4122. This will
make it easier to support whatever becomes the next standard
hash algorithm.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://github.com/boostorg/uuid/issues/34"&gt;34&lt;/a&gt;
Added RFC-4122 namespaces in &lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;uuids&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;ns&lt;/span&gt;&lt;/code&gt;.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Bugfixes:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/8630"&gt;8630&lt;/a&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/11482"&gt;11482&lt;/a&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/12253"&gt;12253&lt;/a&gt;
Various deficiencies in &lt;code&gt;&lt;span class="identifier"&gt;string_generator&lt;/span&gt;&lt;/code&gt;
were resolved.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;a href="https://svn.boost.org/trac10/ticket/10665"&gt;10665&lt;/a&gt;
&lt;code&gt;&lt;span class="identifier"&gt;name_generator&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="keyword"&gt;operator&lt;/span&gt;&lt;span class="special"&gt;()&lt;/span&gt;&lt;/code&gt; is now const, matching docs.
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Detail headers were moved into the detail subdirectory. No
changes needed to user's code, however you may get build warnings
if you use the old header location.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
&lt;span class="library"&gt;&lt;a href="http://www.boost.org/libs/variant/"&gt;Variant&lt;/a&gt;:&lt;/span&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
&lt;code&gt;&lt;span class="identifier"&gt;boost&lt;/span&gt;&lt;span class="special"&gt;::&lt;/span&gt;&lt;span class="identifier"&gt;apply_visitor&lt;/span&gt;&lt;/code&gt; now does perfect
forwarding of visitables &lt;a href="https://svn.boost.org/trac/boost/ticket/6971"&gt;#6971&lt;/a&gt;. Great thanks to Levon Tarakchyan
for implementing this feature.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_66_0.compilers_tested"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Compilers Tested&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
Boost's primary test compilers are:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Linux:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.0, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++0x: 3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++17: 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 5.4.0, 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.4.7
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.2, 4.7.3, 4.8.5, 4.9.4, 6.4.0, 7.1.0, 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.4.1, 6.3.0, 6.4.0, 7.1.0, 7.2.0, 7.2.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Intel: 18.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
OS X:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.6.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Android:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.6, 3.7, 3.8
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.9, 5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 6.2
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
FreeBSD:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
QNX:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
QCC, C++0x: 4.4.2
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
QCC, C++11: 4.7.3
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Boost's additional test compilers include:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Linux:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.0, 3.8.1, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++0x: 3.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++17: 5.0.1
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.4.7, 4.5.3, 4.6.3, 4.7.2, 5.4.0, 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.4.7
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.2, 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.4.1, 6.3.0, 6.4.0, 7.1.0, 7.2.0, 7.2.1, 8.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++17: 7.2.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Intel: 18.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
OS X:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 9.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Windows:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++0x: 4.6.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++11: 4.7.3, 4.8.1, 4.9.3
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0, 7.1.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Android:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 3.6, 3.7, 3.8
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC: 4.9, 5.4
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
GCC, C++14: 6.2
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
FreeBSD:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
Clang: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++11: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++14: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
Clang, C++1z: 4.0.0
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
QNX:
&lt;ul&gt;
&lt;li&gt;
&lt;div&gt;
QCC, C++0x: 4.4.2
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;div&gt;
QCC, C++11: 4.7.3
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="version_1_66_0.acknowledgements"&gt;
&lt;h3&gt;&lt;span class="link"&gt;Acknowledgements&lt;/span&gt;&lt;/h3&gt;
&lt;p&gt;
&lt;a href="http://www.boost.org/users/people/beman_dawes.html"&gt;Beman Dawes&lt;/a&gt;, Daniel James,
Vladimir Prus and Marshall Clow managed this release.
&lt;/p&gt;
&lt;/div&gt;
</description></item>
</channel>
</rss>