Commit 4e6d018
V4 (#1624)
* init v4
* add .gitignore to benchmark
* spawn redis-servers for tests,
add some tests,
fix client auth on connect
* add tests coverage report
* add tests workflow, replace nyc text reporter with text-summary
* run tests with node 16.x & redis 6.x only (for now)
* add socket events on client,
stop reconnectiong when manually calling disconnect,
remove abort signal listener when a command is written on the socket
* add isOpen boolean getter on client, add maxLength option to command queue, add test for client.multi
* move to use CommonJS
* add MULTI and EXEC commands to when executing multi command, make client.multi return type innerit the module commands, clean some tests, exclute spec files from coverage report
* missing file from commit 61edd4f
* exclude spec files from coverage report
* add support for options in a command function (.get, .set, ...), add support for the SELECT command, implement a couple of commands, fix client socket reconnection strategy, add support for using replicas (RO) in cluster, and more..
* fix client.blPop test
* use which to find redis-server path
* change command options to work with Symbol rather then WeakSet
* implement more commands
* Add support for lua scripts in client & muilti, fix client socket initiator, implement simple cluster nodes discovery strategy
* replace `callbackify` with `legacyMode`
* add the SCAN command and client.scanIterator
* rename scanIterator
* init benchmark workflow
* fix benchmark workflow
* fix benchmark workflow
* fix benchmark workflow
* push coverage report to Coveralls
* fix Coveralls
* generator lcov (for Coveralls)
* fix .nycrc.json
* PubSub
* add support for all set commands (including sScanIterator)
* support pipeline
* fix KEEPTTL in SET
* remove console.log
* add HyperLogLog commands
* update README.md (thanks to @guyroyse)
* add support for most of the "keys commands"
* fix EXPIREAT.spec.ts
* add support for date in both EXPIREAT & EXPIRE
* add tests
* better cluster nodes discorvery strategy after MOVED error, add PubSub test
* fix PubSub UNSUBSCRIBE/PUNSUBSCRIBE without channel and/or listener
* fix PubSub
* add release-it to dev dependencies
* Release 4.0.0-next.0
* fix .npmignore
* Release 4.0.0-next.1
* fix links in README.md
* fix .npmignore
* Release 4.0.0-next.2
* add support for all sorted set commands
* add support for most stream commands
* add missing file from commit 53de279
* lots of todo commends
* make PubSub test more stable
* clean ZPOPMAX
* add support for lua scripts and modules in cluster, spawn cluster for tests, add some cluster tests, fix pubsub listener arguments
* GET.spec.ts
* add support for List commands, fix some Sorted Set commands, add some cluster commands, spawn cluster for testing, add support for command options in cluster, and more
* add missing file from commit faab94f
* clean ZRANK and ZREVRANK
* add XREAD and XREADGROUP commands
* remove unused files
* implement a couple of more commands, make cluster random iterator be per node (instead of per slot)
* Release 4.0.0-next.3
* app spec files to npmignore
* fix some code analyzers (LGTM, deepsource, codeclimate) issues
* fix CLUSTER_NODES, add some tests
* add HSCAN, clean some commands, add tests for generic transformers
* add missing files from 0feb35a
* update README.md (thanks to @guyroyse)
* handle ASK errors, add some commands and tests
* Release 4.0.0-next.4
* replace "modern" with "v4"
* remove unused imports
* add all ACL subcommands, all MODULE subcommands, and some other commands
* remove 2 unused imports
* fix BITFIELD command
* fix XTRIM spec file
* clean code
* fix package.json types field
* better modules support, fix some bugs in legacy mode, add some tests
* remove unused function
* add test for hScanIterator
* change node mimimum version to 12 (latest LTS)
* update tsconfig.json to support node 12, run tests on Redis 5 & 6 and on all node live versions
* remove future node releases :P
* remove "lib" from ts compiler options
* Update tsconfig.json
* fix build
* run some tests only on supported redis versions, use coveralls parallel mode
* fix tests
* Do not use "timers/promises", fix "isRedisVersionGreaterThan"
* skip AbortController tests when not available
* use 'fs'.promises instead of 'fs/promises'
* add some missing commands
* run GETDEL tests only if the redis version is greater than 6.2
* implement some GEO commands, improve scan generic transformer, expose RPUSHX
* fix GEOSEARCH & GEOSEARCHSTORE
* use socket.setNoDelay and queueMicrotask to improve latency
* commands-queue.ts: String length / byte length counting issue (#1630)
* Update commands-queue.ts
Hopefully fixing #1628
* Reverted 2fa5ea6, and implemented test for byte length check
* Changed back to Buffer.byteLength, due to issue author input. Updated test to look for 4 bytes.
* Fixed. There were two places that length was calculated.
* Removed redundant string assignment
* add 2 bytes test as well
Co-authored-by: Leibale Eidelman <leibale1998@gmail.com>
* fix scripts in multi
* do not hide bugs in redis
* fix for e7bf096
* remove unused import
* implement WATCH command, fix ZRANGESTORE & GEOSEARCHSTORE tests
* update README.md
Co-authored-by: @guyroyse
* use typedoc to auto generate documentation
* run "npm install" before "npm run documentation"
* clean documentation workflow
* fix WATCH spec file
* increase "CLUSTER_NODE_TIMEOUT" to 5000ms to avoid "CLUSTERDOWN" errors in tests
* pull cluster state every 100 ms
* await meetPromises before pulling the cluster state
* enhance the way commanders (client/multi/cluster) get extended with modules and scripts
* add test for socket retry strategy
* implement more commands
* set GETEX minimum version to 6.2
* remove unused imports
* add support for multi in cluster
* upgrade dependencies
* Release 4.0.0-next.5
* remove unused imports
* improve benchmarking
* use the same Multi with duplicated clients
* exclude some files from the documentation, add some exports, clean code
* fix #1636 - handle null in multi.exec
* remove unused import
* add supoprt for tuples in HSET
* add FIRST_KEY_INDEX to HSET
* add a bunch of missing commands, fix MSET and HELLO, add some tests
* add FIRST_KEY_INDEX to MSET and MSETNX
* upgrade actions
* fix coverallsapp/github-action version
* Update documentation.yml
* Update documentation.yml
* clean code
* remove unused imports
* use "npm ci" instead of "npm install"
* fix `self` binding on client modules, use connection pool for `duplicateConnection`
* add client.executeIsolated, rename "duplicateConnection" to "isolated", update README.md (thanks to @guyroyse and @simonprickett)
* update README (thanks to @guyroyse), add some tests
* try to fix "cluster is down" errors in tests
* try to fix "cluster is down" errors in tests
* upgrade dependencies
* update package-lock
* Release 4.0.0-next.6
* fix #1636 - fix WatchError
* fix for f1bf0be - remove .only from multi tests
* Release 4.0.0-next.7
* update README and other markdown files
Co-authored-by: @guyroyse & @simonprickett
* Doc updates. (#1640)
* update docs, upgrade dependencies
* fix README
* Release 4.0.0-rc.0
* Update README.md
* update docs, add `connectTimeout` options, fix tls
Co-authored-by: Guy Royse <guy@guyroyse.com>
* npm update, "fix" some tests, clean code
* fix AssertionError import
* fix #1642 - fix XREAD, XREADGROUP and XTRIM
* fix #1644 - add the QUIT command
* add socket.noDelay and socket.keepAlive configurations
* Update README.md (#1645)
* Update README.md
Fixed issue with how connection string was specified.
Now you can have user@host without having to specify a password, which just makes more sense
* Update client-configuration.md as well
Co-authored-by: Leibale Eidelman <leibale1998@gmail.com>
* update socket.reconnectStrategy description
* fix borken link in v3-to-v4.md
* increase test coverage, fix bug in cluster redirection strategy, implement CLIENT_ID, remove unused EXEC command
Co-authored-by: Nova <novaw@warrenservices.co.uk>
Co-authored-by: Simon Prickett <simon@crudworks.org>
Co-authored-by: Guy Royse <guy@guyroyse.com>1 parent 4f85030 commit 4e6d018
File tree
661 files changed
+28837
-14549
lines changed- .github
- workflows
- benchmarks
- benchmark
- docs
- examples
- lib
- commands
- ts-declarations
- test
- commands
- conf
- lib
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
661 files changed
+28837
-14549
lines changedThis file was deleted.
This file was deleted.
This file was deleted.
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | 8 | | |
21 | 9 | | |
22 | | - | |
23 | 10 | | |
24 | 11 | | |
25 | 12 | | |
26 | 13 | | |
27 | 14 | | |
28 | 15 | | |
29 | | - | |
| 16 | + | |
30 | 17 | | |
31 | | - | |
32 | | - | |
| 18 | + | |
| 19 | + | |
33 | 20 | | |
34 | 21 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
2 | | - | |
3 | 1 | | |
4 | 2 | | |
5 | 3 | | |
6 | | - | |
| 4 | + | |
7 | 5 | | |
8 | 6 | | |
9 | | - | |
10 | | - | |
| 7 | + | |
11 | 8 | | |
12 | 9 | | |
13 | 10 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
4 | 7 | | |
5 | 8 | | |
6 | 9 | | |
| |||
9 | 12 | | |
10 | 13 | | |
11 | 14 | | |
12 | | - | |
13 | | - | |
| 15 | + | |
| 16 | + | |
14 | 17 | | |
15 | 18 | | |
16 | 19 | | |
17 | 20 | | |
18 | 21 | | |
19 | 22 | | |
20 | 23 | | |
21 | | - | |
| 24 | + | |
22 | 25 | | |
23 | 26 | | |
24 | 27 | | |
25 | 28 | | |
26 | | - | |
| 29 | + | |
27 | 30 | | |
28 | 31 | | |
29 | | - | |
30 | 32 | | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
This file was deleted.
0 commit comments