]>
git.ipfire.org Git - thirdparty/knot-resolver.git/log
Aleš Mrázek [Tue, 13 Jan 2026 00:28:00 +0000 (01:28 +0100)]
WIP: data_modeling refactored
Aleš Mrázek [Thu, 5 Feb 2026 13:42:10 +0000 (14:42 +0100)]
python/knot_resolver: new basic structure
Aleš Mrázek [Thu, 5 Feb 2026 12:58:34 +0000 (13:58 +0100)]
python/knot_resolver: start from scratch and remove everything
Aleš Mrázek [Tue, 3 Feb 2026 10:06:47 +0000 (11:06 +0100)]
Merge branch 'release-6.2.0' into 'master'
Release 6.2.0
See merge request knot/knot-resolver!1805
Aleš Mrázek [Mon, 2 Feb 2026 15:42:00 +0000 (16:42 +0100)]
release 6.2.0
Vladimír Čunát [Tue, 3 Feb 2026 08:37:36 +0000 (09:37 +0100)]
Merge !1803: tweak handling of ANY and RRSIG in QTYPE
Vladimír Čunát [Sun, 1 Feb 2026 09:58:21 +0000 (10:58 +0100)]
tweak handling of ANY and RRSIG in QTYPE
- advanced users can configure these QTYPEs on Lua level, e.g.
option('QTYPE_ANY', true)
- fix handling these QTYPEs, e.g.
- caching: as whole packet only (simple and "safer" here)
- iterator wasn't finding ANY records in answer :-)
- I wanted to disable RRSIG by default, but let's delay that
Vladimír Čunát [Mon, 2 Feb 2026 11:39:20 +0000 (12:39 +0100)]
Merge !1747: Implementation of server DNS over QUIC (RFC 9250)
Aleš Mrázek [Mon, 2 Feb 2026 10:52:14 +0000 (11:52 +0100)]
datamodel: network: simplified QUIC template
Aleš Mrázek [Mon, 2 Feb 2026 10:43:11 +0000 (11:43 +0100)]
datamodel: network: removed layer from QUICSchema
There is no reason for two layers here.
Vladimír Čunát [Sat, 31 Jan 2026 07:23:04 +0000 (08:23 +0100)]
doc nits + NEWS item, for quic
Vladimír Čunát [Wed, 28 Jan 2026 10:09:26 +0000 (11:09 +0100)]
meson: fix include in embedded libngtcp2 sometimes
In particular, on macOS in GitHub CI.
I tried `dependencies: [gnutls.partial_dependency(includes: true)]`
but that didn't work. No idea why.
Vladimír Čunát [Wed, 28 Jan 2026 09:43:19 +0000 (10:43 +0100)]
Merge master into doq-server
Vladimír Čunát [Wed, 28 Jan 2026 08:56:31 +0000 (09:56 +0100)]
daemon/quic: adapt to libknot 3.6
For reference see what we did for the non-quic code in:
d0375933 80cf9eb1 c8ea4c07 (all MR 1769)
Frantisek Tobias [Tue, 27 Jan 2026 15:07:06 +0000 (16:07 +0100)]
python/formating: nits
Frantisek Tobias [Tue, 27 Jan 2026 15:05:55 +0000 (16:05 +0100)]
daemon/quic: fix linting warnings
- add types to fields of struct nc_conn_ref_placeholder_t
- comment out testing DOQ error code
Vladimír Čunát [Tue, 27 Jan 2026 10:48:15 +0000 (11:48 +0100)]
make embedded quic lib work
This should also fix -Dquic=disabled
I'm now lazy to go fix it on the commits introducing it, too.
QUIC by default sizing (default nixos.org builds as reference):
- with embedded ngtcp2* we grow the kresd binary by 344 KiB
- with external ngtcp2* we grow the kresd binary by 40 KiB
(while the external ngtcp2 package takes 472 KiB,
libknot already depends on it, so it's not new)
Vladimír Čunát [Tue, 27 Jan 2026 09:10:18 +0000 (10:10 +0100)]
libngtcp2: copy embedded v1.20.0 from knot master (
d9f7ac6e378f )
Vladimír Čunát [Tue, 30 Dec 2025 09:59:30 +0000 (10:59 +0100)]
make quic/DoQ optional
Aleš Mrázek [Tue, 27 Jan 2026 09:41:46 +0000 (10:41 +0100)]
Merge branch 'utils-modeling-literals-fix' into 'master'
python: utils/modeling: fixed literals bug for python 3.8
See merge request knot/knot-resolver!1799
Vladimír Čunát [Tue, 27 Jan 2026 08:39:21 +0000 (09:39 +0100)]
add NEWS entry for the parent commit
Aleš Mrázek [Wed, 21 Jan 2026 20:28:44 +0000 (21:28 +0100)]
python: utils/modeling: fixed Literal bug for python 3.8
This fixes bug created in MR !1768 logging improvements.
Vladimír Čunát [Tue, 27 Jan 2026 08:43:04 +0000 (09:43 +0100)]
Merge !1800: CI: Migrate respdiff from shortlist dataset to ODVR-based dataset
Hynek Šabacký [Mon, 26 Jan 2026 09:23:22 +0000 (10:23 +0100)]
ci: disable respdiff diff-index guard
Hynek Šabacký [Fri, 31 Oct 2025 09:30:29 +0000 (10:30 +0100)]
ci: run respdiff with a newer query dataset
Aleš Mrázek [Mon, 26 Jan 2026 14:32:50 +0000 (15:32 +0100)]
Merge branch 'subprocess-command-decode' into 'master'
python: controller/interface.py: return full message if JSON load fails
See merge request knot/knot-resolver!1801
Aleš Mrázek [Mon, 26 Jan 2026 13:47:20 +0000 (14:47 +0100)]
tests/packaging: tls_cert_watchdog.sh: added sleep for deletion/creation test
Aleš Mrázek [Mon, 26 Jan 2026 12:50:49 +0000 (13:50 +0100)]
python: controller/interface.py: return full message if JSON load fails for Subprocess command result
Vladimír Čunát [Mon, 26 Jan 2026 09:27:28 +0000 (10:27 +0100)]
Merge !1798: python: manager/files: do not reload TLS certificate files if they do not exist
Aleš Mrázek [Wed, 21 Jan 2026 23:07:15 +0000 (00:07 +0100)]
Revert "tests/packaging/interactive: skip TLS certs watchdog tests"
This reverts commit
1c69b284fa270c49f2adad035f5050c7d8837278 .
Aleš Mrázek [Wed, 21 Jan 2026 20:19:16 +0000 (21:19 +0100)]
python: manager/files: do not reload TLS certificate files if they do not exist
This fixes a randomly occuring pkg test error mentioned in !1794.
Vladimír Čunát [Mon, 26 Jan 2026 08:36:51 +0000 (09:36 +0100)]
Merge !1797: daemon/io: handle failed session data initialization
Vladimír Čunát [Thu, 22 Jan 2026 09:16:24 +0000 (10:16 +0100)]
daemon/io_create() nits
Frantisek Tobias [Wed, 21 Jan 2026 12:47:18 +0000 (13:47 +0100)]
daemon/io_create(): move session2_new_io out of io_create()
The motivation for this change is to unite the out parameter type to uv_handle_t
Frantisek Tobias [Tue, 20 Jan 2026 17:20:54 +0000 (18:20 +0100)]
daemon/session2/session2_transport_event(): remove kr_fails_assert
When forwarding over DoT, an upstream that accepts a TCP connection
and immediately closes it triggers this assetion, because
the forwarder wasn't able to solve any waiting tasks.
Frantisek Tobias [Tue, 20 Jan 2026 13:21:20 +0000 (14:21 +0100)]
daemon/io: handle failed session data initialization
Vladimír Čunát [Tue, 20 Jan 2026 21:57:53 +0000 (22:57 +0100)]
Merge !1795: daemon/session: fix UDP answers without sendmmsg
Vladimír Čunát [Sat, 17 Jan 2026 09:53:36 +0000 (10:53 +0100)]
daemon/session: fix UDP answers without sendmmsg
This is quite a serious issue on non-Linux.
It's a regression from commit
82e1d596 , i.e. v6.0.9.
Vladimír Čunát [Thu, 15 Jan 2026 13:15:33 +0000 (14:15 +0100)]
Merge !1794: tests/packaging/interactive: skip TLS certs watchdog tests
Aleš Mrázek [Thu, 15 Jan 2026 12:13:53 +0000 (13:13 +0100)]
tests/packaging/interactive: skip TLS certs watchdog tests
Aleš Mrázek [Thu, 15 Jan 2026 12:01:30 +0000 (13:01 +0100)]
Merge branch 'docs-cleanup-fix' into 'master'
doc/user: minor adjustments
See merge request knot/knot-resolver!1793
Aleš Mrázek [Thu, 15 Jan 2026 11:32:17 +0000 (12:32 +0100)]
doc/user/gettingstarted-install.rst: build from source
This part looked like it belonged under the Docker section. At the same time, I didn't want to create a separate section for it and put it at the same level as packages sections.
Aleš Mrázek [Thu, 15 Jan 2026 11:00:28 +0000 (12:00 +0100)]
doc/user/config-overview.rst: json schema app link
Unfortunately, the previous link was not universal for all versions of the docs. Doing link universal automatically is not easy, so a clarification was added.
Vladimír Čunát [Thu, 15 Jan 2026 10:28:50 +0000 (11:28 +0100)]
Merge !1792: docs: remove problematic deps
Aleš Mrázek [Wed, 14 Jan 2026 23:04:13 +0000 (00:04 +0100)]
docs: removed sphinx-tabs and json-schema-for-humans
Vladimír Čunát [Wed, 14 Jan 2026 08:54:17 +0000 (09:54 +0100)]
Merge !1784: python: ruff: linter stricter configuration
Aleš Mrázek [Sun, 11 Jan 2026 00:37:33 +0000 (01:37 +0100)]
python: ruff: ignored and fixed some linter checks
Aleš Mrázek [Sun, 11 Jan 2026 00:31:16 +0000 (01:31 +0100)]
python: fixed too long lines (>120)
Ruff linter: E501 Line too long (>120)
Aleš Mrázek [Sat, 10 Jan 2026 23:58:29 +0000 (00:58 +0100)]
python: specified or removed type check ignore
Ruff linter: PGH003 Use specific rule codes when ignoring type issues
Aleš Mrázek [Sat, 10 Jan 2026 23:43:44 +0000 (00:43 +0100)]
python: replaced python version comparing with tuple
Aleš Mrázek [Sat, 10 Jan 2026 23:33:30 +0000 (00:33 +0100)]
python: client: ignore INP001 for commands modules
Aleš Mrázek [Sat, 10 Jan 2026 21:41:39 +0000 (22:41 +0100)]
python: improved try/exception code
Aleš Mrázek [Sat, 10 Jan 2026 21:32:06 +0000 (22:32 +0100)]
python: applied code simplification improvements
Aleš Mrázek [Sat, 10 Jan 2026 21:06:30 +0000 (22:06 +0100)]
python: fixed docstring formatting
Aleš Mrázek [Sat, 10 Jan 2026 17:47:17 +0000 (18:47 +0100)]
python: added missing type annotations
Aleš Mrázek [Sat, 10 Jan 2026 17:45:35 +0000 (18:45 +0100)]
python: fixed renamed exceptions/errors
Aleš Mrázek [Fri, 12 Dec 2025 00:42:18 +0000 (01:42 +0100)]
*/exceptions.py: updated for more strict linter (Ruff)
Aleš Mrázek [Wed, 10 Dec 2025 23:26:10 +0000 (00:26 +0100)]
exceptions.py: renamed base exception to error Ruff(N818)
Aleš Mrázek [Wed, 10 Dec 2025 23:12:36 +0000 (00:12 +0100)]
constants.py: added freebsd_min_version constant
Aleš Mrázek [Fri, 5 Dec 2025 00:04:57 +0000 (01:04 +0100)]
pyproject.toml: ruff strict config
Vladimír Čunát [Sat, 10 Jan 2026 08:22:49 +0000 (09:22 +0100)]
Merge !1789: doc/user: updated info about docker images
Aleš Mrázek [Fri, 9 Jan 2026 15:24:08 +0000 (16:24 +0100)]
doc/user: updated info about docker images
Aleš Mrázek [Fri, 9 Jan 2026 13:55:55 +0000 (14:55 +0100)]
Merge branch 'dockerhub-update' into 'master'
ci: docker:dockerhub: update tags
See merge request knot/knot-resolver!1788
Aleš Mrázek [Thu, 8 Jan 2026 17:12:49 +0000 (18:12 +0100)]
.gitlab-ci.yml: docker:dockerhub updated tags
Vladimír Čunát [Fri, 9 Jan 2026 12:53:23 +0000 (13:53 +0100)]
Merge !1787: ci: renamed docs:latest to docs:master
Aleš Mrázek [Fri, 9 Jan 2026 12:24:02 +0000 (13:24 +0100)]
.gitlab-ci.yml: renamed docs:latest to docs:master
Aleš Mrázek [Thu, 8 Jan 2026 13:07:38 +0000 (14:07 +0100)]
Merge branch 'release-6.1.0' into 'master'
Release 6.1.0
See merge request knot/knot-resolver!1783
Vladimír Čunát [Thu, 8 Jan 2026 08:29:04 +0000 (09:29 +0100)]
doc/user: adjust formulation on version compatibility for 6+ situation
Aleš Mrázek [Mon, 5 Jan 2026 11:08:53 +0000 (12:08 +0100)]
release 6.1.0
Vladimír Čunát [Thu, 8 Jan 2026 12:00:46 +0000 (13:00 +0100)]
Merge !1771: datamodel: add /lua/policy-script*
Vladimír Čunát [Mon, 1 Dec 2025 19:36:20 +0000 (20:36 +0100)]
datamodel: add /lua/policy-script*
Vladimír Čunát [Thu, 8 Jan 2026 11:51:51 +0000 (12:51 +0100)]
Merge !1786: meson: fix linking with jemalloc
Vladimír Čunát [Thu, 8 Jan 2026 11:38:06 +0000 (12:38 +0100)]
meson: fix linking with jemalloc
This is a partial revert of
a13235612644
which haven't reached any tags, fortunately.
I'm not sure why this breaks the configure phase in my case
> meson.build:171:33: ERROR: C shared library 'jemalloc' not found
but I looked properly into docs and it wouldn't do what we wanted anyway:
https://mesonbuild.com/Reference-manual_returned_compiler.html#find_library_static
Vladimír Čunát [Wed, 7 Jan 2026 17:40:30 +0000 (18:40 +0100)]
Merge !1785: defer: enable by default
Vladimír Čunát [Wed, 7 Jan 2026 11:48:16 +0000 (12:48 +0100)]
defer: enable by default
Frantisek Tobias [Wed, 7 Jan 2026 15:15:19 +0000 (16:15 +0100)]
doc/schema: add DoQ options
Frantisek Tobias [Tue, 6 Jan 2026 13:26:20 +0000 (14:26 +0100)]
daemon/quic_conn: Move connection termination log to debug level,
restore requirement for payload type in worker unwrap
When the requested connections exceed the worker's capacity it polutes the log with large ammounts of prints, could be removed alltogether
Frantisek Tobias [Tue, 6 Jan 2026 13:22:49 +0000 (14:22 +0100)]
daemon/quic: Avoid invalid element access in the connection expiry heap and only decrease session ref_count once
Frantisek Tobias [Tue, 16 Dec 2025 09:53:16 +0000 (10:53 +0100)]
modules/stats: collect doq statistics
Frantisek Tobias [Tue, 16 Dec 2025 09:52:32 +0000 (10:52 +0100)]
config: Add additional QUIC configuration and documentation
Frantisek Tobias [Mon, 8 Dec 2025 13:12:16 +0000 (14:12 +0100)]
quic: refactor error handling
So far no application error codes (defined in rfc 9250 4.3) were specified when closing connections
Frantisek Tobias [Thu, 27 Nov 2025 10:43:41 +0000 (11:43 +0100)]
daemon/quic_conn: fix stream counting
Frantisek Tobias [Wed, 26 Nov 2025 11:40:02 +0000 (12:40 +0100)]
meson: display use of DoQ
Frantisek Tobias [Wed, 26 Nov 2025 11:39:26 +0000 (12:39 +0100)]
daemon/quic: minor optimizations, remove pointless asserts, discard conn state when RETRY pkt is sent
Frantisek Tobias [Wed, 26 Nov 2025 09:35:56 +0000 (10:35 +0100)]
daemon/network: use quic flag name instead of doq
Frantisek Tobias [Mon, 10 Nov 2025 09:36:20 +0000 (10:36 +0100)]
daemon/quic: Prioritize existing unused conns over new ones when conn limits are reached
This change reduces the number of failed requests when the worker is experiencing heavy trafic.
Frantisek Tobias [Tue, 4 Nov 2025 07:33:22 +0000 (08:33 +0100)]
daemon/quic_conn: remove redundant concurrency check
Frantisek Tobias [Mon, 3 Nov 2025 15:13:55 +0000 (16:13 +0100)]
daemon/quic_conn: fix max_stream extention, use libuv times for idle timeouts
closing streams doesn't increase the number of available streams automatically, for connections with streams over the initial limit this caused connections to idle until closed
Frantisek Tobias [Mon, 3 Nov 2025 14:31:13 +0000 (15:31 +0100)]
daemon/quic_common: adjust idle timer and max concurent conn limits to accommodate heavier trafic
Frantisek Tobias [Fri, 24 Oct 2025 08:08:28 +0000 (10:08 +0200)]
daemon/quic_conn: fix session termination, store send_special payload in a new buffer
Frantisek Tobias [Fri, 24 Oct 2025 07:50:32 +0000 (09:50 +0200)]
daemon/quic: fix session termination, add excesive load reply
Frantisek Tobias [Fri, 24 Oct 2025 07:42:13 +0000 (09:42 +0200)]
daemon/quic/common: Adjust idle timeout threshold to 3 seconds, remove unused function
Frantisek Tobias [Wed, 15 Oct 2025 12:39:02 +0000 (14:39 +0200)]
quic/conn: fix data agregation for queries spread over multiple packets
Frantisek Tobias [Wed, 15 Oct 2025 11:57:03 +0000 (13:57 +0200)]
quic/conn: fix stream->pers_inbuf->end update when realloc is required
Frantisek Tobias [Wed, 15 Oct 2025 11:55:05 +0000 (13:55 +0200)]
quic/stream: Handle IO error event initiated by dns layer
Vladimír Čunát [Wed, 15 Oct 2025 11:01:01 +0000 (13:01 +0200)]
meson: allow libngtcp2 >= 1.11.0
For now. We might revisit the choice,
but this version looks not too old and common in .deb
Frantisek Tobias [Wed, 8 Oct 2025 07:13:23 +0000 (09:13 +0200)]
daemon/quic: split doq log groups, remove asserts
Frantisek Tobias [Mon, 6 Oct 2025 13:11:45 +0000 (15:11 +0200)]
daemon/session: start defer only for DOQ_CONN
Frantisek Tobias [Mon, 6 Oct 2025 10:43:36 +0000 (12:43 +0200)]
doc/schema: add doq
Frantisek Tobias [Mon, 6 Oct 2025 08:59:56 +0000 (10:59 +0200)]
daemon/quic: add version negotiation for initial packet