BDE 3.99.0 Release

Schedule

  • The BDE team announces that the BDE 3.99.0 production release was completed on Monday, February 21, 2022.

BDE 3.99.0 Highlights

bdlmt::FixedThreadPool once again implemented in terms of bdlcc::BoundedQueue

The change to bdlmt::FixedThreadPool originally released as part of BDE 3.88.0 then backed out in BDE 3.91.1 (due to a bug with the drain method) has been corrected, and is now re-released.

bsl::function, bsl::map, bsl::multimap, bsl::basic_string Now Provide Deduction Guides

This release adds deduction guides for bsl::function, bsl::map, bsl::multimap, and bsl::basic_string allowing clients using C++17 to forgo supplying explicit template arguments when creating one of these types.

For example:

bsl::map<bsl::string, int> original;

// without C++17 or deduction guides
bsl::map<bsl::string, int> complicatedCopy(map1);

// with C++17 and deduction guides
bsl::map simplerCopy(map1);

Note that C++17 supports automatic template argument deduction in many contexts, however some types require explicit deduction guides in order for the compiler to deduce the template arguments. There is ongoing work to provide similar guides for all the standard library types in bsl that require them.

bdlb::PrintMethods Adds Support For std::optional and std::variant

The bdlb::PrintMethods utility now supports printing variant, optional, and monostate objects.

Fixed requests: 3.99.0

Summary

bdlb::PrintMethods::print support for std::variant std::optional

Add allocator support to basic_stringbuf, etc

bdlcc_skiplist: more elegant solution (off master) to race condition

Add Template deduction guides for bsl::basic_string

Add class template deduction guides to bsl::map and multimap

un-revert bdlmt_fixedthreadpool using bdlcc_boundedqueue

Should bsl::owner_less<> define is_transparent

Fuzz HSL: add fuzz testing to ‘hslc_parser’

bslstl_optional: TC’s 7 & 8 fail on Windows C++17

bslh_wyhashalgorithm: side effect of BSLS_ASSERT_OPT

Add Template deduction guides for bsl::function

Compilation error when BDE_BUILD_TARGET_EXC is undefined

bdlb_variant: remove unneeded calls to move and access

baljsn::Decoder::decode to provide more ‘not good’ detail in INFO log

Fix bsls_unspecified bool test driver (with clang or pedantic gcc)

clean bbl gcc-11 nightly build

correct bsls_protocoltest abstract detection

Release BDE 3.99.0