1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-03 04:01:40 +03:00

12 Commits

Author SHA1 Message Date
9ea260f0f9 fix(handshake): ignore errors on client.setinfo (#2969)
As per the documentation (https://redis.io/docs/latest/commands/client-setinfo):

Client libraries are expected to pipeline this command after authentication on all connections and ignore failures since they could be connected to an older version that doesn't support them.

Turns out different versions of redis server return different errors, so its better to catch all.

fixes #2968
2025-05-21 11:38:29 +03:00
4a5f879ec9 fix(client): bring disableClientInfo option back (#2959)
* fix(client): bring disableClientInfo option back

It disappeared in v5

fixes #2958
2025-05-20 15:15:09 +03:00
f3d1d3352e feat(client): expose socketTimeout option (#2965)
The maximum duration (in milliseconds) that the socket can remain idle (i.e., with no data sent or received) before being automatically closed. Default reconnectionStrategy will ignore the new SocketTimeoutError, but users are allowed to have custom strategies wich handle those errors in different ways
2025-05-20 14:28:15 +03:00
b2d35c5286 V5 bringing RESP3, Sentinel and TypeMapping to node-redis
RESP3 Support
   - Some commands responses in RESP3 aren't stable yet and therefore return an "untyped" ReplyUnion.
 
Sentinel

TypeMapping

Correctly types Multi commands

Note: some API changes to be further documented in v4-to-v5.md
2024-10-15 17:46:52 +03:00
f4680f0849 fix #2665 - handle errors in multi/pipeline replies (#2666)
* fix #2665 - handle errors in multi/pipeline replies

* fix MultiErrorReply replies type

* run tests on all versions, remove console.log, fix bug

* add errors iterator helper

* test `.errors()` as well
2023-12-18 15:15:21 -05:00
e5532706cf fix #2205 - reject commands in connect phase when disableOfflineQueue is true 2022-11-16 16:27:36 -05:00
23b65133c9 New RESP2 parser (#1899)
* parser

* a new RESP parser :)

* clean code

* fix simple string and bulk string cursor

* performance improvements

* change typescript compiler target

* do not use stream.Transform

* Update decoder.ts

* fix for 1d09acb

* improve integer performance

* revert 1d09acb

* improve RESP2 decoder performance

* improve performance

* improve encode performance

* remove unused import

* upgrade benchmark deps

* clean code

* fix socket error handlers, reset parser on error

* fix #2080 - reset pubSubState on socket error

* reset decoder on socket error

* fix pubsub

* fix "RedisSocketInitiator"

* fix returnStringsAsBuffers

* fix merge
2022-04-25 08:24:33 -04:00
e6de453fdd fix socket error handlers (#2092)
* fix socket error handlers, reset parser on error

* fix #2080 - reset pubSubState on socket error

* fix pubsub

* fix "RedisSocketInitiator"
2022-04-25 05:47:51 -04:00
7e2059b1cf ref #1789 - reject "hanging" promises when closing connection 2022-01-03 16:24:59 -05:00
2203be5fbd add test for RootNodesUnavailableError 2021-12-30 18:32:48 -05:00
b70aa4e470 fix for e11256854e - should not retry connecting if failed due to wrong auth 2021-12-09 02:48:10 -05:00
3eb99dbe83 use dockers for tests, use npm workspaces, add rejson & redisearch modules, fix some bugs 2021-11-08 19:21:15 -05:00