Skip to content

Update dependency redis to v4

Renovate Bot requested to merge renovate/redis-4.x into master

This MR contains the following updates:

Package Change Age Adoption Passing Confidence
redis 0.12.1 -> 4.6.7 age adoption passing confidence

Release Notes

redis/node-redis (redis)

v4.6.7

Compare Source

Enhancements

  • upgrade @redis/client from 1.5.7 to 1.5.8
  • upgrade @redis/serch from 1.1.2 to 1.1.3

v4.6.6

Compare Source

Enhancements

  • upgrade @redis/client from 1.5.6 to 1.5.7

v4.6.5

Compare Source

Enhancements

  • upgrade @redis/client from 1.5.5 to 1.5.6

v4.6.4

Compare Source

Enhancements

  • upgrade @redis/client from 1.5.4 to 1.5.5

v4.6.3

Compare Source

Enhancements

  • upgrade @redis/client from 1.5.3 to 1.5.4

v4.6.2

Compare Source

Enhancements

  • upgrade @redis/client from 1.5.2 to 1.5.3

v4.6.1

Compare Source

Enhancements

  • upgrade @redis/client from 1.5.0 to 1.5.2

v4.6.0

Compare Source

Enhancements

  • upgrade @redis/client from 1.4.2 to 1.5.0
  • upgrade @redis/bloom from 1.1.0 to 1.2.0
  • upgrade @redis/search from 1.1.0 to 1.1.1

v4.5.1

Compare Source

Enhancements

  • upgrade @redis/client

v4.5.0

Compare Source

Enhancements

  • upgrade @redis/client
  • upgrade @redis/time-series

v4.4.0

Compare Source

Enhancements

v4.3.1

Compare Source

Enhancements

  • Upgrade @redis/json

v4.3.0

Compare Source

Enhancements

  • Upgrade @redis/client
  • Upgrade @redis/search

v4.2.0

Compare Source

Enhancements

  • Upgrade @redis/client

v4.1.1

Compare Source

Enhancements

  • Upgrade @redis/client

v4.1.0

Compare Source

Enhancements

  • Upgrade @redis/bloom
  • Upgrade @redis/client
  • Upgrade @redis/graph
  • Upgrade @redis/json
  • Upgrade @redis/search
  • Upgrade @redis/time-series

v4.0.6

Compare Source

  • Upgrade @node-redis/client
  • Upgrade @node-redis/search

v4.0.5

Compare Source

v4.0.4

Compare Source

  • Upgrade @node-redis/client
  • Upgrade @node-redis/search
  • Upgrade @node-redis/time-series

v4.0.3

Compare Source

  • First release with @node-redis/graph
  • Upgrade to @node-redis/client@1.0.3

v4.0.2

Compare Source

Fixes
  • Fix v4 commands in legacy mode (#​1820)
  • Fix EXISTS command reply (#​1819)
  • Fix handler for "redis:invalidate" messages (#​1798)
  • Fix "SEPARATOR" typo in RediSearch (#​1823)
Enhancements
  • First release of @node-redis/bloom
  • Add support for Buffers
  • Enhance ASK and MOVED errors handler

v4.0.1

Compare Source

Fixes
  • Fix NOAUTH error when using authentication & database (#​1681)
  • Allow to .quit() in PubSub mode (#​1766)
  • Add an option to configurate name on a client (#​1758)
  • Lowercase commands (client.hset) in legacyMode
  • Fix PubSub resubscribe (#​1764)
  • Fix RedisSocketOptions type (#​1741)
Enhancements
  • Add support for numbers and Buffers in HSET (#​1738 #​1739)
  • Export RedisClientType, RedisClusterType and some more types (#​1673)
  • First release of @node-redis/time-series

v4.0.0

Compare Source

This version is a major change and refactor, adding modern JavaScript capabilities and multiple breaking changes. See the migration guide for tips on how to upgrade.

Breaking Changes
  • All functions return Promises by default
  • Dropped support for Node.js 10.x, the minimum supported Node.js version is now 12.x
  • createClient takes new and different arguments
  • The prefix, rename_commands configuration options to createClient have been removed
  • The enable_offline_queue configuration option is removed, executing commands on a closed client (without calling .connect() or after calling .disconnect()) will reject immediately
  • Login credentials are no longer saved when using .auth() directly
Features
  • Added support for Promises
  • Added built-in TypeScript declaration files enabling code completion
  • Added support for clustering
  • Added idiomatic arguments and responses to Redis commands
  • Added full support for Lua Scripts
  • Added support for SCAN iterators
  • Added the ability to extend Node Redis with Redis Module commands

v3.1.2

Compare Source

Fixes
  • Exclude unnecessary files from tarball

v3.1.1

Compare Source

Enhancements
  • Upgrade node and dependencies
Fixes
  • Fix a potential exponential regex in monitor mode

v3.1.0

Compare Source

Enhancements
  • Upgrade node and dependencies and redis-commands to support Redis 6
  • Add support for Redis 6 auth pass [user]

v3.0.2

Compare Source

v3.0.1

Compare Source

v3.0.0

Compare Source

This version is mainly a release to distribute all the unreleased changes on master since 2017 and additionally removes a lot of old deprecated features and old internals in preparation for an upcoming modernization refactor (v4).

Breaking Changes
  • Dropped support for Node.js < 6
  • Dropped support for hiredis (no longer required)
  • Removed previously deprecated drain event
  • Removed previously deprecated idle event
  • Removed previously deprecated parser option
  • Removed previously deprecated max_delay option
  • Removed previously deprecated max_attempts option
  • Removed previously deprecated socket_no_delay option
Bug Fixes
  • Removed development files from published package (#​1370)
  • Duplicate function now allows db param to be passed (#​1311)
Features
  • Upgraded to latest redis-commands package
  • Upgraded to latest redis-parser package, v3.0.0, which brings performance improvements
  • Replaced double-ended-queue with denque, which brings performance improvements
  • Add timestamps to debug traces
  • Add socket_initial_delay option for socket.setKeepAlive (#​1396)
  • Add support for rediss protocol in url (#​1282)

v2.8.0

Compare Source

Features

  • Accept UPPER_CASE commands in send_command
  • Add arbitrary commands to the prototype by using Redis.addCommand(name)

Bugfixes

  • Fixed not always copying subscribe unsubscribe arguments
  • Fixed emitting internal errors while reconnecting with auth
  • Fixed crashing with invalid url option

v2.7.1

Compare Source

Bugfixes

  • Fixed monitor mode not working in combination with IPv6 (2.6.0 regression)

v2.7.0

Compare Source

Features

  • All returned errors are from now a subclass of RedisError.

Bugfixes

  • Fixed rename_commands not accepting null as value
  • Fixed AbortErrors and AggregateErrors not showing the error message in the stack trace

v2.6.5

Compare Source

Bugfixes

  • Fixed parser not being reset in case the redis connection closed ASAP for overcoming of output buffer limits
  • Fixed parser reset if (p)message_buffer listener is attached

v2.6.4

Compare Source

Bugfixes

  • Fixed monitor mode not working in combination with IPv6, sockets or lua scripts (2.6.0 regression)

v2.6.3

Compare Source

Bugfixes

  • Do not change the tls setting to camel_case
  • Fix domain handling in combination with the offline queue (2.5.3 regression)

v2.6.2

Compare Source

Bugfixes

  • Fixed individual callbacks of a transaction not being called (2.6.0 regression)

v2.6.1

Compare Source

Bugfixes

  • Fixed invalid function name being exported

v2.6.0

Compare Source

In addition to the pre-releases the following changes exist in v.2.6.0:

Features

  • Updated redis-parser dependency (changelog)
  • The JS parser is from now on the new default as it is a lot faster than the hiredis parser
  • This is no BC as there is no changed behavior for the user at all but just a performance improvement. Explicitly requireing the Hiredis parser is still possible.
  • Added name property to all Redis functions (Node.js >= 4.0)
  • Improved stack traces in development and debug mode

Bugfixes

  • Reverted support for __proto__ (v.2.6.0-2) to prevent and breaking change

Deprecations

  • The parser option is deprecated and should be removed. The built-in Javascript parser is a lot faster than the hiredis parser and has more features

v2.5.3

Compare Source

Bugfixes

  • Revert throwing on invalid data types and print a warning instead

v2.5.2

Compare Source

Bugfixes

  • Fixed breaking changes against Redis 2.4 introduced in 2.5.0 / 2.5.1

v2.5.1

Compare Source

Bugfixes

  • Fixed info command not working anymore with optional section argument

v2.5.0

Compare Source

Same changelog as the pre-release

v2.4.2

Compare Source

Bugfixes

  • Fixed not emitting ready after reconnect with disable_resubscribing (@​maxgalbu)

v2.4.1

Compare Source

Bugfixes

  • Fixed a js parser regression introduced in 2.4.0 (@​BridgeAR)

v2.4.0

Compare Source

Features

  • Added tls option to initiate a connection to a redis server behind a TLS proxy. Thanks (@​paddybyers)
  • Added prefix option to auto key prefix any command with the provided prefix (@​luin & @​BridgeAR)
  • Added url option to pass the connection url with the options object (@​BridgeAR)
  • Added client.duplicate([options]) to duplicate the current client and return a new one with the same options (@​BridgeAR)
  • Improve performance by up to 20% on almost all use cases (@​BridgeAR)

Bugfixes

  • Fixed js parser handling big values slow (@​BridgeAR)
  • The speed is now on par with the hiredis parser.

v2.3.1

Compare Source

Bugfixes

  • Fixed saving buffers with charsets other than utf-8 while using multi (@​BridgeAR)
  • Fixed js parser handling big values very slow (@​BridgeAR)
  • The speed is up to ~500% faster than before but still up to ~50% slower than the hiredis parser.

v2.3.0

Compare Source

Features

  • Improve speed further for: (@​BridgeAR)
  • saving big strings (up to +300%)
  • using .multi / .batch (up to +50% / on Node.js 0.10.x +300%)
  • saving small buffers
  • Increased coverage to 99% (@​BridgeAR)
  • Refactored manual backpressure control (@​BridgeAR)
  • Removed the high water mark and low water mark. Such a mechanism should be implemented by a user instead
  • The drain event is from now on only emitted if the stream really had to buffer
  • Reduced the default connect_timeout to be one hour instead of 24h (@​BridgeAR)
  • Added .path to redis.createClient(options); (@​BridgeAR)
  • Ignore info command, if not available on server (@​ivanB1975)

Bugfixes

  • Fixed a js parser error that could result in a timeout (@​BridgeAR)
  • Fixed .multi / .batch used with Node.js 0.10.x not working properly after a reconnect (@​BridgeAR)
  • Fixed fired but not yet returned commands not being rejected after a connection loss (@​BridgeAR)
  • Fixed connect_timeout not respected if no connection has ever been established (@​gagle & @​benjie)
  • Fixed return_buffers in pub sub mode (@​komachi)

v2.2.5

Compare Source

Bugfixes

  • Fixed undefined options passed to a new instance not accepted (possible with individual .createClient functions) (@​BridgeAR)

v2.2.4

Compare Source

Bugfixes

  • Fixed unspecific error message for unresolvable commands (@​BridgeAR)
  • Fixed not allowed command error in pubsub mode not being returned in a provided callback (@​BridgeAR)
  • Fixed to many commands forbidden in pub sub mode (@​BridgeAR)
  • Fixed mutation of the arguments array passed to .multi / .batch constructor (@​BridgeAR)
  • Fixed mutation of the options object passed to createClient (@​BridgeAR)
  • Fixed error callback in .multi not called if connection in broken mode (@​BridgeAR)

v2.2.3

Compare Source

Bugfixes

  • Fixed multi not being executed on Node 0.10.x if node_redis not yet ready (@​BridgeAR)

v2.2.2

Compare Source

Bugfixes

  • Fixed regular commands not being executed after a .multi until .exec was called (@​BridgeAR)

v2.2.1

Compare Source

No code change

v2.2.0

Compare Source

The peregrino falcon is the fasted bird on earth and this is what this release is all about: Increased performance for heavy usage by up to 400% [sic!] and increased overall performance for any command as well. Please check the benchmarks in the README.md for further details.

Features

Bugfixes

  • Fixed a javascript parser regression introduced in 2.0 that could result in timeouts on high load. (@​BridgeAR)
  • I was not able to write a regression test for this, since the error seems to only occur under heavy load with special conditions. So please have a look for timeouts with the js parser, if you use it and report all issues and switch to the hiredis parser in the meanwhile. If you're able to come up with a reproducable test case, this would be even better :)
  • Fixed should_buffer boolean for .exec, .select and .auth commands not being returned and fix a couple special conditions (@​BridgeAR)

If you do not rely on transactions but want to reduce the RTT you can use .batch from now on. It'll behave just the same as .multi but it does not have any transaction and therefor won't roll back any failed commands.
Both .multi and .batch are from now on going to cache the commands and release them while calling .exec.

Please consider using .batch instead of looping through a lot of commands one by one. This will significantly improve your performance.

Here are some stats compared to ioredis 1.9.1 (Lenovo T450s i7-5600U):

                  simple set
      82,496 op/s » ioredis
     112,617 op/s » node_redis

                  simple get
      82,015 op/s » ioredis
     105,701 op/s » node_redis

                  simple get with pipeline
      10,233 op/s » ioredis
      26,541 op/s » node_redis (using .batch)

                  lrange 100
       7,321 op/s » ioredis
      26,155 op/s » node_redis

                  publish
      90,524 op/s » ioredis
     112,823 op/s » node_redis

                  subscribe
      43,783 op/s » ioredis
      61,889 op/s » node_redis

To conclude: we can proudly say that node_redis is very likely outperforming any other node redis client.

Known issues

  • The pub sub system has some flaws and those will be addressed in the next minor release

v2.1.0

Compare Source

Features:

  • Addded optional flush parameter to .end. If set to true, commands fired after using .end are going to be rejected instead of being ignored. (@​crispy1989)
  • Addded: host and port can now be provided in a single options object. E.g. redis.createClient({ host: 'localhost', port: 1337, max_attempts: 5 }); (@​BridgeAR)
  • Speedup common cases (@​BridgeAR)

Bugfixes:

  • Fix argument mutation while using the array notation with the multi constructor (@​BridgeAR)
  • Fix multi.hmset key not being type converted if used with an object and key not being a string (@​BridgeAR)
  • Fix parser errors not being catched properly (@​BridgeAR)
  • Fix a crash that could occur if a redis server does not return the info command as usual #​541 (@​BridgeAR)
  • Explicitly passing undefined as a callback statement will work again. E.g. client.publish('channel', 'message', undefined); (@​BridgeAR)

v2.0.1

Compare Source

Bugfixes:

  • Fix argument mutation while using the array notation in combination with keys / callbacks (#​866). (@​BridgeAR)

v2.0.0

Compare Source

This is the biggest release that node_redis had since it was released in 2010. A long list of outstanding bugs has been fixed, so we are very happy to present you redis 2.0 and we highly recommend updating as soon as possible.

v1.0.0

Compare Source


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, check this box

This MR has been generated by Renovate Bot.

Edited by Renovate Bot

Merge request reports