Boost logo

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