Boost logo

Boost :

Subject: Re: [boost] c++03 library survey
From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2018-08-28 13:09:50

On 08/28/18 14:37, Mike Dev via Boost wrote:
> - Which library/ies are you maintaining? (I assume this isn't some
> sort of private information - otherwise ignore the question)

I maintain Boost.Log, Boost.Atomic and Boost.WinAPI. I also participate
in Boost.Core, Boost.Iterator maintenance for some components.

> - Would you like to unconditionally use c++11 features if you would
> not have to worry about this breaking boost internal users?
> - Would you like to unconditionally use c++11 features if you would
> not have to worry about this breaking any users?

Yes and no to both points. Yes because it would obviously make my code
simpler and cleaner. No because I don't think it is as simple as that.

For example, if I'm currently using Boost.Move or boost::shared_ptr,
does this mean I have to port my code to native rvalue references and
std::shared_ptr? If no, should I require future contributions to still
rely on these components? If the answer to the latter question is no
then this makes a mess of the library code and I wouldn't want that. If
the answer is yes to the former question then this is quite a lot of
work (e.g. in case of Boost.Log) and may even need redesigning some
parts of the library.

> - Would you deprecate your library completely if there were no
> boost-internal users and your current dependencies required
> c++11 (e.g. because your library has been merged into the c++11
> standard library anyway)

This mostly relates to Boost.Atomic and the answer is absolutely not.
Boost.Atomic offers extended functionality compared to std::atomic, it
is a potential playground for future extensions that may end up in the
standard library. As I understand, the same is true wrt. other Boost
libraries that were adopted by the standard.

> - Are you yourself using any boost library (in an up-to-date version)
> in a c++03, non-boost project?

Not me myself, but I'm aware of such projects.

I have a reverse case, where I'm using Boost.Atomic in a C++17 project
and not planning to switch to std::atomic.

> - Do you have any Idea if the latest versions of your library is
> used by any important/significant number of c++02 projects?
> [It is only important if *you* consider those projects important
> and or the number significant]

I don't know what projects those are, but I receive support requests
about Boost.Log regularly. Those requests often mention C++11+ constructs.

Boost.Atomic - not so much, but it is also a much lesser and more
specialized library with a counterpart in the standard library.

Boost list run by bdawes at, gregod at, cpdaniel at, john at