2
0
mirror of https://github.com/boostorg/website.git synced 2026-02-19 15:02:08 +00:00
Files
website/users/history/in_progress.html
2017-09-21 12:10:27 +00:00

292 lines
12 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>In Progress Releases</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="icon" href="/favicon.ico" type="image/ico" />
<link rel="stylesheet" type="text/css" href="/style-v2/section-boost.css" />
<!--[if IE 7]> <style type="text/css"> body { behavior: url(/style-v2/csshover3.htc); } </style> <![endif]-->
</head>
<!-- Don't edit this page! It's generated by site-tools/site-tools.py -->
<body>
<div id="heading">
<!--#include virtual="/common/heading.html" --> </div>
<div id="body">
<div id="body-inner">
<div id="content">
<div class="section" id="intro">
<div class="section-0">
<div class="section-title">
<h1>In Progress Releases</h1>
</div>
<div class="section-alert"><p>Note: The release notes
on this page are for releases still under development.
Please don't use this page as a source of information,
it's here for development purposes only. Everything is
subject to change.</p></div>
<div class="section-body">
<h2><span class=
"news-title">Version 1.66.0</span></h2>
<p><span class=news-date">In Progress</span></p>
<div class="news-description">
<div class="description">
<div id="version_1_66_0.new_libraries">
<h3><span class="link">New Libraries</span></h3>
<ul>
<li>
<div>
<em>TODO</em>
</div>
</li>
</ul>
</div>
<div id="version_1_66_0.updated_libraries">
<h3><span class="link">Updated Libraries</span></h3>
<ul>
<li>
<div>
<span class="library"><a href="/doc/libs/master/libs/atomic/">Atomic</a>:</span>
<ul>
<li>
<div>
Implemented a set of experimental extended atomic operations for
integral types:
<ul>
<li>
<div>
<code><span class="identifier">fetch_negate</span></code>,
<code><span class="identifier">fetch_complement</span></code>
- atomically replaces the value with a negated or binary complemented
value and returns the original value
</div>
</li>
<li>
<div>
<code><span class="identifier">opaque_</span><span class="special">&lt;</span><span class="identifier">op</span><span class="special">&gt;</span></code>
- equivalent to <code><span class="identifier">fetch_</span><span class="special">&lt;</span><span class="identifier">op</span><span class="special">&gt;</span></code> except that it doesn't
return the original value
</div>
</li>
<li>
<div>
<code><span class="special">&lt;</span><span class="identifier">op</span><span class="special">&gt;</span><span class="identifier">_and_test</span></code>
- atomically applies <code><span class="special">&lt;</span><span class="identifier">op</span><span class="special">&gt;</span></code>
and returns <code><span class="keyword">true</span></code>
if the result is zero
</div>
</li>
<li>
<div>
<code><span class="identifier">bit_test_and_set</span></code>,
<code><span class="identifier">bit_test_and_reset</span></code>,
<code><span class="identifier">bit_test_and_complement</span></code>
- atomically sets, resets or complements the specified bit
and returns the original value of the bit
</div>
</li>
</ul>
</div>
</li>
<li>
<div>
Following C++17 (<a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0558r1.pdf">P0558R1</a>),
arithmetic operations for pointers to non-object types are no longer
provided.
</div>
</li>
<li>
<div>
Also following C++17 exposed <code><span class="identifier">atomic</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">value_type</span></code>
and <code><span class="identifier">atomic</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;::</span><span class="identifier">difference_type</span></code> member typedefs,
where applicable, to the user's code.
</div>
</li>
<li>
<div>
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).
</div>
</li>
</ul>
</div>
</li>
<li>
<div>
<span class="library"><a href="/doc/libs/master/libs/date_time/">DateTime</a>:</span>
<ul>
<li>
<div>
The library has been converted to use Boost.WinAPI as the abstraction
layer for Windows SDK.
</div>
</li>
<li>
<div>
Fixed an integral overflow that could cause incorrect results when
adding or subtracting many years from a date (see <a href="https://stackoverflow.com/questions/45537280/boost-datetime-issue-with-adding-long-year-durations">here</a>).
</div>
</li>
</ul>
</div>
</li>
<li>
<div>
<span class="library"><a href="/doc/libs/master/libs/iterator/">Iterator</a>:</span>
<ul>
<li>
<div>
<code><span class="identifier">next</span><span class="special">()</span></code>/<code><span class="identifier">prior</span><span class="special">()</span></code>
functions now support user's iterators that don't specify nested
types such as <code><span class="identifier">iterator_category</span></code>,
<code><span class="identifier">difference_type</span></code>,
etc. and instead specialize <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span></code>
to define those types. The compiler must support C++17-compatible
<code><span class="identifier">std</span><span class="special">::</span><span class="identifier">iterator_traits</span></code> for this to work.
</div>
</li>
</ul>
</div>
</li>
<li>
<div>
<span class="library"><a href="/doc/libs/master/libs/log/">Log</a>:</span>
<ul>
<li>
<div>
Bug fixes:
<ul>
<li>
<div>
Fixed a bug in <code><span class="identifier">file_collector</span><span class="special">::</span><span class="identifier">scan_for_files</span></code>
that could cause incorrectly named log files in the target
directory after the user's application restart.
</div>
</li>
</ul>
</div>
</li>
<li>
<div>
See <a href="/doc/libs/master/libs/log/doc/html/log/changelog.html">changelog</a>
for more details.
</div>
</li>
</ul>
</div>
</li>
<li>
<div>
<span class="library"><a href="/doc/libs/master/libs/multi_index/index.html">Multi-index Containers</a>:</span>
<ul>
<li>
<div>
Made <code><span class="identifier">modify</span></code> and
<code><span class="identifier">modify_key</span></code> 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 <a href="https://svn.boost.org/trac/boost/ticket/12542">#12542</a>). This is technically backwards
incompatible; for instance, the following code:
</div>
<pre><span class="identifier">c</span><span class="special">.</span><span class="identifier">modify</span><span class="special">(</span><span class="identifier">c</span><span class="special">.</span><span class="identifier">begin</span><span class="special">(),[](</span><span class="keyword">auto</span><span class="special">&amp;){</span><span class="keyword">throw</span> <span class="number">0</span><span class="special">;});</span>
</pre>
<div>
keeps the container <code><span class="identifier">c</span></code>
untouched in former versions of Boost whereas now <code><span class="identifier">c</span><span class="special">.</span><span class="identifier">begin</span><span class="special">()</span></code> is erased. Thanks to Jon Kalb for
raising the issue.
</div>
</li>
<li>
<div>
Maintenance fixes.
</div>
</li>
</ul>
</div>
</li>
<li>
<div>
<span class="library"><a href="/doc/libs/master/libs/utility/">Utility</a>:</span>
<ul>
<li>
<div>
<code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">next_prior</span><span class="special">.</span><span class="identifier">hpp</span></code> has been moved to Boost.Iterator.
No changes needed to the user's code.
</div>
</li>
</ul>
</div>
</li>
<li>
<div>
<em>TODO</em>
</div>
</li>
</ul>
</div>
<div id="version_1_66_0.compilers_tested">
<h3><span class="link">Compilers Tested</span></h3>
<p>
Boost's primary test compilers are:
</p>
<ul>
<li>
<div>
<em>TODO</em>
</div>
</li>
</ul>
<p>
Boost's additional test compilers include:
</p>
<ul>
<li>
<div>
<em>TODO</em>
</div>
</li>
</ul>
</div>
<div id="version_1_66_0.acknowledgements">
<h3><span class="link">Acknowledgements</span></h3>
<p>
<em>TODO</em>
</p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="sidebar">
<!--#include virtual="/common/sidebar-common.html" --><!--#include virtual="/common/sidebar-boost.html" --> </div>
<div class="clear"></div>
</div>
</div>
<div id="footer">
<div id="footer-left">
<div id="copyright">
<p>Copyright Rene Rivera 2006-2007.</p>
</div><!--#include virtual="/common/footer-license.html" --> </div>
<div id="footer-right">
<!--#include virtual="/common/footer-banners.html" --> </div>
<div class="clear"></div>
</div>
</body>
</html>