keyv v6.0.0-rc.1 — 2026-08-03
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.
⚠ BREAKING CHANGES
- 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. - keyv:
checkExpirednow defaults totrue(f067213, #1984)
Migration: expired keys are now checked and cleared by default. PasscheckExpired: falseto restore the previous behavior. - keyv: removed the namespace
removeKeyPrefixbehavior for v6 (73fd79b, #2013)
Migration: keys are no longer stripped of their namespace prefix on read. If you relied on the stripped form, read the full namespaced key.
Features
-
add Cloudflare Workers KV storage adapter (e004467, #1985)
import { createKeyv } from "@keyv/cloudflare-kv"; // REST mode — from any Node.js process const keyv = createKeyv({ mode: "rest", accountId: process.env.CF_ACCOUNT_ID, namespaceId: process.env.CF_KV_NAMESPACE_ID, apiToken: process.env.CF_API_TOKEN, }); // Or "bind" mode inside a Worker: createKeyv({ kvNamespace: env.MY_KV })
-
keyv: add the built-in adapters to the docs (2e03276, #1983)
Bug Fixes
- mysql: isolate pooled connection lifecycles (86b61c8, #2012)
- mysql: scheduled cleanup firing (97fa359, #2017)
- mysql: deleting expired keys sometimes fails (6e5aff2, #2014)
- mysql: resolve TypeScript errors (dc563b6, #2011)
Documentation
Internal
- refactor: add
KeyvAny/KeyvAnyArraytypes and replace explicitany(49ed583, #2010) - 34 dependency and tooling upgrades across the monorepo — highlights: TypeScript 6→7, pnpm 11.5→11.18, better-sqlite3 12→13 (N-API, drops
prebuild-install), mongodb 7.4→7.5, mysql2 3.22→3.23, iovalkey 0.3→0.4,@redis/client6.0→6.1, hookified 3.0.1→3.0.2,actions/setup-nodev6→v7, and the Node engines floor raised to ≥ 22.19.0. Full inventory below.
Contributors
- @jaredwray (47)
- @BJS-kr (1)
Full List of Changes
- keyv - feat: adding in the built in adapters to docs by @jaredwray in #1983
- keyv - fix: moving checkExpired to default to true by @jaredwray in #1984
- cloudflare-kv - feat: Add Cloudflare Workers KV storage adapter by @jaredwray in #1985
- mono - chore: upgrade code quality dependencies by @jaredwray in #1986
- mono - chore: upgrade TypeScript and build tooling by @jaredwray in #1987
- mono - chore: upgrade js-yaml to v5 (breaking) by @jaredwray in #1988
- keyv - chore: upgrade keyv-file by @jaredwray in #1989
- mono - chore: upgrade GitHub Actions (breaking) by @jaredwray in #1990
- dynamo - chore: upgrade AWS SDK dependencies by @jaredwray in #1991
- mongo - chore: upgrade mongodb by @jaredwray in #1992
- postgres - chore: upgrade pg by @jaredwray in #1993
- sqlite - chore: upgrade better-sqlite3 by @jaredwray in #1994
- redis - chore: upgrade @redis/client by @jaredwray in #1995
- memcache - chore: upgrade memcache by @jaredwray in #1996
- mono - chore: upgrade hookified by @jaredwray in #1997
- serialize - chore: upgrade msgpackr by @jaredwray in #1998
- test-suite - chore: upgrade bignumber.js by @jaredwray in #1999
- bigmap - chore: upgrade hashery (breaking) by @jaredwray in #2000
- compress-gzip - chore: upgrade pako (breaking) by @jaredwray in #2001
- mono - refactor: add KeyvAny/KeyvAnyArray types and replace explicit any by @jaredwray in #2010
- mysql - fix: resolve TypeScript errors by @jaredwray in #2011
- mysql - fix: isolate pooled connection lifecycles by @jaredwray in #2012
- fix: removing the namespace removeKeyPrefix with v6 by @jaredwray in #2013
- mysql - fix: deleting expired keys sometimes fail by @jaredwray in #2014
- mysql - fix: moving to VARBINARY for key by @jaredwray in #2015
- mysql - fix: moving to varbinary for key (fixes) by @jaredwray in #2016
- mysql - fix: scheduled cleanup firing by @jaredwray in #2017
- mysql - feat: moving to async config changes by @jaredwray in #2018
- mysql - feat: adding in docs by @jaredwray in #2019
- docs: add keyv-s3fifo to third-party storage adapters by @BJS-kr in #2020
- mono - chore: upgrade code quality dependencies by @jaredwray in #2021
- mono - chore: upgrade TypeScript and build tooling by @jaredwray in #2022
- mono - chore: upgrade pnpm to 11.18.0 by @jaredwray in #2023
- mono - chore: upgrade GitHub Actions by @jaredwray in #2024
- dynamo - chore: upgrade AWS SDK DynamoDB dependencies by @jaredwray in #2025
- redis - chore: upgrade @redis/client to 6.1.0 by @jaredwray in #2026
- mongo - chore: upgrade mongodb to 7.5.0 by @jaredwray in #2027
- mysql - chore: upgrade mysql2 to 3.23.2 by @jaredwray in #2028
- valkey - chore: upgrade iovalkey to 0.4.0 by @jaredwray in #2029
- memcache - chore: upgrade memcache to 1.9.0 by @jaredwray in #2030
- mono - chore: raise Node engines floor to 22.19.0 by @jaredwray in #2031
- sqlite - chore: upgrade better-sqlite3 to 13.0.2 by @jaredwray in #2032
- mono - chore: upgrade hookified to 3.0.2 by @jaredwray in #2033
- bigmap - chore: upgrade hashery to 3.0.1 by @jaredwray in #2034
- test-suite - chore: upgrade bignumber.js to 11.1.5 by @jaredwray in #2035
- mono - chore: upgrade lz4-napi to 2.9.1 by @jaredwray in #2036
- serialize - chore: upgrade msgpackr to 2.0.5 by @jaredwray in #2037
- compress - chore: upgrade pako to 3.0.1 by @jaredwray in #2038
Full diff: v6.0.0-beta.4...v6.0.0-rc.1