github StackExchange/dnscontrol v4.15.4

12 hours ago

Hello DNSControl fans!

Tons of great contributions this time!

Global features:

  • The most visible change is that preview will create missing zones at a provider. Disable this with --populate-on-preview=false.
  • PTR fans will appreciate that magic PTRs now support RFC4183-style names.
  • Plus many documentation improvements, code fixes, and smaller bugs fixed.

Provider improvements:

  • CLOUDFLARE: TTL=300 hasn't been special for a long time. Now our code reflects that.
  • CNR adds ALIAS support, better error checking, and is significantly faster in general.
  • GCLOUD is now more resilient as it will attempt a one retry on 502 errors.
  • HEXONET: Add error handling for MX and SRV record priority
  • INWX now supports SRV "." targets
  • POWERDNS fixes preview/push of non-existent zones.
  • ROUTE53 now supports HTTPS, SSHFP, SVCB, and TLSA record types.
  • TRANSIP is a lot faster and supports rate-limiting.

On the code side: Many warnings from golangci-lint have been fixed; a ZoneCache primitive has been added which will make it easier for providers to safely cache the list of zones at a provider (currently in use by CLOUDFLAREAPI and HETZNER; we'll convert other providers in the future).

This is a community project and we couldn't do it without all our contributors! This release has PRs from 10 people. Thanks! We couldn't do it without you!

Tom

REMINDER: "ppreview" and "ppush" are going away in Release v4.16 (the next release!). See #3142

Changelog

Major features:

Provider-specific changes:

Documentation:

CI/CD:

Other changes and improvements:

Deprecation warnings

Warning

  • REV() will switch from RFC2317 to RFC4183 in v5.0. This is a breaking change. Warnings are output if your configuration is affected. No date has been announced for v5.0. See https://docs.dnscontrol.org/language-reference/top-level-functions/revcompat
  • MSDNS maintainer needed! Without a new volunteer, this DNS provider will lose support after April 2025. See #2878
  • NAMEDOTCOM and SOFTLAYER need maintainers! These providers have no maintainer. Maintainers respond to PRs and fix bugs in a timely manner, and try to stay on top of protocol changes.
  • get-certs/ACME support is frozen and will be removed without notice between now and July 2025. It has been unsupported since December 2022. If you don't use this feature, do not start. If you do use this feature, migrate ASAP. See discussion in issues/1400

Install

macOS and Linux

Install with Homebrew (recommended)
brew install dnscontrol
Using with Docker

You can use the Docker image from Docker hub or GitHub Container Registry.

docker run --rm -it -v "$(pwd):/dns" ghcr.io/stackexchange/dnscontrol preview

Anywhere else

Alternatively, you can install the latest binary (or the apt/rpm/deb/archlinux package) from this page.

Or, if you have Go installed, you can install the latest version of DNSControl with the following command:

go install github.com/StackExchange/dnscontrol/v4@main

Update

Update to the latest version depends on how you choose to install dnscontrol on your machine.

Update with Homebrew

brew upgrade dnscontrol

Alternatively, you can grab the latest binary (or the apt/rpm/deb package) from this page.

Don't miss a new dnscontrol release

NewReleases is sending notifications on new releases.