From c81ff87a76f97c76857e7ccc00f2a63a33f7de54 Mon Sep 17 00:00:00 2001 From: Automated Commit Date: Thu, 29 Sep 2016 01:22:22 -0400 Subject: [PATCH 1/4] Update documentation list --- doc/libraries.xml | 13 +++++++++++++ generated/libraries.txt | Bin 260966 -> 261199 bytes 2 files changed, 13 insertions(+) diff --git a/doc/libraries.xml b/doc/libraries.xml index 29900446..c270acc9 100644 --- a/doc/libraries.xml +++ b/doc/libraries.xml @@ -1079,6 +1079,19 @@ Concurrent System + + fiber + libs/fiber/ + 1.62.0 + develop + Fiber + Oliver Kowalke + Oliver Kowalke <oliver.kowalke -at- gmail.com> + C++11) Userland threads library. + libs/fiber/ + Concurrent + System + filesystem libs/filesystem/ diff --git a/generated/libraries.txt b/generated/libraries.txt index 602fd92efbabe361dd7c0e1db8c96ceee3a31f2b..6790ca98962c4edc3386007a99e60a1e6352c405 100644 GIT binary patch delta 1993 zcmaF%jsN@){)R1#BCL$Y(-V&{`A+}M&UkzBfrmod{n;29S*GtaV{!$F@l3zV!Dv7E zWUT;~k(H9Owzi?6ro#05Y>cwgMHLujraQ1RDoj@1>p9uvj>UAN4@~mYyIC3erqASL zRGF^F!6?jDWMyP%W7{0j{M)-M8NV~JniyNx)=s}@&nUiqt_|Zm zCMGj8h;h$s7`+&$8?0htnQmgoC_KG%5wrgGyDp4XjFTPSS#OtcW}L^yWMZ*>hbN;W zGqbs&_4J48%pTiad>PNPF&UXmzxbZfd|L#gJmdE4P{zl+OvdKh1Ckk+vN2hjP2YHp z$#c6y7NZC^lZC$g(<&KRwl64UWM!VNTg}M1eO(1(BNLO6>2||v#_LQVd${Tt zTbP;5jUcYO*2u`m&TMF8wEcMp<0d916VvUpyBVJ_F_~FxZ|q}S$;M)2Xkk4)P=(ob zd)FjJd&cPo@0dKd|DMJu%gSVKINi~f$!&YW9L8{NMw96WZJFJ-|6k7dgq6wCa(X~A zquXQw9+vI;>lhyhfZQ#(pK$}z^tdC8?AuQqWSqvtWMRBL;Rs^~6SJ9t+4k4R7z>#g zjUcA@9B0&I+cV4IY`KB`>QjI!i>|cCNc?ZKX!?+k%!6D927Wi+xzb`>asFh z7?^>%lP5H?Y(MabF^O?|_A|zX%uJ@HVDarCuNbRXnJo=WwqJbD=)%TiY77yN{l+NG z#$sY%V6?sF593oNJ|h$B+S+0(6Dy_M{Ib-^g1z3;7hGgy*}m^TqaV}sbu3Ig+a;Ko zrZF*@8*Jae!qmsiXgS@mk=cE_I4_enEM3~eWw?|4aWwB0s$n3FQR*A`vaeJgZ(_KzhBQsDMnxn}iwLMgmX)Y5iNdK8J z#V~H4rpwgCIeoSk)1=8q|4K}+(q>Yf9_-C1GCkUYDGQu2f^?XyCR>(DP50Jj5}$lw z5hz=jm>5}34>V(xW-&4_vfiF*#dM2_(R@1NLuU8wC#;xK8MnW&V@hCUGBRE6=fcFy zXfmB~0<*{V4K7R$jMHNSm;|;z_h7os&u9VhVtfpf4dZsVD5gFU9upJm+F~m+DulK9rQ zG1;>*nOkoE(8IKiiOJ9aYzH{ag!D4GGj6w<$Rxu$-Jp@#WBa^mOsqnT7NDfy4p#Ag z1(PEilZoMWqxDSpnV8H>w+nA#;$~*Du-LA!l}Uw}(GYCf_O%C?j2XA@-^s+w$7E=+ z{oHY;6lNw9qwOZAnev#J%*;V?u`G?OCZbel^|{M)6@GficOgoFF`3wN2E7^gS1 zGqP;Ay}>kto7vRFdisM%X4mN#?lQ4%Z+XbX#5nmv7Rz>xr%YKa;6w<{5_6t2sWDD| zHJN|Az-uN6b|woGP-gYouJeIOnsIyoXQn0=W@9t!>Gca3UAIU6VA{&cWC3=H`}Q}# znJgH$_y1>dVqr1{i@9x=WMR(YWHPke-pb3om5Ip&oTA*eONlU-FmC@Q$b63v7C|zK z%u{$-Esa1aNl>3zbo(hi=7mg*hL9NFY{)#7dAf`lbKvC44}#Nm%$YSNAKj}xz1fdZ zbb6f`^GrxODq@spEw0Q<)}KDnnOSLiswwl<=?l`CSf;xQGm0~V(ovrU^L!>IOQY@j z*31(@#yi+Dxo_vNV@~9R<%XItW^TsqdpwveIp&PfoZvZ~M$#=9!>`2`+*w3z%8hnJmE}Z8rJLZvN@di<$3E_vK*L+J3r% z`57ydvGMlJbH89>je;e~&CPqlf zKVAMfGtYK`?acm++yCuiKF+~xW?-`Y#9`)7OpNB+cOPRu#KdU1z3wD42OF!ofw6V% z^oeGSuG=r1XTHqJY-(&h-5`wF2b9#OKflDxH$C7ov-os{N=A;!aqE+(7YH&YOgE5W zX4(Gg8uJ}c!ZX=^@;37VCPuUES@)QyF)^A#>aW#Lm|YmR_dH_$!p>uC2+y!)lLHlP vru)8NzBaw#3#0IMvzN?Xj7+A++yA~{HfClt+iv)Q`2-uI<@R6Sm~&VFxY~tp delta 1906 zcmX^Aga6q#{)R1#BCL!?({(>G+fBY8!aw~tJLB!i2ObJ-_h(~dWZC|Khj9lJv!SKo z^n*K@+@??HU}o7Kz{{x3xLrYz@eT{KiJ|rMLKP;T?cQRHG90W%mPXdK(+_T7a@oE? zj?tNu$;5QJ;zUNb?baHMPVCIamgZn{wja}H>}6vzHQXL*#<+ut$=q~1za=9xGqZ`M z`E-6uM$zqBHjLkySd9#wWZCXe!N|(YVq|G4)6ds3vTtAC zz*x`BWMT<%L0JnUA3L*wrRDbaZpKYaOh!iAt@{|CFfo~!ZdaVhxRQ;<(9+a;y5Tz} z*X>$U8SNRTE2J>9Oke+=$#whenT)cmOePlKu-G=AF`S#p$PC2s+%CO>(SULC&i?}2 zAFXCw$iif9HvK~?quXQw9+vIrH!waB0C{BNLBMci*Nt(hOvs3*}}qbd*LTW7d9qi1Bm$F zAB@s$EXJTflljm1l!?#4(7Lv^*viC8DL20?b+TZu_jHFVj4a#Zn3(*Sn2b!euVZ0a zz%+dg3lq=wD0Ze6W+pRBkl)?5Z|7&yX51dg!xY5DWMaO3sTk93CMI(Ou;lc;DokA4 z`NWyj8K-CUF!68akY^`P#Ow0z*yb4J&eN66*)3tUp32Z+)iHV1G^1@D!?f2(1`7=)cu#}l)d(KRzO#)2j z7GO_;b!4q#asO=U*}&Q(x|8*F6?-mY++iH&i( zf;aP`?F()*ZQx`!F}9u_Aj<5z{nsNVcE-sUvREcxD_FGM^*PfCW@d9sQ?L`ai@#)2 zW87ZzhDn_rmXlw9W?IM!Dh2v}GW})+J~#FO!Agc3lJJolHyy(5TllW}eDC`KZ0@^jZsM z-pO4;VbeK3F^5cFAj`}@{gN586DV0s?=fedHN7E}S$Mj#IkVPui3!YN(-X=WIY62? zCyO0C2uf99+p8^^XEQNbm~WS`VV=muWB^V2`8LdojMKHJG4pR%bYM2*V6p%wC(rG3 zJ(wL7m`p6U-_KyqXM#A`ER$K5ak_#aqxbf|Im~h_j7E?m>1H0YHski*BIcW{(*vI} zS!|zI!Tg7f$;e{+oOSJEc1WOg$yZe|uAa0w!zLbe=d*3AH6b@b^a4t8sQYy{MESda~!)Lqq zZ06%kj24p9>DX-hhvm$&Oxv~BGB03f zGB?|Pb_??kCT0^$i|rlTnfEd=8iKtu-ToXi&-S0&nf)23_w8rCFrDWJv*7j`4bZh$QjdDpJJBWe&9IsGA2fo?dhkOIoMduEG?{SryE)_x^8zk$IQ<- zxwB7T`;CjtTUbEVMBg=LMK)%0OUvz>?l3Q4Vl>R`-Rzxar%U2W|qm3yf)kG YzcI%#PENR(F@3c%qsjESznM1y0O%ZpMgRZ+ From 1cb78a2b060fa5321284e62911b0e0c96d2e6f58 Mon Sep 17 00:00:00 2001 From: Daniel James Date: Fri, 30 Sep 2016 11:15:45 +0100 Subject: [PATCH 2/4] Add release notes for 1.63.0 --- feed/history/boost_1_63_0.qbk | 69 +++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 feed/history/boost_1_63_0.qbk diff --git a/feed/history/boost_1_63_0.qbk b/feed/history/boost_1_63_0.qbk new file mode 100644 index 00000000..bff4757a --- /dev/null +++ b/feed/history/boost_1_63_0.qbk @@ -0,0 +1,69 @@ +[article Version 1.63.0 + [quickbook 1.6] + [source-mode c++] + [purpose + New Libraries: + Updated Libraries: + [/ Please don't add updated libraries yet, it + can create unnecessary merge conflicts.] + ] + [authors [Dawes, Beman]] + [/ last-revision is used for the final release date] + [last-revision ] +] + +[import ext.qbk] + +[section New Libraries] + +[/ Example: +* [phrase library..[@/libs/accumulators/ Accumulators]:] Framework for + incremental calculation, and collection of statistical accumulators, from Eric Niebler. +] + +* /TODO/ + +[endsect] + +[section Updated Libraries] + +[/ Example: +* [phrase library..[@/libs/interprocess/ Interprocess]:] + * Added anonymous shared memory for UNIX systems. + * `shared_ptr` is movable and supports aliasing ([ticket 1234]). +] + +* /TODO/ + +[/ TODO: These libraries always use the same message, referring to their + individual release notes. So check if they apply before the beta: + +* /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] From 59023278775e2c1cfe7c93c7b0d1f1fb351d706b Mon Sep 17 00:00:00 2001 From: Daniel James Date: Thu, 29 Sep 2016 11:18:27 +0100 Subject: [PATCH 3/4] Sort pages on access. There was a bug where the chronological order of pages wasn't updated immediately for new pages. --- common/code/boost_pages.php | 31 ++++++++++++++++++------------- common/code/boost_site_tools.php | 2 +- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/common/code/boost_pages.php b/common/code/boost_pages.php index 43182a40..921c5f28 100644 --- a/common/code/boost_pages.php +++ b/common/code/boost_pages.php @@ -30,19 +30,6 @@ class BoostPages { $this->pages[$qbk_file] = new BoostPages_Page($qbk_file, $this->get_release_data($qbk_file), $record); } - - // Sort pages in reverse chronological order. - $pub_date_order = array(); - $last_published_order = array(); - $unpublished_date = new DateTime("+10 years"); - foreach($this->pages as $index => $page) { - $pub_date_order[$index] = $page->pub_date ?: $unpublished_date; - $last_published_order[$index] = $page->last_modified; - } - array_multisort( - $pub_date_order, SORT_DESC, - $last_published_order, SORT_DESC, - $this->pages); } } @@ -52,6 +39,24 @@ class BoostPages { $this->hash_file); } + function chronological_pages() { + $pages = $this->pages; + + $pub_date_order = array(); + $last_published_order = array(); + $unpublished_date = new DateTime("+10 years"); + foreach($pages as $index => $page) { + $pub_date_order[$index] = $page->pub_date ?: $unpublished_date; + $last_published_order[$index] = $page->last_modified; + } + array_multisort( + $pub_date_order, SORT_DESC, + $last_published_order, SORT_DESC, + $pages); + + return $pages; + } + function scan_location_for_new_quickbook_pages($dir_location, $src_file_glob, $type) { foreach (glob("{$this->root}/{$src_file_glob}") as $qbk_file) { assert(strpos($qbk_file, $this->root) === 0); diff --git a/common/code/boost_site_tools.php b/common/code/boost_site_tools.php index 2831eb2a..3ca65dc0 100644 --- a/common/code/boost_site_tools.php +++ b/common/code/boost_site_tools.php @@ -44,7 +44,7 @@ class BoostSiteTools { $all_downloads = array(); $news = array(); - foreach($pages->pages as $page) { + foreach($pages->chronological_pages() as $page) { switch($page->type) { case 'page': if ($page->is_published()) { From b9e3c4d75bd30784c5bfda07909dfc0fdcf4992f Mon Sep 17 00:00:00 2001 From: Daniel James Date: Fri, 30 Sep 2016 11:16:43 +0100 Subject: [PATCH 4/4] Rebuild --- generated/dev.rss | 1868 +---------------------------- generated/state/feed-pages.txt | 23 + generated/state/rss-items.txt | 60 + users/history/version_1_63_0.html | 128 ++ 4 files changed, 264 insertions(+), 1815 deletions(-) create mode 100644 users/history/version_1_63_0.html diff --git a/generated/dev.rss b/generated/dev.rss index f9fc7460..08289891 100644 --- a/generated/dev.rss +++ b/generated/dev.rss @@ -7,7 +7,59 @@ 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.62.0http://www.boost.org/users/history/version_1_62_0.htmlhttp://www.boost.org/users/history/version_1_62_0.htmlWed, 28 Sep 2016 10:17:52 -0500 +Version 1.63.0http://www.boost.org/users/history/version_1_63_0.htmlhttp://www.boost.org/users/history/version_1_63_0.html + + + <div id="version_1_63_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_63_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_63_0.compilers_tested"> + <h3><span class="link">Compilers Tested</span></h3> + <p> + Boost's primary test compilers are: + </p> + <ul> + <li> + <div> + <em>TODO</em> + </div> + </li> + </ul> + <p> + Boost's additional test compilers include: + </p> + <ul> + <li> + <div> + <em>TODO</em> + </div> + </li> + </ul> + </div> + <div id="version_1_63_0.acknowledgements"> + <h3><span class="link">Acknowledgements</span></h3> + <p> + <em>TODO</em> + </p> + </div> +Version 1.62.0http://www.boost.org/users/history/version_1_62_0.htmlhttp://www.boost.org/users/history/version_1_62_0.htmlWed, 28 Sep 2016 10:17:52 -0500 @@ -4889,1820 +4941,6 @@ Vladimir Prus and Marshall Clow managed this release. </p> </div> -Version 1.58.0http://www.boost.org/users/history/version_1_58_0.htmlhttp://www.boost.org/users/history/version_1_58_0.htmlFri, 17 Apr 2015 08:53:58 +0100 - - - - <div id="version_1_58_0.known_issue"> - <h3><span class="link">Known Issue</span></h3> - <ul> - <li> - <div> - Boost.Python will fail to build if it is compiled against a version of - python that is one of: 3.0.X, 3.1.X, 3.2.X, 3.3.X. Versions 2.X and 3.4+ - are not affected. This is fixed in <a href="https://github.com/boostorg/python/commit/3e405b6fd5db5615bbef241763de070118222ca7">git</a>. - </div> - </li> - <li> - <div> - Boost.Fusion has a regression with non-constexpr types. <a href="https://svn.boost.org/trac/boost/ticket/11211">#11211</a> - This - is fixed in some PRs: <a href="https://github.com/boostorg/fusion/pull/70">Github - PR #70</a>, <a href="https://github.com/boostorg/fusion/pull/71">Github - PR #71</a>, <a href="https://github.com/boostorg/fusion/pull/72">Github - PR #72</a> - </div> - </li> - </ul> - <p> - Patches: - </p> - <ul> - <li> - <div> - <a href="http://www.boost.org/patches/1_58_0/0001-Fix-exec_file-for-Python-3-3.4.patch">0001-Fix-exec_file-for-Python-3-3.4.patch</a> - (for libs/python). - </div> - </li> - <li> - <div> - <a href="http://www.boost.org/patches/1_58_0/0002-Fix-a-regression-with-non-constexpr-types.patch">0002-Fix-a-regression-with-non-constexpr-types.patch</a> - (for libs/fusion). - </div> - </li> - </ul> - </div> - <div id="version_1_58_0.new_libraries"> - <h3><span class="link">New Libraries</span></h3> - <ul> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/endian">Endian</a>:</span> - Types and conversion functions - for correct byte ordering and more regardless of processor endianness. - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/sort/">Sort</a>:</span> - Includes spreadsort, a general-case - hybrid radix sort that is faster than O(n*log(n)) - </div> - </li> - </ul> - </div> - <div id="version_1_58_0.updated_libraries"> - <h3><span class="link">Updated Libraries</span></h3> - <ul> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/asio/">Asio</a>:</span> - <ul> - <li> - <div> - Ensured errors generated by Windows' <code><span class="identifier">ConnectEx</span></code> - function are mapped to their portable equivalents (<a href="https://svn.boost.org/trac/boost/ticket/10744">#10744</a>). - </div> - </li> - <li> - <div> - Added new macro <code><span class="identifier">BOOST_ASIO_DISABLE_CONNECTEX</span></code> - to allow use of <code><span class="identifier">ConnectEx</span></code> - to be explicitly disabled. - </div> - </li> - <li> - <div> - Fixed a race condition in <code><span class="identifier">windows</span><span class="special">::</span><span class="identifier">object_handle</span></code> - when there are pending wait operations on destruction (<a href="https://svn.boost.org/trac/boost/ticket/10624">#10624</a>). - </div> - </li> - <li> - <div> - Fixed IPv6 address parsing on FreeBSD, where a trailing scope ID - would cause conversion to fail with <code><span class="identifier">EINVAL</span></code>. - </div> - </li> - <li> - <div> - Worked around shared library visibility issues by ensuring Asio types - use default visibility (<a href="https://svn.boost.org/trac/boost/ticket/9465">#9465</a>, <a href="https://svn.boost.org/trac/boost/ticket/11070">#11070</a>). - </div> - </li> - <li> - <div> - Changed the SSL wrapper to call the password callback when loading - an in-memory key (<a href="https://svn.boost.org/trac/boost/ticket/10828">#10828</a>). - </div> - </li> - <li> - <div> - Fixed false SSL error reports by ensuring that the SSL error queue - is cleared prior to each operation. - </div> - </li> - <li> - <div> - Fixed an <code><span class="identifier">ssl</span><span class="special">::</span><span class="identifier">stream</span><span class="special">&lt;&gt;</span></code> - bug that may result in spurious 'short read' errors. - </div> - </li> - <li> - <div> - Removed a redundant null pointer check in the SSL engine (<a href="https://svn.boost.org/trac/boost/ticket/10088">#10088</a>). - </div> - </li> - <li> - <div> - Added options for disabling TLS v1.1 and v1.2 (<a href="https://svn.boost.org/trac/boost/ticket/10690">#10690</a>). - </div> - </li> - <li> - <div> - Removed use of deprecated OpenSSL function <code><span class="identifier">ERR_remove_state</span></code>. - </div> - </li> - <li> - <div> - Fixed detection of various C++11 features with Clang (<a href="https://svn.boost.org/trac/boost/ticket/8835">#8835</a>, - <a href="https://svn.boost.org/trac/boost/ticket/10884">#10884</a>). - </div> - </li> - <li> - <div> - Fixed detection of C++11 <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">addressof</span></code> - with <tt>g++</tt> (<a href="https://svn.boost.org/trac/boost/ticket/10982">#10982</a>). - </div> - </li> - <li> - <div> - Changed multicast test to treat certain <code><span class="identifier">join_group</span></code> - failures as non-fatal. - </div> - </li> - <li> - <div> - Decoupled Asio unit tests from Boost.Test (<a href="https://svn.boost.org/trac/boost/ticket/11116">#11116</a>). - </div> - </li> - <li> - <div> - Changed the tutorial to use <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span></code> - to ensure output is flushed. - </div> - </li> - <li> - <div> - Fixed an unsigned integer overflow reported by Clang's integer sanitizer. - </div> - </li> - <li> - <div> - Added support for move-only return types when using a <code><span class="identifier">yield_context</span></code> object with asynchronous - operations. - </div> - </li> - <li> - <div> - Changed <code><span class="identifier">yield_context</span></code> - to allow reentrant calls to the completion handler from an initiating - function. - </div> - </li> - <li> - <div> - Updated detection of Windows Runtime to work with latest Windows - SDK. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/chrono/">Chrono</a>:</span> - <ul> - <li> - <div> - <em>Version</em> 2.0.5 - </div> - </li> - <li> - <div> - <em>Fixes:</em> - <ul> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10778">#10778</a> - VC14 CTP4 Atomic don't compile with boost::chrono durations - which are not TriviallyCopyable - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10840">#10840</a> - Missing std:: qualifier for puts call in test_7868.cpp - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10851">#10851</a> - Missing std:: qualifier for puts call in time_point_output.cpp - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10893">#10893</a> - Minor doc typo in Boost.Chrono - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10992">#10992</a> - Chrono IO state savers inconsistent with Boost.IO state savers - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10995">#10995</a> - duration_put::put_value truncates fractional part - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/11006">#11006</a> - Impossible to instantiate time_fmt_io_saver due to several - errors. - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/11012">#11012</a> - chrono_io v2 fail to compile with boost::chrono::duration&lt; - boost::rational&lt;int&gt; &gt; - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/container/">Container</a>:</span> - <ul> - <li> - <div> - Experimental <code><span class="identifier">small_vector</span></code> - container. - </div> - </li> - <li> - <div> - Massive dependency reorganization. Now <em>Boost.Container</em> - depends on very basic utilities like Boost.Core and <em>Boost.Intrusive</em>. - Preprocessed code size have decreased considerably and compilation - times have improved. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">nth</span></code> and <code><span class="identifier">index_of</span></code> functions to containers - with random-access iterators (except <code><span class="identifier">basic_string</span></code>). - </div> - </li> - <li> - <div> - Added C++17's <code><span class="identifier">allocator_traits</span><span class="special">&lt;</span><span class="identifier">Allocator</span><span class="special">&gt;::</span><span class="identifier">is_always_equal</span></code>. - </div> - </li> - <li> - <div> - Updated containers to implement new constructors as specified in - <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-defects.html#2210">2210. - Missing allocator-extended constructor for allocator-aware containers</a>. - </div> - </li> - <li> - <div> - Fixed bugs: - <ul> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/9931">#9931: - <em>&quot;flat_map::insert(ordered_unique_range_t...) - fails with move_iterators&quot;</em></a> (reopened). - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/11076">#11076: - <em>&quot;Unqualified calls to memmove/memcpy in container/detail/copy_move_algo.hpp&quot;</em></a>. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10790">Trac - #10790 (<em>long long errors from container&quot;</em>)</a>. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10808">Trac - #10808 (<em>compare equal operator of vector is broken&quot;</em>)</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <em>Source Breaking</em>: <code><span class="identifier">scoped_allocator_adaptor</span></code>'s - <code><span class="identifier">propagate_on_container_copy_assignment</span></code>, - <code><span class="identifier">propagate_on_container_move_assignment</span></code> - and <code><span class="identifier">propagate_on_container_swap</span></code> - are no longer <code><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">integral_constant</span><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="keyword">true</span><span class="special">/</span><span class="keyword">false</span><span class="special">&gt;</span></code> types. The dependency reorganization - needed to break with those classes to avoid MPL dependencies, and - interoperability with <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">integral_constant</span></code> - was not guaranteed. Code assumming <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">true_type</span><span class="special">/</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">false_type</span></code> - on this will not compile. As a workaround, use the guaranteed internal - <code><span class="special">::</span><span class="identifier">value</span></code> - constant: <code><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">integral_constant</span><span class="special">&lt;</span><span class="keyword">bool</span><span class="special">,</span> <span class="identifier">scoped_allocator_adaptor</span><span class="special">&lt;</span><span class="identifier">Allocator</span><span class="special">&gt;::</span><span class="identifier">propagate_on_container_move_assignment</span><span class="special">::</span><span class="identifier">value</span><span class="special">&gt;</span></code>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/context/">Context</a>:</span> - <ul> - <li> - <div> - support for ARM/iOS (32+64 bit) - </div> - </li> - <li> - <div> - class execution_context (C++14) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/conversion/">Conversion</a>:</span> - <ul> - <li> - <div> - <code><span class="identifier">polymorphic_pointer_downcast</span></code> - and <code><span class="identifier">polymorphic_pointer_cast</span></code> - functions were added (thanks to Boris Rasin) <a href="https://svn.boost.org/trac/boost/ticket/10780">#10780</a> - </div> - </li> - <li> - <div> - All the functions now throw exceptions using <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">throw_exception</span></code> - </div> - </li> - <li> - <div> - Documnetation update - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/date_time/">DateTime</a>:</span> - <ul> - <li> - <div> - Restored <code><span class="identifier">to_time_t</span></code> - function. - </div> - </li> - <li> - <div> - Renamed variable v_type to var_type so it longer conflicts with an - AIX system variable. - </div> - </li> - <li> - <div> - Documnetation fixes. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/flyweight/">Flyweight</a>:</span> - <ul> - <li> - <div> - Added hash support both with <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">hash</span></code> - and <a href="http://www.boost.org/doc/html/hash.html"><code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">hash</span></code></a>. - This can be optionally <a href="http://www.boost.org/libs/flyweight/doc/reference/flyweight.html#disable_hash_support">disabled</a> - to avoid clashes with legacy code where this support has already - been defined by the user. - </div> - </li> - <li> - <div> - Maintenance fixes. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/function/">Function</a>:</span> - <ul> - <li> - <div> - Added support for functions accepting C++11 rvalues and Boost.Move - rvalues <a href="https://svn.boost.org/trac/boost/ticket/10585">#10585</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/functional/factory/">Functional/Factory</a>:</span> - <ul> - <li> - <div> - Minor breaking change: the default template parameter to indicate - that it shouldn't use an allocator is now <code><span class="keyword">void</span></code>, - instead of <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">none_t</span></code>. - For details, see the <a href="http://www.boost.org/libs/functional/factory/doc/html/#boost_functional_factory.changes">changelog</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/fusion/">Fusion</a>:</span> - <ul> - <li> - <div> - Automatic hash creation function (<a href="https://github.com/boostorg/fusion/pull/12">Github - PR #12</a>) - </div> - </li> - <li> - <div> - New ADAPT_STRUCT, ADAPT_ADT, ADAPT_ASSOC_ that deduce the members - types (<a href="https://svn.boost.org/trac/boost/ticket/9516">#9516</a>). - </div> - </li> - <li> - <div> - Add convert implementation for Boost.Tuple and std::tuple. - </div> - </li> - <li> - <div> - Add mpl::clear implementation for Boost.Tuple and std::tuple. - </div> - </li> - <li> - <div> - Use boost::declval instead of std::declval, (<a href="https://svn.boost.org/trac/boost/ticket/10190">#10190</a>). - </div> - </li> - <li> - <div> - Remove use of <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">blank</span></code> - (<a href="https://svn.boost.org/trac/boost/ticket/8622">#8622</a>). - </div> - </li> - <li> - <div> - Add result_of::{copy,move} (<a href="https://svn.boost.org/trac/boost/ticket/5886">#5886</a>). - </div> - </li> - <li> - <div> - Better constexpr and noexcept support. - </div> - </li> - <li> - <div> - Improved SFINAE Friendliness of many metafunctions (<a href="https://svn.boost.org/trac/boost/ticket/10676">#10676</a>, - <a href="https://svn.boost.org/trac/boost/ticket/10443">#10443</a>). - </div> - </li> - <li> - <div> - result_of::size::value and result_of::size::type::value are the same - type now (<a href="https://svn.boost.org/trac/boost/ticket/7304">#7304</a>) - </div> - </li> - <li> - <div> - result_of::at&lt;Seq, N&gt;::type is now defined when sizeof of sequence - is less than N (<a href="https://svn.boost.org/trac/boost/ticket/6507">#6507</a>, <a href="https://svn.boost.org/trac/boost/ticket/7651">#7651</a>) - </div> - </li> - <li> - <div> - Fix missing includes (<a href="https://svn.boost.org/trac/boost/ticket/8457">#8457</a>). - </div> - </li> - <li> - <div> - Many documentation fixes &amp; improvements (<a href="https://svn.boost.org/trac/boost/ticket/6090">#6090</a>, <a href="https://svn.boost.org/trac/boost/ticket/5324">#5324</a>, - <a href="https://github.com/boostorg/fusion/pull/33">GitHub PR - #33</a>, <a href="https://github.com/boostorg/fusion/pull/53">GitHub - PR #53</a>, <a href="https://github.com/boostorg/fusion/pull/56">GitHub - PR #56</a>) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/geometry/">Geometry</a>:</span> - <ul> - <li> - <div> - <em>Additional functionality:</em> - <ul> - <li> - <div> - New algorithm num_segments, returning the number of segments - of a geometry - </div> - </li> - <li> - <div> - New overload for is_valid algorithm, that takes a string reference - as a second argument and fills it with a message related to - the validity or invalidity of the geometry - </div> - </li> - <li> - <div> - New overload for is_valid algorithm, that takes an enum reference - as a second argument and fills it with a value related to the - validity or invalidity of the geometry - </div> - </li> - <li> - <div> - Disjoint and intersects support the following geometry combinations: - point/multipoint, multipoint/multipoint, multipoint/segment, - multipoint/box - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <em>Improvements:</em> - <ul> - <li> - <div> - Buffer now supports flat-ends for linestrings with a bend close - to the start (such that buffered segment crosses flat-end). - </div> - </li> - <li> - <div> - Buffer performance is improved significantly - </div> - </li> - <li> - <div> - Partition performance is improved significantly for polygons, - potentially enhancing all overlay operations - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <em>Solved tickets:</em> - <ul> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/8379">#8379</a> - Invalid comparison of the result of determinant - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10108">#10108</a> - Error in overlay operations in specific cases where geometries - touch at one point - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10201">#10201</a> - Suggestion to use different function to compare coordinates - [wontfix] - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10467">#10467</a> - Template parameter name coliding with B0 macro name defined - in termios.h - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10640">#10640</a> - Invalid result of buffer() for CCW Polygons. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10666">#10666</a> - MSVC compiler warning C4127: conditional expression is constant - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10747">#10747</a> - Error in rescaling causing errors in areal/areal set operations - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10770">#10770</a> - Buffer fails for large distances, or rough round joins, where - concavities where not intersected properly - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10658">#10658</a> - sym_difference yields bad result for int polygons - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10835">#10835</a> - Difference of multilinestring and polygon yields wrong result - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10861">#10861</a> - Rtree failing to compile for Value being a pair or a tuple - containing pointer to Geometry and the default equal_to&lt;&gt; - used - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10863">#10863</a> - Template parameter name coliding with B0 macro name defined - in termios.h (duplicate of 10467) - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10887">#10887</a> - Invalid result of within() and relate() for Linear/MultiPolygon - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10890">#10890</a> - Invalid result of disjoint() for Point/Segment. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10904">#10904</a> - Invalid calculation of most significant Dimension of a segment - in relate_cartesian_segments strategy - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10912">#10912</a> - Invalid result of within() and relate() for Areal/Areal - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10951">#10951</a> - Tests failing on windows with intel compiler due to lack of - /bigobj flag. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10957">#10957</a> - Assertion failure and invalid results of various relational - operations. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10958">#10958</a> - Invalid results of disjoint() L/L and L/A. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10959">#10959</a> - Assertion failure in get_turns() used with no_rescale_policy. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10960">#10960</a> - Invalid result of get_turns() for L/A, missing turn. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10961">#10961</a> - Invalid result of get_turns() for L/A, invalid turn for a Linear - spike. - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/11112">#11112</a> - Compilation failure on Solaris due to a CS name clash (used - for a macro on this platform) - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/11121">#11121</a> - Invalid result of difference() for integral coordinates - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <em>Bugfixes:</em> - <ul> - <li> - <div> - Bug in multipoint/polygon multipoint/multipolygon distance - computation (wrong detection of points inside the areal geometry) - </div> - </li> - <li> - <div> - Bug in flatten_iterator's assignment operator causing an access - violation - </div> - </li> - <li> - <div> - Bug in Cartesian segment-segment intersection strategy when - one segment degenerates to a point and is collinear to the - other non-degenerate segment - </div> - </li> - <li> - <div> - Bug in centroid(), non-deterministic result if calculated for - e.g. a Polygon with zero-area. - </div> - </li> - <li> - <div> - Bug in buffers for joins with a limited number of points - </div> - </li> - <li> - <div> - Bug in buffers for round joins with limited number of points - around sharp corners - </div> - </li> - <li> - <div> - Bug in buffers for joins with large buffer distances - </div> - </li> - <li> - <div> - Bug in buffers for round ends with an odd number of points - </div> - </li> - <li> - <div> - Bug in buffers for flat ends with large buffer distances - </div> - </li> - <li> - <div> - Bug in buffers for interior rings with large negative buffer - distances - </div> - </li> - <li> - <div> - Bug in closing_iterator not working properly when the input - range is empty - </div> - </li> - <li> - <div> - Bug in is_simple, not handling properly closed simple linestrings - within multilinestrings - </div> - </li> - <li> - <div> - Bug in rtree constructors taking a pair of Iterators or a Range - (packing algorithm), the use of reference to destroyed temporary - when Iterator's reference is not true reference, e.g. for some - of the Range Adaptors. It also affects distance() and comparable_distance(). - This bug may cause unexpected behavior of the rtree or distance() - algorithm, e.g. an assertion failure or a SEGFAULT. - </div> - </li> - <li> - <div> - Bug in rtree count() member function, the use of reference - to destroyed temporary when object of type convertible but - not the same as value_type or indexable_type is passed. If - this happens, wrong result may be returned, in most cases 0. - </div> - </li> - <li> - <div> - Bugs related to the handling of Ranges, preventing compilation - of Geometries using non-Container Ranges in some algorithms - (thanks to Samuel Debionne) - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/hash/">Hash</a>:</span> - <ul> - <li> - <div> - Fixed strict aliasing violation (<a href="https://github.com/boostorg/functional/pull/3">GitHub - #3</a>). - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/interprocess/">Interprocess</a>:</span> - <ul> - <li> - <div> - Reduced some compile-time dependencies. Updated to Boost.Container - changes. - </div> - </li> - <li> - <div> - Fixed bugs: - <ul> - <li> - <div> - <a href="https://github.com/boostorg/interprocess/pull/13">GitHub - Pull #13 (<em>&quot;haiku: we don't have XSI shared memory, - so don't try to use it&quot;</em>)</a>. - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/intrusive/">Intrusive</a>:</span> - <ul> - <li> - <div> - Reduced compile-time dependencies, headers, and the use of Boost.Preprocessor, - specially for hooks and iterators. - </div> - </li> - <li> - <div> - Fixed bugs: - <ul> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/6720">Boost - Trac #6720: <em>intrusive::unordered_set::clear_and_dispose - does not compile on VC11 Beta when passed a stateless lambda</em></a> - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10771">Boost - Trac #10771: <em>remove_if is broken for slist</em></a> - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10853">Boost - Trac #10853: <em>problem with detection of const_cast_from</em></a> - </div> - </li> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/10987">Boost - Trac #10987: <em>bug in any_xxx_node_traits, returning - by reference</em></a> - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/lexical_cast/">Lexical Cast</a>:</span> - <ul> - <li> - <div> - Now std::stream is used for conversions to float numbers <a href="https://svn.boost.org/trac/boost/ticket/5660">#5660</a>, - <a href="https://svn.boost.org/trac/boost/ticket/6975">#6975</a>, <a href="https://svn.boost.org/trac/boost/ticket/10639">#10639</a> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/log/">Log</a>:</span> - <ul> - <li> - <div> - Bug fixes: - <ul> - <li> - <div> - Fixed thread id formatting. - </div> - </li> - <li> - <div> - Fixed process id formatting. (<a href="https://svn.boost.org/trac/boost/ticket/10926">#10926</a>) - </div> - </li> - <li> - <div> - Fixed build failure on GNU Hurd. - </div> - </li> - <li> - <div> - Fixed incorrect behavior of text file sink backend in case - if free space on the file system gets exhausted. The sink will - no longer create lots of empty files in attempt to recover. - (<a href="https://svn.boost.org/trac/boost/ticket/11016">#11016</a>) - </div> - </li> - <li> - <div> - Fixed incorrect behavior of <code><span class="identifier">attribute_set</span><span class="special">::</span><span class="identifier">insert</span><span class="special">()</span></code> in some cases. The inserted - elements could have made some previously inserted elements - not findable. (<a href="https://svn.boost.org/trac/boost/ticket/11106">#11106</a>) - </div> - </li> - <li> - <div> - Fixed incorrect behavior of <code><span class="identifier">attribute_value_set</span><span class="special">::</span><span class="identifier">size</span><span class="special">()</span></code> if a large number of attribute - values are inserted into the set. (<a href="https://svn.boost.org/trac/boost/ticket/11148">#11148</a>) - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - See <a href="http://www.boost.org/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/libs/math/">Math</a>:</span> - <ul> - <li> - <div> - Added two new special functions - trigamma and polygamma. - </div> - </li> - <li> - <div> - Large update to the Elliptic integral code to use Carlson's latest - algorithms - these should be more stable, more accurate and slightly - faster than before. Also added support for Carlson's RG integral. - </div> - </li> - <li> - <div> - Added ellint_d, jacobi_zeta and heuman_lambda elliptic integrals. - </div> - </li> - <li> - <div> - Fixed namespace scope constants so they are constexpr on conforming - compilers, see <a href="https://svn.boost.org/trac/boost/ticket/10901">#10901</a>. - </div> - </li> - <li> - <div> - Fixed various cases of spurious under/overflow in the incomplete - beta and gamma functions, plus the elliptic integrals, with thanks - to Rocco Romeo. - </div> - </li> - <li> - <div> - Fix 3-arg legendre_p and legendre_q functions to not call the policy - based overload if the final argument is not actually a policy. - </div> - </li> - <li> - <div> - Cleaned up some dead code in the incomplete beta function, see <a href="https://svn.boost.org/trac/boost/ticket/10985">#10985</a>. - </div> - </li> - <li> - <div> - Fixed extreme-value pdf for large valued inputs, see <a href="https://svn.boost.org/trac/boost/ticket/10938">#10938</a>. - </div> - </li> - <li> - <div> - Switched documentation to use SVG rather than PNG graphs and equations - - browsers seem to have finally caught up! - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/move/">Move</a>:</span> - <ul> - <li> - <div> - Added <code><span class="identifier">BOOST_MOVE_BASE</span></code> - utility. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">adl_move_swap</span></code> - utility. - </div> - </li> - <li> - <div> - Reduced dependencies on other Boost libraries to make the library - a bit more lightweight. - </div> - </li> - <li> - <div> - Fixed bugs: - <ul> - <li> - <div> - <a href="https://svn.boost.org/trac/boost/ticket/11044">Trac - #11044: <em>&quot;boost::rv inherits off union, when - such passed as template argument&quot;</em></a>. - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/multi_index/index.html">Multi-index Containers</a>:</span> - <ul> - <li> - <div> - The efficiency of lookup operations has improved in situations where - they involve the generation of temporary values of <code><span class="identifier">key_type</span></code>. Consider for instance - the following code: - </div> -<pre><span class="keyword">typedef</span> <span class="identifier">multi_index_container</span><span class="special">&lt;</span> - <span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">,</span> - <span class="identifier">indexed_by</span><span class="special">&lt;</span> - <span class="identifier">ordered_unique</span><span class="special">&lt;</span><span class="identifier">identity</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;</span> <span class="special">&gt;</span> - <span class="special">&gt;</span> -<span class="special">&gt;</span> <span class="identifier">multi_t</span><span class="special">;</span> -<span class="special">...</span> -<span class="identifier">multi_t</span> <span class="identifier">m</span><span class="special">=...;</span> -<span class="identifier">m</span><span class="special">.</span><span class="identifier">find</span><span class="special">(</span><span class="string">&quot;boost&quot;</span><span class="special">);</span> <span class="comment">// passed a const char*, not a std::string </span> -</pre> - <div> - In previous versions of the library, the <code><span class="identifier">find</span></code> - operation generates several temporary <code><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span></code>s - (one every time an internal comparison is made). In sufficiently - advanced compilers, this is now avoided so that only one temporary - is created. - </div> - </li> - <li> - <div> - Maintenance fixes. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/multiprecision/">Multiprecision</a>:</span> - <ul> - <li> - <div> - Changed <code><span class="identifier">frexp</span></code> to - always be non-expression template generating, see: <a href="https://svn.boost.org/trac/boost/ticket/10993">10993</a>. - </div> - </li> - <li> - <div> - Improved support of cpp_dec_float on Cygwin and other platforms with - missing long double support, see <a href="https://svn.boost.org/trac/boost/ticket/10924">10924</a>. - </div> - </li> - <li> - <div> - Improved noexcept support and added some more tests, see <a href="https://svn.boost.org/trac/boost/ticket/10990">10990</a>. - </div> - </li> - <li> - <div> - Various workarounds applied for Intel-15.0 and Solaris-12.4 compilers. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/optional/">Optional</a>:</span> - <ul> - <li> - <div> - Improved documentation; documented IO operations and header files. - </div> - </li> - <li> - <div> - <em>Fixed Bugs:</em> - <ul> - <li> - <div> - <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">none_t</span></code> is no longer convertible - from literal 0. This avoids a bug where <code><span class="identifier">optional</span><span class="special">&lt;</span><span class="identifier">rational</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">&gt;&gt;</span> <span class="identifier">oi</span> - <span class="special">=</span> <span class="number">0</span><span class="special">;</span></code> would initialize an optional - object with no contained value. - </div> - </li> - <li> - <div> - Added a way to manually disable move semantics: just define - macro <code><span class="identifier">BOOST_OPTIONAL_CONFIG_NO_RVALUE_REFERENCES</span></code>. - This can be used to work around <a href="http://svn.boost.org/trac/boost/ticket/10399">#10399</a>. - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10825">#10825</a> - Improved the trick that prevents streaming out <code><span class="identifier">optional</span></code> without header - <code><span class="identifier">optional_io</span><span class="special">.</span><span class="identifier">hpp</span></code> - by using safe-bool idiom. - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/11087">#11087</a> - It is no longer possible to assign <code><span class="identifier">optional</span><span class="special">&lt;</span><span class="identifier">U</span><span class="special">&gt;</span></code> to <code><span class="identifier">optional</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span></code> when <code><span class="identifier">U</span></code> - is not assignable or convertible to <code><span class="identifier">T</span></code>. - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10839">#10839</a> - Value accessors now work correctly on rvalues of <code><span class="identifier">optional</span><span class="special">&lt;</span><span class="identifier">T</span><span class="special">&amp;&gt;</span></code>. - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/phoenix/">Phoenix</a>:</span> - <ul> - <li> - <div> - Version 3.2.0 - </div> - </li> - <li> - <div> - <em>New Features:</em> - <ul> - <li> - <div> - Phoenix now has a <em>lazy list</em> implementation - as an optional extension. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <em>New Example:</em> - <ul> - <li> - <div> - A new example <em>bind_goose</em> shows the compatibility - between <em>boost bind</em> and <em>boost - phoenix bind</em>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <em>Fixed Bugs:</em> - <ul> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10927">#10927</a> - Missing <code><span class="identifier">std</span><span class="special">::</span></code> qualifier for <code><span class="identifier">fabs</span></code> in <code><span class="identifier">phoenix</span><span class="special">/</span><span class="identifier">test</span><span class="special">/</span><span class="identifier">stdlib</span><span class="special">/</span><span class="identifier">cmath</span><span class="special">.</span><span class="identifier">cpp</span></code> - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/11085">#11085</a> - Missing qualifier for pow call in <code><span class="identifier">phoenix</span><span class="special">/</span><span class="identifier">test</span><span class="special">/</span><span class="identifier">function</span><span class="special">/</span><span class="identifier">function_tests</span><span class="special">.</span><span class="identifier">cpp</span></code> - </div> - </li> - <li> - <div> - Fixes for a number of cases failing with <em>bind</em>, - <em>lambda</em> and <em>let</em>. - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/predef/">Predef</a>:</span> - <ul> - <li> - <div> - Version 1.2 - </div> - </li> - <li> - <div> - Added Visual Studio 2015 detection. - </div> - </li> - <li> - <div> - Added detection of Haiku OS. - </div> - </li> - <li> - <div> - Fix Android endian detection. - </div> - </li> - <li> - <div> - Added <code><span class="identifier">predef_check</span></code> - program and BBv2 integration for build configuration checks. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/random/">Random</a>:</span> - <ul> - <li> - <div> - Added non_central_chi_squared_distribution. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/thread/">Thread</a>:</span> - <ul> - <li> - <div> - <em>Version</em> 4.5.0 - </div> - </li> - <li> - <div> - <em>New Experimental Features:</em> - <ul> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/9600">#9600</a> - Async: Add task_region - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10611">#10611</a> - Add emplace promise::set_value and emplace make_ready_future - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10826">#10826</a> - Add scheduled executor operations - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/11048">#11048</a> - Add a serial_executor based on continuations - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <em>Fixed Bugs:</em> - <ul> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/6787">#6787</a> - boost::thread::sleep() hangs if system time is rolled back - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10734">#10734</a> - Submit method work differently on different executors, some - throw exception and some silently ignore error (thread_executor - and inline_executor) - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10736">#10736</a> - Task exceptions silently ignored. I think std::terminate solution - from N3785 and std::thread is better choice and more consistent. - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10737">#10737</a> - In serial_executor we have infinite wait if task throw exception. - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10822">#10822</a> - Boost.Thread fails to compile on Android - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10824">#10824</a> - Boost.Thread 1.57 breaks Windows XP compatibility for SP2 and - below. - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10963">#10963</a> - future&lt;future&lt;T&gt;&gt;::then Has No Implementation - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10964">#10964</a> - future&lt;future&lt;T&gt;&gt;::unwrap().then() Deadlocks - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10968">#10968</a> - The futures returned by async() and future::then() are not - blocking. - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10971">#10971</a> - shared_future::get()/get_or() must be const - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10972">#10972</a> - shared_future::then() can be called multiple times. - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10979">#10979</a> - Support T&amp; type deduction when the make_ready_future parameter - is reference_wrapper&lt;T&gt; - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/10996">#10996</a> - Thread physical_concurrency() is failing on Windows - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/11035">#11035</a> - BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE not defined for Android - </div> - </li> - <li> - <div> - <a href="http://svn.boost.org/trac/boost/ticket/11053">#11053</a> - The attached code results in a R6025 - pure virtual function - call in run_thread_exit_callbacks - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/type_erasure/">TypeErasure</a>:</span> - <ul> - <li> - <div> - Fixed compilation with MSVC 12. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/type_index/">TypeIndex</a>:</span> - <ul> - <li> - <div> - Link time assertions added on platforms that support it - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/units">Units</a>:</span> - <ul> - <li> - <div> - Fix for base units with arbitrary dimensions. - </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 move assignment with stateful, propagate_on_container_move_assign - allocators (<a href="https://svn.boost.org/trac/boost/ticket/10777">#10777</a>). - </div> - </li> - <li> - <div> - Fix potential overflow when calculating number of buckets to allocate - (<a href="https://github.com/boostorg/unordered/pull/4">GitHub - #4</a>). - </div> - </li> - <li> - <div> - Other minor changes, see <a href="http://www.boost.org/doc/html/unordered/changes.html">changelog</a>. - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - <span class="library"><a href="http://www.boost.org/libs/variant/">Variant</a>:</span> - <ul> - <li> - <div> - <strong>Breaking change:</strong> Compile time checked - getter is now used by default in <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">get</span><span class="special">&lt;</span><span class="identifier">U</span><span class="special">&gt;(</span><span class="identifier">VariantT</span><span class="special">)</span></code> and <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">polymorphic_get</span><span class="special">&lt;</span><span class="identifier">U</span><span class="special">&gt;(</span><span class="identifier">VariantT</span><span class="special">)</span></code>. New getter asserts that type <code><span class="identifier">U</span></code> is one of the types that can - be stored in <code><span class="identifier">VariantT</span></code>. - Define <code><span class="identifier">BOOST_VARIANT_USE_RELAXED_GET_BY_DEFAULT</span></code> - to change default behavior. See <a href="http://www.boost.org/doc/html/variant/reference.html#header.boost.variant.get_hpp">get.hpp</a> - and <a href="http://www.boost.org/doc/html/variant/reference.html#header.boost.variant.polymorphic_get_hpp">polymorphic_get.hpp</a> - descriptions for more info <a href="https://svn.boost.org/trac/boost/ticket/547">#547</a>. - </div> - </li> - <li> - <div> - Added missing comparison operators to variant <a href="https://svn.boost.org/trac/boost/ticket/8620">#8620</a>, <a href="https://svn.boost.org/trac/boost/ticket/10811">#10811</a> - </div> - </li> - <li> - <div> - Multiple documentations fixes <a href="https://svn.boost.org/trac/boost/ticket/10273">#10273</a>, <a href="https://svn.boost.org/trac/boost/ticket/10653">#10653</a> - </div> - </li> - <li> - <div> - Variadic templats enabled on Clang <a href="https://svn.boost.org/trac/boost/ticket/10832">#10832</a> - </div> - </li> - <li> - <div> - Autodetection of return types for visitors in C++14, which makes - it possible to use <code><span class="identifier">boost</span><span class="special">::</span><span class="identifier">apply_visitor</span></code> - with generic lambdas <a href="https://svn.boost.org/trac/boost/ticket/10837">#10837</a>: - </div> -<pre><span class="keyword">auto</span> <span class="identifier">str</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">apply_visitor</span><span class="special">(</span> - <span class="special">[](</span><span class="keyword">auto</span> <span class="identifier">v</span><span class="special">)</span> <span class="special">{</span> - <span class="keyword">return</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">lexical_cast</span><span class="special">&lt;</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">string</span><span class="special">&gt;(</span><span class="identifier">v</span><span class="special">);</span> - <span class="special">},</span> - <span class="identifier">variant_instance</span> -<span class="special">);</span> -</pre> - </li> - <li> - <div> - Improved swap functions <a href="https://svn.boost.org/trac/boost/ticket/10882">#10882</a> - </div> - </li> - <li> - <div> - Many improvements to variadic templates, even more methods support - variadics. - </div> - </li> - <li> - <div> - Multiple bugfixes and testing improvements including Coveralls integration - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - <div id="version_1_58_0.compilers_tested"> - <h3><span class="link">Compilers Tested</span></h3> - <p> - Boost's primary test compilers are: - </p> - <ul> - <li> - <div> - Linux: - <ul> - <li> - <div> - Clang: 3.4 - </div> - </li> - <li> - <div> - Clang, C++14: 3.5, 3.6 - </div> - </li> - <li> - <div> - GCC: 4.4.7, 4.9.2 - </div> - </li> - <li> - <div> - GCC, C++98: 4.8.1, 4.8.2 - </div> - </li> - <li> - <div> - GCC, C++11: 4.4.7, 4.8.4, 4.9.2 - </div> - </li> - <li> - <div> - GCC, C++14: 4.9.2 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Windows: - <ul> - <li> - <div> - GCC, mingw: 4.4.7, 4.5.4, 4.6.3, 4.7.3, 4.8.2 - </div> - </li> - <li> - <div> - Visual C++: 8.0, 9.0, 10.0, 11.0, 12.0 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - FreeBSD: - <ul> - <li> - <div> - GCC: 4.2.1 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - QNX: - <ul> - <li> - <div> - QCC: 4.4.2 - </div> - </li> - </ul> - </div> - </li> - </ul> - <p> - Boost's additional test compilers include: - </p> - <ul> - <li> - <div> - Linux: - <ul> - <li> - <div> - Clang: 3.0, 3.1, 3.2, 3.3, 3.4 - </div> - </li> - <li> - <div> - Clang, C++14: 3.5, 3.6 - </div> - </li> - <li> - <div> - GCC: 4.4.7, 4.6.4, 4.7.3, 4.8.1, 4.9.2, 5.0.0 (experimental) - </div> - </li> - <li> - <div> - GCC, C++11: 4.4.7, 4.8.4, 4.9.2 - </div> - </li> - <li> - <div> - GCC, C++14: 4.9.2 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Windows: - <ul> - <li> - <div> - GCC, mingw: 4.4.7, 4.5.4, 4.6.4, 4.7.3 - </div> - </li> - <li> - <div> - Visual C++: 8.0, 9.0, 10.0, 11.0, 12.0, 14.0 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - Android - <ul> - <li> - <div> - Clang: 3.4, 3.5 - </div> - </li> - <li> - <div> - GCC: 4.8, 4.9 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - FreeBSD: - <ul> - <li> - <div> - GCC: 4.2.1 - </div> - </li> - </ul> - </div> - </li> - <li> - <div> - QNX: - <ul> - <li> - <div> - QCC: 4.4.2 - </div> - </li> - </ul> - </div> - </li> - </ul> - </div> - <div id="version_1_58_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/state/feed-pages.txt b/generated/state/feed-pages.txt index 2cd140a3..43fe8bcb 100644 --- a/generated/state/feed-pages.txt +++ b/generated/state/feed-pages.txt @@ -1917,6 +1917,29 @@ -type "release ) +(feed/history/boost_1_63_0.qbk +-dir_location +-id +"version_1_63_0 +-last_modified +@Fri, 30 Sep 2016 11:16:29 +0100 +-location +"users/history/version_1_63_0.html +-notice +-notice_url +-page_state +-pub_date +-purpose +" +" New Libraries: Updated Libraries: +" +-qbk_hash +"454bd8c3cbd9ec5294a56646df55c15803e255c2b4015264c77039d181d69605 +-title +"Version 1.63.0 +-type +"release +) (feed/history/unversioned.qbk -dir_location -id diff --git a/generated/state/rss-items.txt b/generated/state/rss-items.txt index 37541e41..fcef7562 100644 --- a/generated/state/rss-items.txt +++ b/generated/state/rss-items.txt @@ -32834,6 +32834,66 @@ -quickbook "feed/history/boost_1_62_0.qbk ) +(feed/history/boost_1_63_0.qbk +-item +"Version 1.63.0http://www.boost.org/users/history/version_1_63_0.htmlhttp://www.boost.org/users/history/version_1_63_0.html +" +" +" <div id="version_1_63_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_63_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_63_0.compilers_tested"> +" <h3><span class="link">Compilers Tested</span></h3> +" <p> +" Boost's primary test compilers are: +" </p> +" <ul> +" <li> +" <div> +" <em>TODO</em> +" </div> +" </li> +" </ul> +" <p> +" Boost's additional test compilers include: +" </p> +" <ul> +" <li> +" <div> +" <em>TODO</em> +" </div> +" </li> +" </ul> +" </div> +" <div id="version_1_63_0.acknowledgements"> +" <h3><span class="link">Acknowledgements</span></h3> +" <p> +" <em>TODO</em> +" </p> +" </div> +" +-last_modified +@Fri, 30 Sep 2016 11:16:29 +0100 +-quickbook +"feed/history/boost_1_63_0.qbk +) (feed/history/unversioned.qbk -item "Old VersionsTue, 14 Dec 1999 12:00:00 GMT<span class="brief"><span class="purpose"> diff --git a/users/history/version_1_63_0.html b/users/history/version_1_63_0.html new file mode 100644 index 00000000..aba3de2b --- /dev/null +++ b/users/history/version_1_63_0.html @@ -0,0 +1,128 @@ + + + + + Version 1.63.0 - work in progress + + + + + + + + + + +
+
+ +
+
+
+
+
+
+

Version 1.63.0

+
+

Note: This release is + still under development. Please don't use this page as + a source of information, it's here for development + purposes only. Everything is subject to + change.

+
+

Version 1.63.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 +

+
+
+
+
+
+
+
+ + + +
+
+
+ + + +