Skip to content

Releases: DNSControl/dnscontrol

v5.0.0-rc5

v5.0.0-rc5 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Aug 20:45
c3d1163

Greetings DNS fans!

Version 5.0 is getting closer!

TESTERS NEEDED!

Please test this release. There should be no user-facing changes however the underlying infrastructure has been rewritten. Please help prevent "dot zero" bugs by testing this now and reporting any findings.

via Docker:

docker run --rm -it -v "$(pwd):/dns" ghcr.io/dnscontrol/dnscontrol:5.0.0-rc5 check

via Released binaries

Binaries for Linux (DEB and RPM), MacOS, FreeBSD, Windows can be downloaded from:

https://github.com/DNSControl/dnscontrol/releases/tag/untagged-37f55e8dac6404c0e434

via Source

git clone https://github.com/DNSControl/dnscontrol.git
git checkout v5.0.0-rc5                              # rc5
git checkout release_candidate_v5          # Working tree
go install

Please report any problems, issues, or questions on Github: https://github.com/DNSControl/dnscontrol/issues/new/choose

Sincerely,
--Tom Limoncelli

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

Major features:

Provider-specific changes:

CI/CD:

Dependencies:

Other changes and improvements:

v4.46.0

Choose a tag to compare

@github-actions github-actions released this 08 Aug 19:01
48292dc

Greetings DNS fans!

Release highlights:

NEW PROVIDER: DNSControl now supports NexDNS! Thanks and welcome to @morozov-alexey who joins the project as its maintainer. We look forward to great things!

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

NOTE: The v5.x release is getting near! What does it need most? You're feedback! Please test it with your configuration. There should be zero user-visible differences. However, since much of the underlying code has been rewritten, testing with real configurations is very important. Release candidate 5.0.0-rc5 is due today or tomorrow. See https://github.com/orgs/DNSControl/discussions

Sincerely,
--Tom Limoncelli

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

Major features:

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

v5.0.0-rc4

v5.0.0-rc4 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Aug 11:03
e5dc8f6

Greetings DNS fans!

Another release candidate! Please test and report any bugs!

We're on schedule to release 5.x before September.

Big change this time: The move from https://github.com/miekg/dns to https://codeberg.org/miekg/dns is complete! We no longer import both! I've also started removing old fields which will save significant memory!

Most providers have been tested by me or a maintainer. However some are completely untested and WE NEED VOLUNTEERS to test them:

ADGUARDHOME
AUTODNS
DESEC
DOMAINNAMESHOP
EXOSCALE
HOSTINGDE
MIKROTIK
PACKETFRAME
RWTH

Sincerely,
--Tom Limoncelli

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:

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

v5.0.0-rc3

v5.0.0-rc3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 01 Aug 19:14
1c629cf

Greetings DNS fans!

All providers are now converted. Some "long tail" work still needed.

Most providres have been tested by me or a maintainer. However some are completely untested and WE NEED VOLUNTEERS to test them:

ADGUARDHOME
AUTODNS
DESEC
DOMAINNAMESHOP
EXOSCALE
HOSTINGDE
MIKROTIK
PACKETFRAME
RWTH

Sincerely,
--Tom Limoncelli

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:

Documentation:

CI/CD:

Dependencies:

Other changes and improvements:

Read more

v4.45.0

Choose a tag to compare

@github-actions github-actions released this 01 Aug 18:09
96f64d3

Greetings DNS fans!

Release v4.45.0 highlights

ANNOUNCEMENT: SPF_BUILDER() may generate a different TXT record after upgrading to this release. A bug was found that produced incorrect results, including elements of the SPF record being unintentionally deleted. The new TXT records are more correct.

  • BUG: SPF flattening no longer drops the last term of an include with no "all" (#4630)
  • AUTODNS now supports two factor authentication via TOTP (#4626). Thanks, @leon-th!
  • BUG: preview no longer errors when a zone will be created by push (#4612). Thanks, @lopster568

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 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:

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

v5.0.0-rc2

v5.0.0-rc2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 23 Jul 03:13
7d65f82

Greetings DNS fans!

This is another release candidate for v5.x. Please test in your environment and report any issues. There should be no user-visible changes. This branch is rewriting some internal systems.

There will be many more release candidates before v5.0.0 is ready to ship.

How to run:

  1. Build it from the branch release_candidate_v5
  2. Use any of the artifacts on the release page https://github.com/DNSControl/dnscontrol/releases/tag/v5.0.0-rc2
  3. Use the docker image:
docker run --rm -it -v "$(pwd):/dns" ghcr.io/dnscontrol/dnscontrol:5.0.0-rc2 preview
            (change "preview" to any subcommand.... preview, push, version)

Details about the changes are in the rc1 release notes: https://github.com/DNSControl/dnscontrol/releases/tag/v5.0.0-rc1

Sincerely,
--Tom Limoncelli

v4.44.1

Choose a tag to compare

@github-actions github-actions released this 23 Jul 03:06
7d65f82

Greetings DNS fans!

Release v4.44.1 highlights:

  • NAMECHEAP: Now supports SRV records, thanks to @willpower232!
  • "dnscontrol init" now supports NS1, thanks to @costasd!
  • Many performance optimizations in the CICD pipeline.

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 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:

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

v5.0.0-rc1

v5.0.0-rc1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Jul 02:08
8dc6252

Welcome to a preview of the future, DNS fans!

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.

Goals of the new release:

  • No user-visible changes. Your dnsconfig.js works.
  • Enable faster adoption of new DNS record types!
  • Enable easier implementation of new custom DNS record types.
  • Internally use the dnsv2.RDATA type to store DNS record fields. This will be more memory efficient.

And most importantly...

  • Old providers "just work". Legacy data structs are bi-directionally converted to the new structures (for now).

Interested in what changed? Visit the new Developer Cookbook which explains the new features that mean less code needs to be written when creating providers.

Maintainers: Existing providers "just work". However, the backwards-compatibility code will go away by the end of 2026. Please read the conversion guide for step-by-step instructions. I've already begun the process for all the providers with automated testing. The branch names are release_candidate_v5_$PROVIDER. For example, release_candidate_v5_namedotcom.

Extra testing needed!

  • BIND: SOA handling has been rewritten to be easier to debug and more reliable. Shouldn't have any user-visible changes but please be on the lookout for problems.
  • CLOUDFLAREAPI: CF_WORKER_ROUTES() need extra testing. Internally they were represented sometimes as WORKER_ROUTE and sometimes as CF_WORKER_ROUTE. It's amazing such complex code ever worked. Now we use CF_WORKER_ROUTE exclusively. The changes were core to the worker feature. Pleaes give extra attending and testing.
  • IMPORT_TRANSFORM() hasn't changed but related parts have.
  • Any provider that implements pseudo-types such as CF_WORKER_ROUTES(), BUNNY_DNS_PZ(), etc.

If you maintain a DNS provider, please give this release extra testing!

I only have automated testing for the following providers:

AXFRDDNS_DNSSEC AZURE_DNS AZURE_PRIVATE_DNS BIND CLOUDFLAREAPI CNR
DIGITALOCEAN GANDI_V5 GCLOUD HEDNS MYTHICBEASTS NETNOD NS1 ROUTE53
SAKURACLOUD TRANSIP VERCEL

All others are at risk of being broken! Apologies in advance! I'm doing my best not to break anything, but without an ability to test my work it's difficult to not make mistakes.

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)

Sincerely,
--Tom Limoncelli

Using with Docker

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

docker run --rm -it -v "$(pwd):/dns" ghcr.io/dnscontrol/dnscontrol:5.0.0-rc1 version

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.

v4.43.3

Choose a tag to compare

@github-actions github-actions released this 21 Jul 01:24
8dc6252

Greetings DNS fans!

No changes. Testing the release process.

Sincerely,
--Tom Limoncelli

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

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

v4.43.2

Choose a tag to compare

@github-actions github-actions released this 20 Jul 17:36
ffa3005

Greetings DNS fans!

No changes since the last release. We are testing the build system.

Sincerely,
--Tom Limoncelli

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

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