Boost logo

Boost :

From: Mateusz Loskot (mateusz_at_[hidden])
Date: 2020-09-22 11:03:01


On Mon, 21 Sep 2020 at 19:38, Edward Diener via Boost
<boost_at_[hidden]> wrote:
>
> Since we are reviewing Vinnie Falco's JSON library I thought that this
> would be a good time to present a proposal to add information to each
> Boost library's meta/libraries.json file regarding the level of C++
> standard compliance for that library. This could then be added to each
> library's visual documentation so that end-users would instantly know
> the C++ standard level they would need to use in order to use a Boost
> library.
>
> My proposal is to add 3 fields whose data would be the same as the
> cxxstd allowed values from Boost Build, using the first value of each
> choice ( currently 03, 11, 14, 17, 20 ).
>
> standard = minimum C++ level for the library
> extended = same functionality in the library as the minimum C++ level
> but with extended use given higher C++ levels
> required = new functionality in the library above the minimum C++ level
> which requires given higher C++ levels

I once looked [1] for ways to specify minimum required version of C++
in the meta/libraries.json and I'm glad the idea is picking up an interest.

But, do we really need such a detailed set of tags?

We have `std`, as Peter pointed out.
Why not just accompany it with `std_required`
and display it in the libraries list in the docs.
That's all the majority of users/developers need to know really.

Any extra info on correspondence between a library and C++ standard
can be easily explained in a brief section in the library's docs.

[1] https://lists.boost.org/Archives/boost/2019/11/247385.php

Best regards,

-- 
Mateusz Loskot, http://mateusz.loskot.net

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