Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 28 million developers.Sign up
- 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)
- 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
- Fix panic on CNAME #347
- Fix corner case when deleting r53_alias records #394
- Added token to NewStaticCredentials #401
- Fix bug in Route 53 ALIAS record #336
- 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:
What an exciting release!
- 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
convertzonecan read your OctoDNS zone configs and output a first draft of your
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.
- Make IGNORE work with all providers (#313)
- NEW REGISTRAR: OpenSRS (#275)
- NEW PROVIDER: OctoDNS (#309)
- NEW PROVIDER: GANDI-LIVEDNS (API v5) (#320)
- 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)
- 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
So many new features! New record types! Better DKIM support! Better AWS support!
- 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)
- 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:
Another big release! Two new providers (Linode, OVH), Gandi now supports registration functions, and my favorite new feature: the SPF optimizer!
- SPF Optimizer! dnscontrol's compiler now has an optimizer. Our first optimization is to improve your SPF records. See https://stackexchange.github.io/dnscontrol/spf-optimizer for info. Thanks to @captncraig for contributing this.
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.
- 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!
Everything else is mostly a few bug fixes, and some much needed documentation cleanup from @geek1011.
Pull Requests Merged:
- New Provider! #202
- New Provider! #219
- 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:
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.
The SPF flattening feature is very exciting but needs more documentation.
- 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.
So many new providers and features! Plus, a new testing framework that makes it easier to add big features without fear of breaking old ones.
BREAKING CHANGE ALERT: The next release (v0.2.0) will revise the subcommands in breaking ways. This release permits flags to be before or after the subcommands. The v0.2.0 release will break this and only permit flags to be after the subcommand. Some more obscure flags will change. If you only use "push" and "preview" make sure your flags are after the subcommand and you should be fine.
- New DNS Provider: Digital Ocean (#171)
- New DNS Provider: DNSimple provider (#43)
- New Registrar: Route53 (#155)
- Support PTR records on providers that support it: BIND, DNSIMPLE, GANDI, GCLOUD, ROUTE53
- Support SRV records on providers that support it: BIND, CLOUDFLAREAPI, DIGITALOCEAN, GCLOUD, NAMEDOTCOM, ROUTE53
- Support CAA records on providers that support it: BIND, GCLOUD
- Support ALIAS/ANAME records on providers that support it: CLOUDFLAREAPI, NAMEDOTCOM
- Do not permit NO_PURGE on providers that don't support it: BIND (#180)
- PTR now handles "Classless in-addr.arpa delegation" RFC2317 (#149)
- REV() eliminates the need to manually create in-addr.arpa names.
- Greatly improved documentation including detailed advice on how to write providers and add new DNS record types. (#184)
- Integration Testing framework (#46)
- New framework to mark providers as supporting/not supporting particular features.
- Refactor code to enhance error checking and make it easier to add new DNS record types (#157) (#163)
- add flag to delay between domains (#101)
- Support reading JSON instead of dnsconfig.js
- Canonicalize IPv6 addresses. (Fixes #25) (#129)
- Implement URL redirects via Cloudflare (#119)
- BIND: Pick default TTL automatically for zonefiles (#109)
- Fixed many bugs including: Punycode handling in AAAA records, better input validation,
- NEW file: "convertzone" makes it easier to import zonefiles.