Boost 1.65.0 is out. This latest release has been announced for general availability and can now be downloaded from the official Boost website here.
Boost is collection of very high quality open source and cross platform C++ libraries. Just like the Standard Template Library (STL) Boost has been instrument in extending the capabilities of the core C++ language making it more powerful, stable and productive.
With work spanning over the decades Boost serves as a test sandbox for new functionality into the programming language and the result of several of it’s libraries have become part of the core C++ standards over the years.
Highlights of the Boost 1.65.0 Library Release
As with previous major releases, the version comes with new libraries, updated libraries and tested support for updated C++ compilers.
Among the new libraries are PolyCollection from Joaquín M López Muñoz. This library provides fast containers of polymorphic objects. Boost.PolyCollection provides an alternative data structure that restores memory contiguity and packs elements according to their concrete type.
This increases the CPU and cache efficiency due to heap degrades caused by lack of memory contiguity. It also gracefully handles virtual operations on a sequence of polymorphic objects. This is especially where the types differ. This could result in failures in branch prediction and a lower execution speed.
The other new library is Stacktrace from Antony Polukhin. This allows programmers to copy, gather, print and store backtraces. This library provides information about call sequences in a human readable form.
As of this version, Boost.Stacktrace has an issue when using it with MinGW (with msys2) on Windows platforms where it always returns zero stack size in default mode. Also a patch with
boost::core::demangle has been necessary to fix an issue where symbols are not demangled.
Issue with MingGW: https://github.com/boostorg/stacktrace/issues/14