github DNSControl/dnscontrol v5.5.0

3 hours ago

Greetings DNS fans!

Release highlights!

Three BIG changes!

  • NEW PROVIDER: DNSControl now supports Misaka.io DNS (MISAKA)! Thanks and welcome to @ZeroClover who joins the project as its maintainer. We look forward to great things!
  • New record type: CSYNC. Supported by NETNOD and BIND. Thanks to recent refactoring, it should be easier than ever for other providers to add support.
  • New D() syntax! Still experimental and may change. Check out https://docs.dnscontrol.org/getting-started/converting-dnsconfig
    (this will become the documented default in the next release; the old syntax will still work)

In developer news:

  • OpenSSF Scorecard: This automatic audit is helping us make DNSControl more secure. Thanks to @chicks for taking this on!
  • Refactoring: There's been a major overhaul in how providers register themselves. You shouldn't notice any changes, but it is now easier to write a provider. We've also removed a lot of old legacy code as a result.
  • Integration tests now automatically run if a provider supports all the record types involved. No more requires(CanUseSRV)!

Thanks to all contributors involved in this release! This is a community project and we couldn't do it without all of your contributions!

Sincerely,
--Tom Limoncelli

Experimental: Try the new D() syntax!

Select credential entries directly with REGISTRAR() and SERVICE() in dnsconfig.js. The legacy syntax remains supported; this revision replaces the experimental PROVIDER()/DNS_SERVICE() syntax from v5.3.0. See the examples in the conversion guide. Please test it and share feedback! (There may be 1-2 changes before this becomes the documented, default, way to do things.)

Monthly video call!

Everyone is invited to the Monthly DNSControl Community Video Conference Call on the 2nd Tuesday of each month. Join whether you are a new user with questions or an experienced developer that wants to discuss DNSControl internals... or anything in between! Meeting details on
GitHub Discussions.

Changelog

Provider-specific changes:

New features:

Documentation:

CI/CD:

Refactoring:

Deprecation warnings

Warning

  • REV() will switch from RFC2317 to RFC4183 sometime after v5.0 is released. This is a breaking change. Warnings are output if your configuration is affected. See https://docs.dnscontrol.org/language-reference/top-level-functions/revcompat
  • NAMEDOTCOM, OPENSRS 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.

Install

macOS and Linux

Install with Homebrew (recommended)
brew trust --formula dnscontrol/tap/dnscontrol
brew install DNSControl/tap/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/dnscontrol/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/DNSControl/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/tap/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.