Changelogs for 5.4.X ==================== Before upgrading, it is advised to read the :doc:`../upgrade`. .. changelog:: :version: 5.4.0-alpha1 :released: 16th of December 2025 .. change:: :tags: Improvements :pullreq: 16627 Format rust IOErrors in a nicer way instead of using the default formatter. .. change:: :tags: Improvements :pullreq: 16624 :tickets: 16606 Move away from rustls-pemfile including update of Rust dependencies. .. change:: :tags: Bug Fixes :pullreq: 16615 Do proper validation of TCP notifies. .. change:: :tags: Bug Fixes :pullreq: 16614 Ensure authRecords is empty, as handleHit checks that. .. change:: :tags: Improvements :pullreq: 16587 Coverity 20251203. .. change:: :tags: Improvements :pullreq: 16588 Kill a handful of clang++ warnings, mostly comparing unsigned to a signed constant. .. change:: :tags: Improvements :pullreq: 16487 Switch trivial usage of boost::optional to std::optional. .. change:: :tags: Bug Fixes :pullreq: 16580 :tickets: 16572 Move g_logRPZChanges to proper spot. .. change:: :tags: Improvements :pullreq: 16553 Always do ANY queries using TCP. .. change:: :tags: Improvements :pullreq: 16570 Rewrite all unwrap calls in web.rs. .. change:: :tags: Improvements :pullreq: 16565 :tickets: 16557 Run clippy when CARGO_USE_DEV and CARGO_USE_CLIPPY are set. .. change:: :tags: Improvements :pullreq: 16546 :tickets: 16544 Build our Rust lib in dev profile when CARGO_USE_DEV is set. .. change:: :tags: Improvements :pullreq: 16447 Remove first set of unused imports (Josh Soref). .. change:: :tags: Improvements :pullreq: 16496 Tidy tcounter related code. .. change:: :tags: Improvements :pullreq: 16531 Spelling (Josh Soref). .. change:: :tags: Improvements :pullreq: 16530 Fix mixed implicit and explicit returns (Josh Soref). .. change:: :tags: Improvements :pullreq: 16526 Remove unused assignment (Josh Soref). .. change:: :tags: Improvements :pullreq: 16515 Remove redundant assignment (Josh Soref). .. change:: :tags: Improvements :pullreq: 16516 Remove unused assignment (Josh Soref). .. change:: :tags: Improvements :pullreq: 16523 :tickets: 16483 Update to coverallsapp github-action v2.3.7 (Josh Soref). .. change:: :tags: Improvements :pullreq: 16495 Remove horrible unused argument with default value (Josh Soref). .. change:: :tags: Improvements :pullreq: 16502 Use immediate class parent for super (Josh Soref). .. change:: :tags: Improvements :pullreq: 16509 :tickets: 16500 Fix `with open(...) as f:` (Josh Soref). .. change:: :tags: Improvements :pullreq: 16484 Improve reading of operator expression (Josh Soref). .. change:: :tags: Improvements :pullreq: 16500 Use `with open(...) as f:` to ensure file is always closed (Josh Soref). .. change:: :tags: Improvements :pullreq: 16501 Stop mixing implicit and explicit returns (Josh Soref). .. change:: :tags: Improvements :pullreq: 16494 Codeql unused loop iterator name (Josh Soref). .. change:: :tags: Improvements :pullreq: 16497 Fix coverity 1635199, 1643012, 1643013. .. change:: :tags: Improvements :pullreq: 16498 Codeql use identifiers (Josh Soref). .. change:: :tags: Improvements :pullreq: 16490 Do not mutate default values (Josh Soref). .. change:: :tags: Improvements :pullreq: 16491 Only import doqclient once (Josh Soref). .. change:: :tags: Improvements :pullreq: 16493 Drop unused format argument (Josh Soref). .. change:: :tags: Improvements :pullreq: 16492 Use assertNotEqual (Josh Soref). .. change:: :tags: Improvements :pullreq: 16489 Do not catch `KeyboardInterrupt` or `SystemExit` (Josh Soref). .. change:: :tags: Improvements :pullreq: 16488 Do not call `sys.exit` with a void return (Josh Soref). .. change:: :tags: Improvements :pullreq: 16479 Convert metrics_table.py to a module (Josh Soref). .. change:: :tags: Improvements :pullreq: 16480 Switch TestRuleMetricsDefault to pass (Josh Soref). .. change:: :tags: Improvements :pullreq: 16481 Codeql imprecise assert (Josh Soref). .. change:: :tags: Improvements :pullreq: 16483 Drop useless lambda (Josh Soref). .. change:: :tags: Improvements :pullreq: 16478 Fix duplicate key in dict literal (Josh Soref). .. change:: :tags: Improvements :pullreq: 16476 Contrib/ProtobufLogger.py: Fix syntax error that crept in with 16458. .. change:: :tags: Improvements :pullreq: 16077 :tickets: 14734 Prep, but do not actually move to C++20. .. change:: :tags: Improvements :pullreq: 16362 Implement new feature to only generate OpenTelemetry Traces on certain conditions. .. change:: :tags: Improvements :pullreq: 16427 rec_control get-parameter: print runtime settings in YAML format if YAML config is active. .. change:: :tags: Improvements :pullreq: 16454 Chore: Clean up unused variables (Josh Soref). .. change:: :tags: Improvements :pullreq: 16457 Clean up unreachable code (Josh Soref). .. change:: :tags: Improvements :pullreq: 16459 :tickets: 15336 Fix try/except/as notation (Josh Soref). .. change:: :tags: Improvements :pullreq: 16460 :tickets: 16458 Avoid warning about mixed explicit/implicit returns (Josh Soref). .. change:: :tags: Improvements :pullreq: 16440 :tickets: 16091 Cleanup endianness determining code. .. change:: :tags: Improvements :pullreq: 16458 Use map for getAppliedPolicyTypeAsString (Josh Soref). .. change:: :tags: Bug Fixes :pullreq: 16461 :tickets: 16455 fix parsing of webserver loglevel "none". .. change:: :tags: Improvements :pullreq: 16438 Remove options that were deprecated a long time ago. .. change:: :tags: Improvements :pullreq: 16384 Remember if an answer was received over TCP in record cache. .. change:: :tags: Improvements :pullreq: 16426 rec-lua-conf.* tidy. .. change:: :tags: Improvements :pullreq: 16394 Don't use a vector of string for internal public suffix list. .. change:: :tags: Improvements :pullreq: 16392 Make version number in rust lib confirm to Rust specifics. .. change:: :tags: Bug Fixes :pullreq: 16338 Tighten delegation accept. .. change:: :tags: Improvements :pullreq: 16307 Explicit disabling/enabling of tls-gnutls for full and least configs and packages. .. change:: :tags: Improvements :pullreq: 16259 Allow selecting a specific version of Lua with meson. .. change:: :tags: Improvements :pullreq: 16308 Fix a few Coverity found issues, all low severity move optimizations. .. change:: :tags: Bug Fixes :pullreq: 16288 Prevent a potential race condition in cache cleaning. .. change:: :tags: Improvements :pullreq: 16190 OT tracing: define more Spans with actual duration and add more attributes. .. change:: :tags: Improvements :pullreq: 16232 Allow ability to validate certificates (and more) for outgoing DoT connections. .. change:: :tags: Improvements :pullreq: 16220 Move test-protozero-trace.cc to toplevel and add it in the autotools build where it was missing. .. change:: :tags: Improvements :pullreq: 16219 ProtobufLogger: print OpenTelemetry IDs in hex, add proper command arg parser. .. change:: :tags: Improvements :pullreq: 16251 Silence rust warning. .. change:: :tags: Improvements :pullreq: 16236 Docs: Indent list (Josh Soref). .. change:: :tags: Improvements :pullreq: 16237 Docs: Add trailing period (Josh Soref). .. change:: :tags: Improvements :pullreq: 16227 Do not include dnsseckeeper.hh and ueberbackend.hh in rec. .. change:: :tags: Improvements :pullreq: 16204 We need a usable cargo for sdist so do not download (and install) rust but use package. .. change:: :tags: Improvements :pullreq: 16200 Fix a few issues reported by coverity, all minor. .. change:: :tags: Improvements :pullreq: 16194 Rework command dispatcher to be table based. .. change:: :tags: Improvements :pullreq: 16188 :tickets: 16180 Fix release builds by updating the locked Rust lib version. .. change:: :tags: Improvements :pullreq: 16175 Move help text to a table so it's easier to maintain. .. change:: :tags: Improvements :pullreq: 16167 Update the Rust library version when generating a tarball. .. change:: :tags: Improvements :pullreq: 16138 Add a few fields in protobuf logs: ede, edeText and OpenTelemetryTraceID. .. change:: :tags: Improvements :pullreq: 16104 Better error message when reload-yaml fails. .. change:: :tags: Improvements :pullreq: 15412,16131 Implement DNS cookie support for outgoing requests. .. change:: :tags: Improvements :pullreq: 16106 :tickets: 16101 Update cargos for rec and dnsdist. .. change:: :tags: Improvements :pullreq: 16103 Warn on passwordless webserver startup and extends docs. .. change:: :tags: Improvements :pullreq: 16098 Do not hash (or compare) OpenTelemetry Trace EDNS value for packetcache. .. change:: :tags: Improvements :pullreq: 16094 Some error paths do no create thread 0 so don't join it. .. change:: :tags: Improvements :pullreq: 15945 pubsuffix: tidy and use C++ strings. .. change:: :tags: Improvements :pullreq: 15943 Add tc flag in answer log (zhaojs). .. change:: :tags: Improvements :pullreq: 15997 Remove SLOG macro usage in rec specific code. .. change:: :tags: Bug Fixes :pullreq: 15991 :tickets: 15972 Fix Boost system lib req: it is no longer a lib for boost >= 1.89. .. change:: :tags: Improvements :pullreq: 15949 Assorted tidy. .. change:: :tags: Improvements :pullreq: 15950 Reorder fields of record cache entry by size (saves 8 bytes per entry on 64-bit systems). .. change:: :tags: Bug Fixes :pullreq: 15915 :tickets: 15896 Rec and dnsdist: properly set up env vars for rust build.