Ruben Bridgewater
dffa8a6aee
Fix parser being reset in case (p)message_buffer is attached
...
without the parser set to return buffers.
This might result in corrupt data if the listener is attached
while the parser holds partial data.
2017-01-15 13:20:00 +01:00
Ruben Bridgewater
b9540d4965
Fix monitor mode not working with IPv6, sockets or lua scripts
...
Fixes #1189
Fixes #1037
2017-01-12 23:51:41 +01:00
Ruben Bridgewater
41d26dc0c8
Fix domain handling and tls camelCase settings
...
Fixes #1106
Fixes #1103
Closes #1104
2016-10-31 20:54:13 +01:00
Ruben Bridgewater
c1f7755142
Keep monitoring mode if once activated and use internal function for select and monitor while connecting
2016-05-31 15:11:18 +02:00
Ruben Bridgewater
2c6e1e0cc0
Improve error stacks in development and debug mode
2016-05-29 01:38:34 +02:00
Ruben Bridgewater
8b6f2dd35e
Refactor command parsing
2016-05-29 01:38:34 +02:00
Ruben Bridgewater
899f9b7fe4
Fix hungry developer typo
2016-05-29 01:38:34 +02:00
Ruben Bridgewater
fe00bf271d
Update redis-parser to v.2.0.0
...
Update all code accordingly
2016-05-29 01:38:34 +02:00
Ruben Bridgewater
03f1a606f7
Improve error handling
...
Added individual error classes
Don't silently fail for commands without callback from now on
General polishing (e.g. better error messages)
Fix typos
2016-04-29 04:31:39 +02:00
Ruben Bridgewater
f7c4d131be
Remove jshint comments and update istanbul comments
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
625f14e6ba
Fix address always set to 127.0.0.1:6379 in case the host/port is set in the tls options
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
0dc45bd0a3
Improve pub sub mode further
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
e58e310225
Remove unnecessary unallocation. This is done by the queue itself
...
The total size is kept in the queue but this does not have to be reset each time
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
a857829a36
Improve error handling
...
Arguments are now passed to an command error in case they exist
An error is only emitted if that very same error is not already handled in a callback
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
97ae78877b
Implement CLIENT REPLY ON|OFF|SKIP
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
3038c9043d
Make sure all individual handled command work in multi context the same
...
Fix quit possibly resulting in reconnections
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
0424cb0bf3
Move pub sub command into individual commands and use call_on_write
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
683815de9d
Refactor pipelining
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
5d12659583
Fix typos / comments
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
cd58e1fd89
Implement message_buffer and pmessage_buffer events
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
a9d565b8f4
Fix auth regression
...
Fixes #1028
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
d2b8f2f391
Add support for camelCase
...
Fixes missing `EXEC_BATCH` on multi
2016-04-29 04:10:23 +02:00
Ruben Bridgewater
14170f9d02
Improve tests a bit
...
Reduce timeouts if possible
Extend timeouts if needed (windows tests need their time)
Don't expose the redis socket to others than the owner
Don't create the stunnel log
2016-04-01 11:42:22 +02:00
Ruben Bridgewater
79c1767f86
Fix pubsub further
...
Unsubscribing from all channels did not work properly with reconnect
Pub sub did not work properly with the new `string_numbers` option
2016-03-31 19:23:46 +02:00
Ruben Bridgewater
3fd865bbb3
Move the exposed and documented api into a separate file
2016-03-31 19:23:46 +02:00
Ruben Bridgewater
861749f4d6
Fix send_command working with hooked internal functions
2016-03-31 19:23:46 +02:00
Ruben Bridgewater
48481552c9
Calling quit should always close the connection
2016-03-27 05:18:38 +02:00
Ruben Bridgewater
0c5947be51
Add string_numbers option to handle very big numbers
2016-03-27 03:19:18 +02:00
Ruben Bridgewater
94e9f1fcfc
Replace jshint with eslint and add lots of rules
...
Fix eslint errors accordingly
2016-03-26 14:45:12 +01:00
Ruben Bridgewater
7a5a4aa535
Fix pub sub mode
...
There is likely a better and more performant way to fix this but this works so far
and should be good enough to release and improve later.
Make test more robust
Add another test
2016-03-26 02:14:10 +01:00
Ruben Bridgewater
344291a98a
Fix monitoring mode
2016-03-25 16:09:20 +01:00
Ruben Bridgewater
db6cf0a3b5
Don't throw on invalid data types but throw a warning instead
...
Fixes #1013
2016-03-21 17:22:03 +01:00
Ruben Bridgewater
6598da5366
Indicate transmission errors
2016-03-15 03:56:47 +01:00
Ruben Bridgewater
d858bd8383
Passing a stream as second parameter in the constructor
...
To support private streams this is implemented.
This needs some monkey patching to work, so it is not officially
supported and might be removed at any time!
Fixes #950
Closes #951
2016-03-10 22:01:23 +01:00
Ruben Bridgewater
c2e25a7f71
Move lots code into separate files and split big functions party into smaller ones
...
Also refactor small stuff here
Removed the .send_anyway boolean and use .ready instead
2016-03-07 01:57:56 +01:00
Ruben Bridgewater
535db5231e
Fix rename command not working together with key prefixes
2016-03-07 01:57:56 +01:00
Ruben Bridgewater
575ad7357b
Insert deprecation warnings and some minor refactoring
2016-03-07 01:57:56 +01:00
Ruben Bridgewater
19ea518b36
Do not emit ready if the slave is still syncing with master / master being down
2016-03-07 01:57:56 +01:00
Ruben Bridgewater
89209b8adc
Handle very big pipelines without crashing
2016-03-07 01:57:56 +01:00
Ruben Bridgewater
cc540dbc3c
Implement retry_strategy and add more info to the reconnect event
2016-03-07 01:57:56 +01:00
Ruben Bridgewater
32172cd291
Use instanceof Array instead of Array.isArray
...
The reply is being done with a regular array and therefor will be the same array instance
2016-03-01 17:59:17 +01:00
Ruben Bridgewater
fb0eaf4d41
Unify auth handling
2016-03-01 17:59:17 +01:00
Ruben Bridgewater
518e46dcc7
Use a own clone function instead of using JSON.parse(JSON.stringify())
...
This will also clone functions
2016-03-01 17:59:16 +01:00
Ruben Bridgewater
60eee34de1
Unify command handling
2016-03-01 17:59:16 +01:00
Ruben Bridgewater
8dcf06754d
Add warnings and handle protocol errors gracefuly
2016-03-01 17:59:16 +01:00
Ruben Bridgewater
5ef24a90b6
Add tests and improve older tests
2015-12-31 06:00:20 +01:00
Ruben Bridgewater
2cd3818ea9
Fix some minor issues
2015-12-31 06:00:20 +01:00
Ruben Bridgewater
d9c815dd8c
Add retry_unfullfilled_commands option
2015-12-30 16:18:17 +01:00
Ruben Bridgewater
a4285c156c
Parse redis url just like IANA
2015-12-30 16:18:17 +01:00
Ruben Bridgewater
58ddd51489
Always refresh the server_info after running info; Remove proper auth support for redis < 2.6.11
2015-12-30 16:18:17 +01:00