BDE 3.90.0 Release

Schedule

  • The BDE team announces that the BDE 3.90.0 production release was completed on Monday, Sep 20, 2021.

BDE 3.90.0 Highlights

balcl::CommandLine Supports Linked Variables to bsl::optional

This release features an enhancement to the “linked variables” feature of balcl command-line (argument) processing. Command-line options can now be linked to bsl::optional objects that wrap any of the scalar types allowed for option values, except for bool. Moreover, links to bsl::optional objects are not allowed for options configured as “required” or those configured with default values. Interested users can find the reasons for these choices in the design document, balcl: Integrating bsl::optional.

Users are reminded that when using a bsl::optional object, they are obliged to check that the object has a value (e.g., using the has_value method) before accessing that value (i.e., via the value method).

Continuing BDE 4.0 Changes

This release contains a several updates to better support the platform standard library, which are part of the BDE 4.0 effort. This includes changes to the following components or packages to add support for bsl::string_view, std::string, and/or std::pmr::string (where supported):

  • bdls

Fixed requests: 3.90.0

Summary

BDE: Support std::optional in new command line parser

bde 4.0: Package ‘bdls’

implement BSLS_COMPILERFEATURES_SUPPORT_CTAD in preparation for other CTAD w

baljsn_parserutil.cpp: eliminate use of ‘bsl::back_insert_iterator’

create type trait to indicate a standard allocator

bslmt::ReaderWriterLock: TSAN data race

Remove deprecated ‘upgradeToReservedWriteLock’ method.

macOS Compilation Error from bde #3400

Enable MS Visual Studio 2022 Preview in the build system

Release BDE 3.90.0