Ioredis Versions Save

🚀 A robust, performance-focused, and full-featured Redis client for Node.js.

v5.2.1

1 year ago

5.2.1 (2022-07-16)

Bug Fixes

  • always allow selecting a new node for cluster mode subscriptions when the current one fails (#1589) (1c8cb85)

v5.2.0

1 year ago

5.2.0 (2022-07-11)

Features

v5.1.0

1 year ago

5.1.0 (2022-06-25)

Features

  • add command typings for Redis 7.0.2. Also fix a typing issue for hgetallBuffer. (#1611) (fa77c07)

v5.0.6

1 year ago

5.0.6 (2022-05-31)

Bug Fixes

v5.0.5

2 years ago

5.0.5 (2022-05-17)

Bug Fixes

  • improve typing for redis.multi (#1580) (f9f875b)
  • send correct command during auto-pipelining of .call() operations (#1579) (e41c3dc)

v5.0.4

2 years ago

5.0.4 (2022-04-09)

Bug Fixes

  • Expose ChainableCommander and other types (#1560) (df04dd8)

v5.0.3

2 years ago

5.0.3 (2022-03-31)

Bug Fixes

  • add named exports to keep compatible with @types/ioredis (#1552) (a89a900)
  • Fix failover detector with sentinel and tls streams (ac00a00)
  • handle NOPERM error for monitor (93b873d), closes #1498
  • Hook up the keepAlive after a successful connect (14f03a4), closes #1339

v5.0.2

2 years ago

5.0.2 (2022-03-30)

Bug Fixes

  • allow option maxRetriesPerRequest to be null (#1553) (d62a808), closes #1550
  • support TypeScript interface as parameters of hmset and mset (#1545) (3444791), closes #1536

v5.0.1

2 years ago

5.0.1 (2022-03-26)

Bug Fixes

  • improve typing compatibility with @types/ioredis (#1542) (3bf300a)

v5.0.0

2 years ago

5.0.0 (2022-03-26)

In the update of v5, we've made ioredis even more stable and developer-friendly while minimizing the number of breaking changes, so you can spend more time enjoying your life 😄.

Please refer to the guideline to upgrade your projects: 🚀 Upgrading from v4 to v5.

Bug Fixes

  • add @ioredis/interface-generator to dev deps (aa3b3e9)
  • add missing declaration for callBuffer (08c9072)
  • add the missing typing for Redis#call() (747dd30)
  • better support for CJS importing (687d3eb)
  • disable slotsRefreshInterval by default (370fa62)
  • Fix the NOSCRIPT behavior when using pipelines (bc1b168)
  • improve typing for auto pipelining (4e8c567)
  • improve typing for pipeline (d18f3fe)
  • keyPrefix should work with Buffer (6942cec), closes #1486
  • make fields private when possible (d5c2f20)
  • parameter declaration of Redis#duplicate (a29d9c4)
  • pipeline fails when cluster is not ready (af60bb0), closes #1460
  • remove dropBufferSupport option (04e68ac)
  • remove unused Command#isCustomCommand (46ade6b)
  • rename interfaces by dropping prefix I (d1d9dba)
  • Reset loaded script hashes to force a reload of scripts after reconnect of redis (60c2af9)
  • support passing keyPrefix via redisOptions (6b0dc1e)

Features

  • add @since to method comments (13eff8e)
  • add declarations for methods (1e10c95)
  • add tests for cluster (1eba58b)
  • always parse username passed via URI (c6f41f6)
  • drop support of Node.js 10 (f9a5071)
  • drop support of third-party Promise libraries (2001ec6)
  • expose official declarations (7a436b1)
  • improve typings for cluster (06782e6)
  • improve typings for pipeline (334242b)
  • improve typings for smismember (487c3a0)
  • improve typings for transformers (94c1e24)
  • improve typings for xread (96cc335)
  • Pipeline-based script loading (8df6ee2)
  • prepare v5 stable release (#1538) (fe32ce7)
  • Refactor code with modern settings (a8ffa80)
  • skip ready check on NOPERM error (b530a0b), closes #1293
  • support commands added in Redis v7 (53ca412)
  • support defining custom commands via constructor options (f293b97)
  • support Redis Functions introduced in Redis 7.0 (32eb381)

BREAKING CHANGES

  • slotsRefreshInterval is disabled by default, previously, the default value was 5000.
  • allowUsernameInURI is removed and ioredis will always use the username passed via URI. Previously, the username part in new Redis("redis://username:[email protected]:6380/4") was ignored unless allowUsernameInURI is specified: new Redis("redis://username:[email protected]:6380/4?allowUsernameInURI=true"). Now, if you don't want to send username to Redis, just leave the username part empty: new Redis("redis://:[email protected]:6380/4")
  • Redis#serverInfo is removed. This field is never documented so you very likely have never used it.
  • Support for third-party Promise libraries is dropped. Related methods (exports.Promise = require('bluebird')) are kept but they don't take any effects. The native Promise will always be used.
  • We now require Node.js v12 or newer.
  • Redis can't be called as a function anymore as it's now a class. Please change Redis() to new Redis(). Note that Redis() was already deprecated in the previous version.