From 50fa615a407da92ea7f2b0ea4abbf974686a8ea4 Mon Sep 17 00:00:00 2001 From: Daniel James Date: Sun, 13 Oct 2013 12:46:40 +0000 Subject: [PATCH] Merge website to beta. [SVN r86288] --- community/review_schedule.html | 31 +- doc/.htaccess | 7 +- doc/libraries.xml | 15 + feed/history/boost_1_55_0.qbk | 557 +++++- feed/history/boost_1_56_0.qbk | 92 + feed/news/old_compilers.qbk | 12 +- feed/templates/boost_x_xx_x.qbk | 5 +- generated/dev.rss | 2617 +++++++++++++++++++---------- generated/download-items.html | 22 + generated/home-items.html | 4 + generated/libraries.txt | Bin 70613 -> 71240 bytes generated/news.rss | 11 +- generated/state/feed-pages.txt | 45 +- generated/state/rss-items.txt | 1788 +++++++++++++++++++- users/bibliography.html | 77 +- users/history/version_1_55_0.html | 1725 ++++++++++++++++++- users/history/version_1_56_0.html | 124 ++ users/news/old_compilers.html | 11 +- 18 files changed, 6111 insertions(+), 1032 deletions(-) create mode 100644 feed/history/boost_1_56_0.qbk create mode 100644 users/history/version_1_56_0.html diff --git a/community/review_schedule.html b/community/review_schedule.html index 8e19498f..51064f19 100644 --- a/community/review_schedule.html +++ b/community/review_schedule.html @@ -129,7 +129,7 @@ http://www.boost.org/development/website_updating.html Edward Diener - Boost Sandbox + GitHub Needed @@ -263,9 +263,9 @@ http://www.boost.org/development/website_updating.html - Needed + Niall Douglas - - + November 11, 2013 - November 20, 2013 @@ -327,6 +327,25 @@ http://www.boost.org/development/website_updating.html - + + + AFIO + + Niall Douglas and Paul Kirth + + + + + + Needed + + - + @@ -522,7 +541,7 @@ http://www.boost.org/development/website_updating.html Pending
- Accepted -- Added to SVN + Accepted -- Added in 1.54 @@ -801,7 +820,7 @@ http://www.boost.org/development/website_updating.html Pending
- Accepted -- Added to SVN + Accepted -- Added in 1.54 @@ -1179,7 +1198,7 @@ http://www.boost.org/development/website_updating.html Accepted Provisionally
- Accepted -- Added to SVN + Accepted -- Added in 1.54 diff --git a/doc/.htaccess b/doc/.htaccess index 3bb564b3..6fbf1535 100644 --- a/doc/.htaccess +++ b/doc/.htaccess @@ -32,13 +32,10 @@ RewriteRule ^libs/release(/.*)?$ libs/1_54_0$1 [R=303] RewriteRule ^libs/development(/.*)?$ libs/1_54_0$1 [R=303] # Rewrite specific versions to the dynamic handlers. -RewriteRule ^libs/([0-9_]+(?:beta[0-9]*|snapshot)?)/?$ libraries.php/$1 [L] +RewriteRule ^libs/([0-9_]+(?:b(?:eta)?[0-9]*|snapshot)?)/?$ libraries.php/$1 [L] RewriteCond %{REQUEST_FILENAME} !-f -RewriteRule ^libs/([0-9_]+(?:beta[0-9]*|snapshot)?)/(.+)$ display_libs.php/boost_$1/$2 [L] - -RewriteCond %{REQUEST_FILENAME} !-f -RewriteRule ^libs/?(.*)$ libraries.php$1 [L] +RewriteRule ^libs/([0-9_]+(?:b(?:eta)?[0-9]*|snapshot)?)/(.+)$ display_libs.php/boost_$1/$2 [L] # Redirect boost build/bjam documentation to new boost build location. RewriteRule ^tools(?:\.html)?/jam/jam/(language|miscellaneous|history).html$ /boost-build2/doc/html/jam/$1.html [R=301] diff --git a/doc/libraries.xml b/doc/libraries.xml index 804fc7a4..9ea27748 100644 --- a/doc/libraries.xml +++ b/doc/libraries.xml @@ -1180,6 +1180,21 @@ false Memory + + predef + 1.55.0 + Predef + Rene Rivera + This library defines a set of compiler, architecture, + operating system, library, and other version numbers from the + information it can gather of C, C++, Objective C, and Objective C++ + predefined macros or those defined in generally available + headers. + libs/predef/ + false + false + Miscellaneous + preprocessor 1.26.0 diff --git a/feed/history/boost_1_55_0.qbk b/feed/history/boost_1_55_0.qbk index ca226d2e..e361eda3 100644 --- a/feed/history/boost_1_55_0.qbk +++ b/feed/history/boost_1_55_0.qbk @@ -1,72 +1,363 @@ [article Version 1.55.0 - [quickbook 1.5] + [quickbook 1.6] [source-mode c++] - [purpose New Libraries: Updated Libraries: MultiIndex] + [purpose + New Libraries: Predef. + Updated Libraries: Accumulators, Any, Asio, Atomic, + Config, Chrono, Circular Buffer, Container, Context, Coroutine, + Filesystem, Fusion, Geometry, Graph, Hash, Interprocess, Intrusive, + Lexical Cast, Log, Math, Meta State Machine, Move, Multiprecision, + Multi-index Containers, MPI, Phoenix, PropertyMap, + Rational, Thread, Timer, Type Traits, Unordered, Utility, + Variant, Wave, xpressive. + ] [authors [Dawes, Beman]] - [last-revision ] + [last-revision] ] -[include ext.qbk] +[import ext.qbk] + +[documentation /doc/libs/1_55_0b1/] +[status beta] +[download http://sourceforge.net/projects/boost/files/boost/1.55.0.beta.1/] [/ - -As the release progresses add the 'status' and 'download' elements to -indicate the release status: - -Beta status: -[status beta] -[download http://sourceforge.net/projects/boost/files/boost/1.55.0.beta.x/] -[documentation /doc/libs/1_55_0_betax/] - Release status: [status released] [download http://sourceforge.net/projects/boost/files/boost/1.55.0/] -[documentation /doc/libs/1_55.0/] - +[documentation /doc/libs/1_55_0/] ] -[/ - When adding libraries: +[section News] - 1. Libraries are listed in alphabetical order. - 2. Besides the dedicated entry, the lib name should be added to the - [purpose] section at the beginning of the page. +Support was removed from [@/libs/config/ Config] for some very old versions +of compilers. The new minimum requirements are: - Example new libraries message: +* Digitial Mars 8.41 +* GCC 3.3 +* Intel 6.0 +* Visual C++ 7.1 -* [phrase library..[@/libs/accumulators/ Accumulators]:] Framework for - incremental calculation, and collection of statistical accumulators, from Eric Niebler. +Other compilers are currently unchanged, but we are considering removing +support for some other old compilers. Candidates for removal are: - Example update message: +* Metroworks C++ (i.e. codewarrior) +* SunPro 5.7 and earlier +* Borland C++ Builder 2006 (5.82) and earlier -* [phrase library..[@/libs/interprocess/ Interprocess]:] - * Added anonymous shared memory for UNIX systems. - * Fixed missing move semantics on managed memory classes. - * Added copy_on_write and open_read_only options for shared memory - and mapped file managed classes. - * `shared_ptr` is movable and supports aliasing. -] +If you're using any of these, please let us know on the mailing lists. +We will take into account any feedback received before making a decision. + +[endsect] [section New Libraries] -* /TODO/ +* [phrase library..[@/libs/predef/ Predef]:] This library defines a set of + compiler, architecture, operating system, library, and other version numbers + from the information it can gather of C, C++, Objective C, and Objective C++ + predefined macros or those defined in generally available headers, from Rene + Rivera. [endsect] [section Updated Libraries] +* [phrase library..[@/libs/accumulators/ Accumulators]:] + * [ticket 7915] Fix silly typos. + * [ticket 8850] Fix MSVC warnings. + * [ticket 8262] Rename `average` to `fdiv`. + +* [phrase library..[@/libs/any/ Any]:] + * `boost::bad_any_cast` exception is now visible across modules [ticket 8751]. + * Added `clear()` member function. + * Added missing `BOOST_NOEXCEPT`. + +* [phrase library..[@/libs/asio/ Asio]:] + * Implemented a limited port to Windows Runtime. This support requires that the + language extensions be enabled. Due to the restricted facilities exposed by + the Windows Runtime API, the port also comes with the following caveats: + * The core facilities such as the `io_service`, `strand`, buffers, composed + operations, timers, etc., should all work as normal. + * For sockets, only client-side TCP is supported. + * Explicit binding of a client-side TCP socket is not supported. + * The `cancel()` function is not supported for sockets. Asynchronous + operations may only be cancelled by closing the socket. + * Operations that use `null_buffers` are not supported. + * Only `tcp::no_delay` and `socket_base::keep_alive` options are supported. + * Resolvers do not support service names, only numbers. I.e. you must + use "80" rather than "http". + * Most resolver query flags have no effect. + * Fixed a regression (introduced in Boost 1.54) where, on some platforms, errors + from `async_connect` were not correctly propagated through to the completion + handler ([ticket 8795]). + * Fixed a Windows-specific regression (introduced in Boost 1.54) that occurs when + multiple threads are running an `io_service`. When the bug occurs, the result + of an asynchronous operation (error and bytes transferred) is incorrectly + discarded and zero values used instead. For TCP sockets this results in + spurious end-of-file notifications ([ticket 8933]). + * Fixed a bug in handler tracking, where it was not correctly printing out some + handler IDs ([ticket 8808]). + * Fixed the comparison used to test for successful synchronous accept + operations so that it works correctly with unsigned socket descriptors + ([ticket 8752]). + * Ensured the signal number is correctly passed to the completion handler when + starting an `async_wait` on a signal that is already raised ([ticket 8738]). + * Suppressed a g++ 4.8+ warning about unused typedefs ([ticket 8980]). + * Enabled the move optimisation for handlers that use the default invocation + hook ([ticket 8624]). + * Clarified that programs must not issue overlapping `async_write_at` + operations ([ticket 8669]). + * Changed the Windows `HANDLE` backend to treat `ERROR_MORE_DATA` as a + non-fatal error when returned by `GetOverlappedResult` for a synchronous + read ([ticket 8722]). + * Visual C++ language extensions use `generic` as a keyword. Added a + workaround that renames the namespace to `cpp_generic` when those language + extensions are in effect. + * Fixed some asynchronous operations that missed out on getting `async_result` + support in Boost 1.54. In particular, the buffered stream templates have been + updated so that they adhere to current handler patterns ([ticket 9000], + [ticket 9001]). + * Enabled move support for Microsoft Visual Studio 2012 ([ticket 8959]). + * Added `use_future` support for Microsoft Visual Studio 2012. + * Removed a use of `std::min` in the Windows IOCP backend to avoid a + dependency on the `` header ([ticket 8758]). + * Eliminated some unnecessary handler copies. + * Fixed various minor and cosmetic issues in code and documentation + (including [ticket 8347], [ticket 8950], [ticket 8953], [ticket 8965], + [ticket 8997]). + +* [phrase library..[@/libs/atomic/ Atomic]:] + * Added support for 64-bit atomic operations on x86 target for GCC, MSVC and compatible compilers. The support is enabled when it is known at compile time that the target CPU supports required instructions. + * Added support for 128-bit atomic operations on x86-64 target for GCC and compatible compilers. The support is enabled when it is known at compile time that the target CPU supports required instructions. The support can be tested for with the new `BOOST_ATOMIC_INT128_LOCK_FREE` macro. + * Added a more efficient implementation of `atomic<>` based on GCC `__atomic*` intrinsics available since GCC 4.7. + * Added support for more ARM v7 CPUs, improved detection of Thumb 2. + * Added support for x32 (i.e. 64-bit x86 with 32-bit pointers) target on GCC and compatible compilers. + * Removed dependency on Boost.Thread. + * Internal lock pool now includes proper padding and alignment to avoid false sharing. + * Fixed compilation with Intel compiler on Windows. Removed internal macro duplication when compiled on Windows. + * Some code refactoring to use C++11 features when available. + +* [phrase library..[@/libs/chrono/ Chrono]:] + * ['Fixed Bugs:] + * [@http://svn.boost.org/trac/boost/ticket/7868 #7868] `chrono_io` parses time incorrectly (1.53 and 1.52) + * [@http://svn.boost.org/trac/boost/ticket/9028 #9028] Typo in `boost/chrono/stopwatches/formatters/base_formatter.hpp` + * [@http://svn.boost.org/trac/boost/ticket/9147 #9147] uninitialized `std::tm` + +* [phrase library..[@/libs/circular_buffer/ Circular Buffer]:] + * Added support for rvalue references and rvalue references emulation + using Boost.Move. Values are moved only if value type has noexcept move + constructor and noexcept move assignment operator [ticket 7888]. Now + Circular Buffer is usable with move-only types. + * Much better documentation. + * [@http://svn.boost.org/trac/boost/ticket/5362 #5362] + circular_buffer does not compile with `BOOST_NO_EXCEPTIONS`. + * [@http://svn.boost.org/trac/boost/ticket/7025 #7025] + circular buffer reports warning: " type qualifiers ignored on function + return type" while compile. + * [@http://svn.boost.org/trac/boost/ticket/7950 #7950] + Eliminate W4-warnings under VS2005 - warning C4913: user defined binary + operator ',' exists but no overload could convert all operands, default + built-in binary operator ',' used. + +* [phrase library..[@/libs/config/ Config]:] + * [*Breaking change:] Removed support for some older compilers. + The new minimum compiler versions are: + [itemized_list + [Digitial Mars 8.41] + [GCC 3.3] + [Intel 6.0] + [Visual C++ 7.1] + ] + Other compilers are unchanged. + +* [phrase library..[@/libs/container/ Container]:] + * Implemented [link container.main_features.scary_iterators SCARY iterators]. + * Fixed bugs [@https://svn.boost.org/trac/boost/ticket/8269 #8269], + [@https://svn.boost.org/trac/boost/ticket/8473 #8473], + [@https://svn.boost.org/trac/boost/ticket/8892 #8892], + [@https://svn.boost.org/trac/boost/ticket/9009 #9009], + [@https://svn.boost.org/trac/boost/ticket/9064 #9064], + [@https://svn.boost.org/trac/boost/ticket/9092 #9092], + [@https://svn.boost.org/trac/boost/ticket/9108 #9108]. + +* [phrase library..[@/libs/context/ Context]:] + * [@http://svn.boost.org/trac/boost/ticket/8650 #8650] SSE2 intrinsics + +* [phrase library..[@/libs/coroutine/ Coroutine]:] + * New interface (unidirectional data transfer). + * [@http://svn.boost.org/trac/boost/ticket/8782 #8782] no best alternative + * [@http://svn.boost.org/trac/boost/ticket/8801 #8801] auto-linking + +* [phrase library..[@/libs/filesystem/ Filesystem]:] + * Fixed Android compilation [ticket 8706]. + +* [phrase library..[@/libs/fusion/ Fusion]:] + * [ticket 8759] specialization of `convert_impl` for `map_tag` + +* [phrase library..[@/libs/geometry/index.html Geometry]:] + * ['Additional functionality] + * Added centroid for segment type + * Added intersects() and disjoints() for Segment-Box and Linestring-Box + * Added rtree creation using packing algorithm + * Added contains() and covers() spatial query predicates + * Added iterative queries + * ['Bugfixes] + * In some cases .back() or .clear() was called, violating the usage of Concepts. Fixed for the reported cases + * ['Solved tickets] + * [@https://svn.boost.org/trac/boost/ticket/6958 6958] Intersection generates self-intersection. Caused by spike, fixed + * [@https://svn.boost.org/trac/boost/ticket/8364 8364] Invalid input exception, caused by spikes in previous steps, fixed + * [@https://svn.boost.org/trac/boost/ticket/8365 8365] Invalid input exception, caused by spikes in previous steps, fixed + * [@https://svn.boost.org/trac/boost/ticket/8969 8969] boost::geometry::model::point single argument constructor should be explicit + * [@https://svn.boost.org/trac/boost/ticket/8825 8825] Patch adding member variable documentation to doxygen_xml2qbk + * [@https://svn.boost.org/trac/boost/ticket/8652 8652] Intersection fails for triangle-triangle intersection. Caused by spike, fixed + * [@https://svn.boost.org/trac/boost/ticket/9047 9047] Boost files that include themselves (strategies/intersection.hpp), fixed + +* [phrase library..[@/libs/graph/index.html Graph]:] + * `void` is no longer allowed as a bundled property type (for example, in the + VertexProperties template parameters to graph types); it did not work + reliably before, but a static assertion now forbids it entirely. Use + `boost::no_property` instead. + * Added support for `finish_edge` visitor event point in depth-first search; + the change should be backward-compatible with visitors that do not have + that member function. + * Disabled building of tests on Sun compiler. + * Multiple source vertices are supported in non-named-parameter versions of + `breadth_first_visit`, `breadth_first_search`, `dijkstra_shortest_paths`, + and `dijkstra_shortest_paths_no_init`. This feature is not yet documented; + to use it, replace the single parameter for the source vertex in each of + these functions by two input iterators of the same type containing the + source vertices to use. + * Added Hawick circuits algorithm; contributed by Louis Dionne. + * Added edge coloring algorithm; contributed by Maciej Piechotka. + * Added min-cost max-flow algorithm; contributed by Piotr Wygocki. + * Bugs and feature requests from Trac fixed: [ticket 5269], [ticket 8317], + [ticket 8433], [ticket 8791], [ticket 8877], [ticket 8986], [ticket 9012], + [ticket 9080]. + +* [phrase library..[@/libs/hash/ Hash]:] + * Simplify a SFINAE check so that it will hopefully work on Sun 5.9 + ([ticket 8822]). + * Suppress Visual C++ infinite loop warning ([ticket 8568]). + +* [phrase library..[@/libs/interprocess/ Interprocess]:] + * Fixed bugs [@https://svn.boost.org/trac/boost/ticket/7156 #7156], + [@https://svn.boost.org/trac/boost/ticket/7164 #7164], + [@https://svn.boost.org/trac/boost/ticket/8277 #8277], + [@https://svn.boost.org/trac/boost/ticket/8976 #8976], + [@https://svn.boost.org/trac/boost/ticket/9065 #9065], + [@https://svn.boost.org/trac/boost/ticket/9073 #9073], + [@https://svn.boost.org/trac/boost/ticket/9008 #9008]. + +* [phrase library..[@/libs/intrusive/ Intrusive]:] + * [*Source breaking]: Deprecated `xxx_dont_splay` functions from splay containers. + Deprecated `splay_set_hook` from splay containers, use `bs_set_hook` instead. + Both will be removed in Boost 1.56. + * [*ABI breaking]: Hash containers' end iterator was implemented pointing to one-past the end of the bucket array + (see [@https://svn.boost.org/trac/boost/ticket/8698 #8698]) causing severe bugs when values to be inserted + where allocated next to the bucket array. End iterator implementation was changed to point to the beginning + of the bucket array. + * Big refactoring in order to reduce template and debug symbol bloat. Test object files have been slashed + to half in MSVC compilers in Debug mode. Toolchains without Identical COMDAT Folding (ICF) should notice size improvements. + * Implemented [link intrusive.scary_iterators SCARY iterators]. + +* [phrase library..[@/libs/conversion/lexical_cast.htm Lexical cast]:] + * `std::bad_alloc` exceptions are now are not converted to + `boost::bad_lexical_cast` [ticket 8966]. + * Added static assert that checks for `std::numeric_limits` + specializations if they are required for conversion. Use `BOOST_HAS_INT128` + for detecting 128 bit integers support [ticket 8790]. + * Documentation improved and more usage examples added. + +* [phrase library..[@/libs/log/ Log]:] + * General changes: + * Added a new configuration macro `BOOST_LOG_WITHOUT_DEFAULT_FACTORIES`. By defining this macro the user can disable compilation of the default filter and formatter factories used by settings parsers. This can substantially reduce binary sizes while still retaining support for settings parsers. + * Rewritten some of the parsers to reduce the compiled binary size. The rewritten parsers are more robust in detecting ambiguous and incorrect input. + * The following headers are deprecated: `boost/log/utility/intrusive_ref_counter.hpp`, `boost/log/utility/explicit_operator_bool.hpp`, `boost/log/utility/empty_deleter.hpp`. These headers will be removed in future releases. The contents of these headers were moved to other libraries. + * Bug fixes: + * Fixed `timer` attribute generating incorrect time readings on Windows on heavy thread contention when `QueryPerformanceCounter` API was used. + * Fixed a bug in the filter parser that prevented using parsed filters with some attributes. + * Fixed thread id formatting discrepancies between the default sink and formatters. + * Closed tickets: [ticket 8815], [ticket 8819], [ticket 8915], [ticket 8917], [ticket 9139], [ticket 9140], [ticket 9153], [ticket 9155]. + * See [@/libs/log/doc/html/log/changelog.html changelog] for more details. + +* [phrase library..[@/libs/math/ Math]:] + * Suppress numerous warnings (mostly from GCC-4.8 and MSVC) + [@https://svn.boost.org/trac/boost/ticket/8384 #8384], + [@https://svn.boost.org/trac/boost/ticket/8855 #8855], + [@https://svn.boost.org/trac/boost/ticket/9107 #9107], + [@https://svn.boost.org/trac/boost/ticket/9109 #9109].. + * Fixed PGI compilation issue + [@https://svn.boost.org/trac/boost/ticket/8333 #8333]. + * Fixed PGI constant value initialization issue that caused erf to generate + incorrect results [@https://svn.boost.org/trac/boost/ticket/8621 #8621]. + * Prevent macro expansion of some C99 macros that are also C++ functions + [@https://svn.boost.org/trac/boost/ticket/8732 #8732] and + [@https://svn.boost.org/trac/boost/ticket/8733 #8733].. + * Fixed Student's T distribution to behave correctly with huge degrees of + freedom (larger than the largest representable integer) + [@https://svn.boost.org/trac/boost/ticket/8837 #8837]. + * Make some core functions usable with `long double` even when the platform + has no standard library `long double` support + [@https://svn.boost.org/trac/boost/ticket/8940 #8940]. + * Fix error handling of distributions to catch invalid scale and location + parameters when the random variable is infinite + [@https://svn.boost.org/trac/boost/ticket/9042 #9042] and + [@https://svn.boost.org/trac/boost/ticket/9126 #9126]. + * Add workaround for broken in Intel C++ 14 + [@https://svn.boost.org/trac/boost/ticket/9087 #9087]. + * Improve consistency of argument reduction in the elliptic integrals + [@https://svn.boost.org/trac/boost/ticket/9104 #9104]. + * Fix bug in inverse incomplete beta that results in cancellation errors when + the beta function is really an arcsine or Student's T distribution. + * Fix issue in Bessel I and K function continued fractions that causes + spurious over/underflow. + +* [phrase library..[@/libs/move/ Move]:] + * Fixed bugs [@https://svn.boost.org/trac/boost/ticket/7952 #7952], + [@https://svn.boost.org/trac/boost/ticket/8764 #8764], + [@https://svn.boost.org/trac/boost/ticket/8765 #8765], + [@https://svn.boost.org/trac/boost/ticket/8842 #8842], + [@https://svn.boost.org/trac/boost/ticket/8979 #8979]. + +* [phrase library..[@/libs/msm/ Meta State Machine]:] + * New feature: interrupt states now support a sequence of events to end the interruption. + * Fixed Trac [ticket 8686]. + +* [phrase library..[@/libs/multiprecision/ Multiprecision]:] + * Added support for Boost.Serialization. + * Suppressed some GCC warnings. See + [@https://svn.boost.org/trac/boost/ticket/8872 8872]. + * Fixed bug in pow for large integer arguments. See + [@https://svn.boost.org/trac/boost/ticket/8809 8809]. + * Fixed bug in pow for calculation of 0[super N]. See + [@https://svn.boost.org/trac/boost/ticket/8798 8798]. + * Fixed bug in fixed precision cpp_int IO code that causes conversion to + string to fail when the bit count is very small (less than CHAR_BIT). See + [@https://svn.boost.org/trac/boost/ticket/8745 8745]. + * Fixed bug in cpp_int that causes left shift to fail when a fixed precision + type would overflow. See + [@https://svn.boost.org/trac/boost/ticket/8741 8741]. + * Fixed some cosmetic warnings from cpp_int. See + [@https://svn.boost.org/trac/boost/ticket/8748 8748]. + * Fixed calls to functions which are required to be macros in C99. See + [@https://svn.boost.org/trac/boost/ticket/8732 8732]. + * Fixed bug that causes construction from INT_MIN, LONG_MIN etc to fail in + cpp_int. See [@https://svn.boost.org/trac/boost/ticket/8711 8711]. + * [phrase library..[@/libs/multi_index/index.html Multi-index Containers]:] - * Boost.MultiIndex has been brought to a higher level of compliance with C++11. - * `multi_index_container` is now efficiently movable. - * Initializer lists supported. - * Emplace functions provided. - * Non-copyable elements (such as `std::unique_ptr`) supported. This includes - insertion of a range [`first`,`last`) where the iterators point to a type that + * Boost.MultiIndex has been brought to a higher level of compliance with C++11. + [itemized_list + [`multi_index_container` is now efficiently movable.] + [Initializer lists supported.] + [Emplace functions provided.] + [Non-copyable elements (such as `std::unique_ptr`) supported. This includes + insertion of a range \[`first`,`last`) where the iterators point to a type that is convertible to that of the element: no copy construction happens in the - process. - * Random access indices provide `shrink_to_fit()`. + process.] + [Random access indices provide `shrink_to_fit()`.] + ] Refer to the [@/libs/multi_index/doc/compiler_specifics.html compiler specifics] - section for limitations on pre-C++11 compilers. + section for limitations on pre-C++11 compilers. * The following classes are deprecated: * [@/libs/multi_index/doc/reference/key_extraction.html#member_offset `member_offset`], * [@/libs/multi_index/doc/reference/key_extraction.html#const_mem_fun_explicit `const_mem_fun_explicit`], @@ -77,17 +368,140 @@ Release status: * [@/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_hash `composite_key_result_hash`]. * Maintenance fixes. -[/ +* [phrase library..[@/libs/mpi/ MPI]:] + * Replaced calls to deprecated MPI functions + * Added support for multi-threaded initialization + * Added in-place collectives -* /TODO/: [phrase library..[@/libs/spirit/ Spirit]:] - * Spirit Vx.x, see the - '[@/doc/libs/1_xx_x/libs/spirit/doc/html/spirit/what_s_new/spirit_x_x.html What's New]' - section for details. +* [phrase library..[@/libs/phoenix/ Phoenix]:] + * [ticket 9049] `phoenix::function` constructor is constexpr. -* /TODO/: [phrase library..[@/libs/wave/ Wave]:] +* [phrase library..[@/libs/property_map/index.html PropertyMap]:] + * dynamic_properties objects can now be built by non-destructively chaining + `.property(name, pm)` calls. Example: + ``` + boost::dynamic_properties() + .property("color", color_map) + .property("pos", position_map) + ``` + * The use of raw pointers as property maps is deprecated; it often failed on + Visual Studio in the past. This usage has been removed from all tests and + examples in Boost.Graph. The replacement to use for vertex properties in + graphs (the most common use for this feature) is: + ``` + boost::make_iterator_property_map( + , + get(boost::vertex_index, )) + ``` + (Note: the lack of namespace qualification on get() in this code is + necessary for generic code). Outside a graph context, the closest + equivalent is: + ``` + boost::make_iterator_property_map( + , + boost::typed_identity_property_map()) + ``` + There are commented-out static assertions on lines 151 and 159 of + `` that can be un-commented to find + deprecated uses of pointers in user code. + +* [phrase library..[@/libs/rational Rational]:] + * Added `lowest` and `max_digits10`, members of std::numeric_limits added in + C++11, to the unit-test code. Needed since Boost.Test refers to one of + them when compiled in C++11 mode. + * Changed initialization of some internal variables to something that cannot + be a narrowing conversion, which fixes issue [ticket 5855]. Needed since + narrowing conversions are an error in C++11. + +* [phrase library..[@/libs/smart_ptr/index.html SmartPtr]:] + * Added `boost/smart_ptr/intrusive_ref_counter.hpp` header, extracted from Boost.Log. The header implements a mixin base class that adds support for `intrusive_ptr` to user's classes. + +* [phrase library..[@/libs/Thread/ Thread]:] + * ['New Features:] + * [@http://svn.boost.org/trac/boost/ticket/8519 #8519] + Synchro: Update class barrier with a completion function. + * [@http://svn.boost.org/trac/boost/ticket/8515 #8515] + Async: Add `shared_future::then`. + * [@http://svn.boost.org/trac/boost/ticket/8519 #8519] + Synchro: Update class barrier with a completion function + * [@http://svn.boost.org/trac/boost/ticket/8615 #8615] + Async: Replace make_future/make_shared_future by make_ready_future. + * [@http://svn.boost.org/trac/boost/ticket/8627 #8627] + Async: Add future<>::unwrap and unwrapping constructor. + * [@http://svn.boost.org/trac/boost/ticket/8677 #8677] + Async: Add future<>::get_or. + * [@http://svn.boost.org/trac/boost/ticket/8678 #8678] + Async: Add future<>::fallback_to. + * [@http://svn.boost.org/trac/boost/ticket/8891 #8891] + upgrade_to_unique_lock: missing mutex() function. + * [@http://svn.boost.org/trac/boost/ticket/8955 #8955] + Request for more efficient way to get exception_ptr from future. + * ['Fixed Bugs:] + * [@http://svn.boost.org/trac/boost/ticket/7461 #7461] + detail::win32::ReleaseSemaphore may be called with count_to_release equal to 0 + * [@http://svn.boost.org/trac/boost/ticket/8070 #8070] + prefer GetTickCount64 over GetTickCount + * [@http://svn.boost.org/trac/boost/ticket/8768 #8768] + win32 condition_variable::wait_until infinite wait in rare cases. + * [@http://svn.boost.org/trac/boost/ticket/8817 #8817] + Boost Thread Windows CE _createthreadex handling breaks mingw w64. + * [@http://svn.boost.org/trac/boost/ticket/8943 #8943] + Failed to compile code using boost::call_once with Intel C++ Composer XE 2013 on Windows. + * [@http://svn.boost.org/trac/boost/ticket/8931 #8931] + Typos in external_locking reference. + * [@http://svn.boost.org/trac/boost/ticket/9029 #9029] + Misprint in documentation. + * [@http://svn.boost.org/trac/boost/ticket/9037 #9037] + gcc -Wshadow gives warnings in condition_variable{,_fwd}.hpp. + * [@http://svn.boost.org/trac/boost/ticket/9041 #9041] + Boost.Thread DSO's may need to link with Boost.Atomic. + * [@http://svn.boost.org/trac/boost/ticket/9048 #9048] + boost::scoped_thread useless ctor with variadic template arguments. + * [@http://svn.boost.org/trac/boost/ticket/9079 #9079] + Condition variable will wait forever for some timepoint values (Win). + +* [phrase library..[@/libs/timer/ Timer]:] + * Fixed compilation on Intel compiler [ticket 8956]. + +* [phrase library..[@/libs/type_traits/ Type Traits]:] + * Added `is_copy_contructible` trait [ticket 8802]. + +* [phrase library..[@/libs/unordered/ Unordered]:] + * Avoid some warnings ([ticket 8851], [ticket 8874]). + * Avoid exposing some detail functions via. ADL on the iterators. + +* [phrase library..[@/libs/utility/index.html Utility]:] + * `boost::result_of` can be set to use TR1 protocol by default and fall back to `decltype` if the function object does not support it (like C++11 lambda functions, for example). Define `BOOST_RESULT_OF_USE_TR1_WITH_DECLTYPE_FALLBACK` configuration macro to enable this mode. + * Improved support for C++11 in the `boost::base_from_member` class template. The class implements perfect forwarding for the constructor arguments, if the compiler supports rvalue references, variadic templates and function template default arguments. + * Added `boost/utility/explicit_operator_bool.hpp` and `boost/utility/empty_deleter.hpp` headers, which were extracted from Boost.Log. The headers implement utilities for defining explicit conversion operators to `bool` and a deleter function object that does nothing, respectively. + +* [phrase library..[@/libs/variant/ Variant]:] + * Fixed compilation of constructor and assignment operator with const + rvalues input parameters [ticket 8988]. + * Fixed compilation of move assignment operator for situations when one + of the variant template classes has nothrow copy constructor and throwing + move constructor [ticket 8772]. + * Fix compilation on exception-disabled environments [ticket 8717]. + * Fix unreachable code warnings [ticket 8665]. + * Removed duplicate code [ticket 7601]. + +* [phrase library..[@/libs/wave/ Wave]:] * See the [@/libs/wave/ChangeLog Changelog] for details. -] +* [phrase library..[@/libs/xpressive xpressive]:] + * [ticket 8843] throw instead of assert at incomplete charset + * [ticket 8880] remove unused local typedef + * [ticket 8882] use RAII instead of try/catch in sequence_stack.hpp + * [ticket 8474] make xpressive play nice with clang's -Wimplicit-fallthrough diagnostic + +[endsect] + +[section Updated Tools] + +* [phrase library..[@/tools/quickbook Quickbook]:] + * Quickbook 1.6 finalized, see the + [@/doc/html/quickbook/versions.html#language_versions.1_6 + Quickbook documentation for details]. [endsect] @@ -95,17 +509,56 @@ Release status: Boost's primary test compilers are: -* /TODO/ +* Linux: + * Clang: 3.3, 3.2, 3.1, 3.0 + * Clang, C++11, libc++: 3.4, 3.3 + * GCC: 4.8.1, 4.7.3, 4.6.3, 4.5.3, 4.4.7 + * GCC, C++11: 4.8.1 + * GCC, C++98: 4.8.1 +* OS X: + * GCC: 4.2 + * Apple Clang: 5.0 + * Apple Clang, C++11: 5.0 +* Windows: + * GCC, mingw: 4.8.0, 4.7.2, 4.6.3, 4.5.4, 4.4.7 + * Visual C++: 11.0, 10.0, 9.0 +[/ TODO: Check if this is running. +* FreeBSD: + * GCC: 4.2.1 +] Boost's additional test compilers include: -* /TODO/ +* OS X: + * Apple Clang: 5.0 + * Apple Clang, C++11: 5.0 + * Clang: trunk + * Clang, C++11: trunk + * GCC: 4.2.1 +* Linux: + * Clang: 3.3, 3.2, 3.1, 3.0, trunk + * Clang, C++11: 3.4 + * Clang, C++11, libc++: 3.4, 3.3 + * GCC: 4.9.0 (experimental), 4.8.1, 4.7.3, 4.6.4, 4.5.3, 4.4.7 + * GCC, C++11: 4.8.1 + * GCC, C++98: 4.8.1 + * Intel: 13.0.1, 12.1.6 +* Windows: + * GCC, mingw: 4.8.0, 4.7.2, 4.6.3, 4.5.4, 4.4.7 + * Visual C++: 11.0, 10.0, 9.0 +[/ TODO: Check if this is running. +* FreeBSD: + * GCC: 4.2.1 +] [endsect] [section Acknowledgements] -/TODO/ +[@/users/people/beman_dawes.html Beman Dawes], +Eric Niebler, +[@/users/people/rene_rivera.html Rene Rivera], +Daniel James, Vladimir Prus and Marshall Clow +managed this release. [endsect] - diff --git a/feed/history/boost_1_56_0.qbk b/feed/history/boost_1_56_0.qbk new file mode 100644 index 00000000..ca69560b --- /dev/null +++ b/feed/history/boost_1_56_0.qbk @@ -0,0 +1,92 @@ +[article Version 1.56.0 + [quickbook 1.6] + [source-mode c++] + [purpose New Libraries: Updated Libraries: ] + [authors [Dawes, Beman]] + [/ last-revision is used for the final release data] + [last-revision ] +] + +[import ext.qbk] + +[/ + +As the release progresses add the 'status' and 'download' elements to +indicate the release status: + +Beta status: +[status beta] +[download http://sourceforge.net/projects/boost/files/boost/1.56.0.beta.1/] +[documentation /doc/libs/1_56_0_beta1/] + +Release status: +[status released] +[download http://sourceforge.net/projects/boost/files/boost/1.56.0/] +[documentation /doc/libs/1_56_0/] + +] + +[/ + When adding libraries: + + 1. Libraries are listed in alphabetical order. + 2. Besides the dedicated entry, the lib name should be added to the + [purpose] section at the beginning of the page. + + Example new libraries message: + +* [phrase library..[@/libs/accumulators/ Accumulators]:] Framework for + incremental calculation, and collection of statistical accumulators, from Eric Niebler. + + Example update message: + +* [phrase library..[@/libs/interprocess/ Interprocess]:] + * Added anonymous shared memory for UNIX systems. + * Fixed missing move semantics on managed memory classes. + * Added copy_on_write and open_read_only options for shared memory + and mapped file managed classes. + * `shared_ptr` is movable and supports aliasing. +] + +[section New Libraries] + +* /TODO/ + +[endsect] + +[section Updated Libraries] + +* /TODO/ + +[/ + +* /TODO/: [phrase library..[@/libs/spirit/ Spirit]:] + * Spirit Vx.x, see the + '[@/doc/libs/1_xx_x/libs/spirit/doc/html/spirit/what_s_new/spirit_x_x.html What's New]' + section for details. + +* /TODO/: [phrase library..[@/libs/wave/ Wave]:] + * See the [@/libs/wave/ChangeLog Changelog] for details. + +] + +[endsect] + +[section Compilers Tested] + +Boost's primary test compilers are: + +* /TODO/ + +Boost's additional test compilers include: + +* /TODO/ + +[endsect] + +[section Acknowledgements] + +/TODO/ + +[endsect] + diff --git a/feed/news/old_compilers.qbk b/feed/news/old_compilers.qbk index 776d37eb..c4a3d028 100644 --- a/feed/news/old_compilers.qbk +++ b/feed/news/old_compilers.qbk @@ -50,8 +50,12 @@ Thanks in advance for any response, Daniel James ] -If you want to reply to the request and can't email the list -you can [@mailto:daniel@calamity.org.uk send me an email]. Let me know if -it's okay to forward it to the list. +[*Update:] I had a few responses, but none were opposed to this change, so +I made it in trunk a little while ago. It should be included in the next +release. -Thanks again. +There was some concern that we would remove support for later compilers +(e.g. Visual Studio 2008, aka. Visual C++ 9.0). We have no such plans, +this change is only for very old compilers. As always support across +Boost libraries is not uniform, but most library authors do try to +support as wide a range of compilers as is feasible. diff --git a/feed/templates/boost_x_xx_x.qbk b/feed/templates/boost_x_xx_x.qbk index abb5203f..dfc13c59 100644 --- a/feed/templates/boost_x_xx_x.qbk +++ b/feed/templates/boost_x_xx_x.qbk @@ -1,12 +1,13 @@ [article Version 1.xx.x - [quickbook 1.5] + [quickbook 1.6] [source-mode c++] [purpose New Libraries: Updated Libraries: ] [authors [Dawes, Beman]] + [/ last-revision is used for the final release data] [last-revision ] ] -[include ext.qbk] +[import ext.qbk] [/ diff --git a/generated/dev.rss b/generated/dev.rss index 3623eaab..c32f0e20 100644 --- a/generated/dev.rss +++ b/generated/dev.rss @@ -7,10 +7,10 @@ en-us Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) -Version 1.55.0http://www.boost.org/users/history/version_1_55_0.htmlhttp://www.boost.org/users/history/version_1_55_0.htmlIn Progress +Version 1.56.0http://www.boost.org/users/history/version_1_56_0.htmlhttp://www.boost.org/users/history/version_1_56_0.htmlIn Progress - <div id="version_1_55_0.new_libraries"> + <div id="version_1_56_0.new_libraries"> <h3><span class="link">New Libraries</span></h3> <ul> <li> @@ -20,104 +20,17 @@ </li> </ul> </div> - <div id="version_1_55_0.updated_libraries"> + <div id="version_1_56_0.updated_libraries"> <h3><span class="link">Updated Libraries</span></h3> <ul> <li> <div> - <span class="library"><a href="http://www.boost.org/libs/multi_index/index.html">Multi-index Containers</a>:</span> - <ul> - <li> - <div> - Boost.MultiIndex has been brought to a higher level of compliance - with C++11. - <ul> - <li> - <div> - <code><span class="identifier">multi_index_container</span></code> - is now efficiently movable. - </div> - </li> - <li> - <div> - Initializer lists supported. - </div> - </li> - <li> - <div> - Emplace functions provided. - </div> - </li> - <li> - <div> - Non-copyable elements (such as <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">unique_ptr</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span></code>) supported. This includes - insertion of a range [<code><span class="identifier">first</span></code>,<code><span class="identifier">last</span></code>) where the iterators - point to a type that is convertible to that of the element: - no copy construction happens in the process. - </div> - </li> - <li> - <div> - Random access indices provide <code><span class="identifier">shrink_to_fit</span><span class="special">()</span></code>. Refer to the <a href="http://www.boost.org/libs/multi_index/doc/compiler_specifics.html">compiler - specifics</a> section for limitations on pre-C++11 compilers. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - The following classes are deprecated: - <ul> - <li> - <div> - <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#member_offset"><code><span class="identifier">member_offset</span></code></a>, - </div> - </li> - <li> - <div> - <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#const_mem_fun_explicit"><code><span class="identifier">const_mem_fun_explicit</span></code></a>, - </div> - </li> - <li> - <div> - <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#const_mem_fun_explicit"><code><span class="identifier">mem_fun_explicit</span></code></a>, - </div> - </li> - <li> - <div> - <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_equal_to"><code><span class="identifier">composite_key_result_equal_to</span></code></a>, - </div> - </li> - <li> - <div> - <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_less"><code><span class="identifier">composite_key_result_less</span></code></a>, - </div> - </li> - <li> - <div> - <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_greater"><code><span class="identifier">composite_key_result_greater</span></code></a>, - </div> - </li> - <li> - <div> - <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_hash"><code><span class="identifier">composite_key_result_hash</span></code></a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Maintenance fixes. - </div> - </li> - </ul> + <em>TODO</em> </div> </li> </ul> </div> - <div id="version_1_55_0.compilers_tested"> + <div id="version_1_56_0.compilers_tested"> <h3><span class="link">Compilers Tested</span></h3> <p> Boost's primary test compilers are: @@ -140,12 +53,1780 @@ </li> </ul> </div> - <div id="version_1_55_0.acknowledgements"> + <div id="version_1_56_0.acknowledgements"> <h3><span class="link">Acknowledgements</span></h3> <p> <em>TODO</em> </p> </div> +Version 1.55.0http://www.boost.org/users/history/version_1_55_0.htmlhttp://www.boost.org/users/history/version_1_55_0.htmlIn Progress + + + + <div id="version_1_55_0.news"> + <h3><span class="link">News</span></h3> + <p> + Support was removed from <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/config/">Config</a> for some + very old versions of compilers. The new minimum requirements are: + </p> + <ul> + <li> + <div> + Digitial Mars 8.41 + </div> + </li> + <li> + <div> + GCC 3.3 + </div> + </li> + <li> + <div> + Intel 6.0 + </div> + </li> + <li> + <div> + Visual C++ 7.1 + </div> + </li> + </ul> + <p> + Other compilers are currently unchanged, but we are considering removing support + for some other old compilers. Candidates for removal are: + </p> + <ul> + <li> + <div> + Metroworks C++ (i.e. codewarrior) + </div> + </li> + <li> + <div> + SunPro 5.7 and earlier + </div> + </li> + <li> + <div> + Borland C++ Builder 2006 (5.82) and earlier + </div> + </li> + </ul> + <p> + If you're using any of these, please let us know on the mailing lists. We will + take into account any feedback received before making a decision. + </p> + </div> + <div id="version_1_55_0.new_libraries"> + <h3><span class="link">New Libraries</span></h3> + <ul> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/predef/">Predef</a>:</span> This library defines a + set of compiler, architecture, operating system, library, and other version + numbers from the information it can gather of C, C++, Objective C, and + Objective C++ predefined macros or those defined in generally available + headers, from Rene Rivera. + </div> + </li> + </ul> + </div> + <div id="version_1_55_0.updated_libraries"> + <h3><span class="link">Updated Libraries</span></h3> + <ul> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/accumulators/">Accumulators</a>:</span> + <ul> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/7915">#7915</a> Fix silly typos. + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8850">#8850</a> Fix MSVC warnings. + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8262">#8262</a> Rename <code><span class="identifier">average</span></code> + to <code><span class="identifier">fdiv</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/any/">Any</a>:</span> + <ul> + <li> + <div> + <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">bad_any_cast</span></code> exception is now visible + across modules <a href="https://svn.boost.org/trac/boost/ticket/8751">#8751</a>. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">clear</span><span class="special">()</span></code> + member function. + </div> + </li> + <li> + <div> + Added missing <code><span class="identifier">BOOST_NOEXCEPT</span></code>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/asio/">Asio</a>:</span> + <ul> + <li> + <div> + Implemented a limited port to Windows Runtime. This support requires + that the language extensions be enabled. Due to the restricted facilities + exposed by the Windows Runtime API, the port also comes with the + following caveats: + <ul> + <li> + <div> + The core facilities such as the <code><span class="identifier">io_service</span></code>, + <code><span class="identifier">strand</span></code>, buffers, + composed operations, timers, etc., should all work as normal. + </div> + </li> + <li> + <div> + For sockets, only client-side TCP is supported. + </div> + </li> + <li> + <div> + Explicit binding of a client-side TCP socket is not supported. + </div> + </li> + <li> + <div> + The <code><span class="identifier">cancel</span><span class="special">()</span></code> function is not supported + for sockets. Asynchronous operations may only be cancelled + by closing the socket. + </div> + </li> + <li> + <div> + Operations that use <code><span class="identifier">null_buffers</span></code> + are not supported. + </div> + </li> + <li> + <div> + Only <code><span class="identifier">tcp</span><span class="special">::</span><span class="identifier">no_delay</span></code> and <code><span class="identifier">socket_base</span><span class="special">::</span><span class="identifier">keep_alive</span></code> options are supported. + </div> + </li> + <li> + <div> + Resolvers do not support service names, only numbers. I.e. + you must use &quot;80&quot; rather than &quot;http&quot;. + </div> + </li> + <li> + <div> + Most resolver query flags have no effect. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Fixed a regression (introduced in Boost 1.54) where, on some platforms, + errors from <code><span class="identifier">async_connect</span></code> + were not correctly propagated through to the completion handler (<a href="https://svn.boost.org/trac/boost/ticket/8795">#8795</a>). + </div> + </li> + <li> + <div> + Fixed a Windows-specific regression (introduced in Boost 1.54) that + occurs when multiple threads are running an <code><span class="identifier">io_service</span></code>. + When the bug occurs, the result of an asynchronous operation (error + and bytes transferred) is incorrectly discarded and zero values used + instead. For TCP sockets this results in spurious end-of-file notifications + (<a href="https://svn.boost.org/trac/boost/ticket/8933">#8933</a>). + </div> + </li> + <li> + <div> + Fixed a bug in handler tracking, where it was not correctly printing + out some handler IDs (<a href="https://svn.boost.org/trac/boost/ticket/8808">#8808</a>). + </div> + </li> + <li> + <div> + Fixed the comparison used to test for successful synchronous accept + operations so that it works correctly with unsigned socket descriptors + (<a href="https://svn.boost.org/trac/boost/ticket/8752">#8752</a>). + </div> + </li> + <li> + <div> + Ensured the signal number is correctly passed to the completion handler + when starting an <code><span class="identifier">async_wait</span></code> + on a signal that is already raised (<a href="https://svn.boost.org/trac/boost/ticket/8738">#8738</a>). + </div> + </li> + <li> + <div> + Suppressed a g++ 4.8+ warning about unused typedefs (<a href="https://svn.boost.org/trac/boost/ticket/8980">#8980</a>). + </div> + </li> + <li> + <div> + Enabled the move optimisation for handlers that use the default invocation + hook (<a href="https://svn.boost.org/trac/boost/ticket/8624">#8624</a>). + </div> + </li> + <li> + <div> + Clarified that programs must not issue overlapping <code><span class="identifier">async_write_at</span></code> operations (<a href="https://svn.boost.org/trac/boost/ticket/8669">#8669</a>). + </div> + </li> + <li> + <div> + Changed the Windows <code><span class="identifier">HANDLE</span></code> + backend to treat <code><span class="identifier">ERROR_MORE_DATA</span></code> + as a non-fatal error when returned by <code><span class="identifier">GetOverlappedResult</span></code> + for a synchronous read (<a href="https://svn.boost.org/trac/boost/ticket/8722">#8722</a>). + </div> + </li> + <li> + <div> + Visual C++ language extensions use <code><span class="identifier">generic</span></code> + as a keyword. Added a workaround that renames the namespace to <code><span class="identifier">cpp_generic</span></code> when those language + extensions are in effect. + </div> + </li> + <li> + <div> + Fixed some asynchronous operations that missed out on getting <code><span class="identifier">async_result</span></code> support in Boost 1.54. + In particular, the buffered stream templates have been updated so + that they adhere to current handler patterns (<a href="https://svn.boost.org/trac/boost/ticket/9000">#9000</a>, <a href="https://svn.boost.org/trac/boost/ticket/9001">#9001</a>). + </div> + </li> + <li> + <div> + Enabled move support for Microsoft Visual Studio 2012 (<a href="https://svn.boost.org/trac/boost/ticket/8959">#8959</a>). + </div> + </li> + <li> + <div> + Added <code><span class="identifier">use_future</span></code> + support for Microsoft Visual Studio 2012. + </div> + </li> + <li> + <div> + Removed a use of <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">min</span></code> + in the Windows IOCP backend to avoid a dependency on the <code><span class="special">&lt;</span><span class="identifier">algorithm</span><span class="special">&gt;</span></code> header (<a href="https://svn.boost.org/trac/boost/ticket/8758">#8758</a>). + </div> + </li> + <li> + <div> + Eliminated some unnecessary handler copies. + </div> + </li> + <li> + <div> + Fixed various minor and cosmetic issues in code and documentation + (including <a href="https://svn.boost.org/trac/boost/ticket/8347">#8347</a>, <a href="https://svn.boost.org/trac/boost/ticket/8950">#8950</a>, <a href="https://svn.boost.org/trac/boost/ticket/8953">#8953</a>, <a href="https://svn.boost.org/trac/boost/ticket/8965">#8965</a>, <a href="https://svn.boost.org/trac/boost/ticket/8997">#8997</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/atomic/">Atomic</a>:</span> + <ul> + <li> + <div> + Added support for 64-bit atomic operations on x86 target for GCC, + MSVC and compatible compilers. The support is enabled when it is + known at compile time that the target CPU supports required instructions. + </div> + </li> + <li> + <div> + Added support for 128-bit atomic operations on x86-64 target for + GCC and compatible compilers. The support is enabled when it is known + at compile time that the target CPU supports required instructions. + The support can be tested for with the new <code><span class="identifier">BOOST_ATOMIC_INT128_LOCK_FREE</span></code> + macro. + </div> + </li> + <li> + <div> + Added a more efficient implementation of <code><span class="identifier">atomic</span><span class="special">&lt;&gt;</span></code> based on GCC <code><span class="identifier">__atomic</span><span class="special">*</span></code> + intrinsics available since GCC 4.7. + </div> + </li> + <li> + <div> + Added support for more ARM v7 CPUs, improved detection of Thumb 2. + </div> + </li> + <li> + <div> + Added support for x32 (i.e. 64-bit x86 with 32-bit pointers) target + on GCC and compatible compilers. + </div> + </li> + <li> + <div> + Removed dependency on Boost.Thread. + </div> + </li> + <li> + <div> + Internal lock pool now includes proper padding and alignment to avoid + false sharing. + </div> + </li> + <li> + <div> + Fixed compilation with Intel compiler on Windows. Removed internal + macro duplication when compiled on Windows. + </div> + </li> + <li> + <div> + Some code refactoring to use C++11 features when available. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/chrono/">Chrono</a>:</span> + <ul> + <li> + <div> + <em>Fixed Bugs:</em> + <ul> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/7868">#7868</a> + <code><span class="identifier">chrono_io</span></code> parses + time incorrectly (1.53 and 1.52) + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/9028">#9028</a> + Typo in <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">chrono</span><span class="special">/</span><span class="identifier">stopwatches</span><span class="special">/</span><span class="identifier">formatters</span><span class="special">/</span><span class="identifier">base_formatter</span><span class="special">.</span><span class="identifier">hpp</span></code> + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/9147">#9147</a> + uninitialized <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">tm</span></code> + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/circular_buffer/">Circular Buffer</a>:</span> + <ul> + <li> + <div> + Added support for rvalue references and rvalue references emulation + using Boost.Move. Values are moved only if value type has noexcept + move constructor and noexcept move assignment operator <a href="https://svn.boost.org/trac/boost/ticket/7888">#7888</a>. + Now Circular Buffer is usable with move-only types. + </div> + </li> + <li> + <div> + Much better documentation. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/5362">#5362</a> + circular_buffer does not compile with <code><span class="identifier">BOOST_NO_EXCEPTIONS</span></code>. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/7025">#7025</a> + circular buffer reports warning: &quot; type qualifiers ignored on + function return type&quot; while compile. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/7950">#7950</a> + Eliminate W4-warnings under VS2005 - warning C4913: user defined + binary operator ',' exists but no overload could convert all operands, + default built-in binary operator ',' used. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/config/">Config</a>:</span> + <ul> + <li> + <div> + <strong>Breaking change:</strong> Removed support + for some older compilers. The new minimum compiler versions are: + </div> + <ul> + <li> + <div> + Digitial Mars 8.41 + </div> + </li> + <li> + <div> + GCC 3.3 + </div> + </li> + <li> + <div> + Intel 6.0 + </div> + </li> + <li> + <div> + Visual C++ 7.1 + </div> + </li> + </ul> + <div> + Other compilers are unchanged. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/container/">Container</a>:</span> + <ul> + <li> + <div> + Implemented <span class="link">SCARY + iterators</span>. + </div> + </li> + <li> + <div> + Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/8269">#8269</a>, + <a href="https://svn.boost.org/trac/boost/ticket/8473">#8473</a>, + <a href="https://svn.boost.org/trac/boost/ticket/8892">#8892</a>, + <a href="https://svn.boost.org/trac/boost/ticket/9009">#9009</a>, + <a href="https://svn.boost.org/trac/boost/ticket/9064">#9064</a>, + <a href="https://svn.boost.org/trac/boost/ticket/9092">#9092</a>, + <a href="https://svn.boost.org/trac/boost/ticket/9108">#9108</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/context/">Context</a>:</span> + <ul> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8650">#8650</a> + SSE2 intrinsics + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/coroutine/">Coroutine</a>:</span> + <ul> + <li> + <div> + New interface (unidirectional data transfer). + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8782">#8782</a> + no best alternative + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8801">#8801</a> + auto-linking + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/filesystem/">Filesystem</a>:</span> + <ul> + <li> + <div> + Fixed Android compilation <a href="https://svn.boost.org/trac/boost/ticket/8706">#8706</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/fusion/">Fusion</a>:</span> + <ul> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8759">#8759</a> specialization of <code><span class="identifier">convert_impl</span></code> + for <code><span class="identifier">map_tag</span></code> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/geometry/index.html">Geometry</a>:</span> + <ul> + <li> + <div> + <em>Additional functionality</em> + <ul> + <li> + <div> + Added centroid for segment type + </div> + </li> + <li> + <div> + Added intersects() and disjoints() for Segment-Box and Linestring-Box + </div> + </li> + <li> + <div> + Added rtree creation using packing algorithm + </div> + </li> + <li> + <div> + Added contains() and covers() spatial query predicates + </div> + </li> + <li> + <div> + Added iterative queries + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <em>Bugfixes</em> + <ul> + <li> + <div> + In some cases .back() or .clear() was called, violating the + usage of Concepts. Fixed for the reported cases + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <em>Solved tickets</em> + <ul> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/6958">6958</a> + Intersection generates self-intersection. Caused by spike, + fixed + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8364">8364</a> + Invalid input exception, caused by spikes in previous steps, + fixed + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8365">8365</a> + Invalid input exception, caused by spikes in previous steps, + fixed + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8969">8969</a> + boost::geometry::model::point single argument constructor should + be explicit + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8825">8825</a> + Patch adding member variable documentation to doxygen_xml2qbk + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8652">8652</a> + Intersection fails for triangle-triangle intersection. Caused + by spike, fixed + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/9047">9047</a> + Boost files that include themselves (strategies/intersection.hpp), + fixed + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/graph/index.html">Graph</a>:</span> + <ul> + <li> + <div> + <code><span class="keyword">void</span></code> is no longer allowed + as a bundled property type (for example, in the VertexProperties + template parameters to graph types); it did not work reliably before, + but a static assertion now forbids it entirely. Use <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">no_property</span></code> instead. + </div> + </li> + <li> + <div> + Added support for <code><span class="identifier">finish_edge</span></code> + visitor event point in depth-first search; the change should be backward-compatible + with visitors that do not have that member function. + </div> + </li> + <li> + <div> + Disabled building of tests on Sun compiler. + </div> + </li> + <li> + <div> + Multiple source vertices are supported in non-named-parameter versions + of <code><span class="identifier">breadth_first_visit</span></code>, + <code><span class="identifier">breadth_first_search</span></code>, + <code><span class="identifier">dijkstra_shortest_paths</span></code>, + and <code><span class="identifier">dijkstra_shortest_paths_no_init</span></code>. + This feature is not yet documented; to use it, replace the single + parameter for the source vertex in each of these functions by two + input iterators of the same type containing the source vertices to + use. + </div> + </li> + <li> + <div> + Added Hawick circuits algorithm; contributed by Louis Dionne. + </div> + </li> + <li> + <div> + Added edge coloring algorithm; contributed by Maciej Piechotka. + </div> + </li> + <li> + <div> + Added min-cost max-flow algorithm; contributed by Piotr Wygocki. + </div> + </li> + <li> + <div> + Bugs and feature requests from Trac fixed: <a href="https://svn.boost.org/trac/boost/ticket/5269">#5269</a>, <a href="https://svn.boost.org/trac/boost/ticket/8317">#8317</a>, + <a href="https://svn.boost.org/trac/boost/ticket/8433">#8433</a>, <a href="https://svn.boost.org/trac/boost/ticket/8791">#8791</a>, <a href="https://svn.boost.org/trac/boost/ticket/8877">#8877</a>, <a href="https://svn.boost.org/trac/boost/ticket/8986">#8986</a>, <a href="https://svn.boost.org/trac/boost/ticket/9012">#9012</a>, <a href="https://svn.boost.org/trac/boost/ticket/9080">#9080</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/hash/">Hash</a>:</span> + <ul> + <li> + <div> + Simplify a SFINAE check so that it will hopefully work on Sun 5.9 + (<a href="https://svn.boost.org/trac/boost/ticket/8822">#8822</a>). + </div> + </li> + <li> + <div> + Suppress Visual C++ infinite loop warning (<a href="https://svn.boost.org/trac/boost/ticket/8568">#8568</a>). + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/interprocess/">Interprocess</a>:</span> + <ul> + <li> + <div> + Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/7156">#7156</a>, + <a href="https://svn.boost.org/trac/boost/ticket/7164">#7164</a>, + <a href="https://svn.boost.org/trac/boost/ticket/8277">#8277</a>, + <a href="https://svn.boost.org/trac/boost/ticket/8976">#8976</a>, + <a href="https://svn.boost.org/trac/boost/ticket/9065">#9065</a>, + <a href="https://svn.boost.org/trac/boost/ticket/9073">#9073</a>, + <a href="https://svn.boost.org/trac/boost/ticket/9008">#9008</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/intrusive/">Intrusive</a>:</span> + <ul> + <li> + <div> + <strong>Source breaking</strong>: Deprecated <code><span class="identifier">xxx_dont_splay</span></code> functions from splay + containers. Deprecated <code><span class="identifier">splay_set_hook</span></code> + from splay containers, use <code><span class="identifier">bs_set_hook</span></code> + instead. Both will be removed in Boost 1.56. + </div> + </li> + <li> + <div> + <strong>ABI breaking</strong>: Hash containers' end + iterator was implemented pointing to one-past the end of the bucket + array (see <a href="https://svn.boost.org/trac/boost/ticket/8698">#8698</a>) + causing severe bugs when values to be inserted where allocated next + to the bucket array. End iterator implementation was changed to point + to the beginning of the bucket array. + </div> + </li> + <li> + <div> + Big refactoring in order to reduce template and debug symbol bloat. + Test object files have been slashed to half in MSVC compilers in + Debug mode. Toolchains without Identical COMDAT Folding (ICF) should + notice size improvements. + </div> + </li> + <li> + <div> + Implemented <span class="link">SCARY iterators</span>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/conversion/lexical_cast.htm">Lexical cast</a>:</span> + <ul> + <li> + <div> + <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bad_alloc</span></code> exceptions are now are + not converted to <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">bad_lexical_cast</span></code> + <a href="https://svn.boost.org/trac/boost/ticket/8966">#8966</a>. + </div> + </li> + <li> + <div> + Added static assert that checks for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span></code> + specializations if they are required for conversion. Use <code><span class="identifier">BOOST_HAS_INT128</span></code> for detecting + 128 bit integers support <a href="https://svn.boost.org/trac/boost/ticket/8790">#8790</a>. + </div> + </li> + <li> + <div> + Documentation improved and more usage examples added. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/log/">Log</a>:</span> + <ul> + <li> + <div> + General changes: + <ul> + <li> + <div> + Added a new configuration macro <code><span class="identifier">BOOST_LOG_WITHOUT_DEFAULT_FACTORIES</span></code>. + By defining this macro the user can disable compilation of + the default filter and formatter factories used by settings + parsers. This can substantially reduce binary sizes while still + retaining support for settings parsers. + </div> + </li> + <li> + <div> + Rewritten some of the parsers to reduce the compiled binary + size. The rewritten parsers are more robust in detecting ambiguous + and incorrect input. + </div> + </li> + <li> + <div> + The following headers are deprecated: <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">log</span><span class="special">/</span><span class="identifier">utility</span><span class="special">/</span><span class="identifier">intrusive_ref_counter</span><span class="special">.</span><span class="identifier">hpp</span></code>, + <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">log</span><span class="special">/</span><span class="identifier">utility</span><span class="special">/</span><span class="identifier">explicit_operator_bool</span><span class="special">.</span><span class="identifier">hpp</span></code>, <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">log</span><span class="special">/</span><span class="identifier">utility</span><span class="special">/</span><span class="identifier">empty_deleter</span><span class="special">.</span><span class="identifier">hpp</span></code>. + These headers will be removed in future releases. The contents + of these headers were moved to other libraries. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Bug fixes: + <ul> + <li> + <div> + Fixed <code><span class="identifier">timer</span></code> + attribute generating incorrect time readings on Windows on + heavy thread contention when <code><span class="identifier">QueryPerformanceCounter</span></code> + API was used. + </div> + </li> + <li> + <div> + Fixed a bug in the filter parser that prevented using parsed + filters with some attributes. + </div> + </li> + <li> + <div> + Fixed thread id formatting discrepancies between the default + sink and formatters. + </div> + </li> + <li> + <div> + Closed tickets: <a href="https://svn.boost.org/trac/boost/ticket/8815">#8815</a>, <a href="https://svn.boost.org/trac/boost/ticket/8819">#8819</a>, <a href="https://svn.boost.org/trac/boost/ticket/8915">#8915</a>, <a href="https://svn.boost.org/trac/boost/ticket/8917">#8917</a>, + <a href="https://svn.boost.org/trac/boost/ticket/9139">#9139</a>, <a href="https://svn.boost.org/trac/boost/ticket/9140">#9140</a>, <a href="https://svn.boost.org/trac/boost/ticket/9153">#9153</a>, <a href="https://svn.boost.org/trac/boost/ticket/9155">#9155</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + See <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/log/doc/html/log/changelog.html">changelog</a> + for more details. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/math/">Math</a>:</span> + <ul> + <li> + <div> + Suppress numerous warnings (mostly from GCC-4.8 and MSVC) <a href="https://svn.boost.org/trac/boost/ticket/8384">#8384</a>, + <a href="https://svn.boost.org/trac/boost/ticket/8855">#8855</a>, + <a href="https://svn.boost.org/trac/boost/ticket/9107">#9107</a>, + <a href="https://svn.boost.org/trac/boost/ticket/9109">#9109</a>.. + </div> + </li> + <li> + <div> + Fixed PGI compilation issue <a href="https://svn.boost.org/trac/boost/ticket/8333">#8333</a>. + </div> + </li> + <li> + <div> + Fixed PGI constant value initialization issue that caused erf to + generate incorrect results <a href="https://svn.boost.org/trac/boost/ticket/8621">#8621</a>. + </div> + </li> + <li> + <div> + Prevent macro expansion of some C99 macros that are also C++ functions + <a href="https://svn.boost.org/trac/boost/ticket/8732">#8732</a> + and <a href="https://svn.boost.org/trac/boost/ticket/8733">#8733</a>.. + </div> + </li> + <li> + <div> + Fixed Student's T distribution to behave correctly with huge degrees + of freedom (larger than the largest representable integer) <a href="https://svn.boost.org/trac/boost/ticket/8837">#8837</a>. + </div> + </li> + <li> + <div> + Make some core functions usable with <code><span class="keyword">long</span> + <span class="keyword">double</span></code> even when the platform + has no standard library <code><span class="keyword">long</span> + <span class="keyword">double</span></code> support <a href="https://svn.boost.org/trac/boost/ticket/8940">#8940</a>. + </div> + </li> + <li> + <div> + Fix error handling of distributions to catch invalid scale and location + parameters when the random variable is infinite <a href="https://svn.boost.org/trac/boost/ticket/9042">#9042</a> + and <a href="https://svn.boost.org/trac/boost/ticket/9126">#9126</a>. + </div> + </li> + <li> + <div> + Add workaround for broken &lt;tuple&gt; in Intel C++ 14 <a href="https://svn.boost.org/trac/boost/ticket/9087">#9087</a>. + </div> + </li> + <li> + <div> + Improve consistency of argument reduction in the elliptic integrals + <a href="https://svn.boost.org/trac/boost/ticket/9104">#9104</a>. + </div> + </li> + <li> + <div> + Fix bug in inverse incomplete beta that results in cancellation errors + when the beta function is really an arcsine or Student's T distribution. + </div> + </li> + <li> + <div> + Fix issue in Bessel I and K function continued fractions that causes + spurious over/underflow. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/move/">Move</a>:</span> + <ul> + <li> + <div> + Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/7952">#7952</a>, + <a href="https://svn.boost.org/trac/boost/ticket/8764">#8764</a>, + <a href="https://svn.boost.org/trac/boost/ticket/8765">#8765</a>, + <a href="https://svn.boost.org/trac/boost/ticket/8842">#8842</a>, + <a href="https://svn.boost.org/trac/boost/ticket/8979">#8979</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/msm/">Meta State Machine</a>:</span> + <ul> + <li> + <div> + New feature: interrupt states now support a sequence of events to + end the interruption. + </div> + </li> + <li> + <div> + Fixed Trac <a href="https://svn.boost.org/trac/boost/ticket/8686">#8686</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multiprecision/">Multiprecision</a>:</span> + <ul> + <li> + <div> + Added support for Boost.Serialization. + </div> + </li> + <li> + <div> + Suppressed some GCC warnings. See <a href="https://svn.boost.org/trac/boost/ticket/8872">8872</a>. + </div> + </li> + <li> + <div> + Fixed bug in pow for large integer arguments. See <a href="https://svn.boost.org/trac/boost/ticket/8809">8809</a>. + </div> + </li> + <li> + <div> + Fixed bug in pow for calculation of 0[super N]. See <a href="https://svn.boost.org/trac/boost/ticket/8798">8798</a>. + </div> + </li> + <li> + <div> + Fixed bug in fixed precision cpp_int IO code that causes conversion + to string to fail when the bit count is very small (less than CHAR_BIT). + See <a href="https://svn.boost.org/trac/boost/ticket/8745">8745</a>. + </div> + </li> + <li> + <div> + Fixed bug in cpp_int that causes left shift to fail when a fixed + precision type would overflow. See <a href="https://svn.boost.org/trac/boost/ticket/8741">8741</a>. + </div> + </li> + <li> + <div> + Fixed some cosmetic warnings from cpp_int. See <a href="https://svn.boost.org/trac/boost/ticket/8748">8748</a>. + </div> + </li> + <li> + <div> + Fixed calls to functions which are required to be macros in C99. + See <a href="https://svn.boost.org/trac/boost/ticket/8732">8732</a>. + </div> + </li> + <li> + <div> + Fixed bug that causes construction from INT_MIN, LONG_MIN etc to + fail in cpp_int. See <a href="https://svn.boost.org/trac/boost/ticket/8711">8711</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/index.html">Multi-index Containers</a>:</span> + <ul> + <li> + <div> + Boost.MultiIndex has been brought to a higher level of compliance + with C++11. + </div> + <ul> + <li> + <div> + <code><span class="identifier">multi_index_container</span></code> + is now efficiently movable. + </div> + </li> + <li> + <div> + Initializer lists supported. + </div> + </li> + <li> + <div> + Emplace functions provided. + </div> + </li> + <li> + <div> + Non-copyable elements (such as <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">unique_ptr</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span></code>) supported. This includes + insertion of a range [<code><span class="identifier">first</span></code>,<code><span class="identifier">last</span></code>) where the iterators point + to a type that is convertible to that of the element: no copy + construction happens in the process. + </div> + </li> + <li> + <div> + Random access indices provide <code><span class="identifier">shrink_to_fit</span><span class="special">()</span></code>. + </div> + </li> + </ul> + <div> + Refer to the <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/compiler_specifics.html">compiler + specifics</a> section for limitations on pre-C++11 compilers. + </div> + </li> + <li> + <div> + The following classes are deprecated: + <ul> + <li> + <div> + <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#member_offset"><code><span class="identifier">member_offset</span></code></a>, + </div> + </li> + <li> + <div> + <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#const_mem_fun_explicit"><code><span class="identifier">const_mem_fun_explicit</span></code></a>, + </div> + </li> + <li> + <div> + <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#const_mem_fun_explicit"><code><span class="identifier">mem_fun_explicit</span></code></a>, + </div> + </li> + <li> + <div> + <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_equal_to"><code><span class="identifier">composite_key_result_equal_to</span></code></a>, + </div> + </li> + <li> + <div> + <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_less"><code><span class="identifier">composite_key_result_less</span></code></a>, + </div> + </li> + <li> + <div> + <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_greater"><code><span class="identifier">composite_key_result_greater</span></code></a>, + </div> + </li> + <li> + <div> + <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_hash"><code><span class="identifier">composite_key_result_hash</span></code></a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Maintenance fixes. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/mpi/">MPI</a>:</span> + <ul> + <li> + <div> + Replaced calls to deprecated MPI functions + </div> + </li> + <li> + <div> + Added support for multi-threaded initialization + </div> + </li> + <li> + <div> + Added in-place collectives + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/phoenix/">Phoenix</a>:</span> + <ul> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/9049">#9049</a> <code><span class="identifier">phoenix</span><span class="special">::</span><span class="identifier">function</span></code> + constructor is constexpr. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/property_map/index.html">PropertyMap</a>:</span> + <ul> + <li> + <div> + dynamic_properties objects can now be built by non-destructively + chaining <code><span class="special">.</span><span class="identifier">property</span><span class="special">(</span><span class="identifier">name</span><span class="special">,</span> <span class="identifier">pm</span><span class="special">)</span></code> calls. Example: + </div> +<pre><span class="identifier">boost</span><span class="special">::</span><span class="identifier">dynamic_properties</span><span class="special">()</span> + <span class="special">.</span><span class="identifier">property</span><span class="special">(</span><span class="string">&quot;color&quot;</span><span class="special">,</span> <span class="identifier">color_map</span><span class="special">)</span> + <span class="special">.</span><span class="identifier">property</span><span class="special">(</span><span class="string">&quot;pos&quot;</span><span class="special">,</span> <span class="identifier">position_map</span><span class="special">)</span> +</pre> + </li> + <li> + <div> + The use of raw pointers as property maps is deprecated; it often + failed on Visual Studio in the past. This usage has been removed + from all tests and examples in Boost.Graph. The replacement to use + for vertex properties in graphs (the most common use for this feature) + is: + </div> +<pre><span class="identifier">boost</span><span class="special">::</span><span class="identifier">make_iterator_property_map</span><span class="special">(</span> + <span class="special">&lt;</span><span class="identifier">pointer</span> <span class="keyword">or</span> <span class="identifier">container</span> <span class="special">.</span><span class="identifier">begin</span><span class="special">()</span> <span class="identifier">iterator</span><span class="special">&gt;,</span> + <span class="identifier">get</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">vertex_index</span><span class="special">,</span> <span class="special">&lt;</span><span class="identifier">graph</span> <span class="identifier">object</span><span class="special">&gt;))</span> +</pre> + <div> + (Note: the lack of namespace qualification on get() in this code + is necessary for generic code). Outside a graph context, the closest + equivalent is: + </div> +<pre><span class="identifier">boost</span><span class="special">::</span><span class="identifier">make_iterator_property_map</span><span class="special">(</span> + <span class="special">&lt;</span><span class="identifier">pointer</span><span class="special">&gt;,</span> + <span class="identifier">boost</span><span class="special">::</span><span class="identifier">typed_identity_property_map</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">&gt;())</span> +</pre> + <div> + There are commented-out static assertions on lines 151 and 159 of + <code><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">property_map</span><span class="special">/</span><span class="identifier">property_map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> that can be un-commented to find + deprecated uses of pointers in user code. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/rational">Rational</a>:</span> + <ul> + <li> + <div> + Added <code><span class="identifier">lowest</span></code> and + <code><span class="identifier">max_digits10</span></code>, members + of std::numeric_limits added in C++11, to the unit-test code. Needed + since Boost.Test refers to one of them when compiled in C++11 mode. + </div> + </li> + <li> + <div> + Changed initialization of some internal variables to something that + cannot be a narrowing conversion, which fixes issue <a href="https://svn.boost.org/trac/boost/ticket/5855">#5855</a>. Needed + since narrowing conversions are an error in C++11. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/smart_ptr/index.html">SmartPtr</a>:</span> + <ul> + <li> + <div> + Added <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">smart_ptr</span><span class="special">/</span><span class="identifier">intrusive_ref_counter</span><span class="special">.</span><span class="identifier">hpp</span></code> header, extracted from Boost.Log. + The header implements a mixin base class that adds support for <code><span class="identifier">intrusive_ptr</span></code> to user's classes. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/Thread/">Thread</a>:</span> + <ul> + <li> + <div> + <em>New Features:</em> + <ul> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8519">#8519</a> + Synchro: Update class barrier with a completion function. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8515">#8515</a> + Async: Add <code><span class="identifier">shared_future</span><span class="special">::</span><span class="identifier">then</span></code>. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8519">#8519</a> + Synchro: Update class barrier with a completion function + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8615">#8615</a> + Async: Replace make_future/make_shared_future by make_ready_future. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8627">#8627</a> + Async: Add future&lt;&gt;::unwrap and unwrapping constructor. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8677">#8677</a> + Async: Add future&lt;&gt;::get_or. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8678">#8678</a> + Async: Add future&lt;&gt;::fallback_to. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8891">#8891</a> + upgrade_to_unique_lock: missing mutex() function. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8955">#8955</a> + Request for more efficient way to get exception_ptr from future. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <em>Fixed Bugs:</em> + <ul> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/7461">#7461</a> + detail::win32::ReleaseSemaphore may be called with count_to_release + equal to 0 + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8070">#8070</a> + prefer GetTickCount64 over GetTickCount + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8768">#8768</a> + win32 condition_variable::wait_until infinite wait in rare + cases. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8817">#8817</a> + Boost Thread Windows CE _createthreadex handling breaks mingw + w64. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8943">#8943</a> + Failed to compile code using boost::call_once with Intel C++ + Composer XE 2013 on Windows. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/8931">#8931</a> + Typos in external_locking reference. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/9029">#9029</a> + Misprint in documentation. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/9037">#9037</a> + gcc -Wshadow gives warnings in condition_variable{,_fwd}.hpp. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/9041">#9041</a> + Boost.Thread DSO's may need to link with Boost.Atomic. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/9048">#9048</a> + boost::scoped_thread useless ctor with variadic template arguments. + </div> + </li> + <li> + <div> + <a href="http://svn.boost.org/trac/boost/ticket/9079">#9079</a> + Condition variable will wait forever for some timepoint values + (Win). + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/timer/">Timer</a>:</span> + <ul> + <li> + <div> + Fixed compilation on Intel compiler <a href="https://svn.boost.org/trac/boost/ticket/8956">#8956</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/type_traits/">Type Traits</a>:</span> + <ul> + <li> + <div> + Added <code><span class="identifier">is_copy_contructible</span></code> + trait <a href="https://svn.boost.org/trac/boost/ticket/8802">#8802</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/unordered/">Unordered</a>:</span> + <ul> + <li> + <div> + Avoid some warnings (<a href="https://svn.boost.org/trac/boost/ticket/8851">#8851</a>, <a href="https://svn.boost.org/trac/boost/ticket/8874">#8874</a>). + </div> + </li> + <li> + <div> + Avoid exposing some detail functions via. ADL on the iterators. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/utility/index.html">Utility</a>:</span> + <ul> + <li> + <div> + <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">result_of</span></code> can be set to use TR1 + protocol by default and fall back to <code><span class="keyword">decltype</span></code> + if the function object does not support it (like C++11 lambda functions, + for example). Define <code><span class="identifier">BOOST_RESULT_OF_USE_TR1_WITH_DECLTYPE_FALLBACK</span></code> + configuration macro to enable this mode. + </div> + </li> + <li> + <div> + Improved support for C++11 in the <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">base_from_member</span></code> + class template. The class implements perfect forwarding for the constructor + arguments, if the compiler supports rvalue references, variadic templates + and function template default arguments. + </div> + </li> + <li> + <div> + Added <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">utility</span><span class="special">/</span><span class="identifier">explicit_operator_bool</span><span class="special">.</span><span class="identifier">hpp</span></code> and <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">utility</span><span class="special">/</span><span class="identifier">empty_deleter</span><span class="special">.</span><span class="identifier">hpp</span></code> + headers, which were extracted from Boost.Log. The headers implement + utilities for defining explicit conversion operators to <code><span class="keyword">bool</span></code> and a deleter function object + that does nothing, respectively. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/variant/">Variant</a>:</span> + <ul> + <li> + <div> + Fixed compilation of constructor and assignment operator with const + rvalues input parameters <a href="https://svn.boost.org/trac/boost/ticket/8988">#8988</a>. + </div> + </li> + <li> + <div> + Fixed compilation of move assignment operator for situations when + one of the variant template classes has nothrow copy constructor + and throwing move constructor <a href="https://svn.boost.org/trac/boost/ticket/8772">#8772</a>. + </div> + </li> + <li> + <div> + Fix compilation on exception-disabled environments <a href="https://svn.boost.org/trac/boost/ticket/8717">#8717</a>. + </div> + </li> + <li> + <div> + Fix unreachable code warnings <a href="https://svn.boost.org/trac/boost/ticket/8665">#8665</a>. + </div> + </li> + <li> + <div> + Removed duplicate code <a href="https://svn.boost.org/trac/boost/ticket/7601">#7601</a>. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/wave/">Wave</a>:</span> + <ul> + <li> + <div> + See the <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/wave/ChangeLog">Changelog</a> for details. + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/xpressive">xpressive</a>:</span> + <ul> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8843">#8843</a> throw instead of assert at incomplete charset + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8880">#8880</a> remove unused local typedef + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8882">#8882</a> use RAII instead of try/catch in sequence_stack.hpp + </div> + </li> + <li> + <div> + <a href="https://svn.boost.org/trac/boost/ticket/8474">#8474</a> make xpressive play nice with clang's -Wimplicit-fallthrough + diagnostic + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_55_0.updated_tools"> + <h3><span class="link">Updated Tools</span></h3> + <ul> + <li> + <div> + <span class="library"><a href="http://www.boost.org/tools/quickbook">Quickbook</a>:</span> + <ul> + <li> + <div> + Quickbook 1.6 finalized, see the <a href="http://www.boost.org/doc/libs/1_55_0b1/doc/html/quickbook/versions.html#language_versions.1_6">Quickbook + documentation for details</a>. + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_55_0.compilers_tested"> + <h3><span class="link">Compilers Tested</span></h3> + <p> + Boost's primary test compilers are: + </p> + <ul> + <li> + <div> + Linux: + <ul> + <li> + <div> + Clang: 3.3, 3.2, 3.1, 3.0 + </div> + </li> + <li> + <div> + Clang, C++11, libc++: 3.4, 3.3 + </div> + </li> + <li> + <div> + GCC: 4.8.1, 4.7.3, 4.6.3, 4.5.3, 4.4.7 + </div> + </li> + <li> + <div> + GCC, C++11: 4.8.1 + </div> + </li> + <li> + <div> + GCC, C++98: 4.8.1 + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + OS X: + <ul> + <li> + <div> + GCC: 4.2 + </div> + </li> + <li> + <div> + Apple Clang: 5.0 + </div> + </li> + <li> + <div> + Apple Clang, C++11: 5.0 + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Windows: + <ul> + <li> + <div> + GCC, mingw: 4.8.0, 4.7.2, 4.6.3, 4.5.4, 4.4.7 + </div> + </li> + <li> + <div> + Visual C++: 11.0, 10.0, 9.0 + </div> + </li> + </ul> + </div> + </li> + </ul> + <p> + Boost's additional test compilers include: + </p> + <ul> + <li> + <div> + OS X: + <ul> + <li> + <div> + Apple Clang: 5.0 + </div> + </li> + <li> + <div> + Apple Clang, C++11: 5.0 + </div> + </li> + <li> + <div> + Clang: trunk + </div> + </li> + <li> + <div> + Clang, C++11: trunk + </div> + </li> + <li> + <div> + GCC: 4.2.1 + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Linux: + <ul> + <li> + <div> + Clang: 3.3, 3.2, 3.1, 3.0, trunk + </div> + </li> + <li> + <div> + Clang, C++11: 3.4 + </div> + </li> + <li> + <div> + Clang, C++11, libc++: 3.4, 3.3 + </div> + </li> + <li> + <div> + GCC: 4.9.0 (experimental), 4.8.1, 4.7.3, 4.6.4, 4.5.3, 4.4.7 + </div> + </li> + <li> + <div> + GCC, C++11: 4.8.1 + </div> + </li> + <li> + <div> + GCC, C++98: 4.8.1 + </div> + </li> + <li> + <div> + Intel: 13.0.1, 12.1.6 + </div> + </li> + </ul> + </div> + </li> + <li> + <div> + Windows: + <ul> + <li> + <div> + GCC, mingw: 4.8.0, 4.7.2, 4.6.3, 4.5.4, 4.4.7 + </div> + </li> + <li> + <div> + Visual C++: 11.0, 10.0, 9.0 + </div> + </li> + </ul> + </div> + </li> + </ul> + </div> + <div id="version_1_55_0.acknowledgements"> + <h3><span class="link">Acknowledgements</span></h3> + <p> + <a href="http://www.boost.org/users/people/beman_dawes.html">Beman Dawes</a>, Eric Niebler, + <a href="http://www.boost.org/users/people/rene_rivera.html">Rene Rivera</a>, Daniel James, + Vladimir Prus and Marshall Clow managed this release. + </p> + </div> Version 1.54.0http://www.boost.org/users/history/version_1_54_0.htmlhttp://www.boost.org/users/history/version_1_54_0.htmlMon, 1 Jul 2013 10:10:02 -0700 @@ -4400,756 +6081,6 @@ Vladimir Prus and Marshall Clow managed this release. </p> </div> -Version 1.51.0http://www.boost.org/users/history/version_1_51_0.htmlhttp://www.boost.org/users/history/version_1_51_0.htmlMon, 20 Aug 2012 16:00:21 -0700 - - - - <div id="version_1_51_0.new_libraries"> - <h3><span class="link">New Libraries</span></h3> - <ul> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/context/">Context</a>:</span> - Context switching library, - from Oliver Kowalke. - </div> - </li> - </ul> - </div> - <div id="version_1_51_0.updated_libraries"> - <h3><span class="link">Updated Libraries</span></h3> - <ul> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/algorithm/">Algorithm</a>:</span> - <ul> - <li> - <div> - Fixed <code><span class="identifier">is_sorted_until</span></code> - ; now matches the c++11 standard behavior on ranges with duplicate - values. - </div> - </li> - <li> - <div> - Added range support for the rest of the search algorithms. - </div> - </li> - <li> - <div> - <code><span class="identifier">unhex</span></code> now uses Boost.Exception - to signal bad input. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/asio/">Asio</a>:</span> - <ul> - <li> - <div> - Fixed an incompatibility between <code><span class="identifier">ip</span><span class="special">::</span><span class="identifier">tcp</span><span class="special">::</span><span class="identifier">iostream</span></code> - and C++11 (<a href="https://svn.boost.org/trac/boost/ticket/7162">#7162</a>). - </div> - </li> - <li> - <div> - Decorated GCC attribute names with underscores to prevent interaction - with user-defined macros (<a href="https://svn.boost.org/trac/boost/ticket/6415">#6415</a>). - </div> - </li> - <li> - <div> - Added missing <code><span class="preprocessor">#include</span> - <span class="special">&lt;</span><span class="identifier">cctype</span><span class="special">&gt;</span></code>, needed for some versions of - MinGW. - </div> - </li> - <li> - <div> - Changed to use <tt>gcc</tt>'s atomic builtins on ARM CPUs, - when available (<a href="https://svn.boost.org/trac/boost/ticket/7140">#7140</a>). - </div> - </li> - <li> - <div> - Changed strand destruction to be a no-op, to allow strand objects - to be destroyed after their associated <code><span class="identifier">io_service</span></code> - has been destroyed. - </div> - </li> - <li> - <div> - Added support for some newer versions of glibc which provide the - <code><span class="identifier">epoll_create1</span><span class="special">()</span></code> - function but always fail with <code><span class="identifier">ENOSYS</span></code> - (<a href="https://svn.boost.org/trac/boost/ticket/7012">#7012</a>). - </div> - </li> - <li> - <div> - Changed the SSL implementation to throw an exception if SSL engine - initialisation fails (<a href="https://svn.boost.org/trac/boost/ticket/6303">#6303</a>). - </div> - </li> - <li> - <div> - Fixed another regression in <code><span class="identifier">buffered_write_stream</span></code> - (<a href="https://svn.boost.org/trac/boost/ticket/6310">#6310</a>). - </div> - </li> - <li> - <div> - Implemented various minor performance improvements, primarily targeted - at Linux x86 and x86-64 platforms. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/config/">Config</a>:</span> - <ul> - <li> - <div> - Deprecated a whole bunch of macros that were c++11 specific, but - not named to show that they were c++11 specific. Made new macros - with better names, and paired the old macros with the new ones. Updated - the documentation to list the deprecated macros. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/chrono/">Chrono</a>:</span> - <ul> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/6918">#6918</a> - Boost Chrono compilation failure on HP uX due to undefined pthread_getcpuclockid. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/6241">#6241</a> - boost::chrono compilation problems without std::wstring support. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/6987">#6987</a> - Documentation &amp; C++11. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7041">#7041</a> - time_point.hpp depends on Boost.System. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7042">#7042</a> - Avoiding time_point and duration dependency on time.h and CLOCK_REALTIME. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7058">#7058</a> - Make it work when BOOST_NO_EXCEPTIONS is defined. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7069">#7069</a> - Misspellings in clock_string&lt;thread_clock&gt;. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7081">#7081</a> - WinError.h capitalization in boost/detail/win/basic_types.hpp. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/geometry/">Geometry</a>:</span> - <ul> - <li> - <div> - points accessed through a pointer (e.g. in a linestring) should now - be specialized without the pointer. In previous versions a type - <code><span class="identifier">my_point</span></code> used like - <code><span class="identifier">linestring</span><span class="special">&lt;</span><span class="identifier">my_point</span><span class="special">*&gt;</span></code> - had to be specalized like: <code><span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">struct</span> - <span class="identifier">tag</span><span class="special">&lt;</span><span class="identifier">my_point</span><span class="special">*&gt;</span></code>. - Now the library itself removes the pointer before calling the traits - class, so now it should be like: <code><span class="keyword">template</span><span class="special">&lt;&gt;</span> <span class="keyword">struct</span> - <span class="identifier">tag</span><span class="special">&lt;</span><span class="identifier">my_point</span><span class="special">&gt;</span></code> - </div> - </li> - <li> - <div> - intersection was sometimes wrong for integer points, fixed - </div> - </li> - <li> - <div> - documentation, order of parameters in simplify was wrong, fixed - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7030">7030</a> - spherical distance, fixed (by patch of Karsten Ahnert) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/graph/">Graph</a>:</span> - <ul> - <li> - <div> - Refactored support for internal and bundled properties in Boost.Graph-provided - graph types, and cleaned up named parameter functionality: - <ul> - <li> - <div> - Enabled old-style (non-bundled) internal properties in <code><span class="identifier">compressed_sparse_row_graph</span></code>. - </div> - </li> - <li> - <div> - Bundled properties should work correctly for all graph types - and adaptors. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Bugs fixed: - <ul> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/6993">#6993</a>: Typo Bundled Properties document - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7002">#7002</a>: Problem with initialization of CSR bidirectional - graph - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7023">#7023</a>: Enclose internal type graphml_reader in anonymous - namespace - </div> - </li> - <li> - <div> - Other bugs and warnings not in Trac - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/functional/hash/">Hash</a>:</span> - <ul> - <li> - <div> - Support the standard smart pointers. - </div> - </li> - <li> - <div> - <code><span class="identifier">hash_value</span></code> now implemented - using SFINAE to avoid implicit casts to built in types when calling - it. - </div> - </li> - <li> - <div> - Updated to use the new config macros. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/conversion/lexical_cast.htm">Lexical cast</a>:</span> - <ul> - <li> - <div> - Better performance, less memory usage for <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">array</span><span class="special">&lt;</span><span class="identifier">character_type</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></code> and <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">array</span><span class="special">&lt;</span><span class="identifier">character_type</span><span class="special">,</span> <span class="identifier">N</span><span class="special">&gt;</span></code> conversions. - </div> - </li> - <li> - <div> - Fixed bug with volatile input parameter <a href="https://svn.boost.org/trac/boost/ticket/7157">#7157</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/math/">Math</a>:</span> - <ul> - <li> - <div> - Updated to use the new config macros. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/msm/">MSM</a>:</span> - <ul> - <li> - <div> - Support for boost::any <a href="http://www.boost.org/doc/libs/1_51_0/libs/msm/doc/HTML/ch03s03.html#any-event">http://www.boost.org/doc/libs/1_51_0/libs/msm/doc/HTML/ch03s03.html#any-event</a> - or kleene <a href="http://www.boost.org/doc/libs/1_51_0/libs/msm/doc/HTML/ch03s04.html#kleene-event">http://www.boost.org/doc/libs/1_51_0/libs/msm/doc/HTML/ch03s04.html#kleene-event</a> - as acceptable events - </div> - </li> - <li> - <div> - Bugfix: compiler error with fsm internal table and none (compound) - event. - </div> - </li> - <li> - <div> - Bugfix: euml::defer_ leading to stack overflow. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/proto/">Proto</a>:</span> - <ul> - <li> - <div> - Proto transforms get pseudo-parameter pack expansion support for - unpacking expressions. See the <a href="http://www.boost.org/doc/html/proto/appendices.html#boost_proto.appendices.release_notes.boost_1_51">Release - Notes</a> for more information. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/ratio/">Ratio</a>:</span> - <ul> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7075">#7075</a> - Workaround for error: the type of partial specialization template - parameter constant &quot;n1&quot; depends on another template parameter. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/regex/">Regex</a>:</span> - <ul> - <li> - <div> - Updated to use the new config macros. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/thread/">Thread</a>:</span> - <ul> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/4258">#4258</a> - Linking with boost thread does not work on mingw/gcc 4.5. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/4885">#4885</a> - Access violation in set_tss_data at process exit due to invalid assumption - about TlsAlloc. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/6931">#6931</a> - mutex waits forwever with Intel Compiler and /debug:parallel - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7044">#7044</a> - boost 1.50.0 header missing. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7052">#7052</a> - Thread: BOOST_THREAD_PROVIDES_DEPRECATED_FEATURES_SINCE_V3_0_0 only - masks thread::operator==, thread::operator!= forward declarations, - not definitions. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7066">#7066</a> - An attempt to fix current_thread_tls_key static initialization order. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7074">#7074</a> - Multiply defined symbol boost::allocator_arg. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7078">#7078</a> - Trivial 64-bit warning fix on Windows for thread attribute stack - size - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/7089">#7089</a> - BOOST_THREAD_WAIT_BUG limits functionality without solving anything - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/unordered/">Unordered</a>:</span> - <ul> - <li> - <div> - Fix construction/destruction issue when using a C++11 compiler with - a C++03 allocator (<a href="https://svn.boost.org/trac/boost/ticket/7100">#7100</a>). - </div> - </li> - <li> - <div> - Remove a <code><span class="keyword">try</span><span class="special">..</span><span class="keyword">catch</span></code> to support compiling without - exceptions. - </div> - </li> - <li> - <div> - Adjust SFINAE use to try to supprt g++ 3.4 (<a href="https://svn.boost.org/trac/boost/ticket/7175">#7175</a>). - </div> - </li> - <li> - <div> - Updated to use the new config macros. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/wave/">Wave</a>:</span> - <ul> - <li> - <div> - See the <a href="http://www.boost.org/libs/wave/ChangeLog">Changelog</a> for details. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/xpressive/">xpressive</a>:</span> - <ul> - <li> - <div> - Work around buggy wide ctype facet on cygwin and mingw. - </div> - </li> - <li> - <div> - Work around absence of __isctype on some glibc implementations. - </div> - </li> - <li> - <div> - <code><span class="identifier">op</span><span class="special">::</span><span class="identifier">as</span></code> shouldn't assume <code><span class="identifier">string</span><span class="special">::</span><span class="identifier">iterator</span></code> != <code><span class="keyword">char</span><span class="special">*</span></code>. - </div> - </li> - <li> - <div> - Fix assertion in <code><span class="identifier">cpp_regex_traits</span></code> - on libc++, thanks to John Fletcher. - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - <div id="version_1_51_0.compilers_tested"> - <h3><span class="link">Compilers Tested</span></h3> - <p> - Boost's primary test compilers are: - </p> - <ul> - <li> - <div> - Linux: - <ul> - <li> - <div> - GCC: 4.2.4, 4.3.4, 4.4.3, 4.5.3, 4.6.2, 4.7 - </div> - </li> - <li> - <div> - GCC, C++11 mode: 4.3.4, 4.4.3, 4.5.3, 4.6.2 - </div> - </li> - <li> - <div> - Intel: 11.1, 12.0, 12.1 - </div> - </li> - <li> - <div> - LLVM Clang 2.8 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - OS X: - <ul> - <li> - <div> - GCC: 4.4 - </div> - </li> - <li> - <div> - GCC, C++11 mode: 4.4 - </div> - </li> - <li> - <div> - Intel: 11.1, 12.0 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Windows: - <ul> - <li> - <div> - GCC, mingw: 4.4.0, 4.4.7, 4.5.4, 4.6.3 - </div> - </li> - <li> - <div> - Visual C++: 8.0, 9.0, 10.0 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - FreeBSD: - <ul> - <li> - <div> - GCC: 4.2.1, 32 and 64 bit - </div> - </li> - </ul> - </div> - </li> - </ul> - <p> - Boost's additional test compilers include: - </p> - <ul> - <li> - <div> - Linux: - <ul> - <li> - <div> - Clang: from subversion - </div> - </li> - <li> - <div> - LLVM Clang: 3.0 - </div> - </li> - <li> - <div> - GCC: 4.2.4, 4.3.4, 4.4.4, 4.4.7, 4.5.3, 4.6.2, 4.6.3, 4.7.0, 4.7.1 - </div> - </li> - <li> - <div> - GCC, C++11 mode: 4.3.4, 4.4.4, 4.5.3, 4.6.3 - </div> - </li> - <li> - <div> - pgCC: 11.9 - </div> - </li> - <li> - <div> - Intel: 10.1, 11.1, 12.0, 12.1 - </div> - </li> - <li> - <div> - Visual Age: 10.1 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - OS X: - <ul> - <li> - <div> - Clang: from subversion - </div> - </li> - <li> - <div> - Clang, C++11 mode: from subversion - </div> - </li> - <li> - <div> - Intel: 11.1, 12.0 - </div> - </li> - <li> - <div> - GCC: 4.4 - </div> - </li> - <li> - <div> - GCC, C++11 mode: 4.4 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Windows: - <ul> - <li> - <div> - Visual C++: 8.0, 9.0, 10.0 - </div> - </li> - <li> - <div> - GCC, mingw: 4.4.0, 4.6.3, 4.7.0 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - AIX: - <ul> - <li> - <div> - IBM XL C/C++ Enterprise Edition: V12.1.0.0 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - FreeBSD: - <ul> - <li> - <div> - GCC: 4.2.1, 32 and 64 bit - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Solaris: - <ul> - <li> - <div> - Sun: 5.10 - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - <div id="version_1_51_0.acknowledgements"> - <h3><span class="link">Acknowledgements</span></h3> - <p> - <a href="http://www.boost.org/users/people/beman_dawes.html">Beman Dawes</a>, Eric Niebler, - <a href="http://www.boost.org/users/people/rene_rivera.html">Rene Rivera</a>, Daniel James, - Vladimir Prus and Marshall Clow managed this release. - </p> - </div> diff --git a/generated/download-items.html b/generated/download-items.html index 4415785f..2fd6ae60 100644 --- a/generated/download-items.html +++ b/generated/download-items.html @@ -1,5 +1,6 @@ @@ -24,3 +25,24 @@
  • Download
  • Documentation
  • +

    Beta Release

    +

    Version 1.55.0 beta

    + +

    In Progress

    + +

    + + New Libraries: Predef. Updated Libraries: Accumulators, Any, Asio, Atomic, + Config, Chrono, Circular Buffer, Container, Context, Coroutine, Filesystem, + Fusion, Geometry, Graph, Hash, Interprocess, Intrusive, Lexical Cast, Log, + Math, Meta State Machine, Move, Multiprecision, Multi-index Containers, MPI, + Phoenix, PropertyMap, Rational, Thread, Timer, Type Traits, Unordered, Utility, + Variant, Wave, xpressive. +

    + + diff --git a/generated/home-items.html b/generated/home-items.html index b1c32f66..69c86eeb 100644 --- a/generated/home-items.html +++ b/generated/home-items.html @@ -5,6 +5,10 @@ +

    Beta Release

    +

    More Downloads... (RSS)

    diff --git a/generated/libraries.txt b/generated/libraries.txt index 965ca843ccdfdcc806cbb46ee8f63f2d38ad577b..0cb20372342feb5cfab3141d35555c09966ce169 100644 GIT binary patch delta 377 zcmcb*oaMwCmJRCMjHa74xQo|tnpr6o6s4x5rcJ(hPmB%93>5NbGBus-sI0{n0Ff*# z7UngyQVL4VOH~NUEK4n#uE@_bQu78^V delta 21 dcmX@HhUMyVmJRCMj3%2kxQo|p=G$cz0{~ug2qpjk diff --git a/generated/news.rss b/generated/news.rss index de3d374e..0e3fece8 100644 --- a/generated/news.rss +++ b/generated/news.rss @@ -75,11 +75,16 @@ </p> </blockquote> <p> - If you want to reply to the request and can't email the list you can <a href="mailto:daniel@calamity.org.uk">send - me an email</a>. Let me know if it's okay to forward it to the list. + <strong>Update:</strong> I had a few responses, but none were + opposed to this change, so I made it in trunk a little while ago. It should be + included in the next release. </p> <p> - Thanks again. + There was some concern that we would remove support for later compilers (e.g. + Visual Studio 2008, aka. Visual C++ 9.0). We have no such plans, this change + is only for very old compilers. As always support across Boost libraries is not + uniform, but most library authors do try to support as wide a range of compilers + as is feasible. </p>
    Version 1.54.0http://www.boost.org/users/history/version_1_54_0.htmlhttp://www.boost.org/users/history/version_1_54_0.htmlMon, 1 Jul 2013 10:10:02 -0700 diff --git a/generated/state/feed-pages.txt b/generated/state/feed-pages.txt index f833a2fd..6658578b 100644 --- a/generated/state/feed-pages.txt +++ b/generated/state/feed-pages.txt @@ -2035,11 +2035,13 @@ (feed/history/boost_1_55_0.qbk -dir_location -documentation +"/doc/libs/1_55_0b1/ -download +"http://sourceforge.net/projects/boost/files/boost/1.55.0.beta.1/ -id "version_1_55_0 -last_modified -.1375733554.82 +.1381242451.09 -location "users/history/version_1_55_0.html -notice @@ -2049,14 +2051,47 @@ "In Progress -purpose " -" New Libraries: Updated Libraries: MultiIndex +" New Libraries: Predef. Updated Libraries: Accumulators, Any, Asio, Atomic, +" Config, Chrono, Circular Buffer, Container, Context, Coroutine, Filesystem, +" Fusion, Geometry, Graph, Hash, Interprocess, Intrusive, Lexical Cast, Log, +" Math, Meta State Machine, Move, Multiprecision, Multi-index Containers, MPI, +" Phoenix, PropertyMap, Rational, Thread, Timer, Type Traits, Unordered, Utility, +" Variant, Wave, xpressive. " -qbk_hash -"1dcba02cf11f0eb0d398f7bfe2b70f63d5926928f5351a48e5502f5788cf4449 +"a271eff2ddfbe35feb3708f81c80647e1cb478f55d8856394ea14c45e532891d +-release_status +"beta +-title +"Version 1.55.0 +-type +"release +) +(feed/history/boost_1_56_0.qbk +-dir_location +-documentation +-download +-id +"version_1_56_0 +-last_modified +.1381666077.2 +-location +"users/history/version_1_56_0.html +-notice +-notice_url +-page_state +-pub_date +"In Progress +-purpose +" +" New Libraries: Updated Libraries: +" +-qbk_hash +"2bbd7bd161df7687945c6fc7b932e406c9a02e99d6fe540b86b3f590fa8bb96d -release_status "dev -title -"Version 1.55.0 +"Version 1.56.0 -type "release ) @@ -2135,7 +2170,7 @@ " Dropping support for compilers such as Visual C++ 7.0, and GCC 3.2 " -qbk_hash -"4121f9997e82f352fbfaf4cb0df7bfffc4dea96f1be1200958d177fbdd09634d +"687dd391b5a9b60bcb8e65707a2fdd1d5a6092c3e712815336c7d11cf702e7c8 -release_status -title "Old compilers diff --git a/generated/state/rss-items.txt b/generated/state/rss-items.txt index c72f5f94..da91c67d 100644 --- a/generated/state/rss-items.txt +++ b/generated/state/rss-items.txt @@ -20332,12 +20332,71 @@ "Version 1.55.0http://www.boost.org/users/history/version_1_55_0.htmlhttp://www.boost.org/users/history/version_1_55_0.htmlIn Progress " " +" +" <div id="version_1_55_0.news"> +" <h3><span class="link">News</span></h3> +" <p> +" Support was removed from <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/config/">Config</a> for some +" very old versions of compilers. The new minimum requirements are: +" </p> +" <ul> +" <li> +" <div> +" Digitial Mars 8.41 +" </div> +" </li> +" <li> +" <div> +" GCC 3.3 +" </div> +" </li> +" <li> +" <div> +" Intel 6.0 +" </div> +" </li> +" <li> +" <div> +" Visual C++ 7.1 +" </div> +" </li> +" </ul> +" <p> +" Other compilers are currently unchanged, but we are considering removing support +" for some other old compilers. Candidates for removal are: +" </p> +" <ul> +" <li> +" <div> +" Metroworks C++ (i.e. codewarrior) +" </div> +" </li> +" <li> +" <div> +" SunPro 5.7 and earlier +" </div> +" </li> +" <li> +" <div> +" Borland C++ Builder 2006 (5.82) and earlier +" </div> +" </li> +" </ul> +" <p> +" If you're using any of these, please let us know on the mailing lists. We will +" take into account any feedback received before making a decision. +" </p> +" </div> " <div id="version_1_55_0.new_libraries"> " <h3><span class="link">New Libraries</span></h3> " <ul> " <li> " <div> -" <em>TODO</em> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/predef/">Predef</a>:</span> This library defines a +" set of compiler, architecture, operating system, library, and other version +" numbers from the information it can gather of C, C++, Objective C, and +" Objective C++ predefined macros or those defined in generally available +" headers, from Rene Rivera. " </div> " </li> " </ul> @@ -20347,44 +20406,1033 @@ " <ul> " <li> " <div> -" <span class="library"><a href="http://www.boost.org/libs/multi_index/index.html">Multi-index Containers</a>:</span> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/accumulators/">Accumulators</a>:</span> +" <ul> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/7915">#7915</a> Fix silly typos. +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8850">#8850</a> Fix MSVC warnings. +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8262">#8262</a> Rename <code><span class="identifier">average</span></code> +" to <code><span class="identifier">fdiv</span></code>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/any/">Any</a>:</span> +" <ul> +" <li> +" <div> +" <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">bad_any_cast</span></code> exception is now visible +" across modules <a href="https://svn.boost.org/trac/boost/ticket/8751">#8751</a>. +" </div> +" </li> +" <li> +" <div> +" Added <code><span class="identifier">clear</span><span class="special">()</span></code> +" member function. +" </div> +" </li> +" <li> +" <div> +" Added missing <code><span class="identifier">BOOST_NOEXCEPT</span></code>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/asio/">Asio</a>:</span> +" <ul> +" <li> +" <div> +" Implemented a limited port to Windows Runtime. This support requires +" that the language extensions be enabled. Due to the restricted facilities +" exposed by the Windows Runtime API, the port also comes with the +" following caveats: +" <ul> +" <li> +" <div> +" The core facilities such as the <code><span class="identifier">io_service</span></code>, +" <code><span class="identifier">strand</span></code>, buffers, +" composed operations, timers, etc., should all work as normal. +" </div> +" </li> +" <li> +" <div> +" For sockets, only client-side TCP is supported. +" </div> +" </li> +" <li> +" <div> +" Explicit binding of a client-side TCP socket is not supported. +" </div> +" </li> +" <li> +" <div> +" The <code><span class="identifier">cancel</span><span class="special">()</span></code> function is not supported +" for sockets. Asynchronous operations may only be cancelled +" by closing the socket. +" </div> +" </li> +" <li> +" <div> +" Operations that use <code><span class="identifier">null_buffers</span></code> +" are not supported. +" </div> +" </li> +" <li> +" <div> +" Only <code><span class="identifier">tcp</span><span class="special">::</span><span class="identifier">no_delay</span></code> and <code><span class="identifier">socket_base</span><span class="special">::</span><span class="identifier">keep_alive</span></code> options are supported. +" </div> +" </li> +" <li> +" <div> +" Resolvers do not support service names, only numbers. I.e. +" you must use &quot;80&quot; rather than &quot;http&quot;. +" </div> +" </li> +" <li> +" <div> +" Most resolver query flags have no effect. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" Fixed a regression (introduced in Boost 1.54) where, on some platforms, +" errors from <code><span class="identifier">async_connect</span></code> +" were not correctly propagated through to the completion handler (<a href="https://svn.boost.org/trac/boost/ticket/8795">#8795</a>). +" </div> +" </li> +" <li> +" <div> +" Fixed a Windows-specific regression (introduced in Boost 1.54) that +" occurs when multiple threads are running an <code><span class="identifier">io_service</span></code>. +" When the bug occurs, the result of an asynchronous operation (error +" and bytes transferred) is incorrectly discarded and zero values used +" instead. For TCP sockets this results in spurious end-of-file notifications +" (<a href="https://svn.boost.org/trac/boost/ticket/8933">#8933</a>). +" </div> +" </li> +" <li> +" <div> +" Fixed a bug in handler tracking, where it was not correctly printing +" out some handler IDs (<a href="https://svn.boost.org/trac/boost/ticket/8808">#8808</a>). +" </div> +" </li> +" <li> +" <div> +" Fixed the comparison used to test for successful synchronous accept +" operations so that it works correctly with unsigned socket descriptors +" (<a href="https://svn.boost.org/trac/boost/ticket/8752">#8752</a>). +" </div> +" </li> +" <li> +" <div> +" Ensured the signal number is correctly passed to the completion handler +" when starting an <code><span class="identifier">async_wait</span></code> +" on a signal that is already raised (<a href="https://svn.boost.org/trac/boost/ticket/8738">#8738</a>). +" </div> +" </li> +" <li> +" <div> +" Suppressed a g++ 4.8+ warning about unused typedefs (<a href="https://svn.boost.org/trac/boost/ticket/8980">#8980</a>). +" </div> +" </li> +" <li> +" <div> +" Enabled the move optimisation for handlers that use the default invocation +" hook (<a href="https://svn.boost.org/trac/boost/ticket/8624">#8624</a>). +" </div> +" </li> +" <li> +" <div> +" Clarified that programs must not issue overlapping <code><span class="identifier">async_write_at</span></code> operations (<a href="https://svn.boost.org/trac/boost/ticket/8669">#8669</a>). +" </div> +" </li> +" <li> +" <div> +" Changed the Windows <code><span class="identifier">HANDLE</span></code> +" backend to treat <code><span class="identifier">ERROR_MORE_DATA</span></code> +" as a non-fatal error when returned by <code><span class="identifier">GetOverlappedResult</span></code> +" for a synchronous read (<a href="https://svn.boost.org/trac/boost/ticket/8722">#8722</a>). +" </div> +" </li> +" <li> +" <div> +" Visual C++ language extensions use <code><span class="identifier">generic</span></code> +" as a keyword. Added a workaround that renames the namespace to <code><span class="identifier">cpp_generic</span></code> when those language +" extensions are in effect. +" </div> +" </li> +" <li> +" <div> +" Fixed some asynchronous operations that missed out on getting <code><span class="identifier">async_result</span></code> support in Boost 1.54. +" In particular, the buffered stream templates have been updated so +" that they adhere to current handler patterns (<a href="https://svn.boost.org/trac/boost/ticket/9000">#9000</a>, <a href="https://svn.boost.org/trac/boost/ticket/9001">#9001</a>). +" </div> +" </li> +" <li> +" <div> +" Enabled move support for Microsoft Visual Studio 2012 (<a href="https://svn.boost.org/trac/boost/ticket/8959">#8959</a>). +" </div> +" </li> +" <li> +" <div> +" Added <code><span class="identifier">use_future</span></code> +" support for Microsoft Visual Studio 2012. +" </div> +" </li> +" <li> +" <div> +" Removed a use of <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">min</span></code> +" in the Windows IOCP backend to avoid a dependency on the <code><span class="special">&lt;</span><span class="identifier">algorithm</span><span class="special">&gt;</span></code> header (<a href="https://svn.boost.org/trac/boost/ticket/8758">#8758</a>). +" </div> +" </li> +" <li> +" <div> +" Eliminated some unnecessary handler copies. +" </div> +" </li> +" <li> +" <div> +" Fixed various minor and cosmetic issues in code and documentation +" (including <a href="https://svn.boost.org/trac/boost/ticket/8347">#8347</a>, <a href="https://svn.boost.org/trac/boost/ticket/8950">#8950</a>, <a href="https://svn.boost.org/trac/boost/ticket/8953">#8953</a>, <a href="https://svn.boost.org/trac/boost/ticket/8965">#8965</a>, <a href="https://svn.boost.org/trac/boost/ticket/8997">#8997</a>). +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/atomic/">Atomic</a>:</span> +" <ul> +" <li> +" <div> +" Added support for 64-bit atomic operations on x86 target for GCC, +" MSVC and compatible compilers. The support is enabled when it is +" known at compile time that the target CPU supports required instructions. +" </div> +" </li> +" <li> +" <div> +" Added support for 128-bit atomic operations on x86-64 target for +" GCC and compatible compilers. The support is enabled when it is known +" at compile time that the target CPU supports required instructions. +" The support can be tested for with the new <code><span class="identifier">BOOST_ATOMIC_INT128_LOCK_FREE</span></code> +" macro. +" </div> +" </li> +" <li> +" <div> +" Added a more efficient implementation of <code><span class="identifier">atomic</span><span class="special">&lt;&gt;</span></code> based on GCC <code><span class="identifier">__atomic</span><span class="special">*</span></code> +" intrinsics available since GCC 4.7. +" </div> +" </li> +" <li> +" <div> +" Added support for more ARM v7 CPUs, improved detection of Thumb 2. +" </div> +" </li> +" <li> +" <div> +" Added support for x32 (i.e. 64-bit x86 with 32-bit pointers) target +" on GCC and compatible compilers. +" </div> +" </li> +" <li> +" <div> +" Removed dependency on Boost.Thread. +" </div> +" </li> +" <li> +" <div> +" Internal lock pool now includes proper padding and alignment to avoid +" false sharing. +" </div> +" </li> +" <li> +" <div> +" Fixed compilation with Intel compiler on Windows. Removed internal +" macro duplication when compiled on Windows. +" </div> +" </li> +" <li> +" <div> +" Some code refactoring to use C++11 features when available. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/chrono/">Chrono</a>:</span> +" <ul> +" <li> +" <div> +" <em>Fixed Bugs:</em> +" <ul> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/7868">#7868</a> +" <code><span class="identifier">chrono_io</span></code> parses +" time incorrectly (1.53 and 1.52) +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/9028">#9028</a> +" Typo in <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">chrono</span><span class="special">/</span><span class="identifier">stopwatches</span><span class="special">/</span><span class="identifier">formatters</span><span class="special">/</span><span class="identifier">base_formatter</span><span class="special">.</span><span class="identifier">hpp</span></code> +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/9147">#9147</a> +" uninitialized <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">tm</span></code> +" </div> +" </li> +" </ul> +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/circular_buffer/">Circular Buffer</a>:</span> +" <ul> +" <li> +" <div> +" Added support for rvalue references and rvalue references emulation +" using Boost.Move. Values are moved only if value type has noexcept +" move constructor and noexcept move assignment operator <a href="https://svn.boost.org/trac/boost/ticket/7888">#7888</a>. +" Now Circular Buffer is usable with move-only types. +" </div> +" </li> +" <li> +" <div> +" Much better documentation. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/5362">#5362</a> +" circular_buffer does not compile with <code><span class="identifier">BOOST_NO_EXCEPTIONS</span></code>. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/7025">#7025</a> +" circular buffer reports warning: &quot; type qualifiers ignored on +" function return type&quot; while compile. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/7950">#7950</a> +" Eliminate W4-warnings under VS2005 - warning C4913: user defined +" binary operator ',' exists but no overload could convert all operands, +" default built-in binary operator ',' used. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/config/">Config</a>:</span> +" <ul> +" <li> +" <div> +" <strong>Breaking change:</strong> Removed support +" for some older compilers. The new minimum compiler versions are: +" </div> +" <ul> +" <li> +" <div> +" Digitial Mars 8.41 +" </div> +" </li> +" <li> +" <div> +" GCC 3.3 +" </div> +" </li> +" <li> +" <div> +" Intel 6.0 +" </div> +" </li> +" <li> +" <div> +" Visual C++ 7.1 +" </div> +" </li> +" </ul> +" <div> +" Other compilers are unchanged. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/container/">Container</a>:</span> +" <ul> +" <li> +" <div> +" Implemented <span class="link">SCARY +" iterators</span>. +" </div> +" </li> +" <li> +" <div> +" Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/8269">#8269</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/8473">#8473</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/8892">#8892</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/9009">#9009</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/9064">#9064</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/9092">#9092</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/9108">#9108</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/context/">Context</a>:</span> +" <ul> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8650">#8650</a> +" SSE2 intrinsics +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/coroutine/">Coroutine</a>:</span> +" <ul> +" <li> +" <div> +" New interface (unidirectional data transfer). +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8782">#8782</a> +" no best alternative +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8801">#8801</a> +" auto-linking +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/filesystem/">Filesystem</a>:</span> +" <ul> +" <li> +" <div> +" Fixed Android compilation <a href="https://svn.boost.org/trac/boost/ticket/8706">#8706</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/fusion/">Fusion</a>:</span> +" <ul> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8759">#8759</a> specialization of <code><span class="identifier">convert_impl</span></code> +" for <code><span class="identifier">map_tag</span></code> +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/geometry/index.html">Geometry</a>:</span> +" <ul> +" <li> +" <div> +" <em>Additional functionality</em> +" <ul> +" <li> +" <div> +" Added centroid for segment type +" </div> +" </li> +" <li> +" <div> +" Added intersects() and disjoints() for Segment-Box and Linestring-Box +" </div> +" </li> +" <li> +" <div> +" Added rtree creation using packing algorithm +" </div> +" </li> +" <li> +" <div> +" Added contains() and covers() spatial query predicates +" </div> +" </li> +" <li> +" <div> +" Added iterative queries +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <em>Bugfixes</em> +" <ul> +" <li> +" <div> +" In some cases .back() or .clear() was called, violating the +" usage of Concepts. Fixed for the reported cases +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <em>Solved tickets</em> +" <ul> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/6958">6958</a> +" Intersection generates self-intersection. Caused by spike, +" fixed +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8364">8364</a> +" Invalid input exception, caused by spikes in previous steps, +" fixed +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8365">8365</a> +" Invalid input exception, caused by spikes in previous steps, +" fixed +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8969">8969</a> +" boost::geometry::model::point single argument constructor should +" be explicit +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8825">8825</a> +" Patch adding member variable documentation to doxygen_xml2qbk +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8652">8652</a> +" Intersection fails for triangle-triangle intersection. Caused +" by spike, fixed +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/9047">9047</a> +" Boost files that include themselves (strategies/intersection.hpp), +" fixed +" </div> +" </li> +" </ul> +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/graph/index.html">Graph</a>:</span> +" <ul> +" <li> +" <div> +" <code><span class="keyword">void</span></code> is no longer allowed +" as a bundled property type (for example, in the VertexProperties +" template parameters to graph types); it did not work reliably before, +" but a static assertion now forbids it entirely. Use <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">no_property</span></code> instead. +" </div> +" </li> +" <li> +" <div> +" Added support for <code><span class="identifier">finish_edge</span></code> +" visitor event point in depth-first search; the change should be backward-compatible +" with visitors that do not have that member function. +" </div> +" </li> +" <li> +" <div> +" Disabled building of tests on Sun compiler. +" </div> +" </li> +" <li> +" <div> +" Multiple source vertices are supported in non-named-parameter versions +" of <code><span class="identifier">breadth_first_visit</span></code>, +" <code><span class="identifier">breadth_first_search</span></code>, +" <code><span class="identifier">dijkstra_shortest_paths</span></code>, +" and <code><span class="identifier">dijkstra_shortest_paths_no_init</span></code>. +" This feature is not yet documented; to use it, replace the single +" parameter for the source vertex in each of these functions by two +" input iterators of the same type containing the source vertices to +" use. +" </div> +" </li> +" <li> +" <div> +" Added Hawick circuits algorithm; contributed by Louis Dionne. +" </div> +" </li> +" <li> +" <div> +" Added edge coloring algorithm; contributed by Maciej Piechotka. +" </div> +" </li> +" <li> +" <div> +" Added min-cost max-flow algorithm; contributed by Piotr Wygocki. +" </div> +" </li> +" <li> +" <div> +" Bugs and feature requests from Trac fixed: <a href="https://svn.boost.org/trac/boost/ticket/5269">#5269</a>, <a href="https://svn.boost.org/trac/boost/ticket/8317">#8317</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/8433">#8433</a>, <a href="https://svn.boost.org/trac/boost/ticket/8791">#8791</a>, <a href="https://svn.boost.org/trac/boost/ticket/8877">#8877</a>, <a href="https://svn.boost.org/trac/boost/ticket/8986">#8986</a>, <a href="https://svn.boost.org/trac/boost/ticket/9012">#9012</a>, <a href="https://svn.boost.org/trac/boost/ticket/9080">#9080</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/hash/">Hash</a>:</span> +" <ul> +" <li> +" <div> +" Simplify a SFINAE check so that it will hopefully work on Sun 5.9 +" (<a href="https://svn.boost.org/trac/boost/ticket/8822">#8822</a>). +" </div> +" </li> +" <li> +" <div> +" Suppress Visual C++ infinite loop warning (<a href="https://svn.boost.org/trac/boost/ticket/8568">#8568</a>). +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/interprocess/">Interprocess</a>:</span> +" <ul> +" <li> +" <div> +" Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/7156">#7156</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/7164">#7164</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/8277">#8277</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/8976">#8976</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/9065">#9065</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/9073">#9073</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/9008">#9008</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/intrusive/">Intrusive</a>:</span> +" <ul> +" <li> +" <div> +" <strong>Source breaking</strong>: Deprecated <code><span class="identifier">xxx_dont_splay</span></code> functions from splay +" containers. Deprecated <code><span class="identifier">splay_set_hook</span></code> +" from splay containers, use <code><span class="identifier">bs_set_hook</span></code> +" instead. Both will be removed in Boost 1.56. +" </div> +" </li> +" <li> +" <div> +" <strong>ABI breaking</strong>: Hash containers' end +" iterator was implemented pointing to one-past the end of the bucket +" array (see <a href="https://svn.boost.org/trac/boost/ticket/8698">#8698</a>) +" causing severe bugs when values to be inserted where allocated next +" to the bucket array. End iterator implementation was changed to point +" to the beginning of the bucket array. +" </div> +" </li> +" <li> +" <div> +" Big refactoring in order to reduce template and debug symbol bloat. +" Test object files have been slashed to half in MSVC compilers in +" Debug mode. Toolchains without Identical COMDAT Folding (ICF) should +" notice size improvements. +" </div> +" </li> +" <li> +" <div> +" Implemented <span class="link">SCARY iterators</span>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/conversion/lexical_cast.htm">Lexical cast</a>:</span> +" <ul> +" <li> +" <div> +" <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">bad_alloc</span></code> exceptions are now are +" not converted to <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">bad_lexical_cast</span></code> +" <a href="https://svn.boost.org/trac/boost/ticket/8966">#8966</a>. +" </div> +" </li> +" <li> +" <div> +" Added static assert that checks for <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">numeric_limits</span></code> +" specializations if they are required for conversion. Use <code><span class="identifier">BOOST_HAS_INT128</span></code> for detecting +" 128 bit integers support <a href="https://svn.boost.org/trac/boost/ticket/8790">#8790</a>. +" </div> +" </li> +" <li> +" <div> +" Documentation improved and more usage examples added. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/log/">Log</a>:</span> +" <ul> +" <li> +" <div> +" General changes: +" <ul> +" <li> +" <div> +" Added a new configuration macro <code><span class="identifier">BOOST_LOG_WITHOUT_DEFAULT_FACTORIES</span></code>. +" By defining this macro the user can disable compilation of +" the default filter and formatter factories used by settings +" parsers. This can substantially reduce binary sizes while still +" retaining support for settings parsers. +" </div> +" </li> +" <li> +" <div> +" Rewritten some of the parsers to reduce the compiled binary +" size. The rewritten parsers are more robust in detecting ambiguous +" and incorrect input. +" </div> +" </li> +" <li> +" <div> +" The following headers are deprecated: <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">log</span><span class="special">/</span><span class="identifier">utility</span><span class="special">/</span><span class="identifier">intrusive_ref_counter</span><span class="special">.</span><span class="identifier">hpp</span></code>, +" <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">log</span><span class="special">/</span><span class="identifier">utility</span><span class="special">/</span><span class="identifier">explicit_operator_bool</span><span class="special">.</span><span class="identifier">hpp</span></code>, <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">log</span><span class="special">/</span><span class="identifier">utility</span><span class="special">/</span><span class="identifier">empty_deleter</span><span class="special">.</span><span class="identifier">hpp</span></code>. +" These headers will be removed in future releases. The contents +" of these headers were moved to other libraries. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" Bug fixes: +" <ul> +" <li> +" <div> +" Fixed <code><span class="identifier">timer</span></code> +" attribute generating incorrect time readings on Windows on +" heavy thread contention when <code><span class="identifier">QueryPerformanceCounter</span></code> +" API was used. +" </div> +" </li> +" <li> +" <div> +" Fixed a bug in the filter parser that prevented using parsed +" filters with some attributes. +" </div> +" </li> +" <li> +" <div> +" Fixed thread id formatting discrepancies between the default +" sink and formatters. +" </div> +" </li> +" <li> +" <div> +" Closed tickets: <a href="https://svn.boost.org/trac/boost/ticket/8815">#8815</a>, <a href="https://svn.boost.org/trac/boost/ticket/8819">#8819</a>, <a href="https://svn.boost.org/trac/boost/ticket/8915">#8915</a>, <a href="https://svn.boost.org/trac/boost/ticket/8917">#8917</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/9139">#9139</a>, <a href="https://svn.boost.org/trac/boost/ticket/9140">#9140</a>, <a href="https://svn.boost.org/trac/boost/ticket/9153">#9153</a>, <a href="https://svn.boost.org/trac/boost/ticket/9155">#9155</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" See <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/log/doc/html/log/changelog.html">changelog</a> +" for more details. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/math/">Math</a>:</span> +" <ul> +" <li> +" <div> +" Suppress numerous warnings (mostly from GCC-4.8 and MSVC) <a href="https://svn.boost.org/trac/boost/ticket/8384">#8384</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/8855">#8855</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/9107">#9107</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/9109">#9109</a>.. +" </div> +" </li> +" <li> +" <div> +" Fixed PGI compilation issue <a href="https://svn.boost.org/trac/boost/ticket/8333">#8333</a>. +" </div> +" </li> +" <li> +" <div> +" Fixed PGI constant value initialization issue that caused erf to +" generate incorrect results <a href="https://svn.boost.org/trac/boost/ticket/8621">#8621</a>. +" </div> +" </li> +" <li> +" <div> +" Prevent macro expansion of some C99 macros that are also C++ functions +" <a href="https://svn.boost.org/trac/boost/ticket/8732">#8732</a> +" and <a href="https://svn.boost.org/trac/boost/ticket/8733">#8733</a>.. +" </div> +" </li> +" <li> +" <div> +" Fixed Student's T distribution to behave correctly with huge degrees +" of freedom (larger than the largest representable integer) <a href="https://svn.boost.org/trac/boost/ticket/8837">#8837</a>. +" </div> +" </li> +" <li> +" <div> +" Make some core functions usable with <code><span class="keyword">long</span> +" <span class="keyword">double</span></code> even when the platform +" has no standard library <code><span class="keyword">long</span> +" <span class="keyword">double</span></code> support <a href="https://svn.boost.org/trac/boost/ticket/8940">#8940</a>. +" </div> +" </li> +" <li> +" <div> +" Fix error handling of distributions to catch invalid scale and location +" parameters when the random variable is infinite <a href="https://svn.boost.org/trac/boost/ticket/9042">#9042</a> +" and <a href="https://svn.boost.org/trac/boost/ticket/9126">#9126</a>. +" </div> +" </li> +" <li> +" <div> +" Add workaround for broken &lt;tuple&gt; in Intel C++ 14 <a href="https://svn.boost.org/trac/boost/ticket/9087">#9087</a>. +" </div> +" </li> +" <li> +" <div> +" Improve consistency of argument reduction in the elliptic integrals +" <a href="https://svn.boost.org/trac/boost/ticket/9104">#9104</a>. +" </div> +" </li> +" <li> +" <div> +" Fix bug in inverse incomplete beta that results in cancellation errors +" when the beta function is really an arcsine or Student's T distribution. +" </div> +" </li> +" <li> +" <div> +" Fix issue in Bessel I and K function continued fractions that causes +" spurious over/underflow. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/move/">Move</a>:</span> +" <ul> +" <li> +" <div> +" Fixed bugs <a href="https://svn.boost.org/trac/boost/ticket/7952">#7952</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/8764">#8764</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/8765">#8765</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/8842">#8842</a>, +" <a href="https://svn.boost.org/trac/boost/ticket/8979">#8979</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/msm/">Meta State Machine</a>:</span> +" <ul> +" <li> +" <div> +" New feature: interrupt states now support a sequence of events to +" end the interruption. +" </div> +" </li> +" <li> +" <div> +" Fixed Trac <a href="https://svn.boost.org/trac/boost/ticket/8686">#8686</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multiprecision/">Multiprecision</a>:</span> +" <ul> +" <li> +" <div> +" Added support for Boost.Serialization. +" </div> +" </li> +" <li> +" <div> +" Suppressed some GCC warnings. See <a href="https://svn.boost.org/trac/boost/ticket/8872">8872</a>. +" </div> +" </li> +" <li> +" <div> +" Fixed bug in pow for large integer arguments. See <a href="https://svn.boost.org/trac/boost/ticket/8809">8809</a>. +" </div> +" </li> +" <li> +" <div> +" Fixed bug in pow for calculation of 0[super N]. See <a href="https://svn.boost.org/trac/boost/ticket/8798">8798</a>. +" </div> +" </li> +" <li> +" <div> +" Fixed bug in fixed precision cpp_int IO code that causes conversion +" to string to fail when the bit count is very small (less than CHAR_BIT). +" See <a href="https://svn.boost.org/trac/boost/ticket/8745">8745</a>. +" </div> +" </li> +" <li> +" <div> +" Fixed bug in cpp_int that causes left shift to fail when a fixed +" precision type would overflow. See <a href="https://svn.boost.org/trac/boost/ticket/8741">8741</a>. +" </div> +" </li> +" <li> +" <div> +" Fixed some cosmetic warnings from cpp_int. See <a href="https://svn.boost.org/trac/boost/ticket/8748">8748</a>. +" </div> +" </li> +" <li> +" <div> +" Fixed calls to functions which are required to be macros in C99. +" See <a href="https://svn.boost.org/trac/boost/ticket/8732">8732</a>. +" </div> +" </li> +" <li> +" <div> +" Fixed bug that causes construction from INT_MIN, LONG_MIN etc to +" fail in cpp_int. See <a href="https://svn.boost.org/trac/boost/ticket/8711">8711</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/index.html">Multi-index Containers</a>:</span> " <ul> " <li> " <div> " Boost.MultiIndex has been brought to a higher level of compliance " with C++11. -" <ul> -" <li> -" <div> -" <code><span class="identifier">multi_index_container</span></code> -" is now efficiently movable. -" </div> -" </li> -" <li> -" <div> -" Initializer lists supported. -" </div> -" </li> -" <li> -" <div> -" Emplace functions provided. -" </div> -" </li> -" <li> -" <div> -" Non-copyable elements (such as <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">unique_ptr</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span></code>) supported. This includes -" insertion of a range [<code><span class="identifier">first</span></code>,<code><span class="identifier">last</span></code>) where the iterators -" point to a type that is convertible to that of the element: -" no copy construction happens in the process. -" </div> -" </li> -" <li> -" <div> -" Random access indices provide <code><span class="identifier">shrink_to_fit</span><span class="special">()</span></code>. Refer to the <a href="http://www.boost.org/libs/multi_index/doc/compiler_specifics.html">compiler -" specifics</a> section for limitations on pre-C++11 compilers. -" </div> -" </li> -" </ul> +" </div> +" <ul> +" <li> +" <div> +" <code><span class="identifier">multi_index_container</span></code> +" is now efficiently movable. +" </div> +" </li> +" <li> +" <div> +" Initializer lists supported. +" </div> +" </li> +" <li> +" <div> +" Emplace functions provided. +" </div> +" </li> +" <li> +" <div> +" Non-copyable elements (such as <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">unique_ptr</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span></code>) supported. This includes +" insertion of a range [<code><span class="identifier">first</span></code>,<code><span class="identifier">last</span></code>) where the iterators point +" to a type that is convertible to that of the element: no copy +" construction happens in the process. +" </div> +" </li> +" <li> +" <div> +" Random access indices provide <code><span class="identifier">shrink_to_fit</span><span class="special">()</span></code>. +" </div> +" </li> +" </ul> +" <div> +" Refer to the <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/compiler_specifics.html">compiler +" specifics</a> section for limitations on pre-C++11 compilers. " </div> " </li> " <li> @@ -20393,37 +21441,37 @@ " <ul> " <li> " <div> -" <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#member_offset"><code><span class="identifier">member_offset</span></code></a>, +" <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#member_offset"><code><span class="identifier">member_offset</span></code></a>, " </div> " </li> " <li> " <div> -" <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#const_mem_fun_explicit"><code><span class="identifier">const_mem_fun_explicit</span></code></a>, +" <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#const_mem_fun_explicit"><code><span class="identifier">const_mem_fun_explicit</span></code></a>, " </div> " </li> " <li> " <div> -" <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#const_mem_fun_explicit"><code><span class="identifier">mem_fun_explicit</span></code></a>, +" <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#const_mem_fun_explicit"><code><span class="identifier">mem_fun_explicit</span></code></a>, " </div> " </li> " <li> " <div> -" <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_equal_to"><code><span class="identifier">composite_key_result_equal_to</span></code></a>, +" <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_equal_to"><code><span class="identifier">composite_key_result_equal_to</span></code></a>, " </div> " </li> " <li> " <div> -" <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_less"><code><span class="identifier">composite_key_result_less</span></code></a>, +" <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_less"><code><span class="identifier">composite_key_result_less</span></code></a>, " </div> " </li> " <li> " <div> -" <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_greater"><code><span class="identifier">composite_key_result_greater</span></code></a>, +" <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_greater"><code><span class="identifier">composite_key_result_greater</span></code></a>, " </div> " </li> " <li> " <div> -" <a href="http://www.boost.org/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_hash"><code><span class="identifier">composite_key_result_hash</span></code></a>. +" <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/multi_index/doc/reference/key_extraction.html#composite_key_result_hash"><code><span class="identifier">composite_key_result_hash</span></code></a>. " </div> " </li> " </ul> @@ -20437,6 +21485,433 @@ " </ul> " </div> " </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/mpi/">MPI</a>:</span> +" <ul> +" <li> +" <div> +" Replaced calls to deprecated MPI functions +" </div> +" </li> +" <li> +" <div> +" Added support for multi-threaded initialization +" </div> +" </li> +" <li> +" <div> +" Added in-place collectives +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/phoenix/">Phoenix</a>:</span> +" <ul> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/9049">#9049</a> <code><span class="identifier">phoenix</span><span class="special">::</span><span class="identifier">function</span></code> +" constructor is constexpr. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/property_map/index.html">PropertyMap</a>:</span> +" <ul> +" <li> +" <div> +" dynamic_properties objects can now be built by non-destructively +" chaining <code><span class="special">.</span><span class="identifier">property</span><span class="special">(</span><span class="identifier">name</span><span class="special">,</span> <span class="identifier">pm</span><span class="special">)</span></code> calls. Example: +" </div> +"<pre><span class="identifier">boost</span><span class="special">::</span><span class="identifier">dynamic_properties</span><span class="special">()</span> +" <span class="special">.</span><span class="identifier">property</span><span class="special">(</span><span class="string">&quot;color&quot;</span><span class="special">,</span> <span class="identifier">color_map</span><span class="special">)</span> +" <span class="special">.</span><span class="identifier">property</span><span class="special">(</span><span class="string">&quot;pos&quot;</span><span class="special">,</span> <span class="identifier">position_map</span><span class="special">)</span> +"</pre> +" </li> +" <li> +" <div> +" The use of raw pointers as property maps is deprecated; it often +" failed on Visual Studio in the past. This usage has been removed +" from all tests and examples in Boost.Graph. The replacement to use +" for vertex properties in graphs (the most common use for this feature) +" is: +" </div> +"<pre><span class="identifier">boost</span><span class="special">::</span><span class="identifier">make_iterator_property_map</span><span class="special">(</span> +" <span class="special">&lt;</span><span class="identifier">pointer</span> <span class="keyword">or</span> <span class="identifier">container</span> <span class="special">.</span><span class="identifier">begin</span><span class="special">()</span> <span class="identifier">iterator</span><span class="special">&gt;,</span> +" <span class="identifier">get</span><span class="special">(</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">vertex_index</span><span class="special">,</span> <span class="special">&lt;</span><span class="identifier">graph</span> <span class="identifier">object</span><span class="special">&gt;))</span> +"</pre> +" <div> +" (Note: the lack of namespace qualification on get() in this code +" is necessary for generic code). Outside a graph context, the closest +" equivalent is: +" </div> +"<pre><span class="identifier">boost</span><span class="special">::</span><span class="identifier">make_iterator_property_map</span><span class="special">(</span> +" <span class="special">&lt;</span><span class="identifier">pointer</span><span class="special">&gt;,</span> +" <span class="identifier">boost</span><span class="special">::</span><span class="identifier">typed_identity_property_map</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span><span class="special">&gt;())</span> +"</pre> +" <div> +" There are commented-out static assertions on lines 151 and 159 of +" <code><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">property_map</span><span class="special">/</span><span class="identifier">property_map</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code> that can be un-commented to find +" deprecated uses of pointers in user code. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/rational">Rational</a>:</span> +" <ul> +" <li> +" <div> +" Added <code><span class="identifier">lowest</span></code> and +" <code><span class="identifier">max_digits10</span></code>, members +" of std::numeric_limits added in C++11, to the unit-test code. Needed +" since Boost.Test refers to one of them when compiled in C++11 mode. +" </div> +" </li> +" <li> +" <div> +" Changed initialization of some internal variables to something that +" cannot be a narrowing conversion, which fixes issue <a href="https://svn.boost.org/trac/boost/ticket/5855">#5855</a>. Needed +" since narrowing conversions are an error in C++11. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/smart_ptr/index.html">SmartPtr</a>:</span> +" <ul> +" <li> +" <div> +" Added <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">smart_ptr</span><span class="special">/</span><span class="identifier">intrusive_ref_counter</span><span class="special">.</span><span class="identifier">hpp</span></code> header, extracted from Boost.Log. +" The header implements a mixin base class that adds support for <code><span class="identifier">intrusive_ptr</span></code> to user's classes. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/Thread/">Thread</a>:</span> +" <ul> +" <li> +" <div> +" <em>New Features:</em> +" <ul> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8519">#8519</a> +" Synchro: Update class barrier with a completion function. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8515">#8515</a> +" Async: Add <code><span class="identifier">shared_future</span><span class="special">::</span><span class="identifier">then</span></code>. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8519">#8519</a> +" Synchro: Update class barrier with a completion function +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8615">#8615</a> +" Async: Replace make_future/make_shared_future by make_ready_future. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8627">#8627</a> +" Async: Add future&lt;&gt;::unwrap and unwrapping constructor. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8677">#8677</a> +" Async: Add future&lt;&gt;::get_or. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8678">#8678</a> +" Async: Add future&lt;&gt;::fallback_to. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8891">#8891</a> +" upgrade_to_unique_lock: missing mutex() function. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8955">#8955</a> +" Request for more efficient way to get exception_ptr from future. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <em>Fixed Bugs:</em> +" <ul> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/7461">#7461</a> +" detail::win32::ReleaseSemaphore may be called with count_to_release +" equal to 0 +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8070">#8070</a> +" prefer GetTickCount64 over GetTickCount +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8768">#8768</a> +" win32 condition_variable::wait_until infinite wait in rare +" cases. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8817">#8817</a> +" Boost Thread Windows CE _createthreadex handling breaks mingw +" w64. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8943">#8943</a> +" Failed to compile code using boost::call_once with Intel C++ +" Composer XE 2013 on Windows. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/8931">#8931</a> +" Typos in external_locking reference. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/9029">#9029</a> +" Misprint in documentation. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/9037">#9037</a> +" gcc -Wshadow gives warnings in condition_variable{,_fwd}.hpp. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/9041">#9041</a> +" Boost.Thread DSO's may need to link with Boost.Atomic. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/9048">#9048</a> +" boost::scoped_thread useless ctor with variadic template arguments. +" </div> +" </li> +" <li> +" <div> +" <a href="http://svn.boost.org/trac/boost/ticket/9079">#9079</a> +" Condition variable will wait forever for some timepoint values +" (Win). +" </div> +" </li> +" </ul> +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/timer/">Timer</a>:</span> +" <ul> +" <li> +" <div> +" Fixed compilation on Intel compiler <a href="https://svn.boost.org/trac/boost/ticket/8956">#8956</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/type_traits/">Type Traits</a>:</span> +" <ul> +" <li> +" <div> +" Added <code><span class="identifier">is_copy_contructible</span></code> +" trait <a href="https://svn.boost.org/trac/boost/ticket/8802">#8802</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/unordered/">Unordered</a>:</span> +" <ul> +" <li> +" <div> +" Avoid some warnings (<a href="https://svn.boost.org/trac/boost/ticket/8851">#8851</a>, <a href="https://svn.boost.org/trac/boost/ticket/8874">#8874</a>). +" </div> +" </li> +" <li> +" <div> +" Avoid exposing some detail functions via. ADL on the iterators. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/utility/index.html">Utility</a>:</span> +" <ul> +" <li> +" <div> +" <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">result_of</span></code> can be set to use TR1 +" protocol by default and fall back to <code><span class="keyword">decltype</span></code> +" if the function object does not support it (like C++11 lambda functions, +" for example). Define <code><span class="identifier">BOOST_RESULT_OF_USE_TR1_WITH_DECLTYPE_FALLBACK</span></code> +" configuration macro to enable this mode. +" </div> +" </li> +" <li> +" <div> +" Improved support for C++11 in the <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">base_from_member</span></code> +" class template. The class implements perfect forwarding for the constructor +" arguments, if the compiler supports rvalue references, variadic templates +" and function template default arguments. +" </div> +" </li> +" <li> +" <div> +" Added <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">utility</span><span class="special">/</span><span class="identifier">explicit_operator_bool</span><span class="special">.</span><span class="identifier">hpp</span></code> and <code><span class="identifier">boost</span><span class="special">/</span><span class="identifier">utility</span><span class="special">/</span><span class="identifier">empty_deleter</span><span class="special">.</span><span class="identifier">hpp</span></code> +" headers, which were extracted from Boost.Log. The headers implement +" utilities for defining explicit conversion operators to <code><span class="keyword">bool</span></code> and a deleter function object +" that does nothing, respectively. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/variant/">Variant</a>:</span> +" <ul> +" <li> +" <div> +" Fixed compilation of constructor and assignment operator with const +" rvalues input parameters <a href="https://svn.boost.org/trac/boost/ticket/8988">#8988</a>. +" </div> +" </li> +" <li> +" <div> +" Fixed compilation of move assignment operator for situations when +" one of the variant template classes has nothrow copy constructor +" and throwing move constructor <a href="https://svn.boost.org/trac/boost/ticket/8772">#8772</a>. +" </div> +" </li> +" <li> +" <div> +" Fix compilation on exception-disabled environments <a href="https://svn.boost.org/trac/boost/ticket/8717">#8717</a>. +" </div> +" </li> +" <li> +" <div> +" Fix unreachable code warnings <a href="https://svn.boost.org/trac/boost/ticket/8665">#8665</a>. +" </div> +" </li> +" <li> +" <div> +" Removed duplicate code <a href="https://svn.boost.org/trac/boost/ticket/7601">#7601</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/wave/">Wave</a>:</span> +" <ul> +" <li> +" <div> +" See the <a href="http://www.boost.org/doc/libs/1_55_0b1/libs/wave/ChangeLog">Changelog</a> for details. +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/doc/libs/1_55_0b1/libs/xpressive">xpressive</a>:</span> +" <ul> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8843">#8843</a> throw instead of assert at incomplete charset +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8880">#8880</a> remove unused local typedef +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8882">#8882</a> use RAII instead of try/catch in sequence_stack.hpp +" </div> +" </li> +" <li> +" <div> +" <a href="https://svn.boost.org/trac/boost/ticket/8474">#8474</a> make xpressive play nice with clang's -Wimplicit-fallthrough +" diagnostic +" </div> +" </li> +" </ul> +" </div> +" </li> +" </ul> +" </div> +" <div id="version_1_55_0.updated_tools"> +" <h3><span class="link">Updated Tools</span></h3> +" <ul> +" <li> +" <div> +" <span class="library"><a href="http://www.boost.org/tools/quickbook">Quickbook</a>:</span> +" <ul> +" <li> +" <div> +" Quickbook 1.6 finalized, see the <a href="http://www.boost.org/doc/libs/1_55_0b1/doc/html/quickbook/versions.html#language_versions.1_6">Quickbook +" documentation for details</a>. +" </div> +" </li> +" </ul> +" </div> +" </li> " </ul> " </div> " <div id="version_1_55_0.compilers_tested"> @@ -20447,6 +21922,220 @@ " <ul> " <li> " <div> +" Linux: +" <ul> +" <li> +" <div> +" Clang: 3.3, 3.2, 3.1, 3.0 +" </div> +" </li> +" <li> +" <div> +" Clang, C++11, libc++: 3.4, 3.3 +" </div> +" </li> +" <li> +" <div> +" GCC: 4.8.1, 4.7.3, 4.6.3, 4.5.3, 4.4.7 +" </div> +" </li> +" <li> +" <div> +" GCC, C++11: 4.8.1 +" </div> +" </li> +" <li> +" <div> +" GCC, C++98: 4.8.1 +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" OS X: +" <ul> +" <li> +" <div> +" GCC: 4.2 +" </div> +" </li> +" <li> +" <div> +" Apple Clang: 5.0 +" </div> +" </li> +" <li> +" <div> +" Apple Clang, C++11: 5.0 +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" Windows: +" <ul> +" <li> +" <div> +" GCC, mingw: 4.8.0, 4.7.2, 4.6.3, 4.5.4, 4.4.7 +" </div> +" </li> +" <li> +" <div> +" Visual C++: 11.0, 10.0, 9.0 +" </div> +" </li> +" </ul> +" </div> +" </li> +" </ul> +" <p> +" Boost's additional test compilers include: +" </p> +" <ul> +" <li> +" <div> +" OS X: +" <ul> +" <li> +" <div> +" Apple Clang: 5.0 +" </div> +" </li> +" <li> +" <div> +" Apple Clang, C++11: 5.0 +" </div> +" </li> +" <li> +" <div> +" Clang: trunk +" </div> +" </li> +" <li> +" <div> +" Clang, C++11: trunk +" </div> +" </li> +" <li> +" <div> +" GCC: 4.2.1 +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" Linux: +" <ul> +" <li> +" <div> +" Clang: 3.3, 3.2, 3.1, 3.0, trunk +" </div> +" </li> +" <li> +" <div> +" Clang, C++11: 3.4 +" </div> +" </li> +" <li> +" <div> +" Clang, C++11, libc++: 3.4, 3.3 +" </div> +" </li> +" <li> +" <div> +" GCC: 4.9.0 (experimental), 4.8.1, 4.7.3, 4.6.4, 4.5.3, 4.4.7 +" </div> +" </li> +" <li> +" <div> +" GCC, C++11: 4.8.1 +" </div> +" </li> +" <li> +" <div> +" GCC, C++98: 4.8.1 +" </div> +" </li> +" <li> +" <div> +" Intel: 13.0.1, 12.1.6 +" </div> +" </li> +" </ul> +" </div> +" </li> +" <li> +" <div> +" Windows: +" <ul> +" <li> +" <div> +" GCC, mingw: 4.8.0, 4.7.2, 4.6.3, 4.5.4, 4.4.7 +" </div> +" </li> +" <li> +" <div> +" Visual C++: 11.0, 10.0, 9.0 +" </div> +" </li> +" </ul> +" </div> +" </li> +" </ul> +" </div> +" <div id="version_1_55_0.acknowledgements"> +" <h3><span class="link">Acknowledgements</span></h3> +" <p> +" <a href="http://www.boost.org/users/people/beman_dawes.html">Beman Dawes</a>, Eric Niebler, +" <a href="http://www.boost.org/users/people/rene_rivera.html">Rene Rivera</a>, Daniel James, +" Vladimir Prus and Marshall Clow managed this release. +" </p> +" </div> +" +-last_modified +.1381242451.09 +-quickbook +"feed/history/boost_1_55_0.qbk +) +(feed/history/boost_1_56_0.qbk +-item +"Version 1.56.0http://www.boost.org/users/history/version_1_56_0.htmlhttp://www.boost.org/users/history/version_1_56_0.htmlIn Progress +" +" +" <div id="version_1_56_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_56_0.updated_libraries"> +" <h3><span class="link">Updated Libraries</span></h3> +" <ul> +" <li> +" <div> +" <em>TODO</em> +" </div> +" </li> +" </ul> +" </div> +" <div id="version_1_56_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> @@ -20462,7 +22151,7 @@ " </li> " </ul> " </div> -" <div id="version_1_55_0.acknowledgements"> +" <div id="version_1_56_0.acknowledgements"> " <h3><span class="link">Acknowledgements</span></h3> " <p> " <em>TODO</em> @@ -20470,9 +22159,9 @@ " </div> " -last_modified -.1375733554.82 +.1381666077.2 -quickbook -"feed/history/boost_1_55_0.qbk +"feed/history/boost_1_56_0.qbk ) (feed/history/unversioned.qbk -item @@ -20687,11 +22376,16 @@ " </p> " </blockquote> " <p> -" If you want to reply to the request and can't email the list you can <a href="mailto:daniel@calamity.org.uk">send -" me an email</a>. Let me know if it's okay to forward it to the list. +" <strong>Update:</strong> I had a few responses, but none were +" opposed to this change, so I made it in trunk a little while ago. It should be +" included in the next release. " </p> " <p> -" Thanks again. +" There was some concern that we would remove support for later compilers (e.g. +" Visual Studio 2008, aka. Visual C++ 9.0). We have no such plans, this change +" is only for very old compilers. As always support across Boost libraries is not +" uniform, but most library authors do try to support as wide a range of compilers +" as is feasible. " </p> " -last_modified diff --git a/users/bibliography.html b/users/bibliography.html index cba1c57e..e9e98cff 100644 --- a/users/bibliography.html +++ b/users/bibliography.html @@ -212,8 +212,68 @@ http://www.boost.org/development/website_updating.html class= "external">www.informit.com/content/images/0321133544/samplechapter/karlsson_ch09.pdf + +

    2009

    -

    +
    [Schaeling09]
    + +
    Boris Schaeling, Die Boost C++ + Bibliotheken. www.highscore.de/cpp/boost/
    + + +

    2010

    + +
    +
    [Demming11]
    +
    Robert Demming, Daniel J Duffy Introduction to the Boost C++ Libraries; Volume I - Foundations. + www.datasim-press.com/BoostVolumeI.html/
    +
    + +
    +
    [Demming12]
    +
    Robert Demming, Daniel J Duffy Introduction to the Boost C++ Libraries; Volume II - Advanced Libraries. + www.datasim-press.com/BoostVolumeII.html/
    +
    + +

    2011

    + +
    +
    [Schaeling09]
    +
    Boris Schaeling, The Boost C++ Libraries. + en.highscore.de/cpp/boost/
    +
    + +

    2013

    +
    +
    [Polukhin13]
    +
    Antony Polukhin, Boost C++ Application Development Cookbook. http://www.packtpub.com/boost-cplusplus-application-development-cookbook/book
    +
    + +
    +
    [Torjo13]
    +
    John Torjo, Boost.Asio C++ Network Programming. + www.packtpub.com/boost-asio-cplusplus-network-programming/book
    +
    + + +

    Online publications about Boost or Boost Libraries

    @@ -412,17 +472,7 @@ http://www.boost.org/development/website_updating.html "external">www.informit.com/articles/article.aspx?p=375705 -

    2009

    - -
    -
    [Schaeling09]
    - -
    Boris Schaeling, Die Boost C++ - Bibliotheken. www.highscore.de/cpp/boost/
    -
    +

    Print mentions of Boost or Boost Libraries

    @@ -733,8 +783,7 @@ http://www.boost.org/development/website_updating.html

    Acknowledgements

    -

    Fredrik Blomqvist provided many of the initial - citations.

    +

    Fredrik Blomqvist provided many of the initial citations.

    diff --git a/users/history/version_1_55_0.html b/users/history/version_1_55_0.html index 70d42443..b0d18427 100644 --- a/users/history/version_1_55_0.html +++ b/users/history/version_1_55_0.html @@ -3,7 +3,7 @@ - Version 1.55.0 - work in progress + Version 1.55.0 beta @@ -37,21 +37,80 @@

    Note: This version is at an early stage in its release cycle. The information listed below is incomplete and some of the documentation links may not work yet.

    Version 1.55.0 - work in progress

    + "news-title">Version 1.55.0 beta

    In Progress

    - - +

    Documentation +

    Download this beta release.

    + +
    +

    News

    +

    + Support was removed from Config for some + very old versions of compilers. The new minimum requirements are: +

    +
      +
    • +
      + Digitial Mars 8.41 +
      +
    • +
    • +
      + GCC 3.3 +
      +
    • +
    • +
      + Intel 6.0 +
      +
    • +
    • +
      + Visual C++ 7.1 +
      +
    • +
    +

    + Other compilers are currently unchanged, but we are considering removing support + for some other old compilers. Candidates for removal are: +

    +
      +
    • +
      + Metroworks C++ (i.e. codewarrior) +
      +
    • +
    • +
      + SunPro 5.7 and earlier +
      +
    • +
    • +
      + Borland C++ Builder 2006 (5.82) and earlier +
      +
    • +
    +

    + If you're using any of these, please let us know on the mailing lists. We will + take into account any feedback received before making a decision. +

    +

    New Libraries

    • - TODO + Predef: This library defines a + set of compiler, architecture, operating system, library, and other version + numbers from the information it can gather of C, C++, Objective C, and + Objective C++ predefined macros or those defined in generally available + headers, from Rene Rivera.
    @@ -61,44 +120,1033 @@
    • - Multi-index Containers: + Accumulators: +
        +
      • +
        + #7915 Fix silly typos. +
        +
      • +
      • +
        + #8850 Fix MSVC warnings. +
        +
      • +
      • +
        + #8262 Rename average + to fdiv. +
        +
      • +
      +
      +
    • +
    • +
      + Any: +
        +
      • +
        + boost::bad_any_cast exception is now visible + across modules #8751. +
        +
      • +
      • +
        + Added clear() + member function. +
        +
      • +
      • +
        + Added missing BOOST_NOEXCEPT. +
        +
      • +
      +
      +
    • +
    • +
      + Asio: +
        +
      • +
        + Implemented a limited port to Windows Runtime. This support requires + that the language extensions be enabled. Due to the restricted facilities + exposed by the Windows Runtime API, the port also comes with the + following caveats: +
          +
        • +
          + The core facilities such as the io_service, + strand, buffers, + composed operations, timers, etc., should all work as normal. +
          +
        • +
        • +
          + For sockets, only client-side TCP is supported. +
          +
        • +
        • +
          + Explicit binding of a client-side TCP socket is not supported. +
          +
        • +
        • +
          + The cancel() function is not supported + for sockets. Asynchronous operations may only be cancelled + by closing the socket. +
          +
        • +
        • +
          + Operations that use null_buffers + are not supported. +
          +
        • +
        • +
          + Only tcp::no_delay and socket_base::keep_alive options are supported. +
          +
        • +
        • +
          + Resolvers do not support service names, only numbers. I.e. + you must use "80" rather than "http". +
          +
        • +
        • +
          + Most resolver query flags have no effect. +
          +
        • +
        +
        +
      • +
      • +
        + Fixed a regression (introduced in Boost 1.54) where, on some platforms, + errors from async_connect + were not correctly propagated through to the completion handler (#8795). +
        +
      • +
      • +
        + Fixed a Windows-specific regression (introduced in Boost 1.54) that + occurs when multiple threads are running an io_service. + When the bug occurs, the result of an asynchronous operation (error + and bytes transferred) is incorrectly discarded and zero values used + instead. For TCP sockets this results in spurious end-of-file notifications + (#8933). +
        +
      • +
      • +
        + Fixed a bug in handler tracking, where it was not correctly printing + out some handler IDs (#8808). +
        +
      • +
      • +
        + Fixed the comparison used to test for successful synchronous accept + operations so that it works correctly with unsigned socket descriptors + (#8752). +
        +
      • +
      • +
        + Ensured the signal number is correctly passed to the completion handler + when starting an async_wait + on a signal that is already raised (#8738). +
        +
      • +
      • +
        + Suppressed a g++ 4.8+ warning about unused typedefs (#8980). +
        +
      • +
      • +
        + Enabled the move optimisation for handlers that use the default invocation + hook (#8624). +
        +
      • +
      • +
        + Clarified that programs must not issue overlapping async_write_at operations (#8669). +
        +
      • +
      • +
        + Changed the Windows HANDLE + backend to treat ERROR_MORE_DATA + as a non-fatal error when returned by GetOverlappedResult + for a synchronous read (#8722). +
        +
      • +
      • +
        + Visual C++ language extensions use generic + as a keyword. Added a workaround that renames the namespace to cpp_generic when those language + extensions are in effect. +
        +
      • +
      • +
        + Fixed some asynchronous operations that missed out on getting async_result support in Boost 1.54. + In particular, the buffered stream templates have been updated so + that they adhere to current handler patterns (#9000, #9001). +
        +
      • +
      • +
        + Enabled move support for Microsoft Visual Studio 2012 (#8959). +
        +
      • +
      • +
        + Added use_future + support for Microsoft Visual Studio 2012. +
        +
      • +
      • +
        + Removed a use of std::min + in the Windows IOCP backend to avoid a dependency on the <algorithm> header (#8758). +
        +
      • +
      • +
        + Eliminated some unnecessary handler copies. +
        +
      • +
      • +
        + Fixed various minor and cosmetic issues in code and documentation + (including #8347, #8950, #8953, #8965, #8997). +
        +
      • +
      +
      +
    • +
    • +
      + Atomic: +
        +
      • +
        + Added support for 64-bit atomic operations on x86 target for GCC, + MSVC and compatible compilers. The support is enabled when it is + known at compile time that the target CPU supports required instructions. +
        +
      • +
      • +
        + Added support for 128-bit atomic operations on x86-64 target for + GCC and compatible compilers. The support is enabled when it is known + at compile time that the target CPU supports required instructions. + The support can be tested for with the new BOOST_ATOMIC_INT128_LOCK_FREE + macro. +
        +
      • +
      • +
        + Added a more efficient implementation of atomic<> based on GCC __atomic* + intrinsics available since GCC 4.7. +
        +
      • +
      • +
        + Added support for more ARM v7 CPUs, improved detection of Thumb 2. +
        +
      • +
      • +
        + Added support for x32 (i.e. 64-bit x86 with 32-bit pointers) target + on GCC and compatible compilers. +
        +
      • +
      • +
        + Removed dependency on Boost.Thread. +
        +
      • +
      • +
        + Internal lock pool now includes proper padding and alignment to avoid + false sharing. +
        +
      • +
      • +
        + Fixed compilation with Intel compiler on Windows. Removed internal + macro duplication when compiled on Windows. +
        +
      • +
      • +
        + Some code refactoring to use C++11 features when available. +
        +
      • +
      +
      +
    • +
    • +
      + Chrono: +
        +
      • +
        + Fixed Bugs: +
          +
        • +
          + #7868 + chrono_io parses + time incorrectly (1.53 and 1.52) +
          +
        • +
        • +
          + #9028 + Typo in boost/chrono/stopwatches/formatters/base_formatter.hpp +
          +
        • +
        • +
          + #9147 + uninitialized std::tm +
          +
        • +
        +
        +
      • +
      +
      +
    • +
    • +
      + Circular Buffer: +
        +
      • +
        + Added support for rvalue references and rvalue references emulation + using Boost.Move. Values are moved only if value type has noexcept + move constructor and noexcept move assignment operator #7888. + Now Circular Buffer is usable with move-only types. +
        +
      • +
      • +
        + Much better documentation. +
        +
      • +
      • +
        + #5362 + circular_buffer does not compile with BOOST_NO_EXCEPTIONS. +
        +
      • +
      • +
        + #7025 + circular buffer reports warning: " type qualifiers ignored on + function return type" while compile. +
        +
      • +
      • +
        + #7950 + Eliminate W4-warnings under VS2005 - warning C4913: user defined + binary operator ',' exists but no overload could convert all operands, + default built-in binary operator ',' used. +
        +
      • +
      +
      +
    • +
    • +
      + Config: +
        +
      • +
        + Breaking change: Removed support + for some older compilers. The new minimum compiler versions are: +
        +
          +
        • +
          + Digitial Mars 8.41 +
          +
        • +
        • +
          + GCC 3.3 +
          +
        • +
        • +
          + Intel 6.0 +
          +
        • +
        • +
          + Visual C++ 7.1 +
          +
        • +
        +
        + Other compilers are unchanged. +
        +
      • +
      +
      +
    • +
    • +
      + Container: + +
      +
    • +
    • +
      + Context: +
        +
      • +
        + #8650 + SSE2 intrinsics +
        +
      • +
      +
      +
    • +
    • +
      + Coroutine: +
        +
      • +
        + New interface (unidirectional data transfer). +
        +
      • +
      • +
        + #8782 + no best alternative +
        +
      • +
      • +
        + #8801 + auto-linking +
        +
      • +
      +
      +
    • +
    • +
      + Filesystem: +
        +
      • +
        + Fixed Android compilation #8706. +
        +
      • +
      +
      +
    • +
    • +
      + Fusion: +
        +
      • +
        + #8759 specialization of convert_impl + for map_tag +
        +
      • +
      +
      +
    • +
    • +
      + Geometry: +
        +
      • +
        + Additional functionality +
          +
        • +
          + Added centroid for segment type +
          +
        • +
        • +
          + Added intersects() and disjoints() for Segment-Box and Linestring-Box +
          +
        • +
        • +
          + Added rtree creation using packing algorithm +
          +
        • +
        • +
          + Added contains() and covers() spatial query predicates +
          +
        • +
        • +
          + Added iterative queries +
          +
        • +
        +
        +
      • +
      • +
        + Bugfixes +
          +
        • +
          + In some cases .back() or .clear() was called, violating the + usage of Concepts. Fixed for the reported cases +
          +
        • +
        +
        +
      • +
      • +
        + Solved tickets +
          +
        • +
          + 6958 + Intersection generates self-intersection. Caused by spike, + fixed +
          +
        • +
        • +
          + 8364 + Invalid input exception, caused by spikes in previous steps, + fixed +
          +
        • +
        • +
          + 8365 + Invalid input exception, caused by spikes in previous steps, + fixed +
          +
        • +
        • +
          + 8969 + boost::geometry::model::point single argument constructor should + be explicit +
          +
        • +
        • +
          + 8825 + Patch adding member variable documentation to doxygen_xml2qbk +
          +
        • +
        • +
          + 8652 + Intersection fails for triangle-triangle intersection. Caused + by spike, fixed +
          +
        • +
        • +
          + 9047 + Boost files that include themselves (strategies/intersection.hpp), + fixed +
          +
        • +
        +
        +
      • +
      +
      +
    • +
    • +
      + Graph: +
        +
      • +
        + void is no longer allowed + as a bundled property type (for example, in the VertexProperties + template parameters to graph types); it did not work reliably before, + but a static assertion now forbids it entirely. Use boost::no_property instead. +
        +
      • +
      • +
        + Added support for finish_edge + visitor event point in depth-first search; the change should be backward-compatible + with visitors that do not have that member function. +
        +
      • +
      • +
        + Disabled building of tests on Sun compiler. +
        +
      • +
      • +
        + Multiple source vertices are supported in non-named-parameter versions + of breadth_first_visit, + breadth_first_search, + dijkstra_shortest_paths, + and dijkstra_shortest_paths_no_init. + This feature is not yet documented; to use it, replace the single + parameter for the source vertex in each of these functions by two + input iterators of the same type containing the source vertices to + use. +
        +
      • +
      • +
        + Added Hawick circuits algorithm; contributed by Louis Dionne. +
        +
      • +
      • +
        + Added edge coloring algorithm; contributed by Maciej Piechotka. +
        +
      • +
      • +
        + Added min-cost max-flow algorithm; contributed by Piotr Wygocki. +
        +
      • +
      • +
        + Bugs and feature requests from Trac fixed: #5269, #8317, + #8433, #8791, #8877, #8986, #9012, #9080. +
        +
      • +
      +
      +
    • +
    • +
      + Hash: +
        +
      • +
        + Simplify a SFINAE check so that it will hopefully work on Sun 5.9 + (#8822). +
        +
      • +
      • +
        + Suppress Visual C++ infinite loop warning (#8568). +
        +
      • +
      +
      +
    • +
    • +
      + Interprocess: + +
      +
    • +
    • +
      + Intrusive: +
        +
      • +
        + Source breaking: Deprecated xxx_dont_splay functions from splay + containers. Deprecated splay_set_hook + from splay containers, use bs_set_hook + instead. Both will be removed in Boost 1.56. +
        +
      • +
      • +
        + ABI breaking: Hash containers' end + iterator was implemented pointing to one-past the end of the bucket + array (see #8698) + causing severe bugs when values to be inserted where allocated next + to the bucket array. End iterator implementation was changed to point + to the beginning of the bucket array. +
        +
      • +
      • +
        + Big refactoring in order to reduce template and debug symbol bloat. + Test object files have been slashed to half in MSVC compilers in + Debug mode. Toolchains without Identical COMDAT Folding (ICF) should + notice size improvements. +
        +
      • +
      • +
        + Implemented SCARY iterators. +
        +
      • +
      +
      +
    • +
    • +
      + Lexical cast: +
        +
      • +
        + std::bad_alloc exceptions are now are + not converted to boost::bad_lexical_cast + #8966. +
        +
      • +
      • +
        + Added static assert that checks for std::numeric_limits + specializations if they are required for conversion. Use BOOST_HAS_INT128 for detecting + 128 bit integers support #8790. +
        +
      • +
      • +
        + Documentation improved and more usage examples added. +
        +
      • +
      +
      +
    • +
    • +
      + Log: +
        +
      • +
        + General changes: +
          +
        • +
          + Added a new configuration macro BOOST_LOG_WITHOUT_DEFAULT_FACTORIES. + By defining this macro the user can disable compilation of + the default filter and formatter factories used by settings + parsers. This can substantially reduce binary sizes while still + retaining support for settings parsers. +
          +
        • +
        • +
          + Rewritten some of the parsers to reduce the compiled binary + size. The rewritten parsers are more robust in detecting ambiguous + and incorrect input. +
          +
        • +
        • +
          + The following headers are deprecated: boost/log/utility/intrusive_ref_counter.hpp, + boost/log/utility/explicit_operator_bool.hpp, boost/log/utility/empty_deleter.hpp. + These headers will be removed in future releases. The contents + of these headers were moved to other libraries. +
          +
        • +
        +
        +
      • +
      • +
        + Bug fixes: +
          +
        • +
          + Fixed timer + attribute generating incorrect time readings on Windows on + heavy thread contention when QueryPerformanceCounter + API was used. +
          +
        • +
        • +
          + Fixed a bug in the filter parser that prevented using parsed + filters with some attributes. +
          +
        • +
        • +
          + Fixed thread id formatting discrepancies between the default + sink and formatters. +
          +
        • +
        • +
          + Closed tickets: #8815, #8819, #8915, #8917, + #9139, #9140, #9153, #9155. +
          +
        • +
        +
        +
      • +
      • +
        + See changelog + for more details. +
        +
      • +
      +
      +
    • +
    • +
      + Math: +
        +
      • +
        + Suppress numerous warnings (mostly from GCC-4.8 and MSVC) #8384, + #8855, + #9107, + #9109.. +
        +
      • +
      • +
        + Fixed PGI compilation issue #8333. +
        +
      • +
      • +
        + Fixed PGI constant value initialization issue that caused erf to + generate incorrect results #8621. +
        +
      • +
      • +
        + Prevent macro expansion of some C99 macros that are also C++ functions + #8732 + and #8733.. +
        +
      • +
      • +
        + Fixed Student's T distribution to behave correctly with huge degrees + of freedom (larger than the largest representable integer) #8837. +
        +
      • +
      • +
        + Make some core functions usable with long + double even when the platform + has no standard library long + double support #8940. +
        +
      • +
      • +
        + Fix error handling of distributions to catch invalid scale and location + parameters when the random variable is infinite #9042 + and #9126. +
        +
      • +
      • +
        + Add workaround for broken <tuple> in Intel C++ 14 #9087. +
        +
      • +
      • +
        + Improve consistency of argument reduction in the elliptic integrals + #9104. +
        +
      • +
      • +
        + Fix bug in inverse incomplete beta that results in cancellation errors + when the beta function is really an arcsine or Student's T distribution. +
        +
      • +
      • +
        + Fix issue in Bessel I and K function continued fractions that causes + spurious over/underflow. +
        +
      • +
      +
      +
    • +
    • +
      + Move: + +
      +
    • +
    • +
      + Meta State Machine: +
        +
      • +
        + New feature: interrupt states now support a sequence of events to + end the interruption. +
        +
      • +
      • +
        + Fixed Trac #8686. +
        +
      • +
      +
      +
    • +
    • +
      + Multiprecision: +
        +
      • +
        + Added support for Boost.Serialization. +
        +
      • +
      • +
        + Suppressed some GCC warnings. See 8872. +
        +
      • +
      • +
        + Fixed bug in pow for large integer arguments. See 8809. +
        +
      • +
      • +
        + Fixed bug in pow for calculation of 0[super N]. See 8798. +
        +
      • +
      • +
        + Fixed bug in fixed precision cpp_int IO code that causes conversion + to string to fail when the bit count is very small (less than CHAR_BIT). + See 8745. +
        +
      • +
      • +
        + Fixed bug in cpp_int that causes left shift to fail when a fixed + precision type would overflow. See 8741. +
        +
      • +
      • +
        + Fixed some cosmetic warnings from cpp_int. See 8748. +
        +
      • +
      • +
        + Fixed calls to functions which are required to be macros in C99. + See 8732. +
        +
      • +
      • +
        + Fixed bug that causes construction from INT_MIN, LONG_MIN etc to + fail in cpp_int. See 8711. +
        +
      • +
      +
      +
    • +
    • +
      + Multi-index Containers:
    • +
    • +
      + MPI: +
        +
      • +
        + Replaced calls to deprecated MPI functions +
        +
      • +
      • +
        + Added support for multi-threaded initialization +
        +
      • +
      • +
        + Added in-place collectives +
        +
      • +
      +
      +
    • +
    • +
      + Phoenix: +
        +
      • +
        + #9049 phoenix::function + constructor is constexpr. +
        +
      • +
      +
      +
    • +
    • +
      + PropertyMap: +
        +
      • +
        + dynamic_properties objects can now be built by non-destructively + chaining .property(name, pm) calls. Example: +
        +
        boost::dynamic_properties()
        +  .property("color", color_map)
        +  .property("pos", position_map)
        +
        +
      • +
      • +
        + The use of raw pointers as property maps is deprecated; it often + failed on Visual Studio in the past. This usage has been removed + from all tests and examples in Boost.Graph. The replacement to use + for vertex properties in graphs (the most common use for this feature) + is: +
        +
        boost::make_iterator_property_map(
        +  <pointer or container .begin() iterator>,
        +  get(boost::vertex_index, <graph object>))
        +
        +
        + (Note: the lack of namespace qualification on get() in this code + is necessary for generic code). Outside a graph context, the closest + equivalent is: +
        +
        boost::make_iterator_property_map(
        +  <pointer>,
        +  boost::typed_identity_property_map<std::size_t>())
        +
        +
        + There are commented-out static assertions on lines 151 and 159 of + <boost/property_map/property_map.hpp> that can be un-commented to find + deprecated uses of pointers in user code. +
        +
      • +
      +
      +
    • +
    • +
      + Rational: +
        +
      • +
        + Added lowest and + max_digits10, members + of std::numeric_limits added in C++11, to the unit-test code. Needed + since Boost.Test refers to one of them when compiled in C++11 mode. +
        +
      • +
      • +
        + Changed initialization of some internal variables to something that + cannot be a narrowing conversion, which fixes issue #5855. Needed + since narrowing conversions are an error in C++11. +
        +
      • +
      +
      +
    • +
    • +
      + SmartPtr: +
        +
      • +
        + Added boost/smart_ptr/intrusive_ref_counter.hpp header, extracted from Boost.Log. + The header implements a mixin base class that adds support for intrusive_ptr to user's classes. +
        +
      • +
      +
      +
    • +
    • +
      + Thread: +
        +
      • +
        + New Features: +
          +
        • +
          + #8519 + Synchro: Update class barrier with a completion function. +
          +
        • +
        • +
          + #8515 + Async: Add shared_future::then. +
          +
        • +
        • +
          + #8519 + Synchro: Update class barrier with a completion function +
          +
        • +
        • +
          + #8615 + Async: Replace make_future/make_shared_future by make_ready_future. +
          +
        • +
        • +
          + #8627 + Async: Add future<>::unwrap and unwrapping constructor. +
          +
        • +
        • +
          + #8677 + Async: Add future<>::get_or. +
          +
        • +
        • +
          + #8678 + Async: Add future<>::fallback_to. +
          +
        • +
        • +
          + #8891 + upgrade_to_unique_lock: missing mutex() function. +
          +
        • +
        • +
          + #8955 + Request for more efficient way to get exception_ptr from future. +
          +
        • +
        +
        +
      • +
      • +
        + Fixed Bugs: +
          +
        • +
          + #7461 + detail::win32::ReleaseSemaphore may be called with count_to_release + equal to 0 +
          +
        • +
        • +
          + #8070 + prefer GetTickCount64 over GetTickCount +
          +
        • +
        • +
          + #8768 + win32 condition_variable::wait_until infinite wait in rare + cases. +
          +
        • +
        • +
          + #8817 + Boost Thread Windows CE _createthreadex handling breaks mingw + w64. +
          +
        • +
        • +
          + #8943 + Failed to compile code using boost::call_once with Intel C++ + Composer XE 2013 on Windows. +
          +
        • +
        • +
          + #8931 + Typos in external_locking reference. +
          +
        • +
        • +
          + #9029 + Misprint in documentation. +
          +
        • +
        • +
          + #9037 + gcc -Wshadow gives warnings in condition_variable{,_fwd}.hpp. +
          +
        • +
        • +
          + #9041 + Boost.Thread DSO's may need to link with Boost.Atomic. +
          +
        • +
        • +
          + #9048 + boost::scoped_thread useless ctor with variadic template arguments. +
          +
        • +
        • +
          + #9079 + Condition variable will wait forever for some timepoint values + (Win). +
          +
        • +
        +
        +
      • +
      +
      +
    • +
    • +
      + Timer: +
        +
      • +
        + Fixed compilation on Intel compiler #8956. +
        +
      • +
      +
      +
    • +
    • +
      + Type Traits: +
        +
      • +
        + Added is_copy_contructible + trait #8802. +
        +
      • +
      +
      +
    • +
    • +
      + Unordered: +
        +
      • +
        + Avoid some warnings (#8851, #8874). +
        +
      • +
      • +
        + Avoid exposing some detail functions via. ADL on the iterators. +
        +
      • +
      +
      +
    • +
    • +
      + Utility: +
        +
      • +
        + boost::result_of can be set to use TR1 + protocol by default and fall back to decltype + if the function object does not support it (like C++11 lambda functions, + for example). Define BOOST_RESULT_OF_USE_TR1_WITH_DECLTYPE_FALLBACK + configuration macro to enable this mode. +
        +
      • +
      • +
        + Improved support for C++11 in the boost::base_from_member + class template. The class implements perfect forwarding for the constructor + arguments, if the compiler supports rvalue references, variadic templates + and function template default arguments. +
        +
      • +
      • +
        + Added boost/utility/explicit_operator_bool.hpp and boost/utility/empty_deleter.hpp + headers, which were extracted from Boost.Log. The headers implement + utilities for defining explicit conversion operators to bool and a deleter function object + that does nothing, respectively. +
        +
      • +
      +
      +
    • +
    • +
      + Variant: +
        +
      • +
        + Fixed compilation of constructor and assignment operator with const + rvalues input parameters #8988. +
        +
      • +
      • +
        + Fixed compilation of move assignment operator for situations when + one of the variant template classes has nothrow copy constructor + and throwing move constructor #8772. +
        +
      • +
      • +
        + Fix compilation on exception-disabled environments #8717. +
        +
      • +
      • +
        + Fix unreachable code warnings #8665. +
        +
      • +
      • +
        + Removed duplicate code #7601. +
        +
      • +
      +
      +
    • +
    • +
      + Wave: + +
      +
    • +
    • +
      + xpressive: +
        +
      • +
        + #8843 throw instead of assert at incomplete charset +
        +
      • +
      • +
        + #8880 remove unused local typedef +
        +
      • +
      • +
        + #8882 use RAII instead of try/catch in sequence_stack.hpp +
        +
      • +
      • +
        + #8474 make xpressive play nice with clang's -Wimplicit-fallthrough + diagnostic +
        +
      • +
      +
      +
    • +
    +
    +
    +

    Updated Tools

    +
    @@ -161,7 +1636,73 @@
    • - TODO + Linux: +
        +
      • +
        + Clang: 3.3, 3.2, 3.1, 3.0 +
        +
      • +
      • +
        + Clang, C++11, libc++: 3.4, 3.3 +
        +
      • +
      • +
        + GCC: 4.8.1, 4.7.3, 4.6.3, 4.5.3, 4.4.7 +
        +
      • +
      • +
        + GCC, C++11: 4.8.1 +
        +
      • +
      • +
        + GCC, C++98: 4.8.1 +
        +
      • +
      +
      +
    • +
    • +
      + OS X: +
        +
      • +
        + GCC: 4.2 +
        +
      • +
      • +
        + Apple Clang: 5.0 +
        +
      • +
      • +
        + Apple Clang, C++11: 5.0 +
        +
      • +
      +
      +
    • +
    • +
      + Windows: +
        +
      • +
        + GCC, mingw: 4.8.0, 4.7.2, 4.6.3, 4.5.4, 4.4.7 +
        +
      • +
      • +
        + Visual C++: 11.0, 10.0, 9.0 +
        +
      • +
    @@ -171,7 +1712,93 @@
    • - TODO + OS X: +
        +
      • +
        + Apple Clang: 5.0 +
        +
      • +
      • +
        + Apple Clang, C++11: 5.0 +
        +
      • +
      • +
        + Clang: trunk +
        +
      • +
      • +
        + Clang, C++11: trunk +
        +
      • +
      • +
        + GCC: 4.2.1 +
        +
      • +
      +
      +
    • +
    • +
      + Linux: +
        +
      • +
        + Clang: 3.3, 3.2, 3.1, 3.0, trunk +
        +
      • +
      • +
        + Clang, C++11: 3.4 +
        +
      • +
      • +
        + Clang, C++11, libc++: 3.4, 3.3 +
        +
      • +
      • +
        + GCC: 4.9.0 (experimental), 4.8.1, 4.7.3, 4.6.4, 4.5.3, 4.4.7 +
        +
      • +
      • +
        + GCC, C++11: 4.8.1 +
        +
      • +
      • +
        + GCC, C++98: 4.8.1 +
        +
      • +
      • +
        + Intel: 13.0.1, 12.1.6 +
        +
      • +
      +
      +
    • +
    • +
      + Windows: +
        +
      • +
        + GCC, mingw: 4.8.0, 4.7.2, 4.6.3, 4.5.4, 4.4.7 +
        +
      • +
      • +
        + Visual C++: 11.0, 10.0, 9.0 +
        +
      • +
    @@ -179,7 +1806,9 @@

    Acknowledgements

    - TODO + Beman Dawes, Eric Niebler, + Rene Rivera, Daniel James, + Vladimir Prus and Marshall Clow managed this release.

    diff --git a/users/history/version_1_56_0.html b/users/history/version_1_56_0.html new file mode 100644 index 00000000..078af24f --- /dev/null +++ b/users/history/version_1_56_0.html @@ -0,0 +1,124 @@ + + + + + Version 1.56.0 - work in progress + + + + + + + + + + +
    +
    + +
    +
    +
    +
    +
    +
    +

    Version 1.56.0

    +
    +

    Note: This version is at an early stage in its release cycle. The information listed below is incomplete and some of the documentation links may not work yet.

    +
    +

    Version 1.56.0 - work in progress

    + +

    In Progress

    + + +
    +
    + + +
    +

    New Libraries

    +
      +
    • +
      + TODO +
      +
    • +
    +
    +
    +

    Updated Libraries

    +
      +
    • +
      + TODO +
      +
    • +
    +
    +
    +

    Compilers Tested

    +

    + Boost's primary test compilers are: +

    +
      +
    • +
      + TODO +
      +
    • +
    +

    + Boost's additional test compilers include: +

    +
      +
    • +
      + TODO +
      +
    • +
    +
    +
    +

    Acknowledgements

    +

    + TODO +

    +
    +
    +
    +
    +
    +
    +
    + + + +
    +
    +
    + + + + diff --git a/users/news/old_compilers.html b/users/news/old_compilers.html index 993e1f31..854213ad 100644 --- a/users/news/old_compilers.html +++ b/users/news/old_compilers.html @@ -100,11 +100,16 @@

    - If you want to reply to the request and can't email the list you can send - me an email. Let me know if it's okay to forward it to the list. + Update: I had a few responses, but none were + opposed to this change, so I made it in trunk a little while ago. It should be + included in the next release.

    - Thanks again. + There was some concern that we would remove support for later compilers (e.g. + Visual Studio 2008, aka. Visual C++ 9.0). We have no such plans, this change + is only for very old compilers. As always support across Boost libraries is not + uniform, but most library authors do try to support as wide a range of compilers + as is feasible.