You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Four PRs merged on main after the release commit and cherry-picked
into poco-1.15.3:
- #5358 fix(AbstractEvent): operator-= holds the event mutex across
Delegate destructor
- #5359 enh(MongoDB): MongoDB 6.0/7.0/8.0 compat (carries its own
API Changes for SCRAM-SHA-256 default, count() via $count,
deprecated INDEX_BACKGROUND / CMD_MAP_REDUCE)
- #5355 (GH #5354) feat(CppUnit): terminate handler
- #5356 fix(Foundation): gate atomic_flag::test on C++20 atomic_wait
Also tighten the 1.15.3 entries: trim the Summary paragraph, replace
multi-paragraph API Changes prose with one-line bullets, drop
redundant qualifiers from bug-fix / enhancement bullets, and use the
verbatim GitHub issue/PR titles for each item. CHANGELOG and
doc/99100-ReleaseNotes.page now carry the same content. CONTRIBUTORS
unchanged -- all four PR authors (aleks-f, uilianries, matejk) are
already listed.
- Poco::MongoDB::Database::count() now uses aggregation [{$count: "n"}]
36
-
instead of the legacy "count" command. The signature is unchanged.
37
-
Aggregation $count is in the Stable API v1, returns accurate results
38
-
on sharded clusters (the legacy command over-reports due to orphans),
39
-
and is permitted in multi-document transactions. Operators watching
40
-
server-side query metrics will see "aggregate" commands where they
41
-
previously saw "count".
42
-
- Poco::MongoDB::Database::INDEX_BACKGROUND is now marked POCO_DEPRECATED
43
-
(deprecated by MongoDB in 4.2; server-side no-op). The flag is kept
44
-
for source compatibility but its value is no longer forwarded to the
45
-
server.
46
-
- Poco::MongoDB::OpMsgMessage::CMD_MAP_REDUCE is now marked
47
-
POCO_DEPRECATED (mapReduce deprecated by MongoDB in 5.0); use the
48
-
aggregation pipeline.
49
-
50
-
- GH #5322 PropertyFileConfiguration: the optional parent-configuration
51
-
parameter (added in 1.15.1 via #5253) is now an AbstractConfiguration*
52
-
raw non-owning pointer instead of AbstractConfiguration::Ptr. Callers
53
-
must keep the parent alive for the child's lifetime. This fixes a
54
-
circular reference between LayeredConfiguration and child
55
-
PropertyFileConfiguration instances in Application::loadConfiguration().
56
-
The Ptr-taking overloads are retained as deprecated forwarders to
57
-
surface the lifetime contract at compile time; they will be removed
58
-
in a future release. Passing a temporary Ptr would leave _pParentConfig
59
-
dangling and should be replaced with a named variable whose lifetime
60
-
outlives the child. All three PropertyFileConfiguration constructors
61
-
are now explicit to prevent accidental implicit conversions.
19
+
- MongoDB::Database::authenticate() default is now SCRAM-SHA-256; pass AUTH_SCRAM_SHA1 for the previous default. ASCII passwords only. (PR #5359)
20
+
- MongoDB::Database::count() now uses {$count: "n"} aggregation; signature unchanged, accurate on sharded clusters, transaction-safe. (PR #5359)
21
+
- MongoDB::Database::INDEX_BACKGROUND and MongoDB::OpMsgMessage::CMD_MAP_REDUCE are POCO_DEPRECATED (deprecated server-side in 4.2 and 5.0). (PR #5359)
22
+
- GH #5322 Circular reference in `Application::loadConfiguration()` -- PropertyFileConfiguration parent parameter is now AbstractConfiguration* (was Ptr); caller owns lifetime. Ptr overloads retained as deprecated. Constructors are now explicit.
62
23
63
24
Security Fixes:
64
25
65
-
- PR #5351 chore(deps): bundled third-party library updates -- includes
66
-
expat 2.8.1 with CVE-2026-41080 (hash flooding salt entropy) and
67
-
CVE-2026-45186 (quadratic runtime on attribute name collisions, DoS).
Copy file name to clipboardExpand all lines: doc/99100-ReleaseNotes.page
+25-23Lines changed: 25 additions & 23 deletions
Original file line number
Diff line number
Diff line change
@@ -5,50 +5,52 @@ AAAIntroduction
5
5
6
6
!!Summary of Changes
7
7
8
-
A patch release focused on bug fixes, security updates in bundled
9
-
third-party libraries (including two expat CVEs), and a small set of
10
-
enhancements. Notable changes include PostgreSQL connection-string
11
-
URI syntax support, a fix for the WAL-reset database corruption in
12
-
SQLite, and a behaviour correction to the %c date/time format
13
-
specifier so it actually emits centiseconds as documented (this is a
14
-
breaking change for code that relied on the previous single-digit
15
-
decisecond output).
8
+
Bug fixes, expat CVE updates in bundled deps, MongoDB 6.0/7.0/8.0
9
+
compatibility, PostgreSQL URI connection strings, and a corrected %c
10
+
date/time format specifier (breaking).
16
11
17
12
!!Breaking Changes
18
13
19
-
- GH #3949 Poco::DateTimeFormatter: %c now emits zero-padded two-digit centisecond (00..99), matching documentation. Previously it emitted a single-digit decisecond. Closed by PR #5350.
14
+
- GH #3949 Poco::DateTimeFormatter %c does not format to centisecond but decisecond (PR #5350)
20
15
21
16
!!API Changes
22
17
23
-
- GH #5322 PropertyFileConfiguration optional parent-configuration parameter is now an AbstractConfiguration* raw non-owning pointer instead of AbstractConfiguration::Ptr. Callers must keep the parent alive for the child's lifetime. Ptr-taking overloads retained as deprecated forwarders. Constructors are now explicit. See CHANGELOG for details.
18
+
- MongoDB::Database::authenticate() default is now SCRAM-SHA-256; pass AUTH_SCRAM_SHA1 for the previous default. ASCII passwords only. (PR #5359)
19
+
- MongoDB::Database::count() now uses {$count: "n"} aggregation; signature unchanged, accurate on sharded clusters, transaction-safe. (PR #5359)
20
+
- MongoDB::Database::INDEX_BACKGROUND and MongoDB::OpMsgMessage::CMD_MAP_REDUCE are POCO_DEPRECATED (deprecated server-side in 4.2 and 5.0). (PR #5359)
21
+
- GH #5322 Circular reference in `Application::loadConfiguration()` -- PropertyFileConfiguration parent parameter is now AbstractConfiguration* (was Ptr); caller owns lifetime. Ptr overloads retained as deprecated. Constructors are now explicit.
0 commit comments