Boost logo

Boost :

From: Edward Diener (eldiener_at_[hidden])
Date: 2020-12-15 17:12:42


I had previously proposed that we tag the minimum C++ standard level for
Boost libs by adding information to the json meta information in
libraries.json for each library. I would like to revisit that proposal,
which involved more elaborate suggestions, with this simpler overall
proposal: for each Boost C++ library whose minimum C++ standard level is
C++11 or above we add a json field called 'cxxstd' whose value
corresponds to one of the same values as currently exists in Boost.Build
for the 'cxxstd' feature, ie. 11,14,17,20, to the libraries.json file
for that library. This json value can then be used in Boost
documentation of each library to specify the minimum C++ standard level
needed by an end-user in order to use that library. Obviously we can
also add "cxxstd": "03" for the many Boost libraries which can still be
used at the C++98/C++03 compilation level also, even though I would
argue that not having a "cxxstd" json field should mean C++98/C++03 by
default. I would be willing to create the necessary PRs for each
library, as I have a pretty good internal list of this information.

The gist of this proposal is to make it much easier for end-users
wishing to use a Boost library to immediately know whether the library
they wish to use is usable at the C++ standard compilation level they
are using for compilation, without having to spend time searching for
such information, which is often not readily available, in the
documentation of the library they are considering.

I can go ahead and start doing this now, but of course I am willing to
listen to what others think about this. But let's not let another round
of inertia stop doing at all what should be a simple means of telling
end-user's whether a Boost library is at least minimally usable by them
in their C++ projects.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk