# Changelog

## 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](license) to [license.md](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 user‑facing 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.7–4.0.6 - Internal fixes and updates  
- A series of releases with routine bug fixes and maintenance updates.

## 2023-07-21 - 4.0.5–4.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.0–4.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.9–3.0.14 - Internal fixes and updates  
- A range of releases focused on routine internal updates.

## 2020-11-18 - 3.0.0–3.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.0–2.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.2–2.0.35 - Internal fixes and updates  
- Routine internal updates and maintenance.

## 2018-10-07 - 2.0.0–2.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 le‑acme‑core  
- improve upon keyCreation  
- update to use more promises  
- add README  
- first version