|
Boost : |
From: Peter Dimov (pdimov_at_[hidden])
Date: 2023-02-04 12:08:06
Greetings,
I have a novel idea, let's drop C++03 support.
The reasons to do that have been explicated already
a number of times, e.g. in
https://pdimov.github.io/articles/phasing_out_cxx03.html#_ongoing_costs_of_maintaining_c03_support
but in brief:
* C++03 is 20 years old.
* A number of intra-Boost dependencies can be
eliminated by using the standard equivalent of
Boost components. This will help Boost to become
"more modular".
* Variadic templates allow us to remove the uses
of Preprocessor and MPL, which are the primary
contributor to slow Boost compilation times.
* Almost no new C++03 development occurs in
Boost at this point, so C++03 users do not need
to upgrade their Boost.
To that end, I propose the following:
Boost release 1.82.0 is announced as the last one
with C++03 support. If critical problems are found
in it post-release, we will issue 1.82.1, 1.82.2 and
so on, as appropriate (as C++03 users will not be
able to just upgrade to 1.83.)
Boost release 1.83.0 is announced to require C++11
at minimum. This means compilers that have all the
C++11 standard headers, and support all the C++11
syntactic constructs and keywords without issuing
errors. (E.g. VS2013 doesn't qualify because it doesn't
support the `constexpr` or `noexcept` keywords.)
This proposal should ultimately be approved and
implemented by the Boost release managers; their
opinions are particularly appreciated.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk