BDE 3.116.0 Release¶
Schedule¶
The BDE team announces that the BDE 3.116.0 production release was completed on Wednesday, April 12, 2023.
BDE 3.116.0 Highlights¶
New Component: balb_pipetaskmanager
¶
This release introduces balb::PipeTaskManager, a class that supports the control of running processes based on messages received via a named pipe.
Notable features of balb::PipeTaskManager
include:
One can construct a
balb::PipeTaskManager
from absl::shared_ptr
to a (shared)balb::ControlManager
object (the object that maps a user message to the appropriate callback function). Thus one can assemble a single “messaging handling” configuration and share it with several “task managers”, each listening for messages from different named pipes.A handler for “HELP” messages is not installed by default. However, a handler can be easily installed by invocation of
registerUsageHandler
method ofbalb::ControlManager
. See {‘balb_pipetaskmanager’|Example 1}.
bdlpcre::RegEx
- better support for duplicate named groups¶
bdlpcre::Regex now
supports duplicate named groups using the (?J)
specifier or
k_FLAG_DUPNAMES
option.
If RegEx::k_FLAG_DUPNAMES
is included in the flags supplied to prepare
,
or the pattern contains a (?J)
option setting (see PCRE syntax) the
subpatternIndex(name)
method will fail if ‘name’ is used for more than one capture group.
The namedSubpatterns()
method should be used to get a set of (name, index)
pairs used in the pattern.
C++20 Features¶
This release adds assorted C++20 features and aliases.
Fixed requests¶
Summary |
---|
C++20 work: Please add bsl::defaultfloat |
Create balb_pipetaskmanager from bassvc_defaulttaskmanager |
balst_stacktraceresoverimpl_windows.h: Windows compilation issue. |
github: Fix ball_asyncfileobserver test failure |
bdljsn: Fix problematic string_view construction from iterators |
bdlde::CharConvertUtf16 support string with fixed size character type |
bdlpcre::RegEx - better support for duplicate named groups |
C++20 work: Add aliases for thread-coordination classes |
C++20 work: Add <bsl_compare.h> header and alias standard entities |
C++20 work: Add <bsl_numbers.h> header and alias standard entity |
C++20 work: Add <bsl_bit.h> header and alias standard entities |
C++20 work: Add <bsl_source_location.h> header and alias standard entity |
C++20 work: Add BDE implementation of ‘bsl::to_array’ |
C++20 work: Add aliases to <bsl_atomic.h> |
C++20 work: Add aliases to <bslstl_chrono.h> |
C++20 work: Add aliases for the new entities |
C++20 work: Add the ‘contains’ method to the ‘bsl::set’ and to the ‘bsl::multiset’ |
C++20 work: Add the ‘contains’ method to the ‘bsl::unordered_map’ and to the ‘bsl::unordered_multimap’ |
C++20 work: Add the ‘starts_with’ and the ‘ends_with’ methods to the ‘bslstl::basic_string’ |
C++20 work: Add the ‘operator<=>’ to the ‘bslstl::array’ |
C++20 work: Add the ‘operator<=>’ to the ‘bslstl::deque’ |
C++20 work: Add the ‘operator<=>’ to the ‘bslstl::list’ |
C++20 work: Add the ‘operator<=>’ to the ‘bslstl::vector’ |
bsl::optional fails to compile with C++17 and libc++ |
C++20 work: Add the ‘operator<=>’ to the ‘bslstl::type_index’ |
bslmt_threadattributes docs does not list Solaris as supporting thread names |
bslmt::Semaphore - sem_init should not silently fail |
bdlb::NullableAllocatedValue - add <, >, <=, >= operators (already has ==, !=) |
C++20 work: new libraryfeatures macros for bit_cast and make_unique_for_overwrite |
C++20 work: evaluate compiler feature support and suggest next steps |
bdljsn_jsonnumber.h - sample code not correct |
Please use value initialization in bsls::SpinLock constructors |
bdljsn_json.h - correct descriptions of classes |
bdljsn_json.h - unused header bsl_deque.h included |
Make ‘bsl::StringRefImpl’ trivially copyable |
correct test driver build warnings for bdlb on AIX |
Fix bsls_compilerfeatures test error & clean-up |
bdljsn_numberutil: fix warning |
Clarify whether log records are published atomically |
Fix hexfloat-literal compilerfeatures test build failures in gcc cpp03 ufids |