| Platform | File | SHA256 Hash | |
|---|---|---|---|
| Unix | boost_1_69_0.tar.bz2 | 8f32d4617390d1c2d16f26a27ab60d97807b35440d45891fa340fc2648b04406 8f32d46173....2648b04406 8f32d....04406 | |
| boost_1_69_0.tar.gz | 9a2c2819310839ea373f42d69e733c339b4e9a19deab6bfec448281554aa4dbb 9a2c281931....1554aa4dbb 9a2c2....a4dbb | ||
| Windows | boost_1_69_0.7z | af05616f71006f97833e130aad886c96136457511ace4b5496d6566e69cbe0ca af05616f71....6e69cbe0ca af056....be0ca | |
| boost_1_69_0.zip | d074bcbcc0501c4917b965fc890e303ee70d8b01ff5712bae4a6c54f2b6b4e52 d074bcbcc0....4f2b6b4e52 d074b....b4e52 | ||
| Windows (Binary) | boost_1_69_0-bin-msvc-all-32-64.7z | bccf6828da9908d5cda8c0b4e486cd5078bab6cfe768214b969811a8731708e0 bccf6828da....a8731708e0 bccf6....708e0 | |
| boost_1_69_0-msvc-10.0-32.exe | 20eeb1ffd21d584f645846fe5d5510a07a8a38815ae9c201ab02cc2e6d33829d 20eeb1ffd2....2e6d33829d 20eeb....3829d | ||
| boost_1_69_0-msvc-10.0-64.exe | faead99dc4ee3aa09bd805e9b3d5996aa54800209d746511dfd43a7c8aae3205 faead99dc4....7c8aae3205 faead....e3205 | ||
| boost_1_69_0-msvc-11.0-32.exe | 96e657e2c8da880d980173e68025b30930f2b94f88211e05e2b931a2f61125ab 96e657e2c8....a2f61125ab 96e65....125ab | ||
| boost_1_69_0-msvc-11.0-64.exe | 8f04086229ad666f30cce588ed711152964fddfe7c5567858f1711ecf7c39da5 8f04086229....ecf7c39da5 8f040....39da5 | ||
| boost_1_69_0-msvc-12.0-32.exe | 0e62021d7f4ae9cd66630d30a6b5d21c8dfafc27dea5935d0a6f0df8cb29b2c0 0e62021d7f....f8cb29b2c0 0e620....9b2c0 | ||
| boost_1_69_0-msvc-12.0-64.exe | 13f6ac09e1efd772ec6d12f6a6628d19ff3163fe3cdbd1ac7018ded1cb0b16fb 13f6ac09e1....d1cb0b16fb 13f6a....b16fb | ||
| boost_1_69_0-msvc-14.0-32.exe | f395ead8eb92e430703772911d5e55f153a9a50baeaecf997609bcd150c88980 f395ead8eb....d150c88980 f395e....88980 | ||
| boost_1_69_0-msvc-14.0-64.exe | 7c71e2d7d73a81b64e9e7dcfc7389ff8bb5676da8bda90342ffd12a262127352 7c71e2d7d7....a262127352 7c71e....27352 | ||
| boost_1_69_0-msvc-14.1-32.exe | c575920161c1eb0061674d73aa8902628843910743ba80322a31f444b36d5d46 c575920161....44b36d5d46 c5759....d5d46 | ||
| boost_1_69_0-msvc-14.1-64.exe | 26b940908edb9ba5e68255c06336978008cc33b31f45f4888e52d9bbf7c4b3de 26b940908e....bbf7c4b3de 26b94....4b3de | ||
| boost_1_69_0-msvc-8.0-32.exe | 7012cc7421ad42c5f01710e4c77246a4ea22c1204f9bea39b76efd682e679ace 7012cc7421....682e679ace 7012c....79ace | ||
| boost_1_69_0-msvc-8.0-64.exe | c328566076023f1b9ed9316a8837cc83f21c41d4fd6ea32da6b9cc49abb8db9d c328566076....49abb8db9d c3285....8db9d | ||
| boost_1_69_0-msvc-9.0-32.exe | 5dc432a5a4ad029306bf02fe4de9ac8f20bf0ece3a8358d82fe6e27d1e90ad1b 5dc432a5a4....7d1e90ad1b 5dc43....0ad1b | ||
| boost_1_69_0-msvc-9.0-64.exe | 9ac389b91f6c9ba6a3a1be5b9b2ae47132377dac5ccb69e97f9b371fa572e7ee 9ac389b91f....1fa572e7ee 9ac38....2e7ee | ||
This is an older version of Boost and was released in 2018. The current version is 1.89.0.
Version 1.69.0
December 12th, 2018 02:58 GMT
Notes for non-Windows users
The Boost build system now supports visibilities. If you are building shared libraries, they will use hidden visibility by default. As a result Boost shared libraries become smaller, load faster and have less chances to get a symbol collision.
See Boost.Build visibility and local-visibility for more info.
To disable that feature you can use use a command line ./b2 visibility=global to
build.
New Libraries
- Safe Numerics:
- A library for guaranteed correct integer arithmetic for C++14 and later, from Robert Ramey.
Updated Libraries
-
Any:
-
Fixed issue with visibility. Now
boost::anyvariables constructed in one shared library with hidden visibility could be used and destroyed in other shared library with hidden visibility. - Maintenance: dropped some dependencies on other Boost libraries, fixes for docs.
-
Fixed issue with visibility. Now
-
Asio:
-
Fixed a problem with the detection of
std::futureavailability with libstdc++. -
Fixed compile error in regex overload of
read_until. - Fixed a timer heap corruption issue that can occur when moving a cancelled timer.
-
Fixed detection of
std::experimental::string_viewandstd::string_viewwith newer clang/libc++. -
Fixed MSVC version detection for availability of
std::invoke_result. -
Fixed the buffer sequence traits to test the new requirements, if
decltypeis available. - Fixed an MSVC issue when building with exceptions disabled.
- Added SSL context options for TLS v1.3.
- Added a compile-time test for TLS v1 support.
- Fixed the macro used to test for TLS v1.2 support.
- Prevented global objects from being created once per thread on Windows.
-
Fixed a crash when using
size(),max_size()orempty()on default-constructed resolver results. -
Changed to move the return value in
basic_resolver_results::begin()to avoid copying. - Enabled move support for the Intel Compiler.
-
Fixed
std::string_viewdetection issue when using clang-cl. -
Fixed the handler tracking operation name for
io_context::executor_type::dispatch. - Fixed a buffer overflow that could occur when parsing an address string with a 64-bit scope id.
- Added examples showing how to write composed operations.
- Added C++11 versions of the Timeouts, Timers, SOCKS4 and SSL examples.
- Fixed minor issues in documentation and examples.
-
Fixed a problem with the detection of
- Assign:
-
Beast:
- This version fixes some issues in the examples, and provides a new experimental socket which supports built-in timeouts on asynchronous operations.
- New CppCon 2018 websocket chat example and presentation video.
- For a complete list of changes, please view the official Release Notes.
-
CircularBuffer:
- Use the empty base optimization for storing allocators that are empty and not final (Glen Fernandes).
-
Concept Check:
- Removed dependency on mpl. (PR#14)
- Context:
-
Core:
-
Implemented
boost::empty_value, for library authors to conveniently leverage the Empty Base Optimization to store objects of potentially empty types (Glen Fernandes). This facility is now used in Boost.Beast, Boost.CircularBuffer, Boost.MultiArray, and more. -
Implemented
boost::quick_exitto provide the C++11 standard library facilitystd::quick_exitfunctionality (Peter Dimov). -
Reduced the number of statics in Lightweight Test, and employ lighter
abort behavior for MSVC compilers upon failure to call
boost::report_errors(Glen Fernandes).
-
Implemented
-
DLL:
- Resolved link issues with the smart library #20.
- Maintenance: fixes for docs and tests.
- Dynamic Bitset:
- Fiber:
-
Filesystem:
-
Don't use
readdir_ron Linux and Android since thereaddirfunction is already thread-safe. (PR#68, #72) -
Fixed crashes in
boost::filesystem::copydue to undefined behavior in the implementation. (PR#71) -
Fixed undefined behavior in
boost::filesystem::directory_iteratorimplementation. (PR#77) -
Fixed compilation errors when using directory iterators with
BOOST_FOREACH. - Removed workarounds for older PGI C++ compiler versions to fix compilation on the newer ones. (PR#49)
- Fixed MSVC warnings about narrowing conversions. (PR#44)
-
Don't use
-
Flyweight:
- Fixed some issues in GCC related to Boost.MPL placeholder expression handling.
- Maintenance fixes.
- Function:
-
Geometry:
-
Improvements
- PR#486 Karney's solution of direct geodesic problem for internal use (thanks to Adeel Ahmad).
- PR#490 Discrete Frechet and Hausdorff distance algorithms (thanks to Yaghyavardhan Singh Khangarot).
- PR#496 New run-time and upgraded compile-time SRS transformation interfaces (undocumented for now due to potential interface changes).
- Solved issues
- Bugfixes
-
Improvements
-
GIL:
-
Changed
-
Refactored library includes to
#include <boost/gil/...>structure (PR#145).
-
Refactored library includes to
- Removed
-
Fixed
-
Fixed
point<T>divide and multiply to not to hardcode result aspoint<double>(PR#157). -
Fixed conflict between
std::fill_nandboost::range::fill_n(PR#152). -
Fixed issue with re-assignment of functor from
for_each_pixel(PR#139). -
Fixed missing template keyword prior to dependent name
axis_iterator(PR#129).
-
Fixed
-
Changed
-
Integer:
-
boost/pending/integer_log2.hppheader is deprecated and will be removed in future releases. Useboost/integer/integer_log2.hppinstead.
-
-
Iostreams:
- Remove call to nonexistent member seekpos() of std::fpos (PR#58)
-
Iterator:
-
Fixed compilation problems with ambiguous unqualified calls to
advanceanddistanceon iterators whose types involve types in the namespaceboost. (#43)
-
Fixed compilation problems with ambiguous unqualified calls to
-
LexicalCast:
- Fixed sign-conversion warnings #8991.
- Maintenance: dropped some dependencies on other Boost libraries, fixed build system warnings.
- Log:
-
Logic:
- Breaking change: Use explicit operator bool when available (PR#5)
-
Math:
- Add LambertW functions.
- Update integration routines to support complex valued integrands and contour integrals.
- Added the derivative of the Barycentric rational approximation.
- Minor fixes to better support variable precision floating point types.
- Removed use of deprecated Boost.Endian in favour of Predef.
- Updated continued fraction and series evaluation code to support complex types.
- Prevent logic error leading to infinite loop in toms748_solve. See #138.
- Fix mean and standard_deviation for extreme_value_distribution. See #139.
- Improve heuristics used in newton_raphson_iterate. See #145.
-
Fix result of
erf(NaN). See #141 #141. - Big push to reduce GCC warnings. See #136 #136.
- Refactor polynomial addition. See PR#132.
-
Fix for vxWorks having a
realfunction in the global namespace. See PR#131. -
Improve
sincapproximations and add better tests. - Fix typo in Student's T hypothesis testing documentation, see #143.
-
Mp11:
-
Implemented the
mp_starts_withfacility (Glen Fernandes).
-
Implemented the
-
MultiArray:
- Improve C++11 allocator model support including: Support for C++11 minimal allocators, support for stateful allocators, using the allocator for construction and destruction of the value type, and using the empty base optimization for storing empty or stateless allocators (Glen Fernandes).
-
Multi-index Containers:
- Introduced an alternative terse key specification syntax for C++17 compliant environments.
-
Multiprecision:
- Big update to better support variable precision types so that the precision of the result is always the largest of all the arguments.
-
Add support for allocators that are
finalin __cpp_int (Glen Fernandes). - Removed use of deprecated Boost.Endian in favour of Predef.
-
Add support for
std::string_view. - Fixed minor bug in constant initialization. See #67.
-
Make assignment of non-finite value to
cpp_inta runtime errors. See #58. -
Added typedefs for
cpp_bin_float_octandcpp_complex_oct.
-
PolyCollection:
-
Added Boost.PolyCollection-specific versions of algorithms
std::for_each_nandstd::sample.
-
Added Boost.PolyCollection-specific versions of algorithms
-
Pool:
- Replace boost::mutex use to avoid a dependency on Boost.Thread (PR#23)
-
Preprocessor:
- Supports the new C++ standard conforming preprocessor in VC++ 14.1, which is currently enabled by using the /experimental:preprocessor switch, in Visual Studio 2017 15.8 on up.
- Rational:
-
Spirit:
- Spirit.X3:
- Spirit V2
-
Spirit.Classic:
- Missing visibility mark on exception types (#409)
-
Stacktrace:
-
libbacktraceusage was significantly improved.BOOST_STACKTRACE_USE_BACKTRACEorboost_stacktrace_backtraceusers are encouraged to update:- Memory consumprion dropped down.
- Stack capturing became faster by an order of magnitude.
-
syminfofallback enabled to provide information for visible symbols even without debug information (thanks to github user driesdeschout!)#60, #61. -
Exact location of the
backtrace.hheader now can be specified viaBOOST_STACKTRACE_BACKTRACE_INCLUDE_FILE, to allowbacktrace.hheader usage on platforms and compilers where that header is unreachable otherwise (for example Ubuntu Xenial + Clang) #59.
-
Optimized stack capturing if
max_depthis set (thanks to Jan Eisenhauer for the PR!) #67. -
Added
to_string(const stacktrace& )functions for fast conversion of stacktraces tostd::string#57. - Maintenance: updated docs #62, tests updated.
-
-
System:
- Boost.System is now header-only. A stub library is still built for compatibility, but linking to it is no longer necessary.
-
Even more functions have been marked
constexpr. -
The destructor of
error_categoryis nowprotectedand no longervirtual. This is a potentially breaking change, but its impact is expected to be limited. -
error_categorynow has a constructor that accepts a 64 bit identifier, enabling distinct category objects to compare equal. -
The constructors of
error_categoryare nowprotected. -
A non-allocating, nonthrowing overload of
messagehas been added. -
A virtual function
failedhas been added, allowing categories for which success is not synonymous with 0. -
The deprecated
boost::system::throwsobject has been removed. -
boost::throws()is now deprecated and its use is discouraged. -
The constructor of
system_errortaking a singleerror_codeargument is nowexplicit. -
system_error::code()now returns by value.
-
Test:
- Boost.test v3.9 see the Changes log for more details.
-
New feature:
- Official support of header-only variant of Boost.Test with multiple translation units.
-
Now possible to manually add a test case by specifying its
name, with
BOOST_TEST_CASE_NAME -
Better support of
boost::exceptionin the logs
- Bug fixes and pull requests:
-
TypeIndex:
-
Fix the regression and speed up parsing of the
boost/type_traits.hppheader by 30% (thanks to Nikita Kniazev for the PR!) #21.
-
Fix the regression and speed up parsing of the
-
Utility:
-
Added support for non-inheritable empty types to
boost::compressed_pairby avoiding the empty base optimization for types which are declared as final (Glen Fernandes).
-
Added support for non-inheritable empty types to
-
Variant:
-
Fixed issue with visibility. Now
boost::bad_visitexception could cross the boundaries of shared library with hidden visibility and could be catched in other shared library with hidden visibility.
-
Fixed issue with visibility. Now
-
YAP:
- Minor changes to support MSVC++ version 14.15 (Visual Studio 2017 version 15.8).
- Doc fixes.
Discontinued Libraries
- Signals (v1) is now removed. Its removal was announced in 1.68 and its deprecation was announced in 1.54. Boost 1.68 is the last release that provides this library. Users are encouraged to use Signals2 instead. The Boost community thanks Douglas Gregor for his work on Signals which served its users well and which also inspired Signals2.
Compilers Tested
Boost's primary test compilers are:
-
Linux:
- Clang: 3.0, 4.0.1, 6.0.1
- Clang, C++0x: 3.0
- Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 6.0.1
- Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.2, 6.0.1
- Clang, C++17: 5.0.2, 6.0.1
- GCC: 4.4.7, 4.5.3, 4.6.3, 5.4.0, 8.0.1
- GCC, C++0x: 4.4.7
- GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 8.0.1
- GCC, C++14: 5.4.0, 5.5.0, 6.4.0, 7.1.0, 7.3.0, 8.0.1
- GCC, C++17: 7.3.0, 8.0.1
- Intel, C++14: 18.0
-
OS X:
- Apple Clang: 9.0.0, 9.1.0, 10.0.0
- Apple Clang, C++11: 9.0.0, 9.1.0, 10.0.0
- Apple Clang, C++14: 9.0.0, 9.1.0, 10.0.0
- Apple Clang, C++17: 9.1.0, 10.0.0
- Apple Clang, C++1z: 9.0.0
- Apple Clang, C++2a: 10.0.0
-
Windows:
- GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
- GCC, C++0x: 4.6.4
- GCC, C++11: 4.7.3, 4.8.1, 4.9.3
- GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0
- GCC, C++17: 7.1.0, 7.2.0, 7.3.0
- Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
-
FreeBSD:
- Clang: 4.0.0
- Clang, C++11: 4.0.0
- Clang, C++14: 4.0.0
- Clang, C++1z: 4.0.0
Boost's additional test compilers include:
-
Linux:
- Clang: 3.0, 3.8.1, 3.9.1, 4.0.1, 5.0.2, 6.0.1
- Clang, C++0x: 3.0
- Clang, C++11: 3.0, 3.1, 3.2, 3.3, 3.4, 4.0.1, 6.0.1
- Clang, C++14: 3.5.0, 3.6.0, 3.7.1, 3.8.0, 3.9.1, 4.0.0, 4.0.1, 5.0.2, 6.0.1, 7.0.0
- Clang, C++17: 5.0.2, 6.0.1
- GCC: 4.4.7, 4.5.3, 4.6.3, 4.9.4, 5.4.0, 5.5.0, 8.0.1
- GCC, C++0x: 4.4.7
- GCC, C++11: 4.7.3, 4.8.5, 4.9.4, 5.4.0, 6.4.0, 7.1.0, 8.0.1
- GCC, C++14: 5.4.0, 5.5.0, 6.3.0, 6.4.0, 7.1.0, 7.3.0, 8.0.1, 8.1.0
- GCC, C++17: 7.3.0, 8.0.1
- Intel, C++14: 18.0
-
OS X:
- Apple Clang: 9.0.0, 9.1.0, 10.0.0
- Apple Clang, C++11: 9.0.0, 9.1.0, 10.0.0
- Apple Clang, C++14: 9.0.0, 9.1.0, 10.0.0
- Apple Clang, C++17: 9.1.0, 10.0.0
- Apple Clang, C++1z: 9.0.0
- Apple Clang, C++2a: 10.0.0
-
Windows:
- GCC: 3.4.5, 4.1.2, 4.2.4, 4.3.3, 4.4.0, 4.5.4
- GCC, C++0x: 4.6.4
- GCC, C++11: 4.7.3, 4.8.1, 4.9.3
- GCC, C++14: 5.1.0, 5.2.0, 5.3.0, 6.1.0, 6.2.0, 6.3.0, 6.4.0
- GCC, C++17: 7.1.0, 7.2.0, 7.3.0
- Visual C++: 7.1, 8.0, 9.0, 10.0, 11.0, 12.0, 14.0, 14.1
-
FreeBSD:
- Clang: 4.0.0
- Clang, C++11: 4.0.0
- Clang, C++14: 4.0.0
- Clang, C++1z: 4.0.0
Acknowledgements
Daniel James, Vladimir Prus, Marshall Clow and Michael Caisse managed this release.