Update dependency redis to v4
This MR contains the following updates:
Package | Change | Age | Adoption | Passing | Confidence |
---|---|---|---|---|---|
redis | 0.12.1 -> 4.6.7 |
Release Notes
redis/node-redis (redis)
v4.6.7
Enhancements
- upgrade
@redis/client
from1.5.7
to1.5.8
- upgrade
@redis/serch
from1.1.2
to1.1.3
v4.6.6
Enhancements
- upgrade
@redis/client
from1.5.6
to1.5.7
v4.6.5
Enhancements
- upgrade
@redis/client
from1.5.5
to1.5.6
v4.6.4
Enhancements
- upgrade
@redis/client
from1.5.4
to1.5.5
v4.6.3
Enhancements
- upgrade
@redis/client
from1.5.3
to1.5.4
v4.6.2
Enhancements
- upgrade
@redis/client
from1.5.2
to1.5.3
v4.6.1
Enhancements
- upgrade
@redis/client
from1.5.0
to1.5.2
v4.6.0
Enhancements
- upgrade
@redis/client
from1.4.2
to1.5.0
- upgrade
@redis/bloom
from1.1.0
to1.2.0
- upgrade
@redis/search
from1.1.0
to1.1.1
v4.5.1
Enhancements
- upgrade
@redis/client
v4.5.0
Enhancements
- upgrade
@redis/client
- upgrade
@redis/time-series
v4.4.0
Enhancements
- #2285-Add-example-scripts-hyperloglog - Added hyperloglog examples to… by @ade1705 in https://github.com/redis/node-redis/pull/2289
- #2287 Add example scripts showing pub/sub usage. by @con-mark in https://github.com/redis/node-redis/pull/2288
- Connecting to cluster example by @varadkarpe in https://github.com/redis/node-redis/pull/2298
- Adds transaction with watched key example script. by @sailingwithsandeep in https://github.com/redis/node-redis/pull/2297
- Fixes typo Redis Search -> RediSearch by @simonprickett in https://github.com/redis/node-redis/pull/2278
- Fixed redis -> Redis in a couple places. by @simonprickett in https://github.com/redis/node-redis/pull/2279
- Update search-json.js by @leibale in https://github.com/redis/node-redis/pull/2317
- test with node 19 instead of 17 by @leibale in https://github.com/redis/node-redis/pull/2316
- disconnect in basic example by @reviewher in https://github.com/redis/node-redis/pull/2235
- upgrade
@redis/client
- upgrade
@redis/bloom
- upgrade
@redis/graph
v4.3.1
Enhancements
- Upgrade
@redis/json
v4.3.0
Enhancements
- Upgrade
@redis/client
- Upgrade
@redis/search
v4.2.0
Enhancements
- Upgrade
@redis/client
v4.1.1
Enhancements
- Upgrade
@redis/client
v4.1.0
Enhancements
- Upgrade
@redis/bloom
- Upgrade
@redis/client
- Upgrade
@redis/graph
- Upgrade
@redis/json
- Upgrade
@redis/search
- Upgrade
@redis/time-series
v4.0.6
- Upgrade
@node-redis/client
- Upgrade
@node-redis/search
v4.0.5
v4.0.4
- Upgrade
@node-redis/client
- Upgrade
@node-redis/search
- Upgrade
@node-redis/time-series
v4.0.3
- First release with
@node-redis/graph
- Upgrade to
@node-redis/client@1.0.3
v4.0.2
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
Buffer
s - Enhance
ASK
andMOVED
errors handler
v4.0.1
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
) inlegacyMode
- Fix PubSub resubscribe (#1764)
- Fix
RedisSocketOptions
type (#1741)
Enhancements
- Add support for
number
s andBuffer
s inHSET
(#1738 #1739) - Export
RedisClientType
,RedisClusterType
and some more types (#1673) - First release of
@node-redis/time-series
v4.0.0
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 tocreateClient
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
Fixes
- Exclude unnecessary files from tarball
v3.1.1
Enhancements
- Upgrade node and dependencies
Fixes
- Fix a potential exponential regex in monitor mode
v3.1.0
Enhancements
- Upgrade node and dependencies and redis-commands to support Redis 6
- Add support for Redis 6
auth pass [user]
v3.0.2
v3.0.1
v3.0.0
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
withdenque
, which brings performance improvements - Add timestamps to debug traces
- Add
socket_initial_delay
option forsocket.setKeepAlive
(#1396) - Add support for
rediss
protocol in url (#1282)
v2.8.0
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
Bugfixes
- Fixed monitor mode not working in combination with IPv6 (2.6.0 regression)
v2.7.0
Features
- All returned errors are from now a subclass of
RedisError
.
Bugfixes
- Fixed rename_commands not accepting
null
as value - Fixed
AbortError
s andAggregateError
s not showing the error message in the stack trace
v2.6.5
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
Bugfixes
- Fixed monitor mode not working in combination with IPv6, sockets or lua scripts (2.6.0 regression)
v2.6.3
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
Bugfixes
- Fixed individual callbacks of a transaction not being called (2.6.0 regression)
v2.6.1
Bugfixes
- Fixed invalid function name being exported
v2.6.0
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
Bugfixes
- Revert throwing on invalid data types and print a warning instead
v2.5.2
Bugfixes
- Fixed breaking changes against Redis 2.4 introduced in 2.5.0 / 2.5.1
v2.5.1
Bugfixes
- Fixed info command not working anymore with optional section argument
v2.5.0
Same changelog as the pre-release
v2.4.2
Bugfixes
- Fixed not emitting ready after reconnect with disable_resubscribing (@maxgalbu)
v2.4.1
Bugfixes
- Fixed a js parser regression introduced in 2.4.0 (@BridgeAR)
v2.4.0
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
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
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
Bugfixes
- Fixed undefined options passed to a new instance not accepted (possible with individual .createClient functions) (@BridgeAR)
v2.2.4
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
Bugfixes
- Fixed multi not being executed on Node 0.10.x if node_redis not yet ready (@BridgeAR)
v2.2.2
Bugfixes
- Fixed regular commands not being executed after a .multi until .exec was called (@BridgeAR)
v2.2.1
No code change
v2.2.0
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
- Added rename_commands options to handle renamed commands from the redis config (@digmxl & @BridgeAR)
- Added disable_resubscribing option to prevent a client from resubscribing after reconnecting (@BridgeAR)
- Increased performance (@BridgeAR)
- exchanging built in queue with @petkaantonov's double-ended queue
- prevent polymorphism
- optimize statements
- Added .batch command, similar to .multi but without transaction (@BridgeAR)
- Improved pipelining to minimize the RTT further (@BridgeAR)
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
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
Bugfixes:
- Fix argument mutation while using the array notation in combination with keys / callbacks (#866). (@BridgeAR)
v2.0.0
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
- Huge issue and pull-request cleanup. Thanks Blain! (@blainsmith)
- #658 Client now parses URL-format connection strings (e.g., redis://foo:pass@127.0.0.1:8080) (@kuwabarahiroshi)
- #749 Fix reconnection bug when client is in monitoring mode (@danielbprice)
- #786 Refactor createClient. Fixes #651 (@BridgeAR)
- #793 Refactor tests and improve test coverage (@erinspice, @bcoe)
- #733 Fixes detect_buffers functionality in the context of exec. Fixes #732, #263 (@raydog)
- #785 Tiny speedup by using 'use strict' (@BridgeAR)
- Fix extraneous error output due to pubsub tests (Mikael Kohlmyr)
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.