---
name: node-redis
slug: node-redis
type: github
source_url: https://github.com/redis/node-redis
organization: Redis
organization_slug: redis
total_releases: 100
latest_version: redis@5.12.0
latest_date: 2026-04-14
last_updated: 2026-05-01
tracking_since: 2022-02-22
canonical: https://releases.sh/redis/node-redis
organization_url: https://releases.sh/redis
---

<Release version="redis@5.12.0" date="April 14, 2026" published="2026-04-14T10:47:34.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.12.0">
## ✨ What's Changed

### 🚀 Features
* feat: expose `sendCommand` on `multi` for all clients by @nkaradzhov in https://github.com/redis/node-redis/pull/3181
* feat(sentinel): add `sSubscribe`/`sUnsubscribe` methods to Sentinel client by @nkaradzhov in https://github.com/redis/node-redis/pull/3178

### 🐛 Fixes
* fix(search): correct `INDEXMISSING` placement by @nkaradzhov in https://github.com/redis/node-redis/pull/3179
* Pool fixes by @nkaradzhov in https://github.com/redis/node-redis/pull/3182
* fix(search): use `@redis/client` dist imports in `CREATE` command by @PavelPashov in https://github.com/redis/node-redis/pull/3187
* fix(sentinel): preserve root seeds for outage recovery by @nkaradzhov in https://github.com/redis/node-redis/pull/3188
* fix: fallthrough bug in `transformDoubleReply` by @rhymincymon in https://github.com/redis/node-redis/pull/3213

### 🔭 Observability (OTEL + Diagnostics)
Node Redis now ships with first-class observability via OpenTelemetry metrics and Node.js `diagnostics_channel`. Initialize `OpenTelemetry` before creating clients (`OpenTelemetry.init({ metrics: { enabled: true } })`) and you can plug Redis client telemetry into your existing OTel SDK/exporter pipeline.

This enables visibility into command latency, connection lifecycle, resiliency/errors, Pub/Sub traffic, streaming behavior, and client-side caching activity. On top of metrics, diagnostics channels provide a more abstract, higher-level way to track runtime behavior through low-overhead event streams (commands, batches, connection events, maintenance notifications, pub/sub, cache, and pool wait timing), so APM tools or custom subscribers can observe the system without changing application code.

* add OpenTelemetry metrics instrumentation by @PavelPashov in https://github.com/redis/node-redis/pull/3110
* feat: implement diagnostic channels for observability by @logaretm in https://github.com/redis/node-redis/pull/3195

### 🧪 Tests & CI
* test(scho oss): add smigrating checks for new connections by @nkaradzhov in https://github.com/redis/node-redis/pull/3186
* Add self-report metrics step to CI workflow by @bobymicroby in https://github.com/redis/node-redis/pull/3199
* Add run tests action by @dariaguy in https://github.com/redis/node-redis/pull/3221

### 📚 Docs
* improve sentinel docs by @cutiepoka in https://github.com/redis/node-redis/pull/3189
* docs: clarify DUMP/RESTORE binary payload usage by @nkaradzhov in https://github.com/redis/node-redis/pull/3201
* fix(docs): configure typedoc entry points for monorepo by @nkaradzhov in https://github.com/redis/node-redis/pull/3220

## 🙌 New Contributors
* @cutiepoka made their first contribution in https://github.com/redis/node-redis/pull/3189
* @rhymincymon made their first contribution in https://github.com/redis/node-redis/pull/3213
* @logaretm made their first contribution in https://github.com/redis/node-redis/pull/3195
* @dariaguy made their first contribution in https://github.com/redis/node-redis/pull/3221

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.11.0...redis@5.12.0

</Release>

<Release version="redis@5.11.0" date="February 16, 2026" published="2026-02-16T14:57:43.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.11.0">
## 5.11.0 Release Changelog
   ### 🌟 Highlights
   #### Smart Client Handoffs for Enterprise OSS API (Pending a Redis Enterprise version release)
   This release introduces support for Redis Enterprise Cluster maintenance notifications via SMIGRATING/SMIGRATED push notifications. The client now automatically handles slot migrations by:
   - Relaxing timeouts during migration (SMIGRATING) to prevent false failures
   - Automatic slot handoff when completed (SMIGRATED)
   - Enabling seamless operations during Redis Enterprise maintenance windows
   #### Redis 8.6 Support
   This release adds support for Redis 8.6 features:
   - **XADD idempotency options** (`IDMPAUTO`, `IDMP`, and `policy`) - Prevent duplicate entries by tracking producer and message IDs
   - **XCFGSET command** - Configure per-stream idempotency parameters (`IDMP_DURATION`, `IDMP_MAXSIZE`)
   - **XINFO STREAM enhancements** - New idempotency tracking fields (`idmp-duration`, `idmp-maxsize`, `pids-tracked`, `iids-tracked`, `iids-added`, `iids-duplicates`)
   - **HOTKEYS command family** (`START`, `STOP`, `GET`, `RESET`) - Track and identify hot keys by CPU time and network bytes
   ---
   ### 🚀 New Features
   - feat(cluster): smart client handoffs OSS (hitless upgrades) by @nkaradzhov in https://github.com/redis/node-redis/pull/3142
   - feat(client): add VRANGE command for vector sets by @nkaradzhov in https://github.com/redis/node-redis/pull/3158
   - feat(client): add HOTKEYS command for hotkey tracking by @nkaradzhov in https://github.com/redis/node-redis/pull/3164
   - feat(client): add XCFGSET command for stream idempotency configuration by @nkaradzhov in https://github.com/redis/node-redis/pull/3163
   - feat(client): add XADD idempotency options (IDMPAUTO, IDMP) and policy by @nkaradzhov in https://github.com/redis/node-redis/pull/3161
   - feat(client): add idempotency fields to XINFO STREAM response by @nkaradzhov in https://github.com/redis/node-redis/pull/3162
   - feat(time-series): add NaN support and new aggregation types by @PavelPashov in https://github.com/redis/node-redis/pull/3167
   - feat(client): add local digest helper for CAS/CAD operations by @PavelPashov in https://github.com/redis/node-redis/pull/3154
   - feat(search): support indexing same field multiple times with different configurations by @nkaradzhov in https://github.com/redis/node-redis/pull/3157
   - feat(sentinel): implement nodeAddressMap for sentinel by @elimelt in https://github.com/redis/node-redis/pull/3145
   - feat(test-utils): add testAllAuto method for automatic cluster test generation by @bobymicroby in https://github.com/redis/node-redis/pull/3148
   - Add socket.servname property to createClient configuration by @itrich in https://github.com/redis/node-redis/pull/3165
   ---
   ### 🐛 Bug Fixes
   - fix(client): Support IPv6 literals in URL by @TimWolla in https://github.com/redis/node-redis/pull/3176
   - fix(client): return Promise consistently in cluster functions by @orgads in https://github.com/redis/node-redis/pull/3159
   - fix(search): improve FT.HYBRID command implementation by @PavelPashov in https://github.com/redis/node-redis/pull/3171
   - fix(pool): cannot read private member by @Eomm in https://github.com/redis/node-redis/pull/3151
   - fix: unwrap constructors to primitives in type mapping by @watersRand in https://github.com/redis/node-redis/pull/3174
   ---
   ### 📚 Documentation & Testing
   - docs: correct CAS/CAD parameter name and update example by @PavelPashov in https://github.com/redis/node-redis/pull/3156
   - docs(token-manager): Correct documentation for jitterPercentage by @dubek in https://github.com/redis/node-redis/pull/3153
   - tests: fix flaky timeout assertion in maintenance notification test by @kiryazovi-redis in https://github.com/redis/node-redis/pull/3143
   - tests: add TLS connection tests by @PavelPashov in https://github.com/redis/node-redis/pull/3166
   - tests: add mocha multi-reporters and junit reporter support by @bobymicroby in https://github.com/redis/node-redis/pull/3138
   - refactor(test-utils): use separate redis-tag and redis-version CLI arguments by @nkaradzhov in https://github.com/redis/node-redis/pull/3169
   - Hotkeys Adjustments by @nkaradzhov in https://github.com/redis/node-redis/pull/3173

## New Contributors
* @kiryazovi-redis made their first contribution in https://github.com/redis/node-redis/pull/3143
* @elimelt made their first contribution in https://github.com/redis/node-redis/pull/3145
* @dubek made their first contribution in https://github.com/redis/node-redis/pull/3153
* @itrich made their first contribution in https://github.com/redis/node-redis/pull/3165
* @TimWolla made their first contribution in https://github.com/redis/node-redis/pull/3176

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.10.0...redis@5.11.0
</Release>

<Release version="redis@5.10.0" date="November 19, 2025" published="2025-11-19T16:46:14.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.10.0">
# Changes

## 🚀 New Features
* Add MSETEX command support (#3116)
* Add CLAIM attribute to XREADGROUP command (#3122)
* Add index/query doc page examples (#3109)

## 🧪 Experimental Features
* Add support for CAS/CAD, DELEX, DIGEST commands (#3123)
* Add support for HYBRID search (#3119 #3132)
* Add latency histogram (#3099)

## 🐛 Bug Fixes
* Fix dist/package.json version bumping in release process (#3125)
* Prevent false-ready state when socket errors during handshake (#3128)
* Don't parse number properties in XREADGROUP (#3133)

## 🧰 Maintenance
* Apply proxy improvements (#3121)
* Mark 8.4 features as experimental (#3134)
* Extract supported Redis versions into SUPPORTED_REDIS_VERSIONS.md (#3131)
* Bump test container image to 8.4.0 (#3139)

---

## Contributors
We'd like to thank all the contributors who worked on this release!

* @andy-stark-redis
* @htemelski-redis 
* @nkaradzhov
* @NaughtySora
* @PavelPashov

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.9.0...redis@5.10.0

</Release>

<Release version="redis@5.9.0" date="October 23, 2025" published="2025-10-23T15:09:46.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.9.0">
## What's Changed
* fix(ts): use all commands in cluster type by @nkaradzhov in https://github.com/redis/node-redis/pull/3065
* Main by @watersRand in https://github.com/redis/node-redis/pull/3047
* docs: fix scanIterator example in readme by @nkaradzhov in https://github.com/redis/node-redis/pull/3072
* Hitless upgrades by @nkaradzhov in https://github.com/redis/node-redis/pull/3021
* fix(cluster): prevent infinite loop by @nkaradzhov in https://github.com/redis/node-redis/pull/3078
* docs: update RedisJSON documentation link by @Caiuriuller in https://github.com/redis/node-redis/pull/3079
* refactor(test): improve test scenario reliability and maintainability by @PavelPashov in https://github.com/redis/node-redis/pull/3077
* Improve stale issue management workflow by @elena-kolevska in https://github.com/redis/node-redis/pull/3082
* Maint fixes by @nkaradzhov in https://github.com/redis/node-redis/pull/3086
* feat: add default modules to createClientPool by @killagu in https://github.com/redis/node-redis/pull/3088
* DOC-5743 BITOP examples by @andy-stark-redis in https://github.com/redis/node-redis/pull/3087
* feat: add typed/untyped mode support for multi-commands by @PavelPashov in https://github.com/redis/node-redis/pull/3084
* Fix: resolve doubly linked list push issue by @ntvviktor in https://github.com/redis/node-redis/pull/3085
* Update default Redis version to 8.4-M01-pre in tests by @bobymicroby in https://github.com/redis/node-redis/pull/3092
* Adjust scenario tests according to latest maint naming changes by @nkaradzhov in https://github.com/redis/node-redis/pull/3090
* test(maint): touch up wrong assertions by @nkaradzhov in https://github.com/redis/node-redis/pull/3096
* fix(pool): make createClientPool use provided options by @nkaradzhov in https://github.com/redis/node-redis/pull/3095
* Emit invalidate events from client by @sastcsgh in https://github.com/redis/node-redis/pull/3076
* Fix client kill enums by @watersRand in https://github.com/redis/node-redis/pull/3074
* cluster/node events (#1855) by @NaughtySora in https://github.com/redis/node-redis/pull/3083
* fix(ssubscribe): properly resubscribe in case of shard failover by @nkaradzhov in https://github.com/redis/node-redis/pull/3098
* fix: multi-byte character corruption when converting Buffers to strings by @brb3 in https://github.com/redis/node-redis/pull/3100
* fix(cmd): PUBSUB_NUMSUB return count as number by @nkaradzhov in https://github.com/redis/node-redis/pull/3103
* Extend proxy by @nkaradzhov in https://github.com/redis/node-redis/pull/3105

## New Contributors
* @watersRand made their first contribution in https://github.com/redis/node-redis/pull/3047
* @Caiuriuller made their first contribution in https://github.com/redis/node-redis/pull/3079
* @elena-kolevska made their first contribution in https://github.com/redis/node-redis/pull/3082
* @killagu made their first contribution in https://github.com/redis/node-redis/pull/3088
* @ntvviktor made their first contribution in https://github.com/redis/node-redis/pull/3085
* @sastcsgh made their first contribution in https://github.com/redis/node-redis/pull/3076
* @NaughtySora made their first contribution in https://github.com/redis/node-redis/pull/3083
* @brb3 made their first contribution in https://github.com/redis/node-redis/pull/3100

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.8.3...redis@5.9.0
</Release>

<Release version="redis@5.9.0-beta.3" date="October 22, 2025" published="2025-10-22T08:13:41.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.9.0-beta.3">
## What's Changed
* Fix: resolve doubly linked list push issue by @ntvviktor in https://github.com/redis/node-redis/pull/3085
* Update default Redis version to 8.4-M01-pre in tests by @bobymicroby in https://github.com/redis/node-redis/pull/3092
* Adjust scenario tests according to latest maint naming changes by @nkaradzhov in https://github.com/redis/node-redis/pull/3090
* test(maint): touch up wrong assertions by @nkaradzhov in https://github.com/redis/node-redis/pull/3096
* fix(pool): make createClientPool use provided options by @nkaradzhov in https://github.com/redis/node-redis/pull/3095
* Emit invalidate events from client by @sastcsgh in https://github.com/redis/node-redis/pull/3076
* Fix client kill enums by @watersRand in https://github.com/redis/node-redis/pull/3074
* cluster/node events (#1855) by @NaughtySora in https://github.com/redis/node-redis/pull/3083
* fix(ssubscribe): properly resubscribe in case of shard failover by @nkaradzhov in https://github.com/redis/node-redis/pull/3098
* fix: multi-byte character corruption when converting Buffers to strings by @brb3 in https://github.com/redis/node-redis/pull/3100
* fix(cmd): PUBSUB_NUMSUB return count as number by @nkaradzhov in https://github.com/redis/node-redis/pull/3103
* Extend proxy by @nkaradzhov in https://github.com/redis/node-redis/pull/3105

## New Contributors
* @ntvviktor made their first contribution in https://github.com/redis/node-redis/pull/3085
* @sastcsgh made their first contribution in https://github.com/redis/node-redis/pull/3076
* @NaughtySora made their first contribution in https://github.com/redis/node-redis/pull/3083
* @brb3 made their first contribution in https://github.com/redis/node-redis/pull/3100

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.9.0-beta.2...redis@5.9.0-beta.3
</Release>

<Release version="redis@5.8.3" date="October 2, 2025" published="2025-10-02T12:25:14.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.8.3">
## What's Changed
* fix: add typed/untyped mode support for multi-commands by @PavelPashov in https://github.com/redis/node-redis/pull/3084

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.8.2...redis@5.8.3
</Release>

<Release version="redis@5.9.0-beta.2" date="October 1, 2025" published="2025-10-01T13:49:44.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.9.0-beta.2">
## What's Changed
* feat: add default modules to createClientPool by @killagu in https://github.com/redis/node-redis/pull/3088
* DOC-5743 BITOP examples by @andy-stark-redis in https://github.com/redis/node-redis/pull/3087
* feat: add typed/untyped mode support for multi-commands by @PavelPashov in https://github.com/redis/node-redis/pull/3084

## New Contributors
* @killagu made their first contribution in https://github.com/redis/node-redis/pull/3088

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.9.0-beta.1...redis@5.9.0-beta.2
</Release>

<Release version="redis@5.9.0-beta.1" date="September 26, 2025" published="2025-09-26T08:58:58.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.9.0-beta.1">
## What's Changed
* fix(cluster): prevent infinite loop by @nkaradzhov in https://github.com/redis/node-redis/pull/3078
* docs: update RedisJSON documentation link by @Caiuriuller in https://github.com/redis/node-redis/pull/3079
* refactor(test): improve test scenario reliability and maintainability by @PavelPashov in https://github.com/redis/node-redis/pull/3077
* Improve stale issue management workflow by @elena-kolevska in https://github.com/redis/node-redis/pull/3082
* Maint fixes by @nkaradzhov in https://github.com/redis/node-redis/pull/3086

## New Contributors
* @Caiuriuller made their first contribution in https://github.com/redis/node-redis/pull/3079
* @elena-kolevska made their first contribution in https://github.com/redis/node-redis/pull/3082

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.9.0-beta.0...redis@5.9.0-beta.1
</Release>

<Release version="redis@5.9.0-beta.0" date="September 10, 2025" published="2025-09-10T09:33:11.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.9.0-beta.0">
## What's Changed
* fix(ts): use all commands in cluster type by @nkaradzhov in https://github.com/redis/node-redis/pull/3065
* Main by @watersRand in https://github.com/redis/node-redis/pull/3047
* docs: fix scanIterator example in readme by @nkaradzhov in https://github.com/redis/node-redis/pull/3072
* Hitless upgrades by @nkaradzhov in https://github.com/redis/node-redis/pull/3021

## New Contributors
* @watersRand made their first contribution in https://github.com/redis/node-redis/pull/3047

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.8.2...redis@5.9.0-beta.0
</Release>

<Release version="redis@5.8.2" date="August 20, 2025" published="2025-08-20T11:03:10.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.8.2">
## What's Changed
* Clustering sendCommand docs by @nfriedly in https://github.com/redis/node-redis/pull/3053
* Stop erasing `ErrorReply` stack by @dxg in https://github.com/redis/node-redis/pull/3050
* Call out sendCommand cluster difference in readme by @nfriedly in https://github.com/redis/node-redis/pull/3054
* fix(ts): xtrim threshold accepts string by @Eomm in https://github.com/redis/node-redis/pull/3058
* chore(tests): bump test container version 8.2.1-pre by @nkaradzhov in https://github.com/redis/node-redis/pull/3057
* fix(sentinel): properly pass reconnectStrategy by @nkaradzhov in https://github.com/redis/node-redis/pull/3063
* fix(search): properly decide if response has docs by @nkaradzhov in https://github.com/redis/node-redis/pull/3060

## New Contributors
* @nfriedly made their first contribution in https://github.com/redis/node-redis/pull/3053
* @dxg made their first contribution in https://github.com/redis/node-redis/pull/3050

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.8.1...redis@5.8.2
</Release>

<Release version="redis@5.8.1" date="August 13, 2025" published="2025-08-13T06:48:32.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.8.1">
## What's Changed
* chore(tests): bump test container version 8.2 by @nkaradzhov in https://github.com/redis/node-redis/pull/3046
* fix(commands): expire, expireAt are not readonly by @nkaradzhov in https://github.com/redis/node-redis/pull/3045
* fix: parse database from Redis URL by @PavelPashov in https://github.com/redis/node-redis/pull/3052


**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.8.0...redis@5.8.1
</Release>

<Release version="redis@5.8.0" date="August 5, 2025" published="2025-08-05T10:04:06.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.8.0">
## What's Changed
* Add support svs vamana index creation by @PavelPashov in https://github.com/redis/node-redis/pull/3025
* createClient url+tls invariant violation check by @dearlordylord in https://github.com/redis/node-redis/pull/2835

## New Contributors
* @dearlordylord made their first contribution in https://github.com/redis/node-redis/pull/2835

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.7.0...redis@5.8.0
</Release>

<Release version="redis@5.7.0" date="July 31, 2025" published="2025-07-31T13:44:52.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.7.0">
## What's Changed
* fix(pool): chain promise handlers to prevent unhandled rejections by @PavelPashov in https://github.com/redis/node-redis/pull/3035
* Add Redis 8.2 New Stream Commands by @PavelPashov in https://github.com/redis/node-redis/pull/3029
* DOC-5473 added time series doc examples by @andy-stark-redis in https://github.com/redis/node-redis/pull/3030
* DOC-5074 added vector set doc examples by @andy-stark-redis in https://github.com/redis/node-redis/pull/3031
* fix(scan): remove console.logs by @nkaradzhov in https://github.com/redis/node-redis/pull/3038
* feat: add EPSILON parameter support to VSIM command by @PavelPashov in https://github.com/redis/node-redis/pull/3041

## New Contributors
* @andy-stark-redis made their first contribution in https://github.com/redis/node-redis/pull/3030

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.6.1...redis@5.7.0
</Release>

<Release version="redis@5.6.1" date="July 23, 2025" published="2025-07-23T16:05:41.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.6.1">
## What's Changed
* docs: fix hyperlink for lua scripts, functions by @cloneot in https://github.com/redis/node-redis/pull/3015
* fix(search): adjust field types for ft.search by @nkaradzhov in https://github.com/redis/node-redis/pull/3018
* fix(client): make socket.host not required by @nkaradzhov in https://github.com/redis/node-redis/pull/3024
* fix(client): export RedisJSON type by @nkaradzhov in https://github.com/redis/node-redis/pull/3026
* Update doctests by @PavelPashov in https://github.com/redis/node-redis/pull/3020
* Add Redis transparent proxy test utilities by @bobymicroby in https://github.com/redis/node-redis/pull/3019

## New Contributors
* @cloneot made their first contribution in https://github.com/redis/node-redis/pull/3015

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.6.0...redis@5.6.1
</Release>

<Release version="redis@5.6.0" date="July 8, 2025" published="2025-07-08T11:48:23.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.6.0">
## What's Changed
* fix(client): make unstable cmds throw by @nkaradzhov in https://github.com/redis/node-redis/pull/2990
* chore(tests): bump test container version 8.0.2 by @nkaradzhov in https://github.com/redis/node-redis/pull/2997
* chore(actions): add action to close stale issues by @nkaradzhov in https://github.com/redis/node-redis/pull/3000
* Add Support For New Bitop Operations by @PavelPashov in https://github.com/redis/node-redis/pull/3001
    - The new operations are supported since [redis 8.2-M01](https://github.com/redis/redis/releases/tag/8.2-m01)
* Vector sets by @nkaradzhov in https://github.com/redis/node-redis/pull/2998
* fix(commands): sPopCount return Array<string> by @nkaradzhov in https://github.com/redis/node-redis/pull/3006
* fix: ensure the repo links in the README are functional on the website by @thegiantbeast in https://github.com/redis/node-redis/pull/3005
* fix(sentinel): propagate RESP option to clients by @nkaradzhov in https://github.com/redis/node-redis/pull/3011
* Add command timeout by @nkaradzhov and @florian-schunk in https://github.com/redis/node-redis/pull/3008
* chore(release): use deploy keys for release by @nkaradzhov in https://github.com/redis/node-redis/pull/3013

## New Contributors
* @PavelPashov made their first contribution in https://github.com/redis/node-redis/pull/3001
* @thegiantbeast made their first contribution in https://github.com/redis/node-redis/pull/3005
* @florian-schunk made their first contribution in https://github.com/redis/node-redis/pull/3008

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.5.6...redis@5.6.0
</Release>

<Release version="redis@5.5.6" date="June 6, 2025" published="2025-06-06T07:31:55.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.5.6">
> **Note:** During our efforts to automate the release process, we inadvertently bumped the version from `5.1.1` to `5.5.5`, skipping a few minor versions. No features or changes were actually released in those skipped versions — `5.5.6` is the first release since `5.1.1` with actual changes. We’re now back on track, and the automation is in place moving forward.

## What's Changed
* add jsdoc comments to command parsers by @bobymicroby in https://github.com/redis/node-redis/pull/2984
* Automate release by @nkaradzhov in https://github.com/redis/node-redis/pull/2977
* fix(search): align ft.search with server by @nkaradzhov in https://github.com/redis/node-redis/pull/2988
* docs: update SchemaFieldTypes to SCHEMA_FIELD_TYPE for redis@5.x by @23navi in https://github.com/redis/node-redis/pull/2992

## New Contributors
* @23navi made their first contribution in https://github.com/redis/node-redis/pull/2992

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.1.1...redis@5.5.6
</Release>

<Release version="redis@5.1.1" date="May 28, 2025" published="2025-05-28T13:41:42.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.1.1">
## What's Changed
* fix(handshake): ignore errors on client.setinfo by @nkaradzhov in https://github.com/redis/node-redis/pull/2969
* fix(cluster): replace native private with _ by @nkaradzhov in https://github.com/redis/node-redis/pull/2971
* fix(json): remove debug console.logs by @nkaradzhov in https://github.com/redis/node-redis/pull/2970
* Adapt legacy sentinel tests to use the new test utils by @htemelski in https://github.com/redis/node-redis/pull/2976
* docs(readme): replace relative GitHub links with absolute URLs by @aryamohanan in https://github.com/redis/node-redis/pull/2980

## New Contributors
* @aryamohanan made their first contribution in https://github.com/redis/node-redis/pull/2980

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.1.0...redis@5.1.1
</Release>

<Release version="redis@5.1.0" date="May 20, 2025" published="2025-05-20T13:34:58.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.1.0">
## What's Changed
* fix(client): add type annotations by @nkaradzhov in https://github.com/redis/node-redis/pull/2949
* Export CommandParser from client index file and fix doc by @orgads in https://github.com/redis/node-redis/pull/2945
* fix: fix various command import issues by @nkaradzhov in https://github.com/redis/node-redis/pull/2944
* update package-lock.json by @nkaradzhov in https://github.com/redis/node-redis/pull/2943
* fix `cluster.sUnsubscribe` - make `listener` optional by @Clsan in https://github.com/redis/node-redis/pull/2946
* Disable readOnly for cluster s/pubsub client by @htemelski in https://github.com/redis/node-redis/pull/2950
* Update Redis version to 8.0.1-pre by @bobymicroby in https://github.com/redis/node-redis/pull/2952
* revert the 'total' count logic in AGGREGATE response introduced in #2952 by @bobymicroby in https://github.com/redis/node-redis/pull/2955
* fix(client): cache subsequent clients by @nkaradzhov in https://github.com/redis/node-redis/pull/2963
* Client Side Caching by @bobymicroby in https://github.com/redis/node-redis/pull/2947
* Fix sentinel csc tests by @htemelski in https://github.com/redis/node-redis/pull/2966
* Introduce socketTimeout option by @nkaradzhov in https://github.com/redis/node-redis/pull/2965
* fix(client): bring disableClientInfo option back by @nkaradzhov in https://github.com/redis/node-redis/pull/2959
* issue/2956 - document disableClientInfo by @garyburgmann in https://github.com/redis/node-redis/pull/2957

## New Contributors
* @orgads made their first contribution in https://github.com/redis/node-redis/pull/2945
* @garyburgmann made their first contribution in https://github.com/redis/node-redis/pull/2957

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.0.1...redis@5.1.0


</Release>

<Release version="redis@5.0.1" date="May 5, 2025" published="2025-05-05T09:53:05.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.0.1">
## What's Changed
* doc: clarify connection pooling in createClient and fix broken link in isolationPoolOptions by @rickyssj2 in https://github.com/redis/node-redis/pull/2896
* Update CHANGELOG.md, fix typo(s) by @NicholasWilsonDEV in https://github.com/redis/node-redis/pull/2861
* fix: update package-lock.json by @nkaradzhov in https://github.com/redis/node-redis/pull/2939
* chore(examples): fix examples for v5 by @nkaradzhov in https://github.com/redis/node-redis/pull/2938
* Update packages/redis/README.md by @nkaradzhov in https://github.com/redis/node-redis/pull/2935

## New Contributors
* @rickyssj2 made their first contribution in https://github.com/redis/node-redis/pull/2896
* @NicholasWilsonDEV made their first contribution in https://github.com/redis/node-redis/pull/2861

**Full Changelog**: https://github.com/redis/node-redis/compare/redis@5.0.0...redis@5.0.1
</Release>

<Release version="redis@5.0.0" date="April 30, 2025" published="2025-04-30T14:58:08.000Z" url="https://github.com/redis/node-redis/releases/tag/redis%405.0.0">
# Redis Node.js Client Release Notes 

## 🚀 New Features

* EntraID added support for azure identity by @bobymicroby in https://github.com/redis/node-redis/pull/2901
* Added HGETEX, HSETEX, HGETDEL hash field expiration commands by @htemelski in https://github.com/redis/node-redis/pull/2907
* feat(auth): add Entra ID identity provider integration for Redis client authentication by @bobymicroby in https://github.com/redis/node-redis/pull/2877
* **RESP3 support** : Node Redis v5 adds support for [RESP3](https://github.com/redis/redis-specifications/blob/master/protocol/RESP3.md), the new Redis serialization protocol introduced in Redis 6.0. RESP3 offers richer data types and improved type handling compared to RESP2
* **Sentinel**: Redis Sentinel provides high availability for Redis through monitoring, automatic failover, and client-side support. 
* **Type mapping**: Version five allows you configuring the type mapping. Responses can be mapped to objects, arrays, or maps. Likewise, numeric formats can be mapped to either strings or numbers.

## 🛠️ Improvements

* Infer the cluster pubsub client read only mode from the node type by @htemelski in https://github.com/redis/node-redis/pull/2930
* ft.create now accepts a union type for the `TYPE` field which includes the newly supported integer8 and uinteger8 types by @htemelski in https://github.com/redis/node-redis/pull/2911
* new "transform arguments" API for better key and metadata extraction by @sjpotter in https://github.com/redis/node-redis/pull/2733
* fix sentinel generics by @sjpotter in https://github.com/redis/node-redis/pull/2859
* Fix creation of cluster client again by @soccermax in https://github.com/redis/node-redis/pull/2870
* Fix cluster-slots discover race condition again by @jjsimps in https://github.com/redis/node-redis/pull/2867
* Update tests.yml by @ozennou in https://github.com/redis/node-redis/pull/2887
* **Typing**: Multi-commands are now correctly typed.
* **API changes**: Several API changes are documented in https://github.com/redis/node-redis/blob/master/docs/v4-to-v5.md

## BREAKING CHANGES

* Removed graph module by @bobymicroby in https://github.com/redis/node-redis/pull/2897
* 'FT.PROFILE' now returns untyped (as-is) response by @bobymicroby in https://github.com/redis/node-redis/pull/2893
* Introduced a client-side default dialect for Redis' search and query capabilities. By default, the client now overrides the server-side dialect with version 2, automatically appending DIALECT 2 to commands like FT.AGGREGATE and FT.SEARCH.
**Important**: Be aware that the query dialect may impact the results returned. If needed, you can revert to a different dialect version by passing an option to the search commands. You can find further details in the [query dialect documentation](https://redis.io/docs/latest/develop/interact/search-and-query/advanced-concepts/dialects/). by @htemelski in https://github.com/redis/node-redis/pull/2895
```javascript
client.ft.search('index', '*', {DIALECT: 1})
```

* **Client Configuration:** 
  - `keepAlive` option has been split into `keepAlive` (boolean) and `keepAliveInitialDelay` (number)
  - Legacy mode is now accessed via `.legacy()` method instead of `{ legacyMode: true }`

* **Command Options:**
  - New API uses "proxy client" to store options instead of passing them directly to commands
  - Example: `client.withCommandOptions({ ... }).get('key')` instead of `client.get(client.commandOptions({ ... }), 'key')`

* **Connection Management:**
  - `client.QUIT/quit()` is replaced by `client.close()`
  - `client.disconnect()` has been renamed to `client.destroy()`

* **Scan Iterators:**
  - Now yield collections of items instead of individual items
  - Example: `for await (const keys of client.scanIterator()) { ... }` returns arrays of keys

* **Isolation Pool:**
  - Superseded by `RedisClientPool` for better separation of concerns

* **Cluster Multi:**
  - `cluster.multi().addCommand()` now requires `isReadonly` parameter for replica execution support

* **Boolean to Number Types:**
  - Many commands now return numbers (0/1) instead of booleans for better Redis protocol alignment
  - Affects: COPY, EXPIRE, EXPIREAT, HEXISTS, HSETNX, MOVE, PEXPIRE, PEXPIREAT, PFADD, RENAMENX, SETNX, etc.

* **API Changes:**
  - Many commands have updated parameter names and return types
  - Enums replaced with constants (e.g., `RedisFlushModes` → `REDIS_FLUSH_MODES`)
  - Module-specific commands (JSON, Search, Time Series) have parameter restructuring

Full migration details: https://github.com/redis/node-redis/blob/master/docs/v4-to-v5.md

## New Contributors
* @ozennou made their first contribution in https://github.com/redis/node-redis/pull/2887
* @bobymicroby made their first contribution in https://github.com/redis/node-redis/pull/2877
* @htemelski made their first contribution in https://github.com/redis/node-redis/pull/2895
* @spavlov6 made their first contribution in https://github.com/redis/node-redis/pull/2915
* @dhensby made their first contribution in https://github.com/redis/node-redis/pull/2920
* @nkaradzhov made their first contribution in https://github.com/redis/node-redis/pull/2929
</Release>

<Pagination page="1" total-pages="5" total-items="100" next="https://releases.sh/redis/node-redis.md?page=2" />
