This release is hopefully one of the last major tags before a more stable CertMagic 1.0. It includes a number of breaking changes (for the better, I promise) -- so please pay attention:
- :warning: All storage methods now require
context.Contextpassed in. We also added it toCleanUpOwnLocks()and several other functions that end up calling Storage methods (e.g.CacheUnmanagedTLSCertificate()). Your editor, in combination with gopls (the Go language server) should be able to quickly tell you where context is missing. - :warning: Storage methods now return
fs.ErrNotExistif a file or key is not found, instead ofcertmagic.ErrNotExist, which has been removed. (Theio/fspackage did not exist when CertMagic was first written.) - :warning:
ACMEManagerhas been renamed toACMEIssuer, andCertificateManagerhas been renamed toManager. These renames make naming more consistent and accurate, and less confusing (since ACMEManager was not a CertificateManager, which is a new type). - Certificate events now provide more useful, actionable information. See #150.
I have personally submitted PRs to the more popular known storage implementations as a courtesy to help deal with the breaking changes.
The nuances of the logic in preparing for DNS challenges have changed slightly, hopefully it will work in more environments.
Thanks to all who contributed! Sorry for any inconvenience with the breaking changes; that's the joy of pre-1.0 libraries. We're almost there, though. It's been 5 years and we might finally be starting to get good at things.
What's Changed
- storage: Require fs.ErrNotExist (fix #168) by @mholt in https://github.com/caddyserver/certmagic/pull/170
- Propagate context in the Storage interface methods by @hairyhenderson in https://github.com/caddyserver/certmagic/pull/155
- Fix crash because of a zero value cert in cache by @skeetmtp in https://github.com/caddyserver/certmagic/pull/177
- Always call checkDNSPropagation in DNS01Solver by @crccw in https://github.com/caddyserver/certmagic/pull/179
- Provide more detailed information in certificate events by @francislavoie in https://github.com/caddyserver/certmagic/pull/150
New Contributors
- @hairyhenderson made their first contribution in https://github.com/caddyserver/certmagic/pull/155
- @skeetmtp made their first contribution in https://github.com/caddyserver/certmagic/pull/177
Full Changelog: https://github.com/caddyserver/certmagic/compare/v0.15.4...v0.16.0