This release contains no major features or new providers. However it cleans up a number of bugs, standardizes a ton of documentation issues, and has been updated to use newer dependencies and APIs. There are small improvements to the check
and get-zones
subcommands. The integration tests have been optimized: they now run significantly faster for most providers.
Highlights
- In an effort to better support CI/CD pipelines,
dnscontrol check
now reports problems to stdout, not stderr. These same problems are still reported to stderr bydnscontrol preview
anddnscontrol push
. dnscontrol get-zones
deals with CNAMEs at the apex better by including a comment warning that manual editing may be required.- Shout out to @cafferata for combing through the documentation to find and fix many errors and inconsistencies. The documentation now includes a table of contents for the DSL language features and works much better on mobile platforms.
- The documentation now includes examples of doing DNS updates via a CI/CD pipeline a.k.a. the GitOps pattern.
- The JavaScript interpreter (otto) has been upgraded from the 2021-10-24 release to the 2022-10-25 release. This has many stability improvements and no compatibility issues (we hope!)
- DESEC's authentication is improved. DIGITALOCEAN's CAA implementation supports semicolons. DNSIMPLE, EXOSCALE, and VULTR now support their newer APIs.
Breaking changes
- The above-mentioned change to
dnscontrol check
may break some pipelines. Please verify after upgrading. More likely these pipelines are redirecting stderr to stdout which is no longer needed.
Changelog
Major features:
- b821f49: FEATURE: "check" subcommand should send to stdout (#1755) (@tlimoncelli)
- 391622f: FEATURE: get-zones now outputs a comment about CNAMEs at apex (#1732) (@tlimoncelli)
- ee2c7ad: FEATURE: Added a tutorial/example of a Gitlab CI/CD setup to the documentation. (#1766) (@cafferata)
Provider-specific changes:
- 639a447: DESEC: Check authentication via domains API (#1723) (@glueckself)
- 49590df: DIGITALOCEAN: semicolon as CAA target is now supported (#1749) (@tresni)
- 1c726a0: DNSimple: Update to 1.0.0 Client & expose error attributes (#1756) (@onlyhavecans)
- 128e075: EXOSCALE: Migrate to v2 API (#1748) (@kobajagi)
- 2898fba: VULTR: use API v2 (#1768) (@androw)
Other changes and improvements:
- 61e500b: DEV: Optimize integration tests (#1742) (@tlimoncelli)
- b66af29: BUG: Re-introducing the
cloudflare/cloudflare-go
import (#1795) (@cafferata) - 3743c7d: Bump cloudflare/cloudflare-go from 0.46 to 0.49 (#1746) (@tlimoncelli)
- dea9466: CHORE: Bump bruceadams/get-release from 1.2.3 to 1.3.1 (#1772) (@dependabot[bot])
- 010ba56: CHORE: Bump bruceadams/get-release from 1.3.1 to 1.3.2 (#1797) (@dependabot[bot])
- 944b702: CHORE: Bump github.com/aws/aws-sdk-go-v2/service/route53 from 1.21.7 to 1.21.9 (#1734) (@dependabot[bot])
- 505e021: CHORE: Bump github.com/urfave/cli/v2 from 2.11.2 to 2.14.0 (#1737) (@dependabot[bot])
- 4328c80: CHORE: Update dependencies of providers with automated tests (#1743) (@tlimoncelli)
- c56002e: CHORE: Update deps (#1754) (@tlimoncelli)
- da17a54: CHORE: Update deps (@tlimoncelli)
- dc86519: CHORE: Update deps that have automated tests (#1801) (@tlimoncelli)
- ab026c3: CHORE: Upgrade otto release (#1774) (@tlimoncelli)
- fc678d8: DOC: Split the Google Workspace example (#1796) (@cafferata)
- c9b166f: DOCS: Add MacPorts to Install section (#1729) (@ajhall)
- 1a94ab6: DOCS: Add a dynamic macro example (Fastmail) (#1759) (@tlimoncelli)
- 5ba66fa: DOCS: Add missing record modifiers (#1793) (@cafferata)
- ffdb4b6: DOCS: Add page for how to maintain docs (#1780) (@tlimoncelli)
- cc433fd: DOCS: Added link to the alternative GitHub action (#1802) (@tarampampam)
- cd80a7f: DOCS: Aligned/improved installation section package manager (#1788) (@cafferata)
- fd42485: DOCS: Automatically make a table of contents (TOC) (#1778) (@cafferata)
- 490db87: DOCS: Clarify IPv6 variables are strings (#1775) (@tlimoncelli)
- 705e3a0: DOCS: Clarify Jekyll documentation (#1790) (@cafferata)
- b3e6843: DOCS: Clean up formatting and punctuation (#1776) (@cafferata)
- a18710b: DOCS: Clean up old docs and scripts (#1728) (@tlimoncelli)
- c6011fe: DOCS: Converted README.txt to .gitkeep (#1785) (@cafferata)
- 27ec220: DOCS: Correct closing parens in AXFRDDNS doc (#1752) (@tlimoncelli)
- 3f760cd: DOCS: Documentation improvements (#1786) (@cafferata)
- 67bbbb3: DOCS: Fix DSL table of contents (#1783) (@cafferata)
- b968cd6: DOCS: Fix dns.he.net link (#1758) (@Firefishy)
- 1aca045: DOCS: Fix many small typos (#1794) (@tlimoncelli)
- dad1d4c: DOCS: Fixed typo "deprecation" (#1739) (@cafferata)
- 975463e: DOCS: Increase provider number (#1804) (@cafferata)
- ae1eb97: DOCS: Inline creds.json.tpl-example.txt example (#1784) (@cafferata)
- e95c122: DOCS: Merge toc and index (#1789) (@cafferata)
- eb809cd: DOCS: Provider TransIP improvements (#1791) (@cafferata)
- 2f50c74: DOCS: Updated Go Package URL's to latest version (#1803) (@cafferata)
- c6851c9: DOCS: fix default_ns example for hosting.de (#1750) (@saz)
- 46b742d: DOCS: fix docker usage in "Getting Started" (#1767) (@saz)
- ad8f436: DOCS: fix docker usage in README (#1751) (@saz)
- e9f4200: Update deps (#1747) (@tlimoncelli)
- 39aa553: Update deps (#1773) (@tlimoncelli)