smartacme/changelog.md

10 KiB
Raw Permalink Blame History

Changelog

2025-05-04 - 7.2.4 - fix(test)

Refactor wildcard certificate test to properly stub SmartAcme.start and getCertificateForDomain for robust integration.

  • Temporarily override SmartAcme.start and getCertificateForDomain to simulate wildcard certificate behavior.
  • Restore original prototype methods post-test to prevent side effects.
  • Improve test clarity for wildcard certificate integration.

2025-05-01 - 7.2.3 - fix(docs)

Improve certificate manager documentation with detailed examples and custom implementation guide

  • Added usage examples for MemoryCertManager and MongoCertManager
  • Provided a custom ICertManager implementation guide
  • Enhanced overall documentation clarity for certificate storage configuration

2025-05-01 - 7.2.2 - fix(readme)

Update readme documentation: switch installation instructions to pnpm and clarify usage with MongoCertManager and updated SmartAcme options

  • Replaced npm/yarn commands with pnpm commands for installation and testing.
  • Added guidance to ensure the project is set up for TypeScript and ECMAScript Modules.
  • Updated usage examples to include initialization of MongoCertManager instead of legacy mongoDescriptor.
  • Revised challenge handlers examples to reference the current API signatures.

2025-05-01 - 7.2.1 - fix(smartacme)

Centralize interest map coordination and remove redundant interestMap from cert managers

  • Removed interestMap property and related logic from MemoryCertManager and MongoCertManager
  • Refactored SmartAcme to instantiate its own interestMap for coordinating certificate requests
  • Updated getCertificateForDomain to use the new interestMap for checking and adding certificate interests

2025-05-01 - 7.2.0 - feat(core)

Refactor SmartAcme core to centralize interest coordination and update dependencies

  • Moved interest coordination mechanism out of ICertManager implementations and into SmartAcme core
  • Updated certificate managers (MemoryCertManager and MongoCertManager) to remove redundant interestMap handling
  • Upgraded @push.rocks/tapbundle from 6.0.1 to 6.0.3 in package.json
  • Revised readme.plan.md to reflect the new interest coordination approach

2025-04-30 - 7.1.0 - feat(certmanagers/integration)

Add optional wipe methods to certificate managers and update integration tests, plus bump tapbundle dependency

  • Introduce wipe() in ICertManager to support integration testing by clearing stored certificates
  • Implement wipe() in MemoryCertManager and MongoCertManager for resetting internal state
  • Refactor SmartAcme constructor to consider wiping certificates in integration mode (commented out for now)
  • Update integration test assertions and add console logging for domain certificate retrieval
  • Upgrade @push.rocks/tapbundle from ^6.0.0 to ^6.0.1

2025-04-30 - 7.0.0 - BREAKING CHANGE(SmartAcme (Cert Management))

Refactor certificate management and challenge handling API to use a unified certManager interface, remove legacy storage, and update challenge workflows.

  • Introduce ICertManager interface with MemoryCertManager and MongoCertManager implementations.
  • Remove the legacy SmartacmeCertManager and update SmartAcme to require a certManager option instead of mongoDescriptor.
  • Adjust certificate renewal logic to delete and store certificates through the new certManager API.
  • Refine DNS-01 challenge handling by removing in-handler DNS propagation waiting and relying on external checks.
  • Increase retry settings for robustness during challenge verification and certificate issuance.
  • Update integration and unit tests to use the new certManager configuration.

2025-04-30 - 6.2.0 - feat(handlers)

Add in-memory HTTP-01 challenge handler and rename file-based handler to Http01Webroot

  • Renamed Http01Handler to Http01Webroot in both implementation and documentation
  • Introduced Http01MemoryHandler for diskless HTTP-01 challenges
  • Updated tests and README examples to reflect handler name changes and new feature

2025-04-30 - 6.1.3 - fix(Dns01Handler)

Update dependency versions and refine Dns01Handler implementation

  • Bump '@apiclient.xyz/cloudflare' to ^6.4.1 and '@tsclass/tsclass' to ^9.1.0 in package.json
  • Remove duplicate Cloudflare import in smartacme.plugins.ts
  • Refactor Dns01Handler to use IConvenientDnsProvider and add checkWetherDomainIsSupported method
  • Align devDependencies versions for improved consistency

2025-04-27 - 6.1.2 - fix(repo)

Update repository metadata by replacing the LICENSE file with a license.md file for improved consistency.

  • Removed the old LICENSE file.
  • Introduced license.md as the new license documentation file.

2025-04-27 - 6.1.1 - fix(readme)

Fix license link reference in documentation

  • Updated the license link from license to license.md in the License and Legal Information section

2025-04-27 - 6.1.0 - feat(readme)

Update documentation with detailed built-in challenge handlers and custom handler examples

  • Expanded readme to include sections on Dns01Handler and Http01Handler usage
  • Added examples for creating and registering custom ACME challenge handlers
  • Improved clarity of ACME certificate management instructions using SmartAcme

2025-04-27 - 6.0.1 - fix(readme)

Remove extraneous code fence markers from license section in readme

  • Removed unnecessary triple backticks wrapping the license information
  • Improved clarity of the license section in the documentation

2025-04-27 - 6.0.0 - BREAKING CHANGE(SmartAcme)

Refactor challenge handling by removing legacy setChallenge/removeChallenge in favor of pluggable challengeHandlers and update documentation and tests accordingly

  • Removed legacy challenge methods and introduced new 'challengeHandlers' and 'challengePriority' options
  • Updated readme examples to demonstrate usage with DNS-01 (and HTTP-01) handlers
  • Refactored internal SmartAcme flow to select and process challenges via the new handler interface
  • Adjusted tests (including integration tests) to align with the updated challenge handling mechanism

2025-04-27 - 5.1.0 - feat(smartacme)

Implement exponential backoff retry logic and graceful shutdown handling in SmartAcme; update acme-client dependency to v5.4.0

  • Added retry helper with exponential backoff for ACME client operations
  • Introduced retryOptions in ISmartAcmeOptions for configurable retry parameters
  • Enhanced graceful shutdown handling by cleaning up pending DNS challenges on signal
  • Updated acme-client dependency from v4.2.5 to v5.4.0

2025-04-26 - 5.0.1 - fix(build)

Update CI workflows, bump dependency versions, and refine import and TypeScript configuration

  • Changed CI workflow image and npmci package from '@shipzone/npmci' to '@ship.zone/npmci', and updated repository URLs
  • Bumped several dependency versions in package.json (e.g. @api.global/typedserver, @push.rocks/lik, @push.rocks/smartdata, @push.rocks/smartdns, @tsclass/tsclass) to newer releases
  • Adjusted smartdns import to use the smartdnsClient module for proper module resolution
  • Updated tsconfig.json to add emitDecoratorMetadata and baseUrl settings
  • Minor markdown and formatting tweaks in readme and gitignore files, and slight improvements in test async handling

2024-06-16 - 5.0.0 - No significant changes

This release contains no userfacing changes.

2024-06-16 - 4.0.8 - Structure and configuration updates

  • BREAKING CHANGE(structure): renamed classes to avoid confusion
  • update description
  • update tsconfig
  • update npmextra.json: githost

2024-01-28 - 4.0.74.0.6 - Internal fixes and updates

  • A series of releases with routine bug fixes and maintenance updates.

2023-07-21 - 4.0.54.0.4 - Internal fixes and updates

  • Multiple releases addressing internal issues and maintenance improvements.

2023-07-10 - 4.0.3 - Organizational changes

  • switch to new org scheme

2022-09-27 - 4.0.04.0.2 - Internal fixes and updates

  • Routine maintenance and internal bug fixes.

2022-09-27 - 3.0.15 - Breaking changes

  • BREAKING CHANGE(core): update

2021-01-22 - 3.0.93.0.14 - Internal fixes and updates

  • A range of releases focused on routine internal updates.

2020-11-18 - 3.0.03.0.8 - Internal fixes and updates

  • Routine maintenance and internal bug fixes.

2020-02-10 - 2.1.2 - Breaking changes

  • BREAKING CHANGE(core): streamline scope to certificate retrieval using dns challenge

2020-02-10 - 2.1.02.1.1 - Internal fixes and updates

  • Routine fixes and updates.

2019-02-06 - 2.0.36 - New feature

  • feat(Cert): now has validity check

2019-01-18 - 2.0.22.0.35 - Internal fixes and updates

  • Routine internal updates and maintenance.

2018-10-07 - 2.0.02.0.1 - Internal fixes and updates

  • Routine internal updates and maintenance.

2018-10-07 - 1.1.4 - Breaking changes

  • BREAKING CHANGE(scope): change to @pushrocks

2018-08-12 - 1.1.1 - NPM publishing fix

  • fix(npm publishing): update

2018-08-11 - 1.1.0 - Certificate issuance update

  • fix(core): now creating certs all right

2018-08-11 - 1.0.11 - Feature update

  • feat(swaitch to acme-v2): switch to letsencrypt v2

2017-04-28 - 1.0.10 - CI improvements

  • add updated ci config

2017-04-28 - 1.0.9 - Standards update

  • update to latest standards

2017-01-27 - 1.0.8 - Basic functionality

  • basic functionality

2017-01-25 - 1.0.7 - Response and validation improvements

  • now getting a valid response
  • update validation
  • improve README

2017-01-15 - 1.0.6 - Async and documentation improvements

  • improve README
  • add async checkDNS

2017-01-15 - 1.0.5 - Standards and process updates

  • update to new standards
  • now has working requestValidation method
  • fix som things
  • start better segregation of concerns
  • start with certificate signing process

2017-01-01 - 1.0.4 - Certificate acquisition improvements

  • now getting certificates
  • can now agree to TOS
  • remove test keys

2017-01-01 - 1.0.3 - NPM extra configuration

  • add npmextra.json

2017-01-01 - 1.0.2 - README and integration update

  • add better readme
  • switch to rawacme for more basic letsencrypt access

2016-11-17 - 1.0.1 - Promise fix

  • fix promise

2016-11-17 - 1.0.0 - Major initial release changes

  • remove superflouous key creation
  • switch to acme core
  • prepare switch to leacmecore
  • improve upon keyCreation
  • update to use more promises
  • add README
  • first version