Changelog
First stable release of Keyv v6, published to npm's latest tag.
All 20 published packages release in lockstep at 6.1.0; there is no 6.0.0. @keyv/website is private and not published.
Coming from v5? Follow the v5 to v6 migration guide, or point your coding agent at https://keyv.org/skills/migrate. v5 stays in maintenance; install it with keyv@5.
These are changes since 6.0.0-rc.1. Coming from v5, start with the migration guide.
Promote 6.0 to release candidate: Cloudflare KV adapter, MySQL fixes, and a full dependency refresh.
All published @keyv/* adapters release in lockstep at this version. @keyv/website is private and not published.
- mysql: keys are now stored as
VARBINARY(6e519b4, #2015; f579073, #2016) Migration:@keyv/mysqltables created under6.0.0-beta.4use the previous key column type. Recreate the keyv table, orALTERthe key column toVARBINARY, before upgrading.
Finalize the v6 storage-adapter API (ttl → expires) and complete the cross-adapter code/test review.
- Storage adapters now use
expires(absolute epoch-ms timestamp) instead of a relativettl. (da9c08f, #1981) Migration: if you call a storage adapter directly or implement a custom one, read the absoluteexpiresvalue from the entry envelope instead of accepting attlargument. TheKeyvcore API is unchanged — it continues to deriveexpiresfrom the value envelope, so typical...
This release rolls up the entire v6 beta cycle — everything merged since v6.0.0-alpha.3. v6 is a major, ground-up modernization of Keyv: a leaner core, a new raw-data API, first-class capability detection, telemetry, two new encryption packages, a dependency-free etcd adapter, and a wave of breaking dependency upgrades across the monorepo.
Heads up: v6 contains a number of breaking changes vs. v5. If you are upgrading from v5, read the v5 → v6 migration guide alongside these...
- keyv - feat (breaking) stats / telemetry overhaul by @jaredwray in https://github.com/jaredwray/keyv/pull/1912
- keyv - feat: (breaking) memory adapter, bridge adapter, keyv overhaul by @jaredwray in https://github.com/jaredwray/keyv/pull/1913
- bigmap - feat: Optimize BigMap hash function and hot path performance by @jaredwray in https://github.com/jaredwray/keyv/pull/1915
- keyv - feat: (breaking) moving to Hookified by @jaredwray in https://github.com/jaredwray/keyv/pull/1900
- compression - feat: moving to KeyvCompressionAdapter standard by @jaredwray in https://github.com/jaredwray/keyv/pull/1901
- keyv - feat: (breaking) api changes and iterator simplification by @jaredwray in https://github.com/jaredwray/keyv/pull/1902
- keyv - feat: moving storage setMany to use KeyvEntry by @jaredwray in https://github.com/jaredwray/keyv/pull/1903
- sqlite - feat: moving to namespace and modern adapter methods by @jaredwray in https://github.com/jaredwray/keyv/pull/1884
- sqlite - feat: adding in benchmarks by @jaredwray in https://github.com/jaredwray/keyv/pull/1885
- sqlite - feat: adding in driver for sqlite3 for legacy by @jaredwray in https://github.com/jaredwray/keyv/pull/1886
- sqlite - feat: major clean up of drivers and code base by @jaredwray in https://github.com/jaredwray/keyv/pull/1887
- valkey - feat: moving options to properties by @jaredwray in https://github.com/jaredwray/keyv/pull/1876
- valkey - feat: adding in getMany, setMany, deleteMany, etc by @jaredwray in https://github.com/jaredwray/keyv/pull/1877
- valkey - feat: (breaking) moving to client instead of redis name by @jaredwray in https://github.com/jaredwray/keyv/pull/1878
- mono - feat: migrating to hookified v2 by @jaredwray in https://github.com/jaredwray/keyv/pull/1879
- redis - feat: exporting RedisSentinelOptions by @jaredwray in https://github.com/jaredwray/keyv/pull/1823
- redis - feat: exporting redis sentinel options with updated documentation by @jaredwray in https://github.com/jaredwray/keyv/pull/1824
- mono - chore: upgrading vitest to 4.0.18 by @jaredwray in https://github.com/jaredwray/keyv/pull/1827
- keyv - chore: upgrading vitest and supporting modules to latest by @jaredwray in https://github.com/jaredwray/keyv/pull/1828
- website - feat: centralizing third party storage adapters by @jaredwray in https://github.com/jaredwray/keyv/pull/1789
- keyv - feat: validating bun support by @jaredwray in https://github.com/jaredwray/keyv/pull/1790
- keyv - feat: adding readme on bun support by @jaredwray in https://github.com/jaredwray/keyv/pull/1792
- keyv - feat: adding in jsDoc to KeyvGenericStore by @jaredwray in https://github.com/jaredwray/keyv/pull/1793
- mysql - chore: upgrading @biomejs/biome to 2.3.9 by @jaredwray in https://github.com/jaredwray/keyv/pull/1763
- mysql - chore: upgrading vitest to 4.0.15 by @jaredwray in https://github.com/jaredwray/keyv/pull/1764
- sqlite - chore: upgrading @biomejs/biome to 2.3.9 by @jaredwray in https://github.com/jaredwray/keyv/pull/1765
- sqlite - chore: upgrading vitest to 4.0.15 by @jaredwray in https://github.com/jaredwray/keyv/pull/1766
- redis - feat: updating readme on why namespaces cause memory bloat by @jaredwray in https://github.com/jaredwray/keyv/pull/1726
- memcache - chore: upgrading @biomejs/biome to 2.3.7 by @jaredwray in https://github.com/jaredwray/keyv/pull/1728
- memcache - chore: upgrading tsup to 8.5.1 by @jaredwray in https://github.com/jaredwray/keyv/pull/1729
- memcache - chore: upgrading vitest to 4.0.14 by @jaredwray in https://github.com/jaredwray/keyv/pull/1730
- postgres - feat: setMany support by @darky in https://github.com/jaredwray/keyv/pull/1723
- mysql - fix: resolving security concern with has method by @jaredwray in https://github.com/jaredwray/keyv/pull/1724
- mysql - feat: adding in jsDocs by @jaredwray in https://github.com/jaredwray/keyv/pull/1725
Full Changelog:...
- bigmap - feat: moving to hashery for hashing by @jaredwray in https://github.com/jaredwray/keyv/pull/1694
- postgres - perf: getMany O(n^2) -> O(2n) by @darky in https://github.com/jaredwray/keyv/pull/1695
- keyv - fix: setting the exports correctly by @jaredwray in https://github.com/jaredwray/keyv/pull/1697
- bigmap - fix: fixing exports to be correct by @jaredwray in https://github.com/jaredwray/keyv/pull/1698
- postgres - feat: connect method as public by @darky in https://github.com/jaredwray/keyv/pull/1681
- redis - chore: upgrading vitest to 4.0.8 by @jaredwray in https://github.com/jaredwray/keyv/pull/1682
- redis - chore: upgrading hookified to 1.12.2 by @jaredwray in https://github.com/jaredwray/keyv/pull/1683
- redis - chore: upgrading @redis/client to 5.9.0 by @jaredwray in https://github.com/jaredwray/keyv/pull/1684
- mono - chore: upgrading vitest to 4.0.6 by @jaredwray in https://github.com/jaredwray/keyv/pull/1659
- mono - chore: upgrading typescript to 5.9.3 by @jaredwray in https://github.com/jaredwray/keyv/pull/1660
- mono - chore: upgrading rimraf to 6.1.0 by @jaredwray in https://github.com/jaredwray/keyv/pull/1661
- mono - chore: upgrading @biomejs/biome to 2.3.3 by @jaredwray in https://github.com/jaredwray/keyv/pull/1662
- website - feat: Add explanation caching nestjs docs by @junghyunbak in https://github.com/jaredwray/keyv/pull/1645
- memcache - chore: upgrading @biomejs/biome to 2.3.0 by @jaredwray in https://github.com/jaredwray/keyv/pull/1646
- memcache - chore: upgrading typescript to 5.9.3 by @jaredwray in https://github.com/jaredwray/keyv/pull/1647
- memcache - chore: upgrading vitest to 4.0.3 by @jaredwray in https://github.com/jaredwray/keyv/pull/1648
- mysql - chore: upgrading mysql2 to 3.15.2 by @jaredwray in https://github.com/jaredwray/keyv/pull/1633
- mysql - chore: upgrading @biomejs/biome to 2.2.6 by @jaredwray in https://github.com/jaredwray/keyv/pull/1634
- sqlite - chore: upgrading sqlite to 10.1.0 by @jaredwray in https://github.com/jaredwray/keyv/pull/1635
- sqlite - chore: upgrading @biomejs/biome to 2.2.6 by @jaredwray in https://github.com/jaredwray/keyv/pull/1636
- sqlite - fix: adding in better filtering on table input by @jaredwray in https://github.com/jaredwray/keyv/pull/1622
- bigmap - fix: adding in forEach code that works by @jaredwray in https://github.com/jaredwray/keyv/pull/1623
- valkey - fix: removing console.log that was added by accident by @jaredwray in https://github.com/jaredwray/keyv/pull/1624
- valkey - chore: adding in iterator test on functionality by @jaredwray in https://github.com/jaredwray/keyv/pull/1625
- valkey - fix: removing sets namespace as it is not needed by @jaredwray in https://github.com/jaredwray/keyv/pull/1613
- keyv - chore: upgrading biome to 2.2.5 by @jaredwray in https://github.com/jaredwray/keyv/pull/1614
- serialize - chore: upgrading biome to 2.2.5 by @jaredwray in https://github.com/jaredwray/keyv/pull/1616
- mono - chore: removing webpack as unneeded by @jaredwray in https://github.com/jaredwray/keyv/pull/1617