]> git.ipfire.org Git - thirdparty/pdns.git/log
thirdparty/pdns.git
3 weeks agoFix PDNS_BUILD_PATH for non-meson builds. 16517/head
Miod Vallat [Mon, 17 Nov 2025 13:27:40 +0000 (14:27 +0100)] 
Fix PDNS_BUILD_PATH for non-meson builds.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
4 weeks agoMerge pull request #16510 from rgacogne/ddist-recvmmsg-performance
Remi Gacogne [Mon, 17 Nov 2025 10:33:02 +0000 (11:33 +0100)] 
Merge pull request #16510 from rgacogne/ddist-recvmmsg-performance

dnsdist: Better performance when using `recvmmsg`

4 weeks agodnsdist: Add dot to the end of a comment, as suggested by Miod 16510/head
Remi Gacogne [Mon, 17 Nov 2025 09:48:02 +0000 (10:48 +0100)] 
dnsdist: Add dot to the end of a comment, as suggested by Miod

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agoMerge pull request #16495 from jsoref/codeql-keyroller-non-callable-called
Miod Vallat [Mon, 17 Nov 2025 06:41:48 +0000 (07:41 +0100)] 
Merge pull request #16495 from jsoref/codeql-keyroller-non-callable-called

Remove horrible unused argument with default value

4 weeks agoMerge pull request #16502 from jsoref/codeql-use-immediate-class-parent-for-super
Miod Vallat [Mon, 17 Nov 2025 06:28:42 +0000 (07:28 +0100)] 
Merge pull request #16502 from jsoref/codeql-use-immediate-class-parent-for-super

Use immediate class parent for super

4 weeks agoMerge pull request #16474 from pieterlexis/dnsdist-closer-optional
Pieter Lexis [Fri, 14 Nov 2025 16:20:39 +0000 (17:20 +0100)] 
Merge pull request #16474 from pieterlexis/dnsdist-closer-optional

feat(dnsdist): Make creating Tracer::Closers less messy in calling code

4 weeks agochore(dnsdist): Suppress TSAN warning on InternalQueryState ctor 16474/head
Pieter Lexis [Fri, 14 Nov 2025 10:12:32 +0000 (11:12 +0100)] 
chore(dnsdist): Suppress TSAN warning on InternalQueryState ctor

4 weeks agofix(dnsdist): Don't allocate strings before they are needed
Pieter Lexis [Wed, 12 Nov 2025 15:23:59 +0000 (16:23 +0100)] 
fix(dnsdist): Don't allocate strings before they are needed

Also make clang-tidy silent by ignoring the decay into pointer warnings

4 weeks agofeat(dnsdist): Add `InternalQueryState::getRulesCloser`
Pieter Lexis [Wed, 12 Nov 2025 12:22:16 +0000 (13:22 +0100)] 
feat(dnsdist): Add `InternalQueryState::getRulesCloser`

Also use `__func__` to prevent typos in tracer function names.

4 weeks agofix(dnsdist): use RAII to set InternalQueryState::appliedRulesToQuery
Pieter Lexis [Wed, 12 Nov 2025 11:52:12 +0000 (12:52 +0100)] 
fix(dnsdist): use RAII to set InternalQueryState::appliedRulesToQuery

4 weeks agofeat(dnsdist): Add `getCloser` to InternalQueryState
Pieter Lexis [Wed, 12 Nov 2025 10:45:09 +0000 (11:45 +0100)] 
feat(dnsdist): Add `getCloser` to InternalQueryState

This makes the code in dnsdist.cc easier to read, as it removes several
lines for each call to the OpenTelemetry tracing code.

4 weeks agofeat(dnsdist): Add copy and move ctors for Tracer::Closer
Pieter Lexis [Wed, 12 Nov 2025 10:40:36 +0000 (11:40 +0100)] 
feat(dnsdist): Add copy and move ctors for Tracer::Closer

4 weeks agofeat(dnsdist): Allow setting Span Attributes from Closer
Pieter Lexis [Wed, 12 Nov 2025 10:39:36 +0000 (11:39 +0100)] 
feat(dnsdist): Allow setting Span Attributes from Closer

4 weeks agoMerge pull request #16511 from rgacogne/ddist-xsk-packets-recv
Remi Gacogne [Fri, 14 Nov 2025 14:44:00 +0000 (15:44 +0100)] 
Merge pull request #16511 from rgacogne/ddist-xsk-packets-recv

dnsdist: Reuse the vector of packets between XSK recv rounds

4 weeks agodnsdist: Appease clang-tidy
Remi Gacogne [Fri, 14 Nov 2025 14:36:56 +0000 (15:36 +0100)] 
dnsdist: Appease clang-tidy

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agodnsdist: Use an `int` since it's what `recvmmsg` returns
Remi Gacogne [Fri, 14 Nov 2025 13:55:24 +0000 (14:55 +0100)] 
dnsdist: Use an `int` since it's what `recvmmsg` returns

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agodnsdist: Reuse the vector of packets between XSK recv rounds 16511/head
Remi Gacogne [Fri, 14 Nov 2025 13:48:30 +0000 (14:48 +0100)] 
dnsdist: Reuse the vector of packets between XSK recv rounds

The existing code was allocating a new vector for every call
to `XskSocket::recv()` which was just silly.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agoMerge pull request #16509 from jsoref/fix-codeql-use-with-open-as-file-to-ensure...
Remi Gacogne [Fri, 14 Nov 2025 13:43:11 +0000 (14:43 +0100)] 
Merge pull request #16509 from jsoref/fix-codeql-use-with-open-as-file-to-ensure-file-is-always-closed

Fix `with open(...) as f:`

4 weeks agodnsdist: Better performance when using `recvmmsg`
Remi Gacogne [Fri, 14 Nov 2025 12:05:45 +0000 (13:05 +0100)] 
dnsdist: Better performance when using `recvmmsg`

`recvmmsg` and `sendmmsg` are Linux-specific syscalls to receive
and send multiple messages on a socket via a single call, which
in theory improves performance a lot, especially with the
speculative execution vulnerabilities mitigations making syscalls
expensive.
We had several reports that turning this feature on in DNSdist did
not really improve performance, which is quite unexpected. Looking
at a CPU profile in `perf`, we were spending an awful lot of time
resizing buffers that did not need to be resized most of the time
because they had not been used. This commit ensures that we only
resize and reset buffers for slots that have been used in the
previous round.

With that I'm getting a nice performance boost from using `recvmmsg`
and `sendmmsg` while processing 80k QPS at 100% cache-hit ratio
from a single thread: the CPU usage shrinks by roughly 15%.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agoFix `with open(...) as f:` 16509/head
Josh Soref [Fri, 14 Nov 2025 13:08:34 +0000 (08:08 -0500)] 
Fix `with open(...) as f:`

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoMerge pull request #16484 from jsoref/codeql-confusing-operator-precedence
Remi Gacogne [Fri, 14 Nov 2025 13:03:04 +0000 (14:03 +0100)] 
Merge pull request #16484 from jsoref/codeql-confusing-operator-precedence

Improve reading of operator expression

4 weeks agoMerge pull request #16503 from rgacogne/dnsheader_aligned_no_copy
Remi Gacogne [Fri, 14 Nov 2025 10:22:34 +0000 (11:22 +0100)] 
Merge pull request #16503 from rgacogne/dnsheader_aligned_no_copy

`dnsheader_aligned`: Prevent copies

4 weeks agoMerge pull request #16504 from rgacogne/ddist-doq-handle-response
Remi Gacogne [Fri, 14 Nov 2025 10:19:25 +0000 (11:19 +0100)] 
Merge pull request #16504 from rgacogne/ddist-doq-handle-response

dnsdist: Clarify that our DoQ's `handleResponse` consumes the response

4 weeks agoMerge pull request #16505 from rgacogne/ddist-modernize-pc-code
Remi Gacogne [Fri, 14 Nov 2025 10:19:16 +0000 (11:19 +0100)] 
Merge pull request #16505 from rgacogne/ddist-modernize-pc-code

dnsdist: Apply clang-tidy recommendations to the packet cache code

4 weeks agodnsdist: Clarify that our DoQ's `handleResponse` consumes the response 16504/head
Remi Gacogne [Fri, 14 Nov 2025 09:43:10 +0000 (10:43 +0100)] 
dnsdist: Clarify that our DoQ's `handleResponse` consumes the response

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agodnsheader_aligned: Prevent copies 16503/head
Remi Gacogne [Fri, 14 Nov 2025 09:37:33 +0000 (10:37 +0100)] 
dnsheader_aligned: Prevent copies

The `dnsheader_aligned` object contains a pointer that references
either the `dnsheader` passed to the constructor if it is properly
aligned, or the internal `dnsheader` member. In the second case,
making a copy would mean we can reference an object that has been
destructed, which is a serious problem.

This commit also ensures copy elision is done `DNSQuestion:getHeader`,
as otherwise the compiler might refuse to compile.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agodnsdist: Apply clang-tidy recommendations to the packet cache code 16505/head
Remi Gacogne [Fri, 14 Nov 2025 09:36:00 +0000 (10:36 +0100)] 
dnsdist: Apply clang-tidy recommendations to the packet cache code

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agoMerge pull request #16500 from jsoref/codeql-use-with-open-as-file-to-ensure-file...
Remi Gacogne [Fri, 14 Nov 2025 07:46:15 +0000 (08:46 +0100)] 
Merge pull request #16500 from jsoref/codeql-use-with-open-as-file-to-ensure-file-is-always-closed

Use `with open(...) as f:` to ensure file is always closed

4 weeks agoMerge pull request #16501 from jsoref/codeql-explicitly-return
Remi Gacogne [Fri, 14 Nov 2025 07:45:00 +0000 (08:45 +0100)] 
Merge pull request #16501 from jsoref/codeql-explicitly-return

Stop mixing implicit and explicit returns

4 weeks agoSpecify immediate class parent 16502/head
Josh Soref [Thu, 13 Nov 2025 19:28:23 +0000 (14:28 -0500)] 
Specify immediate class parent

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoFix class name
Josh Soref [Thu, 13 Nov 2025 19:25:14 +0000 (14:25 -0500)] 
Fix class name

- #14593 renamed the class but failed to update the super call

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoChange `to_wire` to not mix explicit and implicit returns 16501/head
Josh Soref [Thu, 13 Nov 2025 17:56:16 +0000 (12:56 -0500)] 
Change `to_wire` to not mix explicit and implicit returns

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoReturn void
Josh Soref [Thu, 13 Nov 2025 17:52:19 +0000 (12:52 -0500)] 
Return void

And omit `;` as python does not really believe in them

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoReturn void
Josh Soref [Thu, 13 Nov 2025 17:51:00 +0000 (12:51 -0500)] 
Return void

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse `with open(...) as f:` to ensure file is always closed 16500/head
Josh Soref [Thu, 13 Nov 2025 17:40:33 +0000 (12:40 -0500)] 
Use `with open(...) as f:` to ensure file is always closed

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoMerge pull request #16494 from jsoref/codeql-unused-loop-iterator-name
Miod Vallat [Thu, 13 Nov 2025 16:36:56 +0000 (17:36 +0100)] 
Merge pull request #16494 from jsoref/codeql-unused-loop-iterator-name

Codeql unused loop iterator name

4 weeks agoMerge pull request #16497 from omoerbeek/rec-coverity-20251113
Otto Moerbeek [Thu, 13 Nov 2025 16:28:37 +0000 (17:28 +0100)] 
Merge pull request #16497 from omoerbeek/rec-coverity-20251113

rec: fix coverity 163519916430121643013

4 weeks agoMerge pull request #16498 from jsoref/codeql-use-identifiers
Remi Gacogne [Thu, 13 Nov 2025 16:22:10 +0000 (17:22 +0100)] 
Merge pull request #16498 from jsoref/codeql-use-identifiers

Codeql use identifiers

4 weeks agoMerge pull request #16490 from jsoref/codeql-do-not-mutate-default-values
Remi Gacogne [Thu, 13 Nov 2025 16:17:22 +0000 (17:17 +0100)] 
Merge pull request #16490 from jsoref/codeql-do-not-mutate-default-values

Do not mutate default values

4 weeks agoMerge pull request #16491 from jsoref/codeql-only-import-module-once
Remi Gacogne [Thu, 13 Nov 2025 16:16:20 +0000 (17:16 +0100)] 
Merge pull request #16491 from jsoref/codeql-only-import-module-once

Only import doqclient once

4 weeks agoMerge pull request #16493 from jsoref/codeql-unused-argument-to-format
Miod Vallat [Thu, 13 Nov 2025 16:02:02 +0000 (17:02 +0100)] 
Merge pull request #16493 from jsoref/codeql-unused-argument-to-format

Drop unused format argument

4 weeks agoMerge pull request #16492 from jsoref/codeql-imprecise-assert-not-equal
Miod Vallat [Thu, 13 Nov 2025 16:01:47 +0000 (17:01 +0100)] 
Merge pull request #16492 from jsoref/codeql-imprecise-assert-not-equal

Use assertNotEqual

4 weeks agoMerge pull request #16489 from jsoref/codeql-ignore-keyboardexception-and-sysexit
Miod Vallat [Thu, 13 Nov 2025 16:01:04 +0000 (17:01 +0100)] 
Merge pull request #16489 from jsoref/codeql-ignore-keyboardexception-and-sysexit

Do not catch `KeyboardInterrupt` or `SystemExit`

4 weeks agoMerge pull request #16488 from jsoref/codeql-do-not-exit-with-void-return
Miod Vallat [Thu, 13 Nov 2025 16:00:39 +0000 (17:00 +0100)] 
Merge pull request #16488 from jsoref/codeql-do-not-exit-with-void-return

Do not call `sys.exit` with a void return

4 weeks agoRemove duplicated function 16498/head
Josh Soref [Thu, 13 Nov 2025 15:33:18 +0000 (10:33 -0500)] 
Remove duplicated function

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoCheck results
Josh Soref [Thu, 13 Nov 2025 15:32:33 +0000 (10:32 -0500)] 
Check results

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoDisambiguate test functions in class
Josh Soref [Thu, 13 Nov 2025 15:30:31 +0000 (10:30 -0500)] 
Disambiguate test functions in class

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoOnly assign to response once
Josh Soref [Thu, 13 Nov 2025 15:28:44 +0000 (10:28 -0500)] 
Only assign to response once

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoOnly assign to _tlsServerPort once
Josh Soref [Thu, 13 Nov 2025 15:26:33 +0000 (10:26 -0500)] 
Only assign to _tlsServerPort once

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoFix dnssec handling of `required_fields`
Josh Soref [Thu, 13 Nov 2025 15:26:11 +0000 (10:26 -0500)] 
Fix dnssec handling of `required_fields`

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoOnly assign to name once
Josh Soref [Thu, 13 Nov 2025 15:24:44 +0000 (10:24 -0500)] 
Only assign to name once

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoIgnore return from `requests.get`
Josh Soref [Thu, 13 Nov 2025 15:24:18 +0000 (10:24 -0500)] 
Ignore return from `requests.get`

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoValidate greeting from pipe caller
Josh Soref [Thu, 13 Nov 2025 15:22:54 +0000 (10:22 -0500)] 
Validate greeting from pipe caller

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse `_` to hint that the value does not matter 16494/head
Josh Soref [Thu, 13 Nov 2025 14:43:46 +0000 (09:43 -0500)] 
Use `_` to hint that the value does not matter

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoDeclare variable outside loop to clarify that its use extends beyond loop
Josh Soref [Thu, 13 Nov 2025 15:04:54 +0000 (10:04 -0500)] 
Declare variable outside loop to clarify that its use extends beyond loop

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoRemove horrible unused argument with default value 16495/head
Josh Soref [Thu, 13 Nov 2025 14:49:22 +0000 (09:49 -0500)] 
Remove horrible unused argument with default value

The unused argument shadows a builtin function that's needed by the
function.

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoFix iteration variable name to match consumer
Josh Soref [Thu, 13 Nov 2025 14:40:33 +0000 (09:40 -0500)] 
Fix iteration variable name to match consumer

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoDrop unused format argument 16493/head
Josh Soref [Thu, 13 Nov 2025 14:37:45 +0000 (09:37 -0500)] 
Drop unused format argument

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse assertNotEqual 16492/head
Josh Soref [Thu, 13 Nov 2025 14:31:19 +0000 (09:31 -0500)] 
Use assertNotEqual

https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertNotEqual

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoOnly import doqclient once 16491/head
Josh Soref [Thu, 13 Nov 2025 14:27:20 +0000 (09:27 -0500)] 
Only import doqclient once

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agorec: fix coverity 1635199, 1643012, 1643013 16497/head
Otto Moerbeek [Thu, 13 Nov 2025 14:24:59 +0000 (15:24 +0100)] 
rec: fix coverity 163519916430121643013

First two are simple optimizatios.
1643013 is: Check of thread-shared field evades lock acquisition

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
4 weeks agoDo not mutate default values 16490/head
Josh Soref [Thu, 13 Nov 2025 14:20:51 +0000 (09:20 -0500)] 
Do not mutate default values

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoDo not catch KeyboardInterrupt or SystemExit 16489/head
Josh Soref [Thu, 13 Nov 2025 14:11:43 +0000 (09:11 -0500)] 
Do not catch KeyboardInterrupt or SystemExit

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoDo not call `sys.exit` with a void return 16488/head
Josh Soref [Thu, 13 Nov 2025 13:54:10 +0000 (08:54 -0500)] 
Do not call `sys.exit` with a void return

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoMerge pull request #16108 from karelbilek/kb/shuffle
Remi Gacogne [Thu, 13 Nov 2025 13:08:22 +0000 (14:08 +0100)] 
Merge pull request #16108 from karelbilek/kb/shuffle

dnsdist: implement simple packet shuffle in cache

4 weeks agoMerge pull request #16462 from rgacogne/ddist-fix-crash-missing-selector-name
Remi Gacogne [Thu, 13 Nov 2025 09:41:29 +0000 (10:41 +0100)] 
Merge pull request #16462 from rgacogne/ddist-fix-crash-missing-selector-name

dnsdist: Fix a crash when a selector or policy cannot be found

4 weeks agoMerge pull request #16401 from Habbie/auth-meson-names-dumb-rename
Peter van Dijk [Thu, 13 Nov 2025 09:21:20 +0000 (10:21 +0100)] 
Merge pull request #16401 from Habbie/auth-meson-names-dumb-rename

auth meson: reset binary names to original

4 weeks agoMerge pull request #16479 from jsoref/metrics-table-module
Miod Vallat [Thu, 13 Nov 2025 06:03:47 +0000 (07:03 +0100)] 
Merge pull request #16479 from jsoref/metrics-table-module

Convert metrics_table.py to a module

4 weeks agoMerge pull request #16480 from jsoref/test-metrics-ineffectual-statement
Miod Vallat [Thu, 13 Nov 2025 06:03:12 +0000 (07:03 +0100)] 
Merge pull request #16480 from jsoref/test-metrics-ineffectual-statement

Switch TestRuleMetricsDefault to pass

4 weeks agoMerge pull request #16481 from jsoref/codeql-imprecise-assert
Miod Vallat [Thu, 13 Nov 2025 06:03:04 +0000 (07:03 +0100)] 
Merge pull request #16481 from jsoref/codeql-imprecise-assert

Codeql imprecise assert

4 weeks agoMerge pull request #16483 from jsoref/codeql-unnecessary-lambda
Miod Vallat [Thu, 13 Nov 2025 06:02:57 +0000 (07:02 +0100)] 
Merge pull request #16483 from jsoref/codeql-unnecessary-lambda

Drop useless lambda

4 weeks agoImprove reading of operator expression 16484/head
Josh Soref [Thu, 13 Nov 2025 00:44:48 +0000 (19:44 -0500)] 
Improve reading of operator expression

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoDrop useless lambda 16483/head
Josh Soref [Thu, 13 Nov 2025 00:09:25 +0000 (19:09 -0500)] 
Drop useless lambda

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse assertNotIn 16481/head
Josh Soref [Wed, 12 Nov 2025 19:16:06 +0000 (14:16 -0500)] 
Use assertNotIn

https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertNotIn
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse assertNotEqual
Josh Soref [Wed, 12 Nov 2025 19:01:01 +0000 (14:01 -0500)] 
Use assertNotEqual

https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertNotEqual
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse assertLessEqual
Josh Soref [Wed, 12 Nov 2025 19:11:40 +0000 (14:11 -0500)] 
Use assertLessEqual

https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertLessEqual
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse assertLess
Josh Soref [Wed, 12 Nov 2025 19:10:22 +0000 (14:10 -0500)] 
Use assertLess

https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertLess
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse assertIn
Josh Soref [Wed, 12 Nov 2025 19:17:36 +0000 (14:17 -0500)] 
Use assertIn

https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertIn
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse assertGreaterEqual
Josh Soref [Wed, 12 Nov 2025 19:09:14 +0000 (14:09 -0500)] 
Use assertGreaterEqual

https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertGreaterEqual
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse assertGreater
Josh Soref [Wed, 12 Nov 2025 19:07:01 +0000 (14:07 -0500)] 
Use assertGreater

https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertGreater
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoUse assertEqual
Josh Soref [Wed, 12 Nov 2025 19:14:11 +0000 (14:14 -0500)] 
Use assertEqual

https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertEqual
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoMerge pull request #16478 from jsoref/fix-duplicate-key-in-dict-literal
Otto Moerbeek [Wed, 12 Nov 2025 19:52:47 +0000 (20:52 +0100)] 
Merge pull request #16478 from jsoref/fix-duplicate-key-in-dict-literal

Fix duplicate key in dict literal

4 weeks agoShow previous `versionchanged` for `logging.structured_logging` 16478/head
Josh Soref [Wed, 12 Nov 2025 17:51:00 +0000 (12:51 -0500)] 
Show previous `versionchanged` for `logging.structured_logging`

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoSplit `recursor.cpu_map` `doc`/`doc-new`
Josh Soref [Wed, 12 Nov 2025 18:49:03 +0000 (13:49 -0500)] 
Split `recursor.cpu_map` `doc`/`doc-new`

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoSwitch TestRuleMetricsDefault to pass 16480/head
Josh Soref [Wed, 12 Nov 2025 18:44:52 +0000 (13:44 -0500)] 
Switch TestRuleMetricsDefault to pass

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoConvert metrics_table.py to a module 16479/head
Josh Soref [Wed, 12 Nov 2025 18:41:02 +0000 (13:41 -0500)] 
Convert metrics_table.py to a module

Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
4 weeks agoMerge pull request #16471 from PowerDNS/dependabot/pip/builder-support/requests-2...
Alexis Romero [Wed, 12 Nov 2025 14:02:05 +0000 (15:02 +0100)] 
Merge pull request #16471 from PowerDNS/dependabot/pip/builder-support/requests-2.32.4

chore(deps): bump requests from 2.32.3 to 2.32.4 in /builder-support

4 weeks agoMerge pull request #16476 from omoerbeek/contrib-followup
Otto Moerbeek [Wed, 12 Nov 2025 13:30:51 +0000 (14:30 +0100)] 
Merge pull request #16476 from omoerbeek/contrib-followup

contrib/ProtobufLogger.py: Fix syntax error that crept in with 16458

4 weeks agoMerge pull request #16077 from omoerbeek/c++20-for-real
Otto Moerbeek [Wed, 12 Nov 2025 13:16:46 +0000 (14:16 +0100)] 
Merge pull request #16077 from omoerbeek/c++20-for-real

Prep, but do not actually move to C++20

4 weeks agoMerge pull request #16283 from sndrsmnk/docupd2
Remi Gacogne [Wed, 12 Nov 2025 13:13:54 +0000 (14:13 +0100)] 
Merge pull request #16283 from sndrsmnk/docupd2

dnsdist downstream-timeouts documentation update

4 weeks agoMerge pull request #16473 from miodvallat/spanish_cow
Miod Vallat [Wed, 12 Nov 2025 12:47:06 +0000 (13:47 +0100)] 
Merge pull request #16473 from miodvallat/spanish_cow

auth, rec: typos

4 weeks agodnsdist: more thorough packet cache shuffle test 16108/head
Karel Bilek [Tue, 11 Nov 2025 15:38:43 +0000 (16:38 +0100)] 
dnsdist: more thorough packet cache shuffle test

Signed-off-by: Karel Bilek <kb@karelbilek.com>
4 weeks agoFix syntax error that crept in with 16458 16476/head
Otto Moerbeek [Wed, 12 Nov 2025 12:23:16 +0000 (13:23 +0100)] 
Fix syntax error that crept in with 16458

Signed-off-by: Otto Moerbeek <otto.moerbeek@open-xchange.com>
4 weeks agoMerge pull request #16362 from omoerbeek/rec-ottrace-conditions
Otto Moerbeek [Wed, 12 Nov 2025 11:10:05 +0000 (12:10 +0100)] 
Merge pull request #16362 from omoerbeek/rec-ottrace-conditions

rec: implement new feature to only generate OpenTelemetry Traces on certain conditions

4 weeks agodnsdist: Add a test for unknown policy name from Yaml 16462/head
Remi Gacogne [Wed, 12 Nov 2025 10:48:53 +0000 (11:48 +0100)] 
dnsdist: Add a test for unknown policy name from Yaml

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agodnsdist: Fix a typo when a Yaml-originated selector name does not exist
Remi Gacogne [Wed, 12 Nov 2025 10:46:09 +0000 (11:46 +0100)] 
dnsdist: Fix a typo when a Yaml-originated selector name does not exist

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
4 weeks agoFix grammar in error messages. 16473/head
Miod Vallat [Wed, 12 Nov 2025 10:45:33 +0000 (11:45 +0100)] 
Fix grammar in error messages.

Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
4 weeks agochore(deps): bump requests from 2.32.3 to 2.32.4 in /builder-support 16471/head
dependabot[bot] [Wed, 12 Nov 2025 10:39:49 +0000 (10:39 +0000)] 
chore(deps): bump requests from 2.32.3 to 2.32.4 in /builder-support

Bumps [requests](https://github.com/psf/requests) from 2.32.3 to 2.32.4.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.32.3...v2.32.4)

---
updated-dependencies:
- dependency-name: requests
  dependency-version: 2.32.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
4 weeks agoMerge pull request #16464 from romeroalx/fix-upload-pkgs-pattern
Remi Gacogne [Wed, 12 Nov 2025 10:38:38 +0000 (11:38 +0100)] 
Merge pull request #16464 from romeroalx/fix-upload-pkgs-pattern

build-packages.yml: update workflow after changes in the download-artifacts action

4 weeks agoMerge pull request #16425 from pieterlexis/dnsdist-cov-parentSpanID
Otto Moerbeek [Wed, 12 Nov 2025 09:53:28 +0000 (10:53 +0100)] 
Merge pull request #16425 from pieterlexis/dnsdist-cov-parentSpanID

fix(protozero): Always initialize SpanID and TraceID to zero