Boost logo

Boost :

From: Ivan Matek (libbooze_at_[hidden])
Date: 2024-04-01 16:01:55


On Mon, Apr 1, 2024 at 5:11 PM Peter Dimov via Boost <boost_at_[hidden]>
wrote:

> "Everyone in the world should be denied the Boost smart pointers because
> it will force us to fix our code base" is not a serious attitude to adopt.
>

This has been discussed 1000x times, sensible people disagree, IIRC
Alphabet gave up on C++ for similar reason, although you may think that ABI
and API are two totally different things.
Also there is nothing preventing those people who do not wish to adapt to
keep using boost 1.70 or whatever version has shared_ptr.
I am not some fanatic that will upgrade --std version in prod as soon as
new compiler lands, but I really see no value in enabling people to not
upgrade to std::shared_ptr for 10 years. In the long run you are not doing
them a favor by enabling that kind of behavior.
Sure I know there is one enlightened dev in some big company and he would
suffer if you remove his access to shared_ptr, but those cases are
exception.
Most developers have access to std::shared_ptr for 5+ years and there is
little reason for them to keep using boost version. To be clear here I am
talking about shared_ptr only, as I mentioned I have seen people
reimplement local_shared_ptr so there is value for functionality not in
std::.

Also I mentioned bigger issue is that this policy makes boost suffer from
same bad image that C++ has. Nothing ever gets removed, even if it is
totally obsolete. auto_ptr still compiles with --std=c++23 in gcc(although
it emits a warning). Like why would you enable this kind of terrible code
in 2024? If some companies do not want to invest into upgrading that is
their problem, not a problem for entire community.

tl;dr I really do not understand why there is this expectation that people
can upgrade --std or boost version and not do any work to fix their code.


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