blob: 95f0ef3feeb49dc294a8e0655d7cadc4ee3b822b [file] [log] [blame]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Release Notes</title>
<link rel="stylesheet" href="../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
<link rel="up" href="../container.html" title="Chapter&#160;8.&#160;Boost.Container">
<link rel="prev" href="acknowledgements_notes.html" title="Acknowledgements, notes and links">
<link rel="next" href="../date_time.html" title="Chapter&#160;9.&#160;Boost.Date_Time">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../boost.png"></td>
<td align="center"><a href="../../../index.html">Home</a></td>
<td align="center"><a href="../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="acknowledgements_notes.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../date_time.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="container.release_notes"></a><a class="link" href="release_notes.html" title="Release Notes">Release Notes</a>
</h2></div></div></div>
<div class="toc"><dl class="toc">
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_58_00">Boost
1.58 Release</a></span></dt>
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_57_00">Boost
1.57 Release</a></span></dt>
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_56_00">Boost
1.56 Release</a></span></dt>
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_55_00">Boost
1.55 Release</a></span></dt>
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_54_00">Boost
1.54 Release</a></span></dt>
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_53_00">Boost
1.53 Release</a></span></dt>
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_52_00">Boost
1.52 Release</a></span></dt>
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_51_00">Boost
1.51 Release</a></span></dt>
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_50_00">Boost
1.50 Release</a></span></dt>
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_49_00">Boost
1.49 Release</a></span></dt>
<dt><span class="section"><a href="release_notes.html#container.release_notes.release_notes_boost_1_48_00">Boost
1.48 Release</a></span></dt>
</dl></div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_58_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_58_00" title="Boost 1.58 Release">Boost
1.58 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
Experimental <code class="computeroutput"><a class="link" href="../boost/container/small_vector.html" title="Class template small_vector">small_vector</a></code>
container.
</li>
<li class="listitem">
Massive dependency reorganization. Now <span class="bold"><strong>Boost.Container</strong></span>
depends on very basic utilities like Boost.Core and <span class="bold"><strong>Boost.Intrusive</strong></span>.
Preprocessed code size have decreased considerably and compilation times
have improved.
</li>
<li class="listitem">
Added <code class="computeroutput"><span class="identifier">nth</span></code> and <code class="computeroutput"><span class="identifier">index_of</span></code> functions to containers with
random-access iterators (except <code class="computeroutput"><span class="identifier">basic_string</span></code>).
</li>
<li class="listitem">
Added C++17's <code class="computeroutput"><span class="identifier">allocator_traits</span><span class="special">&lt;</span><span class="identifier">Allocator</span><span class="special">&gt;::</span><span class="identifier">is_always_equal</span></code>.
</li>
<li class="listitem">
Updated containers to implement new constructors as specified in <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-defects.html#2210" target="_top">2210.
Missing allocator-extended constructor for allocator-aware containers</a>.
</li>
<li class="listitem">
Fixed bugs:
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; ">
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/9931" target="_top">#9931:
<span class="emphasis"><em>"flat_map::insert(ordered_unique_range_t...) fails
with move_iterators"</em></span></a> (reopened).
</li>
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/11076" target="_top">#11076:
<span class="emphasis"><em>"Unqualified calls to memmove/memcpy in container/detail/copy_move_algo.hpp"</em></span></a>.
</li>
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/10790" target="_top">Trac
#10790 (<span class="emphasis"><em>long long errors from container"</em></span>)</a>.
</li>
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/10808" target="_top">Trac
#10808 (<span class="emphasis"><em>compare equal operator of vector is broken"</em></span>)</a>.
</li>
</ul></div>
</li>
<li class="listitem">
<span class="bold"><strong>Source Breaking</strong></span>: <code class="computeroutput"><a class="link" href="../boost/container/scoped_allocator_adaptor.html" title="Class template scoped_allocator_adaptor">scoped_allocator_adaptor</a></code>'s
<code class="computeroutput"><span class="identifier">propagate_on_container_copy_assignment</span></code>,
<code class="computeroutput"><span class="identifier">propagate_on_container_move_assignment</span></code>
and <code class="computeroutput"><span class="identifier">propagate_on_container_swap</span></code>
are no longer <code class="computeroutput"><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">integral_constant</span><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="keyword">true</span><span class="special">/</span><span class="keyword">false</span><span class="special">&gt;</span></code> types. The dependency reorganization
needed to break with those classes to avoid MPL dependencies, and interoperability
with <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">integral_constant</span></code> was not guaranteed.
Code assumming <code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">true_type</span><span class="special">/</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">false_type</span></code>
on this will not compile. As a workaround, use the guaranteed internal
<code class="computeroutput"><span class="special">::</span><span class="identifier">value</span></code>
constant: <code class="computeroutput"><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">integral_constant</span><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="identifier">scoped_allocator_adaptor</span><span class="special">&lt;</span><span class="identifier">Allocator</span><span class="special">&gt;::</span><span class="identifier">propagate_on_container_move_assignment</span><span class="special">::</span><span class="identifier">value</span><span class="special">&gt;</span></code>.
</li>
</ul></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_57_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_57_00" title="Boost 1.57 Release">Boost
1.57 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
Added support for <code class="computeroutput"><span class="identifier">initializer_list</span></code>.
Contributed by Robert Matusewicz.
</li>
<li class="listitem">
Fixed double destruction bugs in vector and backward expansion capable
allocators.
</li>
<li class="listitem">
Fixed bugs:
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; ">
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/10263" target="_top">Trac
#10263 (<span class="emphasis"><em>"AIX 6.1 bug with sched_yield() function
out of scope"</em></span>)</a>.
</li>
<li class="listitem">
<a href="https://github.com/boostorg/container/pull/16" target="_top">GitHub
#16: <span class="emphasis"><em>Fix iterators of incomplete type containers</em></span></a>.
Thanks to Mikael Persson.
</li>
</ul></div>
</li>
</ul></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_56_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_56_00" title="Boost 1.56 Release">Boost
1.56 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
Added DlMalloc-based <a class="link" href="extended_functionality.html#container.extended_functionality.extended_allocators" title="Extended allocators">Extended
Allocators</a>.
</li>
<li class="listitem">
<a class="link" href="extended_functionality.html#container.extended_functionality.configurable_tree_based_associative_containers" title="Configurable tree-based associative ordered containers">Improved
configurability</a> of tree-based ordered associative containers.
AVL, Scapegoat and Splay trees are now available to implement <code class="computeroutput"><a class="link" href="../boost/container/set.html" title="Class template set">set</a></code>, <code class="computeroutput"><a class="link" href="../boost/container/multiset.html" title="Class template multiset">multiset</a></code>,
<code class="computeroutput"><a class="link" href="../boost/container/map.html" title="Class template map">map</a></code> and <code class="computeroutput"><a class="link" href="../boost/container/multimap.html" title="Class template multimap">multimap</a></code>.
</li>
<li class="listitem">
Fixed bugs:
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; ">
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/9338" target="_top">#9338:
<span class="emphasis"><em>"VS2005 compiler errors in swap() definition after
including container/memory_util.hpp"</em></span></a>.
</li>
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/9637" target="_top">#9637:
<span class="emphasis"><em>"Boost.Container vector::resize() performance issue"</em></span></a>.
</li>
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/9648" target="_top">#9648:
<span class="emphasis"><em>"string construction optimization - char_traits::copy
could be used ..."</em></span></a>.
</li>
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/9801" target="_top">#9801:
<span class="emphasis"><em>"I can no longer create and iterator_range from
a stable_vector"</em></span></a>.
</li>
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/9915" target="_top">#9915:
<span class="emphasis"><em>"Documentation issues regarding vector constructors
and resize methods - value/default initialization"</em></span></a>.
</li>
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/9916" target="_top">#9916:
<span class="emphasis"><em>"Allocator propagation incorrect in the assignment
operator of most"</em></span></a>.
</li>
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/9931" target="_top">#9931:
<span class="emphasis"><em>"flat_map::insert(ordered_unique_range_t...) fails
with move_iterators"</em></span></a>.
</li>
<li class="listitem">
<a href="https://svn.boost.org/trac/boost/ticket/9955" target="_top">#9955:
<span class="emphasis"><em>"Using memcpy with overlapped buffers in vector"</em></span></a>.
</li>
</ul></div>
</li>
</ul></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_55_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_55_00" title="Boost 1.55 Release">Boost
1.55 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
Implemented <a class="link" href="main_features.html#container.main_features.scary_iterators" title="SCARY iterators">SCARY
iterators</a>.
</li>
<li class="listitem">
Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/8269" target="_top">#8269</a>,
<a href="https://svn.boost.org/trac/boost/ticket/8473" target="_top">#8473</a>,
<a href="https://svn.boost.org/trac/boost/ticket/8892" target="_top">#8892</a>,
<a href="https://svn.boost.org/trac/boost/ticket/9009" target="_top">#9009</a>,
<a href="https://svn.boost.org/trac/boost/ticket/9064" target="_top">#9064</a>,
<a href="https://svn.boost.org/trac/boost/ticket/9092" target="_top">#9092</a>,
<a href="https://svn.boost.org/trac/boost/ticket/9108" target="_top">#9108</a>,
<a href="https://svn.boost.org/trac/boost/ticket/9166" target="_top">#9166</a>.
</li>
<li class="listitem">
Added <code class="computeroutput"><span class="keyword">default</span> <span class="identifier">initialization</span></code>
insertion functions to vector-like containers with new overloads taking
<code class="computeroutput"><span class="identifier">default_init_t</span></code> as an
argument instead of <code class="computeroutput"><span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span></code>.
</li>
</ul></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_54_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_54_00" title="Boost 1.54 Release">Boost
1.54 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
Added experimental <code class="computeroutput"><span class="identifier">static_vector</span></code>
class, based on Andrew Hundt's and Adam Wulkiewicz's high performance
<code class="computeroutput"><span class="identifier">varray</span></code> class.
</li>
<li class="listitem">
Speed improvements in <code class="computeroutput"><span class="identifier">vector</span></code>
constructors/copy/move/swap, dispatching to memcpy when possible.
</li>
<li class="listitem">
Support for <code class="computeroutput"><span class="identifier">BOOST_NO_EXCEPTIONS</span></code>
<a href="https://svn.boost.org/trac/boost/ticket/7227" target="_top">#7227</a>.
</li>
<li class="listitem">
Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/7921" target="_top">#7921</a>,
<a href="https://svn.boost.org/trac/boost/ticket/7969" target="_top">#7969</a>,
<a href="https://svn.boost.org/trac/boost/ticket/8118" target="_top">#8118</a>,
<a href="https://svn.boost.org/trac/boost/ticket/8294" target="_top">#8294</a>,
<a href="https://svn.boost.org/trac/boost/ticket/8553" target="_top">#8553</a>,
<a href="https://svn.boost.org/trac/boost/ticket/8724" target="_top">#8724</a>.
</li>
</ul></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_53_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_53_00" title="Boost 1.53 Release">Boost
1.53 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
Fixed bug <a href="https://svn.boost.org/trac/boost/ticket/7650" target="_top">#7650</a>.
</li>
<li class="listitem">
Improved <code class="computeroutput"><span class="identifier">vector</span></code>'s insertion
performance.
</li>
<li class="listitem">
Changed again experimental multiallocation interface for better performance
(still experimental).
</li>
<li class="listitem">
Added no exception support for those willing to disable exceptions in
their compilers.
</li>
<li class="listitem">
Fixed GCC -Wshadow warnings.
</li>
<li class="listitem">
Replaced deprecated BOOST_NO_XXXX with newer BOOST_NO_CXX11_XXX macros.
</li>
</ul></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_52_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_52_00" title="Boost 1.52 Release">Boost
1.52 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
Improved <code class="computeroutput"><span class="identifier">stable_vector</span></code>'s
template code bloat and type safety.
</li>
<li class="listitem">
Changed typedefs and reordered functions of sequence containers to improve
doxygen documentation.
</li>
<li class="listitem">
Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/6615" target="_top">#6615</a>,
<a href="https://svn.boost.org/trac/boost/ticket/7139" target="_top">#7139</a>,
<a href="https://svn.boost.org/trac/boost/ticket/7215" target="_top">#7215</a>,
<a href="https://svn.boost.org/trac/boost/ticket/7232" target="_top">#7232</a>,
<a href="https://svn.boost.org/trac/boost/ticket/7269" target="_top">#7269</a>,
<a href="https://svn.boost.org/trac/boost/ticket/7439" target="_top">#7439</a>.
</li>
<li class="listitem">
Implemented LWG Issue #149 (range insertion now returns an iterator)
&amp; cleaned up insertion code in most containers
</li>
<li class="listitem">
Corrected aliasing errors.
</li>
</ul></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_51_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_51_00" title="Boost 1.51 Release">Boost
1.51 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/6763" target="_top">#6763</a>,
<a href="https://svn.boost.org/trac/boost/ticket/6803" target="_top">#6803</a>,
<a href="https://svn.boost.org/trac/boost/ticket/7114" target="_top">#7114</a>,
<a href="https://svn.boost.org/trac/boost/ticket/7103" target="_top">#7103</a>.
<a href="https://svn.boost.org/trac/boost/ticket/7123" target="_top">#7123</a>,
</li></ul></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_50_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_50_00" title="Boost 1.50 Release">Boost
1.50 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
Added Scoped Allocator Model support.
</li>
<li class="listitem">
Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/6606" target="_top">#6606</a>,
<a href="https://svn.boost.org/trac/boost/ticket/6533" target="_top">#6533</a>,
<a href="https://svn.boost.org/trac/boost/ticket/6536" target="_top">#6536</a>,
<a href="https://svn.boost.org/trac/boost/ticket/6566" target="_top">#6566</a>,
<a href="https://svn.boost.org/trac/boost/ticket/6575" target="_top">#6575</a>,
</li>
</ul></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_49_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_49_00" title="Boost 1.49 Release">Boost
1.49 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem">
Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/6540" target="_top">#6540</a>,
<a href="https://svn.boost.org/trac/boost/ticket/6499" target="_top">#6499</a>,
<a href="https://svn.boost.org/trac/boost/ticket/6336" target="_top">#6336</a>,
<a href="https://svn.boost.org/trac/boost/ticket/6335" target="_top">#6335</a>,
<a href="https://svn.boost.org/trac/boost/ticket/6287" target="_top">#6287</a>,
<a href="https://svn.boost.org/trac/boost/ticket/6205" target="_top">#6205</a>,
<a href="https://svn.boost.org/trac/boost/ticket/4383" target="_top">#4383</a>.
</li>
<li class="listitem">
Added <code class="computeroutput"><span class="identifier">allocator_traits</span></code>
support for both C++11 and C++03 compilers through an internal <code class="computeroutput"><span class="identifier">allocator_traits</span></code> clone.
</li>
</ul></div>
</div>
<div class="section">
<div class="titlepage"><div><div><h3 class="title">
<a name="container.release_notes.release_notes_boost_1_48_00"></a><a class="link" href="release_notes.html#container.release_notes.release_notes_boost_1_48_00" title="Boost 1.48 Release">Boost
1.48 Release</a>
</h3></div></div></div>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
First release. Container code from <span class="bold"><strong>Boost.Interprocess</strong></span>
was deleted and redirected to <span class="bold"><strong>Boost.Container
</strong></span> via using directives.
</li></ul></div>
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2009-2013 Ion Gaztanaga<p>
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
</p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="acknowledgements_notes.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../container.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../date_time.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>