]>
git.ipfire.org Git - thirdparty/pdns.git/log
Pieter Lexis [Thu, 19 Mar 2026 12:12:18 +0000 (13:12 +0100)]
Merge pull request #17003 from pieterlexis/dnsdist-rmserver-log
feat(dnsdist): Log downstream removal
Remi Gacogne [Thu, 19 Mar 2026 10:38:41 +0000 (11:38 +0100)]
Merge pull request #16933 from pieterlexis/dnsdist-expungebyname-multiple
feat(dnsdist): Allow cache expunging with multiple names
Miod Vallat [Thu, 19 Mar 2026 10:31:46 +0000 (11:31 +0100)]
Merge pull request #17008 from miodvallat/more_suspenders
auth: handle backend exceptions better during rectify
dependabot[bot] [Thu, 19 Mar 2026 10:10:59 +0000 (10:10 +0000)]
build(deps): bump pyasn1 in /regression-tests.dnsdist
Bumps [pyasn1](https://github.com/pyasn1/pyasn1) from 0.4.8 to 0.6.3.
- [Release notes](https://github.com/pyasn1/pyasn1/releases)
- [Changelog](https://github.com/pyasn1/pyasn1/blob/main/CHANGES.rst)
- [Commits](https://github.com/pyasn1/pyasn1/compare/v0.4.8...v0.6.3)
---
updated-dependencies:
- dependency-name: pyasn1
dependency-version: 0.6.3
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Remi Gacogne [Thu, 19 Mar 2026 10:08:48 +0000 (11:08 +0100)]
Merge pull request #17007 from romeroalx/bump-version-actions
gh actions: upgrade actions to the most recent version
Otto Moerbeek [Thu, 19 Mar 2026 09:54:17 +0000 (10:54 +0100)]
Merge pull request #17005 from omoerbeek/rec-rpz-skip-continue
rec: continue processing response Policies if a discarded policy is hit
Miod Vallat [Thu, 19 Mar 2026 09:38:38 +0000 (10:38 +0100)]
Handle possible backend exceptions in DNSSECKeeper::rectifyZone().
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Thu, 19 Mar 2026 09:32:31 +0000 (10:32 +0100)]
Do not leave dangling transactions if get() throws.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Pieter Lexis [Wed, 18 Mar 2026 13:53:31 +0000 (14:53 +0100)]
feat(dnsdist): Log downstream removal
Closes: #17001
Miod Vallat [Thu, 19 Mar 2026 08:26:28 +0000 (09:26 +0100)]
Merge pull request #17004 from miodvallat/lmdbetter
auth: minor lmdb fixes (for the 42nd time)
Remi Gacogne [Thu, 19 Mar 2026 08:07:39 +0000 (09:07 +0100)]
Merge pull request #16992 from rgacogne/ywh-141
Small cleanup of `EDNSSubnetOpts`
Otto Moerbeek [Wed, 18 Mar 2026 15:22:59 +0000 (16:22 +0100)]
Merge pull request #16999 from omoerbeek/rec-getrr-checks
rec: more getRR return value checks
Miod Vallat [Wed, 18 Mar 2026 14:50:30 +0000 (15:50 +0100)]
Use the serializing size constants, for readability.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 18 Mar 2026 14:47:10 +0000 (15:47 +0100)]
Make sure local variable is always initialized.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 18 Mar 2026 13:11:47 +0000 (14:11 +0100)]
Allow "pdnsutil backend-cmd backend" to return some help message.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 18 Mar 2026 12:38:00 +0000 (13:38 +0100)]
When replacing an rrset, correctly delete any ENT entries.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Otto Moerbeek [Wed, 18 Mar 2026 10:41:12 +0000 (11:41 +0100)]
rec: more getRR return value checks
All cases of "cannot happen", but better safe than sorry
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Wed, 18 Mar 2026 10:26:35 +0000 (11:26 +0100)]
Merge pull request #16993 from rgacogne/rec-fix-auth-recs-serialization
rec: Fix serialization of cached authority records
romeroalx [Wed, 18 Mar 2026 10:18:42 +0000 (11:18 +0100)]
gh actions: upgrade actions to the most recent version
dependabot[bot] [Tue, 17 Mar 2026 16:54:19 +0000 (16:54 +0000)]
build(deps): bump pyasn1 in /regression-tests.recursor-dnssec
Bumps [pyasn1](https://github.com/pyasn1/pyasn1) from 0.4.8 to 0.6.3.
- [Release notes](https://github.com/pyasn1/pyasn1/releases)
- [Changelog](https://github.com/pyasn1/pyasn1/blob/main/CHANGES.rst)
- [Commits](https://github.com/pyasn1/pyasn1/compare/v0.4.8...v0.6.3)
---
updated-dependencies:
- dependency-name: pyasn1
dependency-version: 0.6.3
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Remi Gacogne [Tue, 17 Mar 2026 15:24:35 +0000 (16:24 +0100)]
Merge pull request #16996 from rgacogne/ddist-fix-ot-closer--assertion
dnsdist: Prevent copies of OT closers
Remi Gacogne [Tue, 17 Mar 2026 14:26:04 +0000 (15:26 +0100)]
dnsdist: Prevent copies of OT closers
Moving them is OK, duplicating them isn't otherwise we might close
the same span several times which is bad.
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Tue, 17 Mar 2026 11:32:27 +0000 (12:32 +0100)]
rec: Actually test the deserialized cache content in the unit test
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Tue, 17 Mar 2026 11:31:26 +0000 (12:31 +0100)]
rec: Fix serialization of cached authority records
The type needs to be present in the protobuf output before
the content, otherwise we cannot decode the content properly
when deserializing.
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Tue, 17 Mar 2026 09:25:41 +0000 (10:25 +0100)]
Merge pull request #16991 from pieterlexis/dnsdist-http11-505
fix(dnsdist): respond 505 to DoH HTTP/1.1 reqs
Pieter Lexis [Tue, 17 Mar 2026 08:25:11 +0000 (09:25 +0100)]
fix(dnsdist): respond 505 to DoH HTTP/1.1 reqs
Closes: #16990
Remi Gacogne [Tue, 17 Mar 2026 08:06:58 +0000 (09:06 +0100)]
Merge pull request #16989 from PowerDNS/dependabot/pip/regression-tests.dnsdist/pyopenssl-26.0.0
build(deps): bump pyopenssl from 25.3.0 to 26.0.0 in /regression-tests.dnsdist
Miod Vallat [Mon, 16 Mar 2026 16:57:18 +0000 (17:57 +0100)]
Merge pull request #16987 from miodvallat/tkeybored
[boring] Remove explicit constructor duplicating default initialization.
dependabot[bot] [Mon, 16 Mar 2026 16:46:45 +0000 (16:46 +0000)]
build(deps): bump pyopenssl in /regression-tests.dnsdist
Bumps [pyopenssl](https://github.com/pyca/pyopenssl) from 25.3.0 to 26.0.0.
- [Changelog](https://github.com/pyca/pyopenssl/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/pyopenssl/compare/25.3.0...26.0.0)
---
updated-dependencies:
- dependency-name: pyopenssl
dependency-version: 26.0.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Miod Vallat [Mon, 16 Mar 2026 15:54:25 +0000 (16:54 +0100)]
Remove explicit constructor duplicating default initialization.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Pieter Lexis [Mon, 16 Mar 2026 15:53:43 +0000 (16:53 +0100)]
Merge pull request #16978 from jsoref/index-semicolon
Add semicolon
Remi Gacogne [Mon, 16 Mar 2026 14:37:09 +0000 (15:37 +0100)]
Clean `EDNSSubnetOpts::getFromString` up as well
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Mon, 16 Mar 2026 14:18:10 +0000 (15:18 +0100)]
Small cleanup `EDNSSubnetOpts::makeOptString()`
The existing code was relying on implicit integer conversion rules,
which was correct but brittle, so let's explicitely check that the
source is non-zero.
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Miod Vallat [Mon, 16 Mar 2026 13:40:47 +0000 (14:40 +0100)]
Merge pull request #16984 from miodvallat/doc510
auth: 5.1.0-alpha1 documentation and secpoll updates
Miod Vallat [Mon, 16 Mar 2026 12:50:38 +0000 (13:50 +0100)]
Make upgrade title less confusing for alpha1.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Mon, 16 Mar 2026 10:05:20 +0000 (11:05 +0100)]
Documentation and secpoll updates for 5.1.0-alpha1
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Mon, 16 Mar 2026 08:44:17 +0000 (09:44 +0100)]
Put Pieter Lexis back in the developer gang member names.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Pieter Lexis [Thu, 26 Feb 2026 09:56:07 +0000 (10:56 +0100)]
feat(dnsdist): Allow cache expunging by more names
Now one can pass a list of DNSNames or strings to `expungeByName`.
Closes: #7157
Miod Vallat [Fri, 13 Mar 2026 15:40:37 +0000 (16:40 +0100)]
Merge pull request #16977 from miodvallat/wallet-rrtype
auth: Add support to the new WALLET RRType
Pieter Lexis [Fri, 13 Mar 2026 15:38:05 +0000 (16:38 +0100)]
Merge pull request #16477 from pieterlexis/ci-python-black
ci: Force python formatting with ruff
Pieter Lexis [Fri, 13 Mar 2026 14:06:43 +0000 (15:06 +0100)]
chore: reformat all Python files with ruff
Pieter Lexis [Wed, 12 Nov 2025 12:46:51 +0000 (13:46 +0100)]
ci: Force python formatting with ruff
Remi Gacogne [Thu, 15 Jan 2026 15:41:58 +0000 (16:41 +0100)]
dnsdist: Rename a JS variable
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Thu, 15 Jan 2026 09:27:09 +0000 (10:27 +0100)]
dnsdist: Fix HTML injection in the Web dashboard
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Thu, 15 Jan 2026 09:24:54 +0000 (10:24 +0100)]
dnsdist: Clean up our JavaScript code
- Remove unused code
- Remove railing whitespaces
- Be more consistent
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Fri, 13 Mar 2026 12:30:19 +0000 (13:30 +0100)]
Merge pull request #16979 from rgacogne/ddist-fix-downstream-timeout-msg-verbosity
dnsdist: Downstream timeouts should be logged at verbose level
Remi Gacogne [Fri, 13 Mar 2026 12:29:57 +0000 (13:29 +0100)]
Merge pull request #16980 from rgacogne/ddist-update-quiche-0.26.1
dnsdist: Update Quiche to 0.26.1
Remi Gacogne [Fri, 13 Mar 2026 08:56:49 +0000 (09:56 +0100)]
dnsdist: Downstream timeouts should be logged at verbose level
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Pieter Lexis [Fri, 13 Mar 2026 08:48:18 +0000 (09:48 +0100)]
Merge pull request #16973 from pieterlexis/dnsdist-ot-config
feat(dnsdist): Change OT Trace YAML config to a struct
Pieter Lexis [Fri, 13 Mar 2026 08:48:07 +0000 (09:48 +0100)]
Merge pull request #16741 from pieterlexis/dnsdist-ot-serverid-instance
feat(dnsdist): Add instance field to OT Trace messages
Pieter Lexis [Fri, 13 Mar 2026 08:20:35 +0000 (09:20 +0100)]
Merge pull request #16951 from pieterlexis/decryptus/master
auth: SortA API RRs by content if name and type are equal
Pieter Lexis [Thu, 12 Mar 2026 19:34:09 +0000 (20:34 +0100)]
feat(dnsdist): Change OT Trace YAML config to a struct
This'll allow us to add more trace feature configuration in the future
and it mirrors the `structured_logging` config.
Josh Soref [Thu, 12 Mar 2026 16:38:20 +0000 (12:38 -0400)]
Add semicolon
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
Otto Moerbeek [Thu, 12 Mar 2026 15:49:06 +0000 (16:49 +0100)]
Merge pull request #16974 from omoerbeek/rec-web-docs
docs: only expose web server on a as-needed basis
Miod Vallat [Thu, 12 Mar 2026 14:15:37 +0000 (15:15 +0100)]
Document WALLET record type.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Renato Alencar [Thu, 12 Mar 2026 10:03:59 +0000 (11:03 +0100)]
Add support to the new WALLET RRType.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Remi Gacogne [Thu, 12 Mar 2026 14:54:34 +0000 (15:54 +0100)]
dnsdist: Update Quiche to 0.26.1
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Miod Vallat [Thu, 12 Mar 2026 13:45:14 +0000 (14:45 +0100)]
Make this meson-build compatible
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Otto Moerbeek [Thu, 12 Mar 2026 13:49:25 +0000 (14:49 +0100)]
Merge pull request #16975 from omoerbeek/rel-workflows-update
GH workflows: Update to current release branch status
Otto Moerbeek [Thu, 12 Mar 2026 13:47:50 +0000 (14:47 +0100)]
Also include auth and dnsdist
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Thu, 12 Mar 2026 13:23:35 +0000 (14:23 +0100)]
Change default of new wipe flag to true
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Tue, 10 Mar 2026 14:28:42 +0000 (15:28 +0100)]
Make the clearing of the packet cache configurable, defaulting to false
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Thu, 5 Mar 2026 15:41:06 +0000 (16:41 +0100)]
Enable packet cache in test
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Thu, 5 Mar 2026 12:22:50 +0000 (13:22 +0100)]
Wipe relevent packet cache entries on rpz (re)load
Only for qname matches!
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Thu, 5 Mar 2026 11:46:37 +0000 (12:46 +0100)]
Client IP RPZ match should not result in packetcache insert
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Thu, 12 Mar 2026 13:13:27 +0000 (14:13 +0100)]
Update to current release branch status
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Thu, 12 Mar 2026 12:56:55 +0000 (13:56 +0100)]
Typo
Co-authored-by: Miod Vallat <miod.vallat@powerdns.com>
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Otto Moerbeek [Thu, 12 Mar 2026 12:31:53 +0000 (13:31 +0100)]
Some advice: only expose web server on a as-needed basis
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Remi Gacogne [Thu, 12 Mar 2026 09:24:36 +0000 (10:24 +0100)]
Merge pull request #16966 from rgacogne/ddist210-beta2
dnsdist: Update ChangeLog and security polling zone for 2.1.0-beta2
Pieter Lexis [Thu, 12 Mar 2026 09:12:19 +0000 (10:12 +0100)]
Merge pull request #16944 from pieterlexis/dev-tasks
chore: Add invoke tasks to configure with meson for development
Miod Vallat [Thu, 12 Mar 2026 08:50:00 +0000 (09:50 +0100)]
Merge pull request #16956 from miodvallat/neper
Remove error-prone logger interfaces
Remi Gacogne [Thu, 12 Mar 2026 08:49:06 +0000 (09:49 +0100)]
Merge pull request #16965 from rgacogne/auth-pp-buffer-size
auth: Use the proper size after processing a proxy protocol payload
Miod Vallat [Wed, 11 Mar 2026 15:51:36 +0000 (16:51 +0100)]
Merge pull request #14057 from mind04/auth-catalog-cleanup
Auth: fix a crash and some cleanup in the auth-catalogzone.cc
Miod Vallat [Wed, 11 Mar 2026 14:35:52 +0000 (15:35 +0100)]
Be less scary in logs
Co-authored-by: Remi Gacogne <github@coredump.fr>
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Kees Monshouwer [Fri, 12 Apr 2024 08:50:16 +0000 (10:50 +0200)]
auth: improve changed catalog detection
Signed-off-by: Kees Monshouwer <mind04@monshouwer.org>
Kees Monshouwer [Tue, 9 Apr 2024 23:09:57 +0000 (01:09 +0200)]
auth: don't crash when a catalog SOA is invalid
Signed-off-by: Kees Monshouwer <mind04@monshouwer.org>
Kees Monshouwer [Tue, 9 Apr 2024 20:35:24 +0000 (22:35 +0200)]
auth: cleanup auth-catalogzone.cc a bit
Signed-off-by: Kees Monshouwer <mind04@monshouwer.org>
Pieter Lexis [Wed, 4 Mar 2026 13:33:40 +0000 (14:33 +0100)]
chore(auth): add task to configure auth for dev
Pieter Lexis [Wed, 4 Mar 2026 13:23:56 +0000 (14:23 +0100)]
chore(rec): add task to configure recursor for dev
Miod Vallat [Wed, 11 Mar 2026 06:45:09 +0000 (07:45 +0100)]
Remove unused "verbosity" part of the Logger.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 11 Mar 2026 06:39:31 +0000 (07:39 +0100)]
Remove no longer useful Logger::enabled().
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Wed, 11 Mar 2026 06:38:46 +0000 (07:38 +0100)]
Remove no longer used Logr::Absent.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Pieter Lexis [Wed, 4 Mar 2026 12:53:09 +0000 (13:53 +0100)]
chore(dndist): add task to configure dnsdist for dev
Remi Gacogne [Tue, 10 Mar 2026 15:07:56 +0000 (16:07 +0100)]
Merge pull request #16968 from rgacogne/ddist-fix-compression-dname-srv
dnsdist: Fix the use of compression for SRV and DNAME targets
Remi Gacogne [Tue, 10 Mar 2026 14:12:36 +0000 (15:12 +0100)]
dnsdist: Fix the use of compression for SRV and DNAME targets
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Tue, 10 Mar 2026 14:04:33 +0000 (15:04 +0100)]
Merge pull request #16967 from rgacogne/ddist-compress-when-changing-name
dnsdist: Compress DNS names when changing the name in a packet
Remi Gacogne [Tue, 10 Mar 2026 12:01:48 +0000 (13:01 +0100)]
dnsdist: Compress DNS names when changing the name in a packet
Otherwise the resulting packet might be bigger than needed.
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Tue, 10 Mar 2026 11:47:01 +0000 (12:47 +0100)]
dnsdist: Update ChangeLog and security polling zone for 2.1.0-beta2
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Remi Gacogne [Tue, 10 Mar 2026 09:48:08 +0000 (10:48 +0100)]
auth: Use the proper size after processing a proxy protocol payload
Reported in #YWH-PGM6095-116. While it is a bug, I don't believe it
is a security issue because I'm not aware of any implementation
actually releasing the memory unless `shrink_to_fit()` is called,
and even then it's not always the case. The content of the memory
contains part of the existing query and it is still owned by this
buffer so there is no information disclosure.
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Otto Moerbeek [Tue, 10 Mar 2026 06:17:20 +0000 (07:17 +0100)]
Merge pull request #16946 from omoerbeek/rec-rpz-defpol-test
rec: add a regresion test for defpol handling
Remi Gacogne [Mon, 9 Mar 2026 14:48:48 +0000 (15:48 +0100)]
DNSWriter: Prevent overflow when generating (too) large DNS packets
The current API expects the caller to check if the current size
exceeds 65535 bytes before calling `commit()`, and potentially
triggers an out-of-bounds write otherwise when `d_sor` wraps around.
This commit adds an additional safety layer ensuring that we do not
write out of bounds even if the caller is not careful enough.
Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
Pieter Lexis [Mon, 9 Mar 2026 13:02:30 +0000 (14:02 +0100)]
Merge pull request #16955 from pieterlexis/lua-headers
auth: Allow adding HTTP Headers in LUA Record ifurlup
Pieter Lexis [Thu, 5 Mar 2026 13:48:53 +0000 (14:48 +0100)]
fix(auth): Properly sort API RRSets by content
For content, we need to lexographically sort. I would have preferred
canonical ordering of the content. But as this point we have strings we
don't need to roundtrip through the parser.
This also adds an RRSet ordering test.
Adrien Delle Cave [Mon, 3 Jan 2022 11:10:12 +0000 (12:10 +0100)]
Sort by content if name and type are equal
Signed-off-by: Adrien Delle Cave <adrien.delle.cave@commandersact.com>
Miod Vallat [Mon, 9 Mar 2026 12:31:48 +0000 (13:31 +0100)]
Merge pull request #16958 from miodvallat/cover_your_log
auth: coverity-induced fixes
Miod Vallat [Mon, 9 Mar 2026 08:51:42 +0000 (09:51 +0100)]
There is no guarantee that the slog initializer is a compile-time constant.
Therefore we can not safely assume it is safe to check its value in other
global constructors.
Reported by Coverity.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Miod Vallat [Mon, 9 Mar 2026 08:48:15 +0000 (09:48 +0100)]
Fix various inefficiencies pointed by Coverity.
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
Otto Moerbeek [Mon, 9 Mar 2026 10:48:43 +0000 (11:48 +0100)]
Merge pull request #16959 from omoerbeek/prep-rec-5.4.0
rec: prep for rec-5.4.0 final release
Otto Moerbeek [Thu, 5 Mar 2026 08:46:41 +0000 (09:46 +0100)]
rec: prep for rec-5.4.0 final release
Code equal to rc1, one missed PR in changelog of rc1
Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
Miod Vallat [Mon, 9 Mar 2026 05:55:15 +0000 (06:55 +0100)]
Merge pull request #16957 from jsoref/codeql-set-first-query-false-for-next-query
Set `firstQuery` to false for next query