REFACTOR: Adopt codeberg.org/miekg/dns instead of bespoke fields in RecordConfig#4414
Draft
TomOnTime wants to merge 13 commits into
Draft
REFACTOR: Adopt codeberg.org/miekg/dns instead of bespoke fields in RecordConfig#4414TomOnTime wants to merge 13 commits into
TomOnTime wants to merge 13 commits into
Conversation
commit 0ddcee94dcefc9d48f819a162413f2a3cb7e8ded Merge: efe62ad 756ef44d Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Thu Jul 2 16:20:56 2026 -0400 Merge branch 'tlim_experiment1' into testbranch commit 756ef44d3a8652b2ff5d89336ed15fd0c1681676 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Thu Jul 2 16:15:18 2026 -0400 cleanups commit 91df6dd30f0c68d9fc00ed39cf39cfd1c965b750 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Thu Jul 2 15:53:48 2026 -0400 Cleanups commit 713bcb8 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 30 21:20:08 2026 -0400 m commit f11041c Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 30 21:08:57 2026 -0400 m commit 40d35ca Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 17:10:08 2026 -0400 Cleanups! commit f3b8020 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 17:04:29 2026 -0400 cleanups commit ecb8df0 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 16:56:59 2026 -0400 fix ROUTE53 commit d796850 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 16:55:07 2026 -0400 code cleanups commit 73a41cf Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 16:37:01 2026 -0400 Fix LOC commit 18ee261 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 16:30:57 2026 -0400 Improve SVCB/HTTPS testing commit e6b3630 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 16:08:54 2026 -0400 Remove .NameRaw and .NameFQDNRaw (unused fields in RecordConfig) commit af2e10e Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 14:55:15 2026 -0400 Rearrange RecordConfig factories commit ae87f93 Merge: 3caa333 64beb5a Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 14:35:52 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 3caa333 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 10:42:26 2026 -0400 cleanup commit 70463a7 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 10:38:00 2026 -0400 Fix BUILDERS with subdomains commit 3255b00 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 10:03:39 2026 -0400 remove comments commit aa4ca20 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 09:45:07 2026 -0400 SubDomain processing should not repeat IDN conversion commit 7694c8b Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 30 08:00:59 2026 -0400 Revert "ROUTE53: Enable SOA record editing (#4402)" (#4403) This reverts commit b7d62d0. <!-- ## Before submiting a pull request Please make sure you've run the following commands from the root directory. bin/generate-all.sh (this runs commands like "go generate", fixes formatting, and so on) ## Release changelog section Help keep the release changelog clear by pre-naming the proper section in the GitHub pull request title. Some examples: * CICD: Add required GHA permissions for goreleaser * DOCS: Fixed providers with "contributor support" table * ROUTE53: Allow R53_ALIAS records to enable target health evaluation More examples/context can be found in the file .goreleaser.yml under the 'build' > 'changelog' key. !--> Co-authored-by: Tom Limoncelli <tlimoncelli@coreweave.com> commit c106352 Author: Ilari Stenroth <istenrot@users.noreply.github.com> Date: Tue Jun 30 14:44:07 2026 +0300 ROUTE53: Enable SOA record editing (#4402) This change enables editing SOA records. Co-authored-by: Ilari Stenroth <ilari.stenroth@iki.fi> commit 3bfb7b5 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 07:58:45 2026 -0400 remove comments commit 0d38b1d Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 30 08:12:03 2026 -0400 empty commit 1156dee Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 07:51:47 2026 -0400 SAKURACLOUD CAA fix attempt commit d2afa5f Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 30 07:36:32 2026 -0400 fix Gandi txt with slashes commit 84b2ca1 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 30 07:16:31 2026 -0400 wip! commit d6b805d Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 29 21:06:37 2026 -0400 m commit c4d32c2 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Mon Jun 29 20:53:24 2026 -0400 GANDI txt records commit 43309c8 Merge: 729bec9 0b36a3d Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 29 12:23:19 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 729bec9 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Mon Jun 29 08:56:27 2026 -0400 Make go generate work better commit ab9b459 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Mon Jun 29 08:49:42 2026 -0400 fix gandi txt issue commit 06e70ba Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Mon Jun 29 08:37:07 2026 -0400 wip! commit acfc606 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Mon Jun 29 08:14:17 2026 -0400 Route53 Fix r53_alias commit bfe3b93 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 28 23:22:39 2026 -0400 linting commit 582e48a Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 28 23:16:27 2026 -0400 AzureAlias: do not downcase the target commit ea90e58 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 28 21:53:05 2026 -0400 gandi ALIAS workaround commit be76cdf Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 28 21:23:43 2026 -0400 fixing ech=IGNORE commit 3531df8 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 28 21:19:07 2026 -0400 ech=IGNORE works commit 9e6faf3 Merge: 9b97375 7ba346e Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 28 11:09:53 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 9b97375 Merge: d3c5348 df8100e Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 28 07:40:51 2026 -0400 Merge branch 'main' into tlim_experiment1 commit d3c5348 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 24 06:59:35 2026 -0400 empty commit 2a61546 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 24 06:58:36 2026 -0400 generate commit 78b4a06 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 23 21:01:32 2026 -0400 m commit bf017dc Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 23 16:53:47 2026 -0400 fixed INCLUDE commit dc88b95 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 23 16:49:04 2026 -0400 m commit d12e8a1 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 23 15:15:59 2026 -0400 tlsazone commit 85edacc Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 23 14:46:16 2026 -0400 caa commit f7427ff Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 23 14:31:09 2026 -0400 fix parse_test data commit c65ad17 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 23 12:52:19 2026 -0400 fix CAA Flag bug commit a6241bc Merge: a8bb45b d065c0a Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 23 10:32:09 2026 -0400 Merge branch 'tlim_experiment1' into tlim_experiment1_hjs commit d065c0a Merge: 73aaf6e ae7eca6 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Tue Jun 23 10:32:00 2026 -0400 Merge branch 'main' into tlim_experiment1 commit a8bb45b Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 23 10:29:12 2026 -0400 m commit 61553c5 Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 22 20:42:03 2026 -0400 debugging commit 491faf0 Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 22 20:33:00 2026 -0400 empty commit 57a38da Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 22 19:43:05 2026 -0400 fix rejectif commit c098c7d Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 22 19:36:26 2026 -0400 debug sakuracloud svcb commit 73aaf6e Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 22 19:10:37 2026 -0400 wip! commit 1dcedf4 Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 22 08:59:10 2026 -0400 m commit 058a97d Merge: 8217d93 f1d056a Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 22 08:24:47 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 8217d93 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 21 21:14:49 2026 -0400 wip! commit e4b4384 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 21 21:08:44 2026 -0400 wip! commit 01fd4f3 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 21 20:50:44 2026 -0400 wip! commit 6204e19 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 21 16:51:31 2026 -0400 m commit 70f2f2a Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 21 15:27:30 2026 -0400 CLOUADFLAREAPI tests green commit 6a727bc Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 21 15:27:20 2026 -0400 CLOUADFLAREAPI tests green commit 8e167cd Merge: 434a99a 815b0ef Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 21 09:40:48 2026 -0400 Merge branch 'tlim_experiment1' into tlim_experiment1_rdata commit 815b0ef Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 21 09:40:24 2026 -0400 BIND works! commit 434a99a Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 18:53:12 2026 -0400 m commit ac4658e Merge: e422488 7021400 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 18:08:10 2026 -0400 Merge branch 'tlim_experiment1' into tlim_experiment1_rdata commit 7021400 Merge: 2ffc2b7 2579533 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 18:07:58 2026 -0400 Merge branch 'main' into tlim_experiment1 commit e422488 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 18:06:08 2026 -0400 m commit f47df5b Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 13:38:33 2026 -0400 m commit fceb6dc Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 13:18:17 2026 -0400 wip! commit e9b75e4 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 12:37:14 2026 -0400 wip! commit 033fb17 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 12:17:20 2026 -0400 m commit 403d757 Merge: 7f0c971 f69dc64 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Sat Jun 20 13:17:38 2026 -0400 Merge branch 'tlim_experiment1' into tlim_experiment1_rdata commit 7f0c971 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Thu Jun 18 12:12:28 2026 -0400 wip! commit 10eaf5c Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Thu Jun 18 12:12:20 2026 -0400 wip! commit f69dc64 Merge: 2ffc2b7 2579533 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Sat Jun 20 13:14:37 2026 -0400 Merge branch 'main' into tlim_experiment1 commit f31d190 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 09:28:21 2026 -0400 m commit 263e204 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 09:26:08 2026 -0400 wip! commit 6d6fd4d Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 08:41:24 2026 -0400 m commit 561bb20 Merge: 5413473 e9a673b Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 07:52:36 2026 -0400 Merge branch 'tlim_experiment1' into tlim_experiment1_rdata commit e9a673b Merge: 2ffc2b7 2579533 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 07:52:15 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 5413473 Merge: 1cb51d3 2579533 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 20 07:52:06 2026 -0400 Merge branch 'main' into tlim_experiment1_rdata commit 1cb51d3 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 17 11:24:13 2026 -0400 wip! commit aa53221 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 17 10:41:09 2026 -0400 m commit e195c0e Author: Tom Limoncelli <tal@whatexit.org> Date: Wed Jun 17 08:37:03 2026 -0400 m commit 42f2db3 Author: Tom Limoncelli <tal@whatexit.org> Date: Wed Jun 17 08:36:39 2026 -0400 m commit 95e18a5 Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 15 17:05:17 2026 -0700 wip! commit 4930a80 Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 15 16:12:57 2026 -0700 return pointers to RDATA commit 2ffc2b7 Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 15 10:50:31 2026 -0700 fix HEDNS commit bce135c Merge: 3937d23 855a01e Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 15 10:10:49 2026 -0700 Merge branch 'main' into tlim_experiment1 commit 3937d23 Author: Tom Limoncelli <tal@whatexit.org> Date: Mon Jun 15 09:53:18 2026 -0700 CLOUDFLAREAPI: Fix all crashes and integration tests commit 96971f3 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun Jun 14 00:26:29 2026 -0700 fixes commit 3e7e557 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 23:50:50 2026 -0700 Make panics in test more visible. Change WORKER_ROUTE to CF_WORKER_ROUTE commit 38fe3a5 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 23:08:42 2026 -0700 Default CF features on commit dfb022e Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 23:06:27 2026 -0700 minimal change to HEDNS commit 08a8db8 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 15:29:09 2026 -0700 m commit 43457d9 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 15:28:47 2026 -0700 Fix LabelFromFDQNnodot commit 7ec4a50 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 13:38:46 2026 -0700 linting commit e2f54ce Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 13:34:46 2026 -0700 lintimg commit 1d57f32 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 13:31:46 2026 -0700 Fix NS records for HEDNS commit 4c14d19 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 11:30:35 2026 -0700 Fix CF_SR crash commit c6cc853 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 09:10:35 2026 -0700 m commit b62817e Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 09:03:48 2026 -0700 fix SOA commit ac1d8e9 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 07:47:48 2026 -0700 Rename Generators to Builders commit 69e3f7a Author: Tom Limoncelli <tal@whatexit.org> Date: Sat Jun 13 07:20:38 2026 -0700 import cycle fixed commit d3e3a97 Author: Tom Limoncelli <tal@whatexit.org> Date: Fri Jun 12 22:17:19 2026 -0700 optional and runtimes values now work! commit bf6e62e Author: Tom Limoncelli <tal@whatexit.org> Date: Fri Jun 12 14:22:46 2026 -0400 r53_alias works commit d30b06a Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Fri Jun 12 05:49:48 2026 -0400 m commit 61f65f5 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Fri Jun 12 05:49:15 2026 -0400 m commit e7df68a Author: Tom Limoncelli <tal@whatexit.org> Date: Thu Jun 11 09:00:50 2026 -0400 Eliminated .F commit 3e5f888 Author: Tom Limoncelli <tal@whatexit.org> Date: Wed Jun 10 21:46:12 2026 -0400 fixups! commit e9eb1de Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 10 21:42:18 2026 -0400 m commit d29eb99 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 10 16:00:17 2026 -0400 m commit 77ffe66 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 10 14:56:15 2026 -0400 m commit 013c891 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 10 14:47:44 2026 -0400 m commit 0dbbee8 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 10 14:30:54 2026 -0400 m commit afbf78b Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 10 12:45:58 2026 -0400 fix comments commit 458544f Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 10 12:19:21 2026 -0400 m commit e6bcc76 Merge: 1e8ada9 182888e Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 10 12:17:39 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 1e8ada9 Author: Tom Limoncelli <tal@whatexit.org> Date: Wed Jun 10 12:17:10 2026 -0400 Replace rtypecontrol with dnsv2.RDATA and friends (#4373) Co-authored-by: Tom Limoncelli <tlimoncelli@coreweave.com> commit 6c72efd Merge: f16f30d 0c75178 Author: Tom Limoncelli <tal@whatexit.org> Date: Wed Jun 3 20:53:33 2026 -0400 Merge branch 'main' into tlim_experiment1 commit f16f30d Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 3 17:11:50 2026 -0400 better error message on Gandi commit ee8b9cc Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 3 16:58:31 2026 -0400 fix commit b81e84d Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 3 16:36:22 2026 -0400 fixed DS bug commit d9a3a08 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Wed Jun 3 15:18:24 2026 -0400 DS improvements commit 556a08d Author: Tom Limoncelli <tal@whatexit.org> Date: Wed Jun 3 10:01:00 2026 -0400 remove dead comments commit a76a9bf Author: Tom Limoncelli <tal@whatexit.org> Date: Wed Jun 3 09:31:55 2026 -0400 SVCB now works (except ech=IGNORE is disabled) commit 0c83aec Author: Tom Limoncelli <tal@whatexit.org> Date: Wed Jun 3 07:54:13 2026 -0400 BIND passes all tests (except ech=IGNORE) commit 98d62d0 Author: Tom Limoncelli <tal@whatexit.org> Date: Wed Jun 3 06:36:09 2026 -0400 m commit 06008f6 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 2 22:12:31 2026 -0400 m commit bc70a32 Merge: c79b1b1 5eaf231 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 2 15:23:04 2026 -0400 Merge branch 'main' into tlim_experiment1 commit c79b1b1 Merge: 2012fd8 db01b64 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 2 10:21:47 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 2012fd8 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 2 09:37:45 2026 -0400 getting everything except ECH=IGNORE working commit aa7a210 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue Jun 2 08:33:58 2026 -0400 Create Make*() functions, use them in FixUp(). BIND works commit 8c4b185 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Mon Jun 1 14:30:11 2026 -0400 add missing files commit 2f9b9ca Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Mon Jun 1 14:01:25 2026 -0400 Fix part of DS commit ecd4d1f Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Mon Jun 1 13:50:52 2026 -0400 Fix TargetHost for CNAME, ALIAS, AZUREALIAS, and more commit c8d88a8 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 31 23:01:07 2026 -0400 REFACTOR: Use a factory for DomainConfig commit e9daf34 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 31 20:31:31 2026 -0400 renames to t_ and rdata_ commit c737431 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 31 15:47:21 2026 -0400 Fix intergation test **substring** updates commit b0f8ef9 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 31 15:22:58 2026 -0400 linting commit ca3c6fb Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 31 14:52:56 2026 -0400 empty commit 7a51a4a Merge: 8be2be1 7a079bc Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 31 14:50:56 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 8be2be1 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 31 14:47:43 2026 -0400 phase 2 wip commit 9a0e167 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 31 14:33:19 2026 -0400 phase2 commit bc85db8 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat May 30 19:53:13 2026 -0400 remove comments commit 13b848b Author: Tom Limoncelli <tal@whatexit.org> Date: Sat May 30 16:14:12 2026 -0400 Fix SOA and serial numbers commit 2a26395 Author: Tom Limoncelli <tal@whatexit.org> Date: Sat May 30 12:15:43 2026 -0400 Pretty converted to dnsv2. Fix makeRecAndFix. Fix DS and RP commit 1be8bf0 Author: Tom Limoncelli <tlimoncelli@coreweave.com> Date: Fri May 29 16:29:48 2026 -0400 Migrating to dnsv2 commit 917069f Author: Tom Limoncelli <tal@whatexit.org> Date: Fri May 29 10:03:02 2026 -0400 wip! commit 6aa27ed Author: Tom Limoncelli <tal@whatexit.org> Date: Fri May 29 08:32:24 2026 -0400 Fix AddNSRecords commit 5cbde3a Author: Tom Limoncelli <tal@whatexit.org> Date: Fri May 29 08:28:38 2026 -0400 Add placeholders for remaining custom types commit 5143be9 Merge: efec4ae b226341 Author: Tom Limoncelli <tal@whatexit.org> Date: Fri May 29 08:03:12 2026 -0400 Merge branch 'tlim_azureoptimize' into tlim_experiment1 commit efec4ae Author: Tom Limoncelli <tal@whatexit.org> Date: Fri May 29 08:02:59 2026 -0400 m commit e33206e Merge: 703e1bf 480a6f4 Author: Tom Limoncelli <tal@whatexit.org> Date: Fri May 29 08:01:49 2026 -0400 Merge branch 'main' into tlim_experiment1 commit b226341 Merge: 8cbf28d 480a6f4 Author: Tom Limoncelli <tal@whatexit.org> Date: Fri May 29 08:01:29 2026 -0400 Merge branch 'main' into tlim_azureoptimize commit 703e1bf Author: Tom Limoncelli <tal@whatexit.org> Date: Fri May 29 07:48:07 2026 -0400 m commit b890bd0 Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 23:06:54 2026 -0400 use args consistently. normalize file order commit 7ade52f Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 22:23:28 2026 -0400 fix adguard commit b716b01 Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 21:35:04 2026 -0400 worker route commit 266395f Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 21:31:46 2026 -0400 fix cfWorkerRoute commit 8ade93c Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 21:00:55 2026 -0400 implement cfworkerroute commit 9f3c46e Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 20:28:01 2026 -0400 AZURE_ALIAS and R53_ALIAS commit 0190255 Merge: ee2018a df8e1f3 Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 19:13:08 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 8cbf28d Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 19:09:40 2026 -0400 linting commit deeecfa Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 19:02:30 2026 -0400 more commit 469f2bd Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 18:53:45 2026 -0400 fix only() commit 74e03bf Merge: 475fd46 df8e1f3 Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 18:50:24 2026 -0400 Merge branch 'main' into tlim_azureoptimize commit 475fd46 Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 09:42:15 2026 -0400 fixups! commit d4b22b9 Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 09:23:30 2026 -0400 AZURE_PRIVATE_DNS: Fix more tests commit ee2018a Author: Tom Limoncelli <tal@whatexit.org> Date: Thu May 28 08:57:06 2026 -0400 m commit 7564202 Author: Tom Limoncelli <tal@whatexit.org> Date: Wed May 27 17:11:58 2026 -0400 fix 027-ds commit 1313e56 Merge: 3a6d065 5154617 Author: Tom Limoncelli <tal@whatexit.org> Date: Wed May 27 16:48:11 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 3a6d065 Merge: 45d6bf4 3bd6aa3 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 26 22:33:47 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 45d6bf4 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 26 20:04:50 2026 -0400 m commit 92e8c82 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 26 20:03:49 2026 -0400 m commit 4e2a923 Author: Tom Limoncelli <tal@whatexit.org> Date: Mon May 25 08:24:00 2026 -0400 CICD: Skip failing HEDNS test (#4329) # Issue HEDNS fails the `testgroup("Ech")`, test. # Resolution Skip this test for now. Bug #4328 opened to track this. commit 52cbb6e Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 24 12:59:48 2026 -0400 BUGFIX: ech=s (#4324) # Issue Bug: #3804 **Describe the bug** When using `HTTPS("…", 1, ".", "alpn=h3 … ech=IGNORE")`, but ech has not yet been set by the owner, then dnscontrol keeps saying it needs to change it … by adding a space that isn't there every run… **To Reproduce** 1. Create a HTTPS record with [`ech=IGNORE`](https://docs.dnscontrol.org/language-reference/domain-modifiers/https) - `+ CREATE ccccc.example.com HTTPS 1 . alpn="h3" ttl=1` 3. run dnscontrol again - `± MODIFY ccccc.example.com HTTPS (1 . alpn="h3" ttl=1) -> (1 . alpn="h3" ttl=1) id=X` 5. Observe changes, every, run… - `± MODIFY ccccc.example.com HTTPS (1 . alpn="h3" ttl=1) -> (1 . alpn="h3" ttl=1) id=X` **Expected behavior** 1. `+ CREATE ccccc.example.com HTTPS 1 . alpn="h3" ttl=1` - observe no double space between value and ttl 2. re-run - observe no change to record **DNS Provider** - Cloudflare **Additional context** The ECH field needs to be managed by whoever manages the certs (probably the webserver), and when making these records but before first use means it doesn't have a value. Note that this issue was missed in testing because [ech has a value](https://github.com/StackExchange/dnscontrol/blob/6ef064877859f3dbc096112c8896160af9e91e3f/integrationTest/integration_test.go#L296) there… # Resolution Remove the quotes in that one situation. commit b68b682 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 24 11:19:15 2026 -0400 CLOUDFLAREAPI: Reduce integration tests to match the free tier (#4325) CC @tresni @allixsenos @jzhang-sre # Issue Some tests fail because they use features that are not available in the "free tier" account we use for testing. # Resolution Reduce the tests to avoid them. The following features will no longer be regularly tested: * CNAME flattening * Tags * "Single redirects" that use the "Matches" subcommand NOTE: Would you like these features to be tested regularly? We'd gladly accept the donation to enable us to buy a "business plan"-level account. (Cloudflare, if you're listening, we'd love a partnership!) commit b64638f Merge: a3c3cde 5d9726d Author: Tom Limoncelli <tal@whatexit.org> Date: Sat May 23 08:42:42 2026 -0400 Merge branch 'main' into tlim_experiment1 commit a3c3cde Merge: 625134c aee8769 Author: Tom Limoncelli <tal@whatexit.org> Date: Wed May 20 16:16:30 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 625134c Merge: 4b0a415 aac371c Author: Tom Limoncelli <tal@whatexit.org> Date: Wed May 20 15:09:53 2026 -0400 Merge branch 'tlim_pipefail' into tlim_experiment1 commit aac371c Author: Tom Limoncelli <tal@whatexit.org> Date: Wed May 20 15:09:42 2026 -0400 CICD: Add pipefail to catch all errors commit 4b0a415 Merge: ddf89c4 918f795 Author: Tom Limoncelli <tal@whatexit.org> Date: Wed May 20 09:40:10 2026 -0400 Merge branch 'main' into tlim_experiment1 commit ddf89c4 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 19 17:37:13 2026 -0400 empty commit 674e9b0 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 19 17:34:57 2026 -0400 linting commit 4c27250 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 19 17:27:25 2026 -0400 diff2: fixing analyze_test.go commit 268a4ed Merge: 429112e 1a66a42 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 19 17:03:14 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 429112e Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 19 10:04:10 2026 -0400 m commit 5f2ffa6 Merge: 0532d06 42ec97e Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 19 09:56:04 2026 -0400 Merge branch 'tlim_recordng' into tlim_experiment1 commit 42ec97e Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 19 09:49:56 2026 -0400 REFACTOR: Add V3 fields to RecordConfig commit 0532d06 Author: Tom Limoncelli <tal@whatexit.org> Date: Tue May 19 09:40:22 2026 -0400 wip! commit 59c9ffa Author: Tom Limoncelli <tal@whatexit.org> Date: Mon May 18 21:18:32 2026 -0400 Native types converted commit 87b1660 Merge: 444d61c 47d64a9 Author: Tom Limoncelli <tal@whatexit.org> Date: Mon May 18 20:57:47 2026 -0400 Merge branch 'main' into tlim_experiment1 commit 444d61c Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 17 20:55:45 2026 -0400 SVCB and HTTPS now supports commit fbb8920 Author: Tom Limoncelli <tal@whatexit.org> Date: Sun May 17 19:05:06 2026 -0400 Use RCv3 in diff2
Member
|
I tested this with PORKBUN and breaking. Can we remove |
# Issue Test TestWriteZoneFileEach is commented out because it was failing. # Resolution Fix TestWriteZoneFileEach
59 tasks
* TLSA fixtures should have uppercase hex data * cookbook.md: Add info about models.LabelFromFQDNWithDot * Add NewRecordConfigForRRv2toRC() for use by BIND * Replace RRtoRCV2 with RRv2toRC, which removes any layering violations * Fix TestWriteZoneFileTxt to handle FQDNs right
…ssing, not after (#4425) * MakeDomainNameVarieties() immediate after processing dnsconfig.js instead of fixing it later in the PostProcess hack. * Remove hack where we copied DomainConfig.{Name,NameRaw,Tags,UniqueName} and others into DomainConfig.Metadata. This requires a new signature for EnsureZoneExists() and updating all pkg/js fixtures
## Summary Fixes the AliDNS audit path for internationalized CNAME targets that have already been converted to ACE/punycode before `AuditRecords` runs. AliDNS supports ASCII and Chinese IDN values, but rejects non-Chinese IDN targets such as `ööö.com.`. During integration testing, that target reaches the provider audit as `xn--ndaaa.com.`, so the existing ASCII/Chinese check sees only ASCII and allows it through. The AliDNS API then rejects the create request with `SubDomainInvalid.Value`. This changes `targetConstraint` to decode the target with `idna.ToUnicode` before applying the existing AliDNS string validation. That preserves support for ASCII and Chinese IDN targets while rejecting non-Chinese IDN targets during audit, so the integration test is skipped as provider-unsupported instead of failing at the API call. related to: #4421 ## Tests ```bash go test ./providers/alidns go test ./integrationTest -run TestNonExistent -count=0 ```
#4421 (comment) #4421 (comment) not sure if there is a neat way of detecting the provider or not, probably preferable to making a second kind of URL301 type
# Issue MakeSVCB() uses an inefficient parser. It builds up a big string, parses it, and tosses most of the results. # Resolution Use svcb.Parse() to only parse the parts we need. Co-authored-by: Tom Limoncelli <tlimoncelli@coreweave.com>
…methods (#4426) * Rewrite `models.backfill()` to set legacy fields directly. Do not use `SetTarget*()` helpers. This prevents accidental infinite recursion. * `MakeCAA()` now validates the tag string. * BUGFIX: `MyNewData()` appended wrong domain. * Create `models.legacySetTargetArgs()` and `models.legacySetTargetParse()` to make it easier to moderize `models/t_*.go` files * Add `dc.AddTestRCParse()` * Moderize `models.t_caa.go` * Moderize `models/t_dnskey.go` * Modernize `models/t_ds.go` * Rewrite `t_parse.go` to use `legacySetTargetParse()` * Rewrite `PopulateFromString()` to use `PopulateFromStringFunc()` * Modernize `pkg/diff2/analyze_test.go` * Convert `pkg/diff2/handsoff_test.go` to use dnsv2 * Rewrite `pkg/dnsrr/dnsrr.go` to use RecordConfig factories, not `SetTarget*()` helpers. This prevents accidental infinite recursion.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Issue
Problem: RecordConfig has individual fields for each rtype: MxPreference, SrvPriority, SrvWeight, SrvPort, CaaTag, CaaFlag, DsKeyTag, DsAlgorithm, DnskeyFlags, DnskeyProtocol, etc. etc. etc. This wastes memory, requires bespoke functions for each type, and so on.
Solution: Add a field called .RDATA that is an interface reference to dns.RDATA. This stores a reference to a different struct for each rtype. Thus, saving memory (once the old fields are removed). In the meanwhile, bidirectional conversion from the old and new ways is automatic. Old providers still work. New providers can use the new features.
Resolution
Release Notes
DNSControl v5 is refactoring some of the biggest internal parts of the system. There should be zero user-facing
changes. However, I'm releasing a few "test balloons" to get feedback early.
Extra testing needed!
WORKER_ROUTEand sometimes asCF_WORKER_ROUTE. It's amazing such complex code ever worked. Now we useCF_WORKER_ROUTEexclusively. The changes were core to the worker feature. Pleaes give extra attending and testing.If you maintain a DNS provider, please give this release extra testing!
I only have automated testing for the following providers. All others are at risk of being broken!
AXFRDDNS_DNSSEC AZURE_DNS AZURE_PRIVATE_DNS BIND CLOUDFLAREAPI CNR
DIGITALOCEAN GANDI_V5 GCLOUD HEDNS MYTHICBEASTS NETNOD NS1 ROUTE53
SAKURACLOUD TRANSIP VERCEL
Provider maintainers! Please run the integration tests on this branch and report back any problems. (This is also an excellent opportunity to add your provider to the automated testing list)
Developer notes
Future
Workarounds required for codeberg.org/miekg/dns
The migration to the new DNS package was very smooth. However there were some things I couldn't figure out how to do:
pkg/txtutil/{miekg.go miekg_test.go ddd/ddd.go}. It would be nice to not have to copy those.Changes
models.NewDomainConfig(zone).pkg/normalize/validate.gostill exists and is used, but is slowly being deprecated.rtypecontrolmodule. In the few places it was used, replace with the new RDATA functionality.RPandDSwere reimplemented using the new RDATA system.pkg/dnsrr/dnsrr.goto help migrate away from dnsv1pkg/js/helpers.js: Improve rawRecordBuilder() to be feature-compatible with recordBuilder()pkg/js/helpers.js: Convert to "the new way" for A AAAA CAA CF_REDIRECT CF_SINGLE_REDIRECT CF_TEMP_REDIRECT CNAME DHCID DNAME DNSKEY DS HTTPS LOC MX NAPTR NS OPENPGPKEY PTR R53_ALIAS RP SMIMEA SOA SRV SSHFP SVCB TLSApkg/js/parse_testsupdate fixtures due to new JSON fields. .json files no longer have Unicode chars.mustbefor converting raw data to the types we need.TODO
These may or may not make it into v5: