On 12/16/2020 2:51 AM, Alexander Grund via Boost wrote:
Am 15.12.20 um 18:12 schrieb Edward Diener via Boost:
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 not treat a missing cxxstd as "C++03" because that makes the proposal mostly useless: Your goal was to tell end users whether they can use the library given their std level. Now you treat libraries with missing information as "compatible with everything" so end users will become confused and annoyed and will ultimately not use this. I'd hence make it explicit and never assume.
All I meant here is that no 'cxxstd' field for a library means C++03 as the minimal level. How we decide to display this to the end-user can be discussed and I will go along with whatever others think is best. Obviously we can display the library information by specifying C++03 as the minimal level, or adversely we can display nothing for that given library as a C++ minimal standard level, including even the mention of a "Minimum C++ standard compilation level', and let the user assume that since nothing is displayed the library is usable with any C++ standard level.
BTW: This will ultimately end up at (e.g.) https://www.boost.org/doc/libs/1_75_0/, won't it? Or where would that be displayed?
The idea is that upcoming release docs would incorporate the information, but I am not adverse showing this for 1.75 if people want that.
If so the field "Standard" should be clarified. I'm not sure what it means here and it often is empty (which I'd simply remove)
I agree, and some better, and longer phrase than just 'standard' should probably be chosen. I do believe the phrase was meant to specify the C++ standard release in which the library was accepted as a C++ standard library, but I have no idea what meta information, with what sort of value, was supposed to supply this information.