main branch is protected and does not allow direct pushes.
the release action needs to push.
branch protection rules can be bypassed for people and apps, but not
github actions.
one of the workarounds is to use a ruleset in which we set a deploy key
see: https://github.com/orgs/community/discussions/25305\#discussioncomment-10728028
`createSentinel` takes RESP as an option, but does not propagate down
to the actual clients. This creates confusion for the users as they
expect the option to be set to all clients, which is reasonable.
In case of clientSideCaching, this problem manifests as validation failure
because clientSideCaching requires RESP3, but if we dont propagate,
clients start with the default RESP2
fixes#3010
* wip
* improve the vadd api
* resp3 tests
* fix some tests
* extract json helper functions in client package
* use transformJsonReply
* remove the CACHEABLE flag for all vector set commands
currently, client side caching is not supported
for vector set commands by the server
* properly transform vinfo result
* add resp3 test for vlinks
* add more tests for vrandmember
* fix vrem return types
* fix vsetattr return type
* fix vsim_withscores
* implement vlinks_withscores
* set minimum docker image version to 8
* align return types
* add RAW variant for VEMB -> VEMB_RAW
* use the new parseCommand api
as per the ft.search docs ( https://redis.io/docs/latest/commands/ft.search ):
If a relevant key expires while a query is running,
an attempt to load the key's value will return a null array.
However, the key is still counted in the total number of results.
So, instead of crashing when seeing a null as a value, we
return empty object.
fixes#2772
see https://github.com/redis/node-redis/pull/2814
* release-it/bumper
* remove git:false
* fix package ordering
* adjust git add
* fix git config
* adjust git config for all packages
* add noop release script for test-utils
* no need to try to release root
* better way to handle skipping
* pass parameters down
* better version hint
* update node version
* return git arguments from before
* rename release workflow
* rename workflow
* set git.tagMatch
* add link to docs
* update description
* update workspace order in package-lock
* fix secondary releases
release-it/bumper was removing the ^ before the peerDep to client
npm is not happy with that. one potential fix would be to bump all
packages together as a prestep and then proceed without bupming again.
for now, this fix should bring us to the previous state ( what was used
in the manual process )
* require clean working dir in root
* remove root release-it config
not needed
* (docs) bloom: add jsdocs for all commands
* (docs) json: add jsdocs
* (docs) search: add jsdocs for all commands
* (docs) jsdocs for std commands
* (docs) jsdoc comments to time series commands
Private class fields (e.g., #execute) cause runtime errors when accessed from contexts where `this` is not the exact instance, triggering “Receiver must be an instance of class RedisCluster”.
fixes#2967
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