boost 1.54 - a short overview
published at 01.07.2013 23:04 by Jens Weller
Save to Instapaper Pocket
At the 1st July the new version of the boost libraries has been released, boost 1.54. This version not only brings 3 new libraries, but also deprecates one library and removes 80386 from the list of supported processors.
Removing the support for such an old processor will not really affect most boost users, but shows that actually boost does have a certain range of supported (hardware) platforms, which are covered by tests for each release. The deprecation of boost::signals shows that boost is able to move on and replace one library with another. From now on its recommended to use boost::signals2, as there is no active maintainer for boost::signals anymore. With adding three more libraries to the collection, boost shows steady growth, the three new libraries are:
- boost::log - logging for boost
- boost::tti type traits inspection
- boost::type_erasure runtime polymorphism based on concepts
A short view on the new libraries:
boost::log
This library has been waiting for inclusion for some time, and now finally got the approval, after many changes. boost log now supports many different ways for logging, plus support for filters, sinks, log-rotation and many other logging features. More Details.
boost::tti
TTI stands for Type Traits Introspection, the goal of this library is to enable introspection of types in a central space. The library allows for introspecting:
- member data
- member functions
- static member data
- static member functions
- inner data
- inner functions
boost::type_erasure
Runtime polymorphism based on concepts. This library is build on the idea of value semantics, which Sean Parent gave a keynote at C++Now in 2012, and last year at Meeting C++ Pyry Jahkola gave a talk about. Boost has now with type_erasure its own framework for building upon the idea of value semantics and inheritance free polymorphism. The examples include a polymorphic range formatter and a typesafe printf.
Changes: Additions & Bugfixes
Of course a new version of boost comes always with a lot of bugfixes and additions to the already existing libraries. One important addition is surely adding spatial indexes to boost::geometry, which now also has SVG support. Math added support for __float128 and Boost.Math supports now Clang. Boost.Thread added future<>.then, and allows now movable arguments to be passed to call_once.
Join the Meeting C++ patreon community!
This and other posts on Meeting C++ are enabled by my supporters on patreon!