Am 06.12.22 um 03:36 schrieb Proton via Boost:
I concur with the streamlining of Boost to avoid the monolith. ~18 months ago Math offered its first standalone release which was made possible by jumping to C++11. [...] I am willing to assist other maintainers in offering a standalone module of their libraries. When I took over maintaining Boost.Nowide (actually when I pushed for finally including it in Boost) there already was a standalone version. I wrote CD scripts (Github Actions) to create the standalone version from each commit pushed to the develop branch and the standalone version is tested together with the "Boost version".
At a first glance, the following libraries would have to justify
This was requested by users and I got reports it is (still) used. It also was greatly simplified by requiring C++11 as the minimum. However I agree that Boost.Config is an important foundation and the only thing I'm missing for the standalone version (I had to duplicate 2 macros from Boost.Config in the standalone) This serves as a datapoint that having a subset of libraries available makes sense. I actually like the CMake integration, i.e. the CMakeLists.txt many Boost libraries already have because CMake requires to specify the (direct) dependencies (even header-only ones) explicitly. This makes it much easier to see what is required. Although the transitive dependencies are still an issue (for users having only download a part of Boost) their continued existence as "core" Boost libraries:
Thread (superseded by std::thread)
Actually the std library support for std::thread on Windows at least is still lacking. IIRC it was the MinGW cross-compiler with which we (in another project) were unable to use std::thread for Windows and had to resort to Boost.Thread. So I'd argue this is a point for keeping it in "core" Boost. Alex