2025-09-09
Cacheable v2
cacheable is now using @cacheable/utils, @cacheable/memoize, and @cacheable/memory for its core functionality as we are moving to this modular architecture and plan to eventually have these modules across cache-manager and flat-cache. In addition there are some breaking changes:
get()andgetMany()no longer have therawoption but instead we have built outgetRaw()andgetManyRaw()to use.- All
getrelated functions now supportnonBlockingwhich means ifnonBlocking: truethe primary store will return what it has and then in the background will work to sync from secondary storage for any misses. You can disable this by setting at thegetfunction level the optionnonBlocking: falsewhich will look for any missing keys in the secondary. Keyvv5.5+ is now the recommended supported version as we are using its nativegetMany*andgetRaw*WrapandgetOrSethave been updated with more robust options including the ability to use your ownserializefunction for creating the key inwrap.hashhas now been updated with robust options and also an enum for setting the algorithm.
What's Changed
- net - fix: making it so fetch is cached by @jaredwray in #1292
- net - feat: adding in get helper for fetch by @jaredwray in #1293
- net - feat: adding in get response by @jaredwray in #1294
- net - feat: adding in post from fetch by @jaredwray in #1295
- net - feat: updating patch and post to have data param by @jaredwray in #1296
- net - feat: adding in head helper method for fetch by @jaredwray in #1297
- net - feat: adding in delete fetch helper by @jaredwray in #1298
- net - feat: adding in http cache policy by @jaredwray in #1299
- cacheable - fix: handling nonBlocking errors better by @jaredwray in #1300
- cacheable - feat: (BREAKING) using memory, utils, and memoize by @jaredwray in #1301
- mono - chore: upgrading wrangler to latest by @jaredwray in #1304
- mono - fix: centralizing biome to root by @jaredwray in #1305
- cache-manager - chore: upgrading @keyv/redis to 5.1.1 by @jaredwray in #1306
- cache-manager - chore: upgrading @faker-js/faker to 10.0.0 by @jaredwray in #1307
- cacheable-request - chore: upgrading @biomejs/biome to 2.2.3 by @jaredwray in #1308
- website - chore: upgrading docula to 0.20.0 by @jaredwray in #1309
- utils - feat: adding in helper functions from cache manager by @jaredwray in #1311
- cache-manager - feat: using @cacheable/utils for helper functions by @jaredwray in #1312
- cacheable - fix: if there are no keys needed from secondary do not ca… by @jaredwray in #1313
- cacheable - feat: moving to @cacheable/utils hash function by @jaredwray in #1314
- cacheable - feat: moving to native Keyv getManyRaw function by @jaredwray in #1315
- cacheable - feat: moving to Keyv native setMany by @jaredwray in #1316
- cacheable - feat: moving to native Keyv deleteMany by @jaredwray in #1318
- cacheable - feat: moving to native Keyv getRaw by @jaredwray in #1319
- cacheable - feat: adding getRaw and getManyRaw by @jaredwray in #1320
- cacheable - feat: get() and getMany() to not return raw value by @jaredwray in #1321
- cacheable - feat: moving get and getMany to use raw methods by @jaredwray in #1322
- cacheable - chore: clean up types and enums by @jaredwray in #1323
- utils - feat: moving hash function to take options with stringify by @jaredwray in #1324
- memoize - feat: adding options with serialize and deserialize for create key hash by @jaredwray in #1325
- cacheable - feat: adding in the ability to not set serializers by default by @jaredwray in #1326
- cacheable - feat: adding in non blocking to get by @jaredwray in #1327
Full Changelog: 2025-08-26...2025-09-09