feat(http): add automatic rate limit handling with smartrequest

- Migrated HTTP client to @push.rocks/smartrequest for robust rate limiting
- Automatic retry with exponential backoff (1s, 2s, 4s) on HTTP 429
- Respects Retry-After headers from server
- Improved error handling and network resilience
- Updated documentation with rate limit handling examples
This commit is contained in:
Juergen Kunz
2025-07-29 17:03:14 +00:00
parent 3144c9edbf
commit 4c0ad95eb1
2 changed files with 14 additions and 2 deletions

View File

@@ -1,5 +1,16 @@
# Changelog
## 2025-07-29 - 4.3.0 - feat(http)
Enhanced HTTP client with automatic rate limit handling
- Added @push.rocks/smartrequest dependency for robust HTTP handling
- Implemented automatic retry with exponential backoff for rate-limited requests
- Built-in handling of HTTP 429 responses with intelligent waiting
- Respects Retry-After headers when provided by the server
- Maximum of 3 retry attempts with configurable backoff (1s, 2s, 4s)
- Improved error handling and network resilience
- Updated readme documentation with automatic rate limit handling examples
## 2025-07-27 - 4.2.1 - fix(tests)
Fix test compatibility with breaking changes from v4.0.0

View File

@@ -1,13 +1,13 @@
{
"name": "@apiclient.xyz/bunq",
"version": "4.2.1",
"version": "4.3.0",
"private": false,
"description": "A full-featured TypeScript/JavaScript client for the bunq API",
"type": "module",
"exports": {
".": "./dist_ts/index.js"
},
"author": "Lossless GmbH",
"author": "Task Venture Capital GmbH",
"license": "MIT",
"scripts": {
"test": "(tstest test/ --verbose --logfile --timeout 60)",
@@ -26,6 +26,7 @@
"@push.rocks/smartfile": "^11.2.5",
"@push.rocks/smartpath": "^6.0.0",
"@push.rocks/smartpromise": "^4.2.3",
"@push.rocks/smartrequest": "^4.2.1",
"@push.rocks/smarttime": "^4.0.54"
},
"files": [