github StackExchange/dnscontrol v4.29.0

16 hours ago

Greetings DNS fans!

POTENTIAL BREAKING CHANGES:

  • "fmt" now defaults to writing to dnsconfig.js. If you use ">" instead of "-o", check your scripts!
  • The date/time of the Monthly DNSControl Community Video Conference Call will change in January. Look for updates on Github in the next week or so.

Highlights:

  • "--notify" can be enabled in creds.json so that (for example) you always get notified on "push" (#3910) (@michaelkaye)
  • "fmt" with no options reformats dnsconfig.js in place (This may break some scripts, but its a beta feature). It also is silent when no changes made. Use "-v" to always output the file names. See #3927 for details (#3927) (@tlimoncelli)

Bug fixes:

  • 51bf2e3: BIND get-zones now works when using %D (#3930) (@tlimoncelli)
  • f7c145a: The RP record type was broken in many ways: It ignored the DefaultTTL() setting, it didn't output errors (the record was silently ignored), and a lot of the validation that old-style types benefit from were not replicated in the new code. (#3931) (@tlimoncelli)
  • A lot of code was refactored to be more consistent. None of that should change user-visible behavior.

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

Monthly video call!

Everyone is invited to the Monthly DNSControl Community Video Conference Call on the 3rd Monday 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

Major features:

Provider-specific changes:

Documentation:

CI/CD:

Dependencies:

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
  • 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 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.