All Versions
11
Latest Version
Avg Release Cycle
87 days
Latest Release
101 days ago

Changelog History
Page 1

  • v2.11

    February 14, 2020

    Big improvements for Gandi users, new providers (ClouDNS,
    📚 Internet.bs), many code and documentation improvements including a
    🚚 move to Go Modules.

    💥 BREAKING CHANGE: GANDI_V5 is a significant improvement over the GANDI
    🚚 and GANDI-LIVEDNS providers, both of which will be removed in 3.0.
    Please migrate now.

    Let's Encrypt now tries all renewals even if an earlier one fails.

    Major changes:

    • 🆕 NEW PROVIDER: GANDI_V5 (deprecates GANDI) (#572)
    • 🆕 NEW PROVIDER: Internet.bs (#590)
    • 🆕 NEW PROVIDER: ClouDNS (#578)
    • ➕ Add _mta-sts to labels allowed to have an underscore (#617)

    Reliability improvements:

    • LETS_ENCRYPT: Try all cert renewals before returning error (#611)
    • LETS_ENCRYPT: DNS01 challenge no longer skips preCheckDNS (#591)

    Provider-specific changes:

    • AZURE: Alias records no longer break DNSControl (#616)
    • ⚡️ AZURE: Fixes a situation where, wrong domain was gets updated (#615)
    • 👍 DIGITALOCEAN: CAA is supported with some caveats (#592)
    • 👍 NAMECHEAP: Add CAA support (#533)

    📄 Docs and internal changes:

    • 📄 DOCS: Updated release engineering process
    • 📄 DOCS: Better explain NAMESERVER() vs NS() (#608)
    • 📄 DOCS: Clarify bug triage process (#606)
    • 📄 DOCS: Improve Lets Encrypt docs (#594)
    • ⚡️ Updated module: upgrade urfave/cli to v2 (#614)
    • ⚡️ Updated module: upgrade github.com/mjibson/esc (#515)
    • ✅ Integration test: Add test for TXT with null string (#597)
    • 👕 Many code cleanups, linting, vetting (#605)
  • v2.10.0

    January 20, 2020

    Major Changes:

    • 🆕 New Provider: Azure DNS (#547)
    • Switched from govendor to go modules for dependencies (#587)
    • ⬆️ Upgraded to Go 1.13 (#550)

    Provider-specific changes:

    • 👍 Gandi: Support for multi-TXT records (#545)
    • 🖨 Gandi: Print actual changes to be pushed (#546)
    • 👍 Vultr: Added support for SSHFP records (#531)
    • CloudFlare: Add ability to manage UniversalSSL (#496)
    • 👍 CloudFlare: Support API tokens (#555)
    • Route 53: Add AWS_PROFILE functionality (#567)

    Minor cleanups:

    Thanks to all contributors!

    @tlimoncelli
    @captncraig
    @geek1011
    @patschi
    @tlnd-rdalverny
    @vatsalyagoel
    @BenoitKnecht
    @mhenderson-so
    @wsuff
    @hmrbarros
    🚦 @signalwerk
    @zwo-bot
    @pragmaton
    @willpower232

  • v2.9

    May 27, 2019

    🚀 Its been a while since the last release! This release rolls up a number of big changes: IGNORE() now supports wildcards/globs, require() can be used to load JSON. New provider: Exoscale. New rTypes: SSHFP and NAPTR. The duplicate record check now happens in preview, not just in push. A new flag makes it easier to use dnscontrol in a CI/CD pipeline. Plus a lot, lot, more!

    Major features:

    • 🆕 NEW PROVIDER: Exoscale (#390)
    • ➕ Add SSHFP DNS record support. (#439)
    • ➕ Add NAPTR support. (#461)
    • ➕ Add --expect-no-changes flag to preview (#449)
    • 👍 IGNORE() now supports glob pattern/wildcards (#463)
    • 👍 require() now supports loading JSON too (#474)
    • 👍 SPF_BUILDER() now supports setting the TTL (#476)
    • CAA_BUILDER() makes it easier to add CAA records (#478)
    • Check for duplicate records much earlier (#467)
    • ➕ Add SIP/JABBER labels to underscore exception list (#453)
    • require() now handles paths as relative (like nodeJS) (#443)

    Provider-specific changes:

    • 👍 ACTIVEDIRECTORY: Full support for managing NS records. (#450)
    • 📄 NAMEDOTCOM: Improve error docs
    • 👍 CLOUDFLARE: Added TLSA and SSHFP support (#484)
    • CLOUDFLARE: Added options to set the target account for new domains (#430)
    • ⚡️ CLOUDFLARE: Fix CF trying to update non-changeable TTL (#489)
    • 🛠 CLOUDFLARE: SPF records should be converted to TXT Fixes #446 (#480)
    • ROUTE53/GCLOUD: Add Delegation/nameserver Sets (#448)
    • DIGITALOCEAN: Fix #479: Filter SOA records from Digitalocean (#485)
    • 🛠 OVH: Fixed registrar ns correction (#486)
    • 🛠 OVH: Fixed DKIM when having longer keys (#487) (#488)
    • ⚡️ OVH: Update to use newer client library (#445)
    • 👍 OVH: Certify SSHFP support (#482)
    • 👍 OVH: Certify that CAA support (#477)
    • 📚 OVH: Documentation: Fix OVH API First Steps link (#416)

    Minor cleanups:

    • 📄 General docs improvements (#481)
    • DOC: Apply brand-preferred case (#429)
    • 📚 DOCUMENTATION: Document bugid 491 (#492)
    • 📄 DOCS: Fix many spelling errors (#471)
  • v0.2.8

    December 19, 2018

    🆕 New features:

    • Warn (but don't fail) if creds.json file does not exist (#425)
    • 📚 Documentation: Added brew installation method to README (#426)
    • 🛠 BUGFIX: Fix SRV record handling when target is shortname (#422)
    • 🔒 SECURITY: Many improvements related to LetsEncrypt (#406) (#411)
    • 📦 Verbose debug logging via the ConsolePrinter and printer package. (#404)
    • 💅 Codestyle: Fix formatting on parse_test JSON (#427)
    • OVH: Fix caching issue (#412) (#417)
    • 👍 GCLOUD: Support TXTMulti (#415)
    • BIND: Warn if output directory does not exist. (#424)
    • NAMEDOTCOM: Documented some error messages.
    • GANDI-LIVE: Document "no such zone" error.
    • ⚡️ DNSIMPLE: Update DNSimple-go to v0.20.0 and fix provider (#414)
    • DNSIMPLE: Fix DNSimple SRV and MX records (#413)
  • v0.2.7

    October 08, 2018

    Major Features:

    • 📚 Let's Encrypt Certificate Generation! #327 Documentation
    • ♻️ Refactoring of most fields in the internal representation of domains. Most code now accesses fields on records through getters and setters, which should help us maintain better consistency throughout the system. #337
    • 🆕 New Provider HEXONET #373

    BIND:

    • 🛠 Fix panic on CNAME #347

    Cloudflare:

    • 🛠 Fix parsing of priority field in record (fixes #367) #368

    Route 53:

    • 🛠 Fix corner case when deleting r53_alias records #394
    • ➕ Added token to NewStaticCredentials #401
    • 🛠 Fix bug in Route 53 ALIAS record #336

    📚 Documentation:

    • 👌 Improve spfcache.json instructions #375
    • Clarify the when to implement certain interfaces #376
    • 📚 update documentation for Gandi to mention the LiveDNS provider #385
    • Review Maintainers of contributed providers #400
    • AWS Token options documented #403
    • ➕ Add Gandi registrar to example #335
    • 📄 Document SRV, CF*REDIRECT, and note where docs are needed. #346

    Misc / Bugs:

    • 🗄 convertzone produces deprecated NAMESERVER entries #363
    • 🛠 Fix #339 prevent the ovh provider to panic on SPF and DKIM record types #340
    • 🛠 Fix #341 do not erase all records labels #342
    • 👍 Better validate NAMESERVER format. #350
    • ⚡️ Update AD integration failures #353
    • 🛠 fix names for internal transformed records #358
    • 👍 Include support for exists element in SPF. #356
    • ↪ Work around extra whitespace in spf records #361
    • sort returned nameservers #369
    • ➕ Add support for MX priorities of "" (0) #374
    • 🏗 Include PTR types in SPF Builder #378
    • Create directories with execute permissions so they can be opened #395
    • Correctly group R53_ALIAS records during IncrementalDiff. #399
    • ➕ Add NAMESERVER_TTL and associated documentation. #398
    • ⚡️ update go version to 1.10 #409

    Thanks to all contributors:

  • v0.2.6

    March 16, 2018

    🚀 What an exciting release!

    Summary

    • Gand v5i : Added support for the v5 API (also called "LIVEDNS")
    • OpenSRS: You can now use OpenSRS as a registrar!
    • 👍 OctoDNS Support! DNSControl now generates OctoDNS configuration files, which means you can use OctoDNS to talk to providers that DNSControl doesn't support. Users of OctoDNS will also appreciate that convertzone can read your OctoDNS zone configs and output a first draft of your dnsconfig.py.

    ♻️ Major refactoring! The RecordConfig struct has been reworked and that required code changes all over the place. Every provider was touched. Thanks to all the contributors for testing our changes (and fixing the bugs that were introduced by the refactoring). The benefit is that providers are now easier to write, cleaner to write, with less possibility for bugs. In the future support for new providers and DNS record types should be easier.

    Major features:

    • 👉 Make IGNORE work with all providers (#313)
    • 🆕 NEW REGISTRAR: OpenSRS (#275)
    • 🆕 NEW PROVIDER: OctoDNS (#309)
    • 🆕 NEW PROVIDER: GANDI-LIVEDNS (API v5) (#320)

    🐛 Bugs fixed:

    • Rewrite IGNORE to use GetLabel (#331) (Fix #312)
    • 🛠 Fix CAA Support: helpers.js CAA_CRITICAL flag=128 (#318) (#319)
    • DNSIMPLE: Fix DNSimple crashes on Alias: (#322)
    • GCLOUD: create-zones breaks if domain starts with digit
    • LINODE: Fix Linode provider (#333)
    • ROUTE53: R53 crashes if traffic flow policy records exist (#330)
    • ROUTE53: Fix R53_ALIAS not being registered as custom type (#310) (#311)

    Code improvements:

    • ♻️ Refactor RecordConfig: Add getters/setters (#314)
    • ⚡️ Update vendored packages (#326)
    • Switch from fmt.Error* to errors.Error* (#317)
    • 👍 Better .gitignore of integration test stuff. (#316)
    • ♻️ Refactor: Prelink providers to domains (#305)
    • ♻️ DNSIMPLE: dnssimple URL broke during refactor (#325)
    • GCLOUD: Differentiate two modules name dns (#328)
    • ROUTE53: Deleting wildcards doesn't work 19ca760
    • 🛠 Plus a few documentation and minor bugfixes
  • v0.2.5

    January 23, 2018

    👍 So many new features! New record types! Better DKIM support! Better AWS support!

    Highlights:

    • 👌 Support for the ability to IGNORE() a label if some other system is updating it (all providers)
    • 👌 Support for very long DKIM strings. You no longer have to split them yourself.
    • 👌 Support for the new CAA record type (GANDI, CLOUDFLARE)
    • 👌 Support for TXT records with multiple strings (BIND, ROUTE53, NAMEDOTCOM)
    • 👌 Support for AWS ROUTE53 "ALIAS" records.
    • ➕ Add the ability to send notifications to chat rooms when updates are done.
    • 📚 A lot of code cleanups and documentation fixes.

    🛠 Detailed list of features and bug fixes:

    • ➕ Add support for the IGNORE(label) directive (#183)
    • Simple notification framework (#297)
    • ➕ Add syntax for very long DKIM strings (#295)
    • ➕ Add general support for TXT records with multiple strings (#293)

    Provider-specific news:

    • 👍 BIND: Add support for TXT records with multiple strings (#289)
    • ⚡️ BIND: Fix bug where SOA serial numbers were not updating
    • 👍 CLOUDFLARE: Support CAA rtype (#285)
    • 📄 DIGITALOCEAN: Improve example in docs (#281)
    • 👍 GANDI: Add support for CAA rtype (#288)
    • 👍 NAMEDOTCOM: Add support for TXT records with multiple strings (#299)
    • ⬆️ NAMEDOTCOM: Upgrade to v4 api (#298)
    • 👍 ROUTE53: Add support for TXT records with multiple strings (#292)
    • 👍 ROUTE53: Support Route53's ALIAS record type (#239) (#301)
    • ROUTE53: Document error messages from various credential issues. (#291)

    📚 Internal cleanups and documentation improvements:

    • 👌 Improve docs on how to add an DNS record type.
    • 📚 Many other small documentation improvements
    • 👕 "go vet" and "go lint" the entire system.
    • ⚙ run helpers.js through Prettier
    • 📄 docs: Improve comments related to capabilities. (#287)
    • ⚡️ Update github.com/prasmussen/gandi-api to prepare for LiveDNS support. (#302)
  • v0.2.4

    December 06, 2017

    🚀 Another big release! Two new providers (Linode, OVH), Gandi now supports registration functions, and my favorite new feature: the SPF optimizer!

    🆕 New features:

    The language has changed slightly:

    • Defining a domain twice is now considered an error.
    • Labels that are FQDNs is now an error. (this is a common typo)
    • Downcase DNS names (#253). DNSControl is opinionated and we've added a new optinion: All DNS labels and targets should be lowercase. Uppercase (language permitting) is now downcased silently.

    Provider-specific improvements:

    • 🆕 New provider: Linode (#268)
    • 🆕 New Provider: OVH DNS Provider (#143) (#175)
    • 👍 GANDI: Registrar support (#274)
    • NAMECHEAP: Rate limiting now only throttles when needed
    • 👍 NS1: Add SRV record support (#277)
    • NS1: TXT records are broken if they contain spaces (#270)
    • ⚡️ ROUTE53: Update aws libraries and remove "waiter" code.

    🛠 Plus many code cleanups and fixes:

    • ⬆️ Upgrade to newest miekg/dns library
    • 📇 Rename source files that don't match the name/nameProvider.go standard. (#261)
    • 👌 Improved Namecheap documentation (#221) (#232)
    • 👌 Improved documentation: Document that creds.json can include env variables, improve Namecheap docs, improve explanation of how to write a new provider, release engineering docs, and a massive overhaul to the website docs by Patrick G

    Thanks to everyone for their contributions!

  • v0.2.3

    October 19, 2017

    🚀 This release adds two new DNS providers! We now support managing domains on Namecheap, thanks to @rbelnap (was previously just a registrar), and we have Vultr support thanks to @geek1011.

    📚 Everything else is mostly a few bug fixes, and some much needed documentation cleanup from @geek1011.

    🔀 Pull Requests Merged:

    DNSimple:

    • 🖐 handle pagination appropriately. #242
    • ➕ Adding SRV, CAA, and ALIAS suppport #243

    Namecheap:

    • 🆕 New Provider! #202

    Vultr:

    • 🆕 New Provider! #219

    other:

    • 🛠 Website fixes (Part 1) #223
    • 👌 Improved consistency of provider documentation #222
    • 🛠 Fixed Cloudflare docs (#221) #224
    • 🛠 Fixed Active Directory docs (#221) #225
    • 👌 Improve Gandi documentation (#221) #229
    • 👌 Improve Google Cloud DNS docs (#221) #230
    • 👌 Improve NS1 documentation (#221) #233
    • 👌 Improved BIND docs (#221) #226
    • 👌 Improve softlayer documentation (#221) #235
    • 👌 Improved Name.com documentation (#221) #231
    • 👌 Improve DNSimple documentation (#221) #228
    • 👌 Improved DigitalOcean documentation (#221) #227
    • ⚡️ update README to include NS1 as a provider #240

    Thanks to all contributors:

  • v0.2.2

    October 02, 2017

    So many new features!

    🚀 The biggest change in this release is the new command line flag parser. The good news is that is the subcommands and flags are much more consistent and better documented. It is also much easier to add new subcommands and flags. The bad news (BREAKING CHANGE) is that some of the old command/flag names have changed, which might break bash scripts, documented procedures, etc.. WARNING: Carefully test this release with any shell scripts (especially if you use a CI system to push DNS changes) as you upgrade from v1.5 to v2.2.

    A special thanks to all the contributors, especially Jamie Lennox for the SoftLayer DNS provider (#59) and Craig Peterson for the NS1 DNS provider (#63).

    📚 The SPF flattening feature is very exciting but needs more documentation.

    Big changes:

    • 🆕 New command line flags framework (#177)
    • 📄 Completely new docs homepage (#213)
    • ➕ Add SPF flattening feature. (#126)
    • ➕ Add TLSA record support (#165) (#203)
    • 🆕 NEW PROVIDER! SoftLayer (#59)
    • 🆕 NEW PROVIDER! Ns1 (#63)
    • 👍 BIND: AAAA sort better (consistent and prettier)
    • 👍 GANDI: Now supports SRV records (#192)
    • GANDI: Now works large zones and >100 domains

    Other notable changes:

    • 🛠 Fix GCLOUD integration test (#214)
    • ⚡️ Update vendored dependencies (#208)
    • 👌 Improve docker support (fix ca-certs (#211), switch to alpine (#207))
    • Pretty helpers.js (#205)
    • Create a dynamic provider features matrix (#201)
    • 🚀 Document the release engineering process (#189)
    • 📚 And a lot of documentation fixes and updates.