On Sat, Oct 16, 2021 at 2:30 PM Andrey Semashev wrote:
On 10/16/21 9:18 PM, Glen Fernandes via Boost wrote:
On Sat, Oct 16, 2021 at 1:11 PM Peter Dimov wrote:
I prefer keeping this discussion here on the list, rather than in an issue, so please reply here instead if you have an opinion. :-)
The proposal is:
* Merge Assert into Core * Merge StaticAssert into Core * Merge ThrowException into Core
I'm not in favor of any of the above. There are no dependency cycles to break by doing this, and I prefer that we have facilities in separate repositories.
Someone might want Assert and not anything else in Core. Someone else might want StaticAssert and not Assert or anything else in Core.
I have no problems with Core taking on a new dependency on ThrowException although perhaps this dependency could be avoided too via:
#if defined(BOOST_NO_EXCEPTIONS) BOOST_NORETURN void throw_exception(const std::exception&); #endif
I agree. Generally, I'd prefer if we made Boost more granular and less coarse-grained. This also protects from feature creep in Boost.Core.
Note that such a merge wouldn't just affect StlInterfaces, it would also affect: * TypeTraits * Variant2 * ConceptCheck * System * TypeOf * Atomic * Crc * Pool ... and more. None of the above depend on Core right now. They would after such a merge. Users that consume any of these libraries don't need anything else in Core. Glen