306 lines
11 KiB
Markdown
306 lines
11 KiB
Markdown
# Changelog
|
||
|
||
## 2025-11-18 - 7.1.0 - feat(cloudflare)
|
||
Release 7.0.0 — manager-based API, ConvenientDnsProvider, improved utils and worker/zone/record management
|
||
|
||
- Introduce manager-based architecture: ZoneManager, RecordManager, WorkerManager for clearer, consistent API surface
|
||
- Add ConvenientDnsProvider adapter implementing IConvenientDnsProvider for third-party integrations
|
||
- New CloudflareUtils helpers (domain validation, API token check, record type validation, URL/TTL formatting, pagination)
|
||
- Improved Worker support: create/update/delete scripts, route management, and robust listing with fallbacks
|
||
- Zone and record operations enhanced (create/update/delete/purge) with type-safe wrappers and CloudflareZone/CloudflareRecord models
|
||
- Deprecated old convenience namespace in favor of managers (kept for backward compatibility with migration guidance)
|
||
- Full TypeScript exports and typings, updated package metadata for v7.0.0
|
||
|
||
## 2025-11-18 - 7.0.0 - BREAKING CHANGE(core)
|
||
Introduce RecordManager and ConvenientDnsProvider; rename list/get methods for consistent API and deprecate convenience namespace
|
||
|
||
- Add RecordManager with listRecords, getRecord, createRecord, updateRecord, deleteRecord and cleanRecords to centralize DNS record operations
|
||
- Add ConvenientDnsProvider adapter and CloudflareAccount.getConvenientDnsProvider() to provide IConvenientDnsProvider compatibility for third-party modules
|
||
- Rename methods to consistent list* naming: worker.getRoutes -> worker.listRoutes, WorkerManager.listWorkerScripts -> WorkerManager.listWorkers, ZoneManager.getZones -> ZoneManager.listZones, convenience.listRecords -> recordManager.listRecords
|
||
- Add ZoneManager.getZoneId() and ZoneManager.purgeZone() (zone cache purge helper)
|
||
- Deprecate the legacy convenience.* methods (getZoneId, getRecord, createRecord, removeRecord, cleanRecord, updateRecord, listRecords, listZones, isDomainSupported, purgeZone, acmeSetDnsChallenge, acmeRemoveDnsChallenge) — kept for backward compatibility but marked deprecated
|
||
- Export RecordManager and ConvenientDnsProvider from ts/index.ts and expose cfAccount.recordManager on CloudflareAccount
|
||
- Update tests to use new method names (listWorkers) and extend test runner timeout; package.json test script updated
|
||
- Documentation (readme) updated to describe the new manager-based API and migration guide; prepares project for major version 7.0.0
|
||
|
||
## 2025-11-17 - 6.4.3 - fix(cloudflare.plugins)
|
||
Switch to smartrequest namespace export and improve request typing and JSON parsing
|
||
|
||
- Export smartrequest as a namespace from cloudflare.plugins (replaced named SmartRequest/CoreResponse exports)
|
||
- Use plugins.smartrequest.SmartRequest.create() when building HTTP requests
|
||
- Type response as InstanceType<typeof plugins.smartrequest.CoreResponse> to match the new smartrequest export shape
|
||
- Safer JSON parsing: cast result of response.json() to the expected generic instead of relying on a generic json<T>() call and provide a text fallback when parsing fails
|
||
- Adjust imports/usages to align with @push.rocks/smartrequest namespace usage
|
||
|
||
## 2025-11-17 - 6.4.2 - fix(core)
|
||
Switch to SmartRequest fluent API and improve Cloudflare API request handling
|
||
|
||
- Upgrade runtime dependencies: @push.rocks/smartlog -> ^3.1.10, @push.rocks/smartrequest -> ^5.0.1, @push.rocks/smartstring -> ^4.1.0, @tsclass/tsclass -> ^9.3.0, cloudflare -> ^5.2.0
|
||
- Upgrade devDependencies: @git.zone/tsbuild -> ^3.1.0, @git.zone/tsrun -> ^2.0.0, @git.zone/tstest -> ^2.8.2, @push.rocks/qenv -> ^6.1.3, openapi-typescript -> ^7.10.1
|
||
- Export SmartRequest and CoreResponse from cloudflare.plugins to align with smartrequest v5 API
|
||
- Refactor CloudflareAccount.request to use SmartRequest fluent builder, add detailed logging, default JSON Content-Type, support multipart/form-data via formData(), and use appropriate HTTP method helpers
|
||
- Improve response parsing: return a safe fallback when JSON parsing fails by reading response.text() and include a concise message; better HTTP error logging including response body text
|
||
- Update usages to rely on the new request behavior (zones/workers managers use account.request for endpoints not covered by the official client)
|
||
|
||
## 2025-04-30 - 6.4.1 - fix(ci)
|
||
Update CI workflows, repository URL, and apply minor code formatting fixes
|
||
|
||
- Add new Gitea workflows for both tagged and non-tagged push events with security, test, release, and metadata jobs
|
||
- Update repository URL in package.json from pushrocks/cflare to mojoio/cloudflare
|
||
- Refine .gitignore custom comments
|
||
- Apply minor formatting improvements in source code and documentation
|
||
|
||
## 2025-04-30 - 6.4.0 - feat(CloudflareAccount)
|
||
Bump dependency versions and add domain support check in CloudflareAccount
|
||
|
||
- Upgrade dependencies: @push.rocks/smartrequest, @tsclass/tsclass, @git.zone/tsbuild, @push.rocks/tapbundle, and @types/node
|
||
- Implement the isDomainSupported convenience method in CloudflareAccount for validating domain management
|
||
|
||
## 2025-04-26 - 6.3.2 - fix(worker)
|
||
Refactor worker script update and creation to use intermediate parameter objects
|
||
|
||
- Build updateParams in CloudflareWorker for proper multipart form handling when updating scripts
|
||
- Use contentParams in WorkerManager to improve clarity and consistency in worker creation
|
||
|
||
## 2025-04-26 - 6.3.1 - fix(core)
|
||
Improve nested DNS record management and worker script multipart handling
|
||
|
||
- Add tests for creating, updating, and removing nested subdomain A records
|
||
- Refine TXT record cleaning by filtering records with matching name and type
|
||
- Clarify multipart form data handling for worker script updates and creation
|
||
|
||
## 2025-04-26 - 6.3.0 - feat(core)
|
||
Release 6.2.0: Improved async iterator support, enhanced error handling and refined API interfaces for better type safety and consistent behavior.
|
||
|
||
- Bumped package version from 6.1.0 to 6.2.0
|
||
- Updated README with more precise information on async iterators and error handling
|
||
- Enhanced API request method to better parse response bodies and handle empty responses
|
||
- Refined async iterator usage in worker routes and zone listing
|
||
- Improved logging details for debugging API interactions
|
||
- Simplified and clarified method signatures and return types in documentation
|
||
|
||
## 2025-03-19 - 6.1.0 - feat(core)
|
||
Update dependencies, enhance documentation, and improve error handling with clearer API usage examples
|
||
|
||
- Bump dependency versions (@push.rocks/smartpromise, smartrequest, @tsclass/tsclass, cloudflare and devDependencies)
|
||
- Rewrite README with extended features, improved installation instructions, and comprehensive usage guides
|
||
- Refactor and add try/catch error handling in API request methods across core classes
|
||
- Enhance test suite with refined zone, DNS record, and worker management tests
|
||
|
||
## 2025-03-19 - 6.0.6 - fix(core)
|
||
Improve logging consistency, record update functionality, and API error handling in Cloudflare modules
|
||
|
||
- Replaced raw console.log calls with logger.log for unified logging across modules
|
||
- Implemented and documented the updateRecord method with proper parameters in CloudflareAccount
|
||
- Enhanced API request error handling and added detailed documentation in request methods
|
||
- Refactored CloudflareWorker and WorkerManager methods to improve clarity and maintainability
|
||
- Updated ZoneManager and CloudflareZone to improve error reporting and zone manipulation
|
||
|
||
## 2024-06-16 - 6.0.5 – no significant changes
|
||
_No significant changes in this release._
|
||
|
||
## 2024-06-16 - 6.0.4 – miscellaneous
|
||
Several improvements and fixes:
|
||
- fix(start supporting workers again): update
|
||
- update license info
|
||
- update readme
|
||
- switch to official cloudflare api client while keeping class based approach
|
||
|
||
## 2024-06-15 - 6.0.3 – core
|
||
- fix(core): update
|
||
|
||
## 2023-06-13 - 6.0.2 – core
|
||
- fix(core): update
|
||
|
||
## 2023-06-13 - 6.0.1 – core
|
||
- fix(core): update
|
||
|
||
## 2022-09-27 - 6.0.0 – core
|
||
- fix(core): update
|
||
|
||
## 2022-09-27 - 5.0.10 – core
|
||
- BREAKING CHANGE(core): switch to esm
|
||
|
||
## 2022-09-27 - 5.0.9 – core
|
||
- fix(core): update
|
||
|
||
## 2021-01-22 - 5.0.8 – core
|
||
- fix(core): update
|
||
|
||
## 2021-01-22 - 5.0.7 – core
|
||
- fix(core): update
|
||
|
||
## 2021-01-22 - 5.0.6 – core
|
||
- fix(core): update
|
||
|
||
## 2020-06-10 - 5.0.5 – core
|
||
- fix(core): update
|
||
|
||
## 2020-06-10 - 5.0.4 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-28 - 5.0.3 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-28 - 5.0.2 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-28 - 5.0.1 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-28 - 5.0.0 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-19 - 4.0.5 – account
|
||
- BREAKING CHANGE(account): authorization now uses the new Account API
|
||
|
||
## 2020-02-19 - 4.0.4 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-19 - 4.0.3 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-10 - 4.0.2 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-10 - 4.0.1 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-10 - 4.0.0 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-09 - 3.0.7 – API
|
||
- BREAKING CHANGE(API): move to .convenience property
|
||
|
||
## 2020-02-09 - 3.0.6 – core
|
||
- fix(core): update
|
||
|
||
## 2020-02-09 - 3.0.5 – core
|
||
- fix(core): update
|
||
|
||
## 2019-07-19 - 3.0.4 – core
|
||
- fix(core): update
|
||
|
||
## 2019-07-18 - 3.0.3 – core
|
||
- fix(core): update
|
||
|
||
## 2019-07-18 - 3.0.2 – core
|
||
- fix(core): update
|
||
|
||
## 2019-07-18 - 3.0.1 – core
|
||
- fix(core): update
|
||
|
||
## 2019-07-18 - 3.0.0 – core
|
||
- fix(core): update
|
||
|
||
## 2019-07-18 - 2.0.1 – core
|
||
- fix(core): update
|
||
|
||
## 2019-07-18 - 2.0.0 – core
|
||
- fix(core): update
|
||
|
||
## 2019-07-18 - 2.0.2 – no significant changes
|
||
_No significant changes in this release._
|
||
|
||
## 2018-08-13 - 1.0.5 – scope
|
||
- BREAKING CHANGE(scope): change scope, tools and package name
|
||
|
||
## 2017-06-11 - 1.0.4 – misc
|
||
- now using tsclass
|
||
|
||
## 2017-06-09 - 1.0.3 – misc
|
||
- update dependencies
|
||
|
||
## 2017-06-05 - 1.0.2 – misc
|
||
- now supports purging of assets
|
||
- improve test
|
||
|
||
## 2017-06-04 - 1.0.1 – misc
|
||
- add npmextra.json
|
||
|
||
## 2017-06-04 - 1.0.0 – misc
|
||
- add type TRecord, update ci
|
||
|
||
## 2017-06-04 - 0.0.20 – no significant changes
|
||
_No significant changes in this release._
|
||
|
||
## 2017-06-04 - 0.0.19 – misc
|
||
- go async/await
|
||
- update brand link
|
||
|
||
## 2017-02-12 - 0.0.18 – misc
|
||
- update README
|
||
|
||
## 2017-01-29 - 0.0.17 – misc
|
||
- update README
|
||
|
||
## 2017-01-29 - 0.0.16 – misc
|
||
- fix tests to run in parallel
|
||
|
||
## 2017-01-29 - 0.0.15 – misc
|
||
- fixed bad request retry
|
||
|
||
## 2017-01-29 - 0.0.14 – misc
|
||
- fix testing timeouts
|
||
|
||
## 2017-01-29 - 0.0.13 – misc
|
||
- added random retry times
|
||
|
||
## 2017-01-29 - 0.0.12 – misc
|
||
- update to new ci
|
||
|
||
## 2017-01-29 - 0.0.11 – misc
|
||
- now using smartrequest
|
||
|
||
## 2017-01-22 - 0.0.10 – misc
|
||
- now reacting to rate limiting
|
||
|
||
## 2016-07-31 - 0.0.9 – misc
|
||
- update dependencies
|
||
|
||
## 2016-06-22 - 0.0.8 to 0.0.7 – no significant changes
|
||
_No significant changes in these releases._
|
||
|
||
## 2016-06-22 - 0.0.6 – misc
|
||
- updated dependencies
|
||
|
||
## 2016-06-21 - 0.0.5 – misc
|
||
- fix stages
|
||
|
||
## 2016-06-21 - 0.0.4 – misc
|
||
- fix stages
|
||
|
||
## 2016-06-21 - 0.0.3 – misc
|
||
Multiple improvements:
|
||
- now works for most things
|
||
- update to latest dependencies
|
||
- update .gitlab.yml
|
||
- update
|
||
- add .gitlab-ci.yml
|
||
|
||
## 2016-05-25 - 0.0.2 – misc
|
||
Several changes:
|
||
- improve domain string handling
|
||
- update .getRecord
|
||
- improve .createRecord
|
||
- implemented .createRecord
|
||
- compile
|
||
- add functionality
|
||
- start with tests
|
||
- improved request method of cflare class
|
||
|
||
## 2016-04-27 - 0.0.1 – misc
|
||
- now returning promises
|
||
- add lossless badge
|
||
|
||
## 2016-04-27 - 0.0.0 – misc
|
||
- added travis and improved README
|
||
|
||
## 2016-04-10 - 0.0.0 – misc
|
||
- add package.json and README
|
||
|
||
## 2016-04-10 - unknown – misc
|
||
- Initial commit
|
||
|
||
---
|
||
_Note: Versions that only contained version bump commits or minor housekeeping (6.0.5; 2.0.2; 0.0.20; 0.0.8 to 0.0.7) have been omitted from detailed entries and are summarized above._ |