Boost logo

Boost :

From: Robert Ramey (ramey_at_[hidden])
Date: 2022-05-11 22:19:48


On 5/5/22 9:36 AM, James E. King III via Boost wrote:
> On Thu, May 5, 2022 at 12:16 PM Vinnie Falco <vinnie.falco_at_[hidden]> wrote:
>>
>> On Thu, May 5, 2022 at 8:52 AM James E. King III via Boost
>> <boost_at_[hidden]> wrote:
>>> Why not simply have a concerted effort to remove C++03 support?
>>
>> Not a bad idea in principle, but maybe you could ask Christopher
>> Kohlhoff if he wants to drop C++03 support from Asio, and whether he
>> wants to maintain this new, 3rd version of Asio?
>>
>> Thanks
>
> I may not understand the concerns there, but in general what I was
> suggesting was:
>
> 1. Stop testing C++03 in CI
> 2. Stop advertising C++03 support in repositories
> 3. Make it clear that C++11 is required to use boost >= 1.8X
> 4. Close issues that involve C++03 specifically (likely not that many)
> 5. Allow repositories to accept C++11 compliant pull requests
> 6. Come up with a project-wide rule, for example that boost will
> support 3 back-revisions of C++ so the future is more predictable.
>
> Libraries do not need to immediately rework themselves.
>
> They simply no longer need to consider it broken when C++03
> no longer builds properly.

If I recall correctly, the boost "rules" are that a library submitted to
boost must be conformant with the most recent version of the C++
standard. Assume the library gets accepted. Its then no required to be
constantly upgraded to subsequent standards. Soooo

a) Because specifies backward compatibility as a requirement, the
library is guaranteed to compile and function in all subsequent
versions of C++

b) Any subsequently added library is also guaranteed to compile and
function in all version of C++.

c) Any previously included libraries would have no such guarantee. But
had the original library included such a library, it wouldn't pass it's
tests which would make it extremely unlikely to be accepted as a boost
library.

Users of any conforming version of the C++ compiler can use any boost
library going back the the very first one and expect it to compile and
execute directly. (their might be some rare exceptions due to modern,
funky syntax additions but one would have to study the subject).

Users who do do not wish to have C++03 conforming code in their code
base are free not to include it. One should be including code on a
module by module basis so this would be trivial to do.

99% of users don't even look at the source code. The libraries which
exceed 1% is likely due to the documentation being illegible.

Note that people don't seem to have any problem using a venders std::
library with inaccessible source code. How do they know that it wasn't
written in 2003 and tested with C++03? They don't the reason they bring
it up with boost is that they have nothing else to do.

We have this discussion every 5 years or so. It always goes nowhere
because there is nowhere for it to go.

Robert Ramey

>
> - Jim
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
>


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