From 85efe0b06b059a0b83a797b18454a8488b01bda9 Mon Sep 17 00:00:00 2001 From: Jared Wray Date: Wed, 6 May 2026 17:33:59 -0700 Subject: [PATCH] cacheable - fix: upgrade qified and @qified/redis to 0.10.1 Upgrade qified and @qified/redis from 0.9.0 to 0.10.1. The qified 0.10 release renamed the Qified class's unsubscribe method to unsubscribeMessage (the topic/queue-level unsubscribe is now scoped). Update sync.ts to call unsubscribeMessage on namespace changes. Co-Authored-By: Claude Opus 4.7 (1M context) --- packages/cacheable/package.json | 4 +- packages/cacheable/src/sync.ts | 4 +- pnpm-lock.yaml | 116 +++++++++++++++++++------------- 3 files changed, 72 insertions(+), 52 deletions(-) diff --git a/packages/cacheable/package.json b/packages/cacheable/package.json index cd20cb66..a312e5ed 100644 --- a/packages/cacheable/package.json +++ b/packages/cacheable/package.json @@ -37,7 +37,7 @@ "devDependencies": { "@keyv/redis": "^5.1.6", "@keyv/valkey": "^1.0.11", - "@qified/redis": "^0.9.0", + "@qified/redis": "^0.10.1", "lru-cache": "^11.3.6", "tsup": "^8.5.1", "typescript": "^5.9.3" @@ -47,7 +47,7 @@ "@cacheable/utils": "workspace:^", "hookified": "^1.15.0", "keyv": "^5.6.0", - "qified": "^0.9.0" + "qified": "^0.10.1" }, "keywords": [ "cacheable", diff --git a/packages/cacheable/src/sync.ts b/packages/cacheable/src/sync.ts index e7dc72a6..33702897 100644 --- a/packages/cacheable/src/sync.ts +++ b/packages/cacheable/src/sync.ts @@ -88,8 +88,8 @@ export class CacheableSync extends Hookified { const oldSetEvent = this.getPrefixedEvent(CacheableSyncEvents.SET); const oldDeleteEvent = this.getPrefixedEvent(CacheableSyncEvents.DELETE); - void this._qified.unsubscribe(oldSetEvent); - void this._qified.unsubscribe(oldDeleteEvent); + void this._qified.unsubscribeMessage(oldSetEvent); + void this._qified.unsubscribeMessage(oldDeleteEvent); } this._namespace = namespace; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f9aa40e5..9d2aa190 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -113,8 +113,8 @@ importers: specifier: ^5.6.0 version: 5.6.0 qified: - specifier: ^0.9.0 - version: 0.9.0 + specifier: ^0.10.1 + version: 0.10.1 devDependencies: '@keyv/redis': specifier: ^5.1.6 @@ -123,8 +123,8 @@ importers: specifier: ^1.0.11 version: 1.0.11 '@qified/redis': - specifier: ^0.9.0 - version: 0.9.0(qified@0.9.0) + specifier: ^0.10.1 + version: 0.10.1(@opentelemetry/api@1.9.0)(qified@0.10.1) lru-cache: specifier: ^11.3.6 version: 11.3.6 @@ -1406,22 +1406,22 @@ packages: resolution: {integrity: sha512-KJe9/ebFBqb4fFBdadgN4YgT4bHAKdWhLAFzjaeDqx5vOCtD3C+byN5DrORVNbwAjt+rb8beP8pXaWZWx+WmTA==} engines: {node: '>=18.16.0'} - '@qified/redis@0.9.0': - resolution: {integrity: sha512-gp6H6xIAijJYiAAM+6n7STrW2vazrYLxm+MGwAUpkFE+G6B3ltBDl8CrKDsPU3kMp8UF6oocznIECwaSJU9wvw==} + '@qified/redis@0.10.1': + resolution: {integrity: sha512-TLdYDkljT8PeluzovLTud5eIA9SZDAFQ7p9Pbrz8x1iJolAG2lOR3TfpM6CwYlyJmqqbgPaDRqPsR4TI5CDAjQ==} engines: {node: '>=20'} peerDependencies: - qified: ^0.9.0 + qified: ^0.10.1 '@redis/bloom@1.2.0': resolution: {integrity: sha512-HG2DFjYKbpNmVXsa0keLHp/3leGJz1mjh09f2RLGGLQZzSHpkmZWuwJbAvo3QcRY8p80m5+ZdXZdYOSBLlp7Cg==} peerDependencies: '@redis/client': ^1.0.0 - '@redis/bloom@5.11.0': - resolution: {integrity: sha512-KYiVilAhAFN3057afUb/tfYJpsEyTkQB+tQcn5gVVA7DgcNOAj8lLxe4j8ov8BF6I9C1Fe/kwlbuAICcTMX8Lw==} - engines: {node: '>= 18'} + '@redis/bloom@5.12.1': + resolution: {integrity: sha512-PUUfv+ms7jgPSBVoo/DN4AkPHj4D5TZSd6SbJX7egzBplkYUcKmHRE8RKia7UtZ8bSQbLguLvxVO+asKtQfZWA==} + engines: {node: '>= 18.19.0'} peerDependencies: - '@redis/client': ^5.11.0 + '@redis/client': ^5.12.1 '@redis/client@1.6.0': resolution: {integrity: sha512-aR0uffYI700OEEH4gYnitAnv3vzVGXCFvYfdpu/CJKvk4pHfLPEy/JSZyrpQ+15WhXe1yJRXLtfQ84s4mEXnPg==} @@ -1431,14 +1431,17 @@ packages: resolution: {integrity: sha512-JXmM4XCoso6C75Mr3lhKA3eNxSzkYi3nCzxDIKY+YOszYsJjuKbFgVtguVPbLMOttN4iu2fXoc2BGhdnYhIOxA==} engines: {node: '>= 18'} - '@redis/client@5.11.0': - resolution: {integrity: sha512-GHoprlNQD51Xq2Ztd94HHV94MdFZQ3CVrpA04Fz8MVoHM0B7SlbmPEVIjwTbcv58z8QyjnrOuikS0rWF03k5dQ==} - engines: {node: '>= 18'} + '@redis/client@5.12.1': + resolution: {integrity: sha512-7aPGWeqA3uFm43o19umzdl16CEjK/JQGtSXVPevplTaOU3VJA/rseBC1QvYUz9lLDIMBimc4SW/zrW4S89BaCA==} + engines: {node: '>= 18.19.0'} peerDependencies: '@node-rs/xxhash': ^1.1.0 + '@opentelemetry/api': '>=1 <2' peerDependenciesMeta: '@node-rs/xxhash': optional: true + '@opentelemetry/api': + optional: true '@redis/graph@1.1.1': resolution: {integrity: sha512-FEMTcTHZozZciLRl6GiiIB4zGm5z5F3F6a6FZCyrfxdKOhFlGkiAqlexWMBzCi4DcRoyiOsuLfW+cjlGWyExOw==} @@ -1450,33 +1453,33 @@ packages: peerDependencies: '@redis/client': ^1.0.0 - '@redis/json@5.11.0': - resolution: {integrity: sha512-1iAy9kAtcD0quB21RbPTbUqqy+T2Uu2JxucwE+B4A+VaDbIRvpZR6DMqV8Iqaws2YxJYB3GC5JVNzPYio2ErUg==} - engines: {node: '>= 18'} + '@redis/json@5.12.1': + resolution: {integrity: sha512-eOze75esLve4vfqDel7aMX08CNaiLLQS2fV8mpRN9NxPe1rVR4vQyYiW/OgtGUysF6QOr9ANhfxABKNOJfXdKg==} + engines: {node: '>= 18.19.0'} peerDependencies: - '@redis/client': ^5.11.0 + '@redis/client': ^5.12.1 '@redis/search@1.2.0': resolution: {integrity: sha512-tYoDBbtqOVigEDMAcTGsRlMycIIjwMCgD8eR2t0NANeQmgK/lvxNAvYyb6bZDD4frHRhIHkJu2TBRvB0ERkOmw==} peerDependencies: '@redis/client': ^1.0.0 - '@redis/search@5.11.0': - resolution: {integrity: sha512-g1l7f3Rnyk/xI99oGHIgWHSKFl45Re5YTIcO8j/JE8olz389yUFyz2+A6nqVy/Zi031VgPDWscbbgOk8hlhZ3g==} - engines: {node: '>= 18'} + '@redis/search@5.12.1': + resolution: {integrity: sha512-ItlxbxC9cKI6IU1TLWoczwJCRb6TdmkEpWv05UrPawqaAnWGRu3rcIqsc5vN483T2fSociuyV1UkWIL5I4//2w==} + engines: {node: '>= 18.19.0'} peerDependencies: - '@redis/client': ^5.11.0 + '@redis/client': ^5.12.1 '@redis/time-series@1.1.0': resolution: {integrity: sha512-c1Q99M5ljsIuc4YdaCwfUEXsofakb9c8+Zse2qxTadu8TalLXuAESzLvFAvNVbkmSlvlzIQOLpBCmWI9wTOt+g==} peerDependencies: '@redis/client': ^1.0.0 - '@redis/time-series@5.11.0': - resolution: {integrity: sha512-TWFeOcU4xkj0DkndnOyhtxvX1KWD+78UHT3XX3x3XRBUGWeQrKo3jqzDsZwxbggUgf9yLJr/akFHXru66X5UQA==} - engines: {node: '>= 18'} + '@redis/time-series@5.12.1': + resolution: {integrity: sha512-c6JL6E3EcZJuNqKFz+KM+l9l5mpcQiKvTwgA3blt5glWJ8hjDk0yeHN3beE/MpqYIQ8UEX44ItQzgkE/gCBELQ==} + engines: {node: '>= 18.19.0'} peerDependencies: - '@redis/client': ^5.11.0 + '@redis/client': ^5.12.1 '@rollup/rollup-android-arm-eabi@4.57.1': resolution: {integrity: sha512-A6ehUVSiSaaliTxai040ZpZ2zTevHYbvu/lDoeAteHI8QnaosIzm4qwtezfRg1jOYaUmnzLX1AOD6Z+UJjtifg==} @@ -2745,6 +2748,9 @@ packages: hookified@2.1.0: resolution: {integrity: sha512-ootKng4eaxNxa7rx6FJv2YKef3DuhqbEj3l70oGXwddPQEEnISm50TEZQclqiLTAtilT2nu7TErtCO523hHkyg==} + hookified@2.2.0: + resolution: {integrity: sha512-p/LgFzRN5FeoD3DLS6bkUapeye6E4SI6yJs6KetENd18S+FBthqYq2amJUWpt5z0EQwwHemidjY5OqJGEKm5uA==} + html-dom-parser@5.1.8: resolution: {integrity: sha512-MCIUng//mF2qTtGHXJWr6OLfHWmg3Pm8ezpfiltF83tizPWY17JxT4dRLE8lykJ5bChJELoY3onQKPbufJHxYA==} @@ -3639,6 +3645,10 @@ packages: resolution: {integrity: sha512-LjgDO2zPtoXP2wJpDjZrGdojii1uqO0cnwKoIoUzkfS98HDmbeiGmYiXo3lXeFlq2xvne1QFQhwYXSUCLKtEuA==} engines: {node: '>=12.20'} + qified@0.10.1: + resolution: {integrity: sha512-+Owyggi9IxT1ePKGafcI87ubSmxol6smwJ+RAHDQlx9+9cPwFWDiKFFCPuWhr9ignlGpZ9vDQLw67N4dcTVFEA==} + engines: {node: '>=20'} + qified@0.9.0: resolution: {integrity: sha512-4q61YgkHbY6gmwkqm0BsxyLDO3UYdrdiJTJ7JiaZb3xpW1duxn135SB7KqUEkCiuu5O4W+TtwEWP2VjmSRanvA==} engines: {node: '>=20'} @@ -3712,9 +3722,9 @@ packages: redis@4.7.0: resolution: {integrity: sha512-zvmkHEAdGMn+hMRXuMBtu4Vo5P6rHQjLoHftu+lBqq8ZTA3RCVC/WzD790bkKKiNFp7d5/9PcSD19fJyyRvOdQ==} - redis@5.11.0: - resolution: {integrity: sha512-YwXjATVDT+AuxcyfOwZn046aml9jMlQPvU1VXIlLDVAExe0u93aTfPYSeRgG4p9Q/Jlkj+LXJ1XEoFV+j2JKcQ==} - engines: {node: '>= 18'} + redis@5.12.1: + resolution: {integrity: sha512-LDsoVvb/CpoV9EN3FXvgvSHNJWuCIzl9MiO3ppOevuGLpSGJhwfQjpEwfFJcQvNSddHADDdZaWx0HnmMxRXG7g==} + engines: {node: '>= 18.19.0'} registry-auth-token@5.1.1: resolution: {integrity: sha512-P7B4+jq8DeD2nMsAcdfaqHbssgHtZ7Z5+++a5ask90fvmJ8p5je4mOa+wzu+DB4vQ5tdJV/xywY+UnVFeQLV5Q==} @@ -5173,21 +5183,22 @@ snapshots: safe-stable-stringify: 2.5.0 secure-json-parse: 4.0.0 - '@qified/redis@0.9.0(qified@0.9.0)': + '@qified/redis@0.10.1(@opentelemetry/api@1.9.0)(qified@0.10.1)': dependencies: - hookified: 2.1.0 - qified: 0.9.0 - redis: 5.11.0 + hookified: 2.2.0 + qified: 0.10.1 + redis: 5.12.1(@opentelemetry/api@1.9.0) transitivePeerDependencies: - '@node-rs/xxhash' + - '@opentelemetry/api' '@redis/bloom@1.2.0(@redis/client@1.6.0)': dependencies: '@redis/client': 1.6.0 - '@redis/bloom@5.11.0(@redis/client@5.11.0)': + '@redis/bloom@5.12.1(@redis/client@5.12.1(@opentelemetry/api@1.9.0))': dependencies: - '@redis/client': 5.11.0 + '@redis/client': 5.12.1(@opentelemetry/api@1.9.0) '@redis/client@1.6.0': dependencies: @@ -5199,9 +5210,11 @@ snapshots: dependencies: cluster-key-slot: 1.1.2 - '@redis/client@5.11.0': + '@redis/client@5.12.1(@opentelemetry/api@1.9.0)': dependencies: cluster-key-slot: 1.1.2 + optionalDependencies: + '@opentelemetry/api': 1.9.0 '@redis/graph@1.1.1(@redis/client@1.6.0)': dependencies: @@ -5211,25 +5224,25 @@ snapshots: dependencies: '@redis/client': 1.6.0 - '@redis/json@5.11.0(@redis/client@5.11.0)': + '@redis/json@5.12.1(@redis/client@5.12.1(@opentelemetry/api@1.9.0))': dependencies: - '@redis/client': 5.11.0 + '@redis/client': 5.12.1(@opentelemetry/api@1.9.0) '@redis/search@1.2.0(@redis/client@1.6.0)': dependencies: '@redis/client': 1.6.0 - '@redis/search@5.11.0(@redis/client@5.11.0)': + '@redis/search@5.12.1(@redis/client@5.12.1(@opentelemetry/api@1.9.0))': dependencies: - '@redis/client': 5.11.0 + '@redis/client': 5.12.1(@opentelemetry/api@1.9.0) '@redis/time-series@1.1.0(@redis/client@1.6.0)': dependencies: '@redis/client': 1.6.0 - '@redis/time-series@5.11.0(@redis/client@5.11.0)': + '@redis/time-series@5.12.1(@redis/client@5.12.1(@opentelemetry/api@1.9.0))': dependencies: - '@redis/client': 5.11.0 + '@redis/client': 5.12.1(@opentelemetry/api@1.9.0) '@rollup/rollup-android-arm-eabi@4.57.1': optional: true @@ -6581,6 +6594,8 @@ snapshots: hookified@2.1.0: {} + hookified@2.2.0: {} + html-dom-parser@5.1.8: dependencies: domhandler: 5.0.3 @@ -7813,6 +7828,10 @@ snapshots: dependencies: escape-goat: 4.0.0 + qified@0.10.1: + dependencies: + hookified: 2.2.0 + qified@0.9.0: dependencies: hookified: 2.1.0 @@ -7883,15 +7902,16 @@ snapshots: '@redis/search': 1.2.0(@redis/client@1.6.0) '@redis/time-series': 1.1.0(@redis/client@1.6.0) - redis@5.11.0: + redis@5.12.1(@opentelemetry/api@1.9.0): dependencies: - '@redis/bloom': 5.11.0(@redis/client@5.11.0) - '@redis/client': 5.11.0 - '@redis/json': 5.11.0(@redis/client@5.11.0) - '@redis/search': 5.11.0(@redis/client@5.11.0) - '@redis/time-series': 5.11.0(@redis/client@5.11.0) + '@redis/bloom': 5.12.1(@redis/client@5.12.1(@opentelemetry/api@1.9.0)) + '@redis/client': 5.12.1(@opentelemetry/api@1.9.0) + '@redis/json': 5.12.1(@redis/client@5.12.1(@opentelemetry/api@1.9.0)) + '@redis/search': 5.12.1(@redis/client@5.12.1(@opentelemetry/api@1.9.0)) + '@redis/time-series': 5.12.1(@redis/client@5.12.1(@opentelemetry/api@1.9.0)) transitivePeerDependencies: - '@node-rs/xxhash' + - '@opentelemetry/api' registry-auth-token@5.1.1: dependencies: