1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-04 15:02:09 +03:00
Commit Graph

82 Commits

Author SHA1 Message Date
Nikolay Karadzhov
8c7b384e6b Release json@5.1.1 2025-05-28 16:23:31 +03:00
Nikolay Karadzhov
e68b5deb19 Updated the Json package to use client@5.1.1 2025-05-28 16:23:12 +03:00
Nikolay Karadzhov
065eb5e914 fix(json): remove debug console.logs (#2970) 2025-05-22 10:36:52 +03:00
Nikolay Karadzhov
a485936a9f Release json@5.1.0 2025-05-20 16:03:59 +03:00
Nikolay Karadzhov
a1b41e2dbc Updated the Json package to use client@5.1.0 2025-05-20 16:03:07 +03:00
Nikolay Karadzhov
7b737821b2 fix: fix various command import issues (#2944)
* fix: fix various command import issues

there was some sort of a circular dependency
in <module>/lib/commands/index.ts for various modules

fixes #2937 fixes #2941

* remove redundant definition
2025-05-07 16:10:35 +03:00
Nikolay Karadzhov
e99cd073b6 Release json@5.0.1 2025-05-05 12:00:46 +03:00
Nikolay Karadzhov
84680d6e5a Updated the Json package to use client@5.0.1 2025-05-05 12:00:10 +03:00
Nikolay Karadzhov
b7147911de Release json@5.0.0 2025-04-30 17:07:55 +03:00
Nikolay Karadzhov
7359617047 Updated the Json package to use client@5.0.0 2025-04-30 17:06:44 +03:00
H. Temelski
5a2a61496e Release json@5.0.0-next.7 2025-03-25 10:29:09 +02:00
H. Temelski
60b81ff7f0 Updated the JSON package to use client@5.0.0-next.7 2025-03-25 10:28:15 +02:00
Hristo Temelski
a7feb60e0a tests: bumped the version of the 8 docker test image to '8.0-M05-pre' (#2909) 2025-03-18 15:24:11 +02:00
Bobby I.
69d507a572 refactor!: redis 8 compatibility improvements and test infrastructure updates (#2893)
* churn(test): use redislabs/client-libs-test for testing

This  switches our testing infrastructure from redis/redis-stack to
redislabs/client-libs-test Docker image across all packages. This change
also updates the default Docker version from 7.4.0-v1 to 8.0-M04-pre.

* churn(test): verify CONFIG SET / GET compatibility with Redis 8

- Add tests for Redis 8 search configuration settings
- Deprecate Redis Search CONFIG commands in favor of standard CONFIG
- Test read-only config restrictions for Redis 8

* churn(test): handle Redis 8 coordinate precision in GEOPOS

- Update GEOPOS tests to handle increased precision in Redis 8 (17 decimal places vs 14)
- Add precision-aware coordinate comparison helper
- Add comprehensive test suite for coordinate comparison function

* test(search): adapt SUGGET tests for Redis 8 empty results

- Update tests to expect empty array ([]) instead of null for SUGGET variants
- Affects sugGet, sugGetWithPayloads, sugGetWithScores, and sugGetWithScoresWithPayloads

* test(search): support Redis 8 INFO indexes_all field

- Add indexes_all field introduced in Redis 8 to index definition test

* refactor!(search): simplify PROFILE commands to return raw response

- BREAKING CHANGE: FT.PROFILE now returns raw response, letting users implement their own parsing

* test: improve version-specific test coverage

- Add `testWithClientIfVersionWithinRange` method to run tests for specific Redis versions
- Refactor TestUtils to handle version comparisons more accurately
- Update test utilities across Redis modules to run tests against multiple versions, and not against latest only
2025-02-27 10:56:58 +02:00
dmaier-redislabs
c0da3db8cf Release json@5.0.0-next.6 2025-01-30 11:11:58 +02:00
dmaier-redislabs
68e8973fd0 Updated the JSON package to use client@5.0.0-next.6 2025-01-30 11:11:21 +02:00
Leibale Eidelman
b835309cf8 fix cross packages imports 2024-11-04 12:21:17 -05:00
Shaya Potter
4708736f3b new "transform arguments" API for better key and metadata extraction (#2733)
* Parser support with all commands

* remove "dist" from all imports for consistency

* address most of my review comments

* small tweak to multi type mapping handling

* tweak multi commands / fix addScript cases

* nits

* addressed all in person review comments

* revert addCommand/addScript changes to multi-commands

addCommand needs to be there for sendCommand like ability within a multi.

If its there, it might as well be used by createCommand() et al, to avoid repeating code.

addScript is there (even though only used once), but now made private to keep the logic for bookkeeping near each other.
2024-10-31 12:16:59 -04:00
dmaier-redislabs
91476f9ba7 Release json@5.0.0-next.5 2024-10-15 17:40:46 +02:00
dmaier-redislabs
a4466d2049 Updated the JSON package to use client@5.0.0-next.5 2024-10-15 17:40:01 +02:00
Shaya Potter
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
Leibale
3973fa24e1 Release json@1.0.7 2024-07-29 09:39:21 -04:00
Marco Reni
179b9e0094 fix: json.mget should be readonly (#2807) (#2808)
* fix: json.mget should be readonly (#2807)

* lint
2024-07-29 09:25:03 -04:00
Leibale Eidelman
0f29f4238f Change json docker version to 2.6.9 2024-02-05 09:14:24 -05:00
Leibale
f7d400e896 Release json@1.0.6 2023-09-22 07:02:29 -04:00
Leibale
d258296f33 Release json@1.0.5 2023-09-19 17:56:29 -04:00
shacharPash
cf21c1a1f8 Add support for JSON.MERGE (#2511)
* Support JSON.MERGE Command

* test only 2.6+ ReJson version

* test on edge

* review

* Update test-utils.ts

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-09-18 17:54:25 -04:00
Rowan Trollope
5a108265da Add support for JSON.MSET (#2605)
* Added MSET command

MSET command added. Requires all keys to have the same JSON Path, which might fit most use cases, but is a limitation.  Optionally we could make the path an array as well to support all use cases.

* change JSON.MSET signature, add to json command object, fix tests

* its `item.value`, not `item.json`..

* Update MSET.ts

Removed unused RedisCommandArguments

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-09-18 17:39:23 -04:00
Leibale
4976231f24 upgrade deps, remove node 14 & 16 from tests matrix 2023-09-18 17:23:01 -04:00
Leibale
fe74e322dd upgrade deps 2023-08-23 14:53:26 -04:00
Leibale Eidelman
a7d5bc7ca4 fix #2526 - fix json README links (#2527) 2023-06-06 10:24:59 -04:00
Leibale Eidelman
0298c1ac41 upgrade deps (#2517)
* upgrade deps

* fix graph tests
2023-05-29 09:01:34 -04:00
Gady
c88dea6151 Augment subpackages npm info (#2478)
* augment subpackages npm info

* some more keywords

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-04-24 12:41:44 -04:00
Leibale Eidelman
4937efca6b upgrade dependencies (#2426) 2023-02-24 18:05:43 -05:00
Leibale Eidelman
0a46fcbdaf upgrade dependencies (#2381)
* upgrade deps

* upgrade dependencies

* fix v3 benchmark

* update package-lock.json
2023-01-25 13:05:42 -05:00
Leibale Eidelman
3b1bad2296 Add support for sharded PubSub (#2373)
* refactor pubsub, add support for sharded pub sub

* run tests in redis 7 only, fix PUBSUB SHARDCHANNELS test

* add some comments and fix some bugs

* PubSubType, not PubSubTypes 🤦‍♂️

* remove test.txt

* fix some bugs, add tests

* add some tests

* fix #2345 - allow PING in PubSub mode (remove client side validation)

* remove .only

* revert changes in cluster/index.ts

* fix tests minimum version

* handle server sunsubscribe

* add 'sharded-channel-moved' event to docs, improve the events section in the main README (fix #2302)

* exit "resubscribe" if pubsub not active

* Update commands-queue.ts

* Release client@1.5.0-rc.0

* WIP

* use `node:util` instead of `node:util/types` (to support node 14)

* run PubSub resharding test with Redis 7+

* fix inconsistency in live resharding test

* add some tests

* fix iterateAllNodes when starting from a replica

* fix iterateAllNodes random

* fix slotNodesIterator

* fix slotNodesIterator

* clear pubSubNode when node in use

* wait for all nodes cluster state to be ok before testing

* `cluster.minimizeConections` tests

* `client.reconnectStrategry = false | 0` tests

* sharded pubsub + cluster 🎉

* add minimum version to sharded pubsub tests

* add cluster sharded pubsub live reshard test, use stable dockers for tests, make sure to close pubsub clients when a node disconnects from the cluster

* fix "ssubscribe & sunsubscribe" test

* lock search docker to 2.4.9

* change numberOfMasters default to 2

* use edge for bloom

* add tests

* add back getMasters and getSlotMaster as deprecated functions

* add some tests

* fix reconnect strategy + docs

* sharded pubsub docs

* Update pub-sub.md

* some jsdoc, docs, cluster topology test

* clean pub-sub docs

Co-authored-by: Simon Prickett <simon@redislabs.com>

* reconnect startegy docs and bug fix

Co-authored-by: Simon Prickett <simon@redislabs.com>

* refine jsdoc and some docs

Co-authored-by: Simon Prickett <simon@redislabs.com>

* I'm stupid

* fix cluster topology test

* fix cluster topology test

* Update README.md

* Update clustering.md

* Update pub-sub.md

Co-authored-by: Simon Prickett <simon@redislabs.com>
2023-01-25 11:00:39 -05:00
Leibale Eidelman
c5b6f77c33 exclude dist from coverage report 2022-12-26 13:35:37 -05:00
Leibale Eidelman
29f734f60e upgrade dependencies (#2306) 2022-10-26 14:47:10 -04:00
leibale
7a57cc07a2 Release json@1.0.4 2022-09-06 03:40:40 -04:00
Leibale Eidelman
35be671332 upgrade dependencies (#2242) 2022-08-22 18:23:43 -04:00
Brandon Everett
ac032d82a0 fix: loop over arguments instead of spreading (#2160)
* fix: loop over arguments instead of spreading

* update to use concat

* use the returned array from pushVerdictArguments (instead of assuming it'll push to the original array)

* fix "Type 'RedisCommandArguments' is not assignable to type 'string[]'."

* fix "Argument of type 'RedisCommandArgument | RedisCommandArguments[]' is not assignable to parameter of type 'RedisCommandArgument | RedisCommandArgument[]'"

* fix "Type 'RedisCommandArguments' is not assignable to type 'string[]'"

Co-authored-by: Leibale Eidelman <leibale1998@gmail.com>
2022-07-13 07:01:35 -04:00
leibale
9ffc30c727 upgrade deps 2022-07-05 11:42:43 -04:00
Leibale Eidelman
6a850d36ae upgrade deps, fix "invalid save argument" error (#2174) 2022-06-30 13:07:29 -04:00
leibale
f2a4e76d31 Release json@1.0.3 2022-05-02 11:57:06 -04:00
Leibale Eidelman
0752f143a6 prepare 4.1.0 (#2111)
* increase test coverage

* @node-redis to @redis

* ugprade deps

* fix benchmark

* use 7.0 docker (not rc), update readmes, clean code, fix @-redis import

* update readme

* fix function in cluster

* update docs

Co-authored-by: Chayim <chayim@users.noreply.github.com>

* Update clustering.md

* add subpackages move warning

* drop support for node 12

* upgrade deps

* fix tsconfig.base.json

Co-authored-by: Chayim <chayim@users.noreply.github.com>
2022-05-02 11:48:12 -04:00
Leibale Eidelman
432a7e3ebb upgrade deps (#2098) 2022-04-25 16:42:20 -04:00
Leibale Eidelman
11c6c24881 Add support for redis functions (#2020)
* fix #1906 - implement BITFIELD_RO

* initial support for redis functions

* fix test utils

* redis functions commands and tests

* upgrade deps

* fix "Property 'uninstall' does not exist on type 'SinonFakeTimers'"

* upgrade dockers version

* Merge branch 'master' of github.com:redis/node-redis into functions

* fix FUNCTION LIST WITHCODE and FUNCTION STATS

* upgrade deps

* set minimum version for FCALL and FCALL_RO

* fix FUNCTION LOAD

* FUNCTION LOAD

* fix FUNCTION LOAD & FUNCTION LIST & FUNCTION LOAD WITHCODE

* fix FUNCTION_LIST_WITHCODE test
2022-04-25 09:09:23 -04:00
Leibale Eidelman
79ee8f2029 upgrade dependencies (#2081) 2022-04-18 12:29:01 -04:00
Leibale Eidelman
5ade5dadc0 upgrade dependencies (#2057)
* upgrade dependencies

* fix "Property 'uninstall' does not exist on type 'SinonFakeTimers'."
2022-03-27 16:27:05 -04:00
Leibale Eidelman
3547b20293 Graph (#1887)
* init

* implement graph commands

* add graph to packages table

* fix ts.infoDebug

* fix redisearch tests

* Update INFO_DEBUG.ts

* fix INFO.spec.ts

* test QUERY and SLOWLOG

Co-authored-by: Avital-Fine <avital.fine@redis.com>
2022-01-31 12:52:19 -05:00