v0.16.0
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:
⚠️ All storage methods now requirecontext.Context
passed 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.⚠️ Storage methods now returnfs.ErrNotExist
if a file or key is not found, instead ofcertmagic.ErrNotExist
, which has been removed. (Theio/fs
package did not exist when CertMagic was first written.)⚠️ ACMEManager
has been renamed toACMEIssuer
, andCertificateManager
has 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 #170
- Propagate context in the Storage interface methods by @hairyhenderson in #155
- Fix crash because of a zero value cert in cache by @skeetmtp in #177
- Always call checkDNSPropagation in DNS01Solver by @crccw in #179
- Provide more detailed information in certificate events by @francislavoie in #150
New Contributors
- @hairyhenderson made their first contribution in #155
- @skeetmtp made their first contribution in #177
Full Changelog: v0.15.4...v0.16.0