Skip to content

Commit fc10ac8

Browse files
committed
Use @digitalbazaar/lru-memoize@4.
1 parent 3d078e5 commit fc10ac8

File tree

4 files changed

+15
-11
lines changed

4 files changed

+15
-11
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# webkms-client ChangeLog
22

3+
## 14.2.0 - 2025-05-dd
4+
5+
### Changed
6+
- Use `@digitalbazaar/lru-memoize@4`.
7+
38
## 14.1.2 - 2024-09-19
49

510
### Fixed

lib/Hmac.js

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
/*!
2-
* Copyright (c) 2019-2022 Digital Bazaar, Inc. All rights reserved.
2+
* Copyright (c) 2019-2025 Digital Bazaar, Inc. All rights reserved.
33
*/
44
import * as base64url from 'base64url-universal';
55
import {KmsClient} from './KmsClient.js';
66
import {LruCache} from '@digitalbazaar/lru-memoize';
77

8-
const MAX_CACHE_AGE = 3000;
9-
const MAX_CACHE_SIZE = 100;
8+
const CACHE_MAX = 100;
9+
const CACHE_TTL = 3000;
1010
const JOSE_ALGORITHM_MAP = {
1111
Sha256HmacKey2019: 'HS256'
1212
};
@@ -49,8 +49,8 @@ export class Hmac {
4949
this.kmsClient = kmsClient;
5050
this.capability = undefined;
5151
this._cache = new LruCache({
52-
max: MAX_CACHE_SIZE,
53-
maxAge: MAX_CACHE_AGE,
52+
max: CACHE_MAX,
53+
ttl: CACHE_TTL,
5454
updateAgeOnGet: true
5555
});
5656
this._pruneCacheTimer = null;
@@ -132,7 +132,7 @@ export class Hmac {
132132
}
133133

134134
_pruneCache() {
135-
this._cache.cache.prune();
135+
this._cache.cache.purgeStale();
136136
if(this._cache.cache.length === 0) {
137137
// cache is empty, do not schedule pruning
138138
this._pruneCacheTimer = null;
@@ -143,8 +143,7 @@ export class Hmac {
143143
}
144144

145145
_schedulePruning() {
146-
this._pruneCacheTimer = setTimeout(
147-
() => this._pruneCache(), MAX_CACHE_AGE);
146+
this._pruneCacheTimer = setTimeout(() => this._pruneCache(), CACHE_TTL);
148147
}
149148

150149
async _uncachedSign({data, useCache}) {

lib/KmsClient.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*!
2-
* Copyright (c) 2019-2024 Digital Bazaar, Inc. All rights reserved.
2+
* Copyright (c) 2019-2025 Digital Bazaar, Inc. All rights reserved.
33
*/
44
import * as base64url from 'base64url-universal';
55
import {DEFAULT_HEADERS, httpClient} from '@digitalbazaar/http-client';
@@ -14,7 +14,7 @@ const KEY_DESCRIPTION_CACHE = new LruCache({
1414
// 1000 keys at ~1 KiB each would be only ~1 MiB cache size
1515
max: 1000,
1616
// 5 min TTL (key descriptions rarely, if ever, change)
17-
maxAge: 1000 * 60 * 5
17+
ttl: 1000 * 60 * 5
1818
});
1919

2020
/**

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
"@digitalbazaar/ed25519-verification-key-2020": "^4.0.0",
2525
"@digitalbazaar/http-client": "^4.0.0",
2626
"@digitalbazaar/http-signature-zcap-invoke": "^6.0.0",
27-
"@digitalbazaar/lru-memoize": "^3.0.0",
27+
"@digitalbazaar/lru-memoize": "^4.0.0",
2828
"base64url-universal": "^2.0.0"
2929
},
3030
"devDependencies": {

0 commit comments

Comments
 (0)