Skip to content

2025-09-09

Choose a tag to compare

@jaredwray jaredwray released this 09 Sep 17:41
· 383 commits to main since this release
487a2eb

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() and getMany() no longer have the raw option but instead we have built out getRaw() and getManyRaw() to use.
  • All get related functions now support nonBlocking which means if nonBlocking: true the 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 the get function level the option nonBlocking: false which will look for any missing keys in the secondary.
  • Keyv v5.5+ is now the recommended supported version as we are using its native getMany* and getRaw*
  • Wrap and getOrSet have been updated with more robust options including the ability to use your own serialize function for creating the key in wrap.
  • hash has 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