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

124 Commits

Author SHA1 Message Date
Nikolay Karadzhov
c9ecb3d65c Release search@5.5.6 2025-06-06 10:16:17 +03:00
Nikolay Karadzhov
8610a6c836 Updated the Search package to use client@5.5.6 2025-06-06 10:15:45 +03:00
Navi sureka
21d8f0e957 docs(search): update SchemaFieldTypes to SCHEMA_FIELD_TYPE for redis@5.x (#2992) 2025-06-06 09:30:07 +03:00
Nikolay Karadzhov
2bb515e489 fix(search): align ft.search with server (#2988)
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
2025-06-05 11:46:57 +03:00
Nikolay Karadzhov
b33a662e50 Automate release (#2977)
* 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
2025-06-04 10:52:14 +03:00
Bobby I.
20c16e0c2c (docs) add jsdoc comments to command parsers (#2984)
* (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
2025-06-03 14:38:07 +03:00
Nikolay Karadzhov
13566cf9d6 Release search@5.1.1 2025-05-28 16:24:51 +03:00
Nikolay Karadzhov
b2213d8132 Updated the Search package to use client@5.1.1 2025-05-28 16:24:32 +03:00
Nikolay Karadzhov
2cc68647fe Release search@5.1.0 2025-05-20 16:06:45 +03:00
Nikolay Karadzhov
4bb23283c3 Updated the Search package to use client@5.1.0 2025-05-20 16:05:08 +03:00
Bobby I.
ebd03036d6 revert the 'total' count logic in AGGREGATE response introduced in #2952 (#2955)
> FT.AGGREGATE returns an array reply where each row is an array reply and represents a single aggregate result.
The integer reply at position 1 does not represent a valid value.

https://redis.io/docs/latest/commands/ft.aggregate/#return
2025-05-09 10:13:32 +03:00
Bobby I.
5e9fea1fd3 Update Redis version to 8.0.1-pre (#2952)
> FT.AGGREGATE returns an array reply where each row is an array reply
and represents a single aggregate result.
> The integer reply at position 1 does not represent a valid value.

We now calculate the result length bazed on the number of results
instead of the integer reply at pos 1
2025-05-08 15:14:30 +03:00
Nikolay Karadzhov
17179ddb35 Release search@5.0.1 2025-05-05 12:02:20 +03:00
Nikolay Karadzhov
cc13ae298e Updated the Search package to use client@5.0.1 2025-05-05 12:01:39 +03:00
Nikolay Karadzhov
30cecc4b48 Release search@5.0.0 2025-04-30 17:13:28 +03:00
Nikolay Karadzhov
c942f0eb9f Updated the Search package to use client@5.0.0 2025-04-30 17:12:59 +03:00
Nikolay Karadzhov
048df302e4 Fix imports (#2929)
* fix: exports

align exports with v4 as much as possible

* document breaking changes

* export type

return SetOptions export
2025-04-30 14:38:32 +03:00
Bobby I.
5295926cc0 bump test container to 8.0-RC2-pre (#2927) 2025-04-29 10:56:38 +03:00
H. Temelski
17b3304323 Release search@5.0.0-next.7 2025-03-25 10:31:02 +02:00
H. Temelski
c50892a7f7 Updated the search package to use client@5.0.0-next.7 2025-03-25 10:30:08 +02:00
Hristo Temelski
d64072da95 feat(integer 8 vector support): Changed ft create vector types to union, added support for int8/uint8 (#2911)
* [CAE-827] Changed ft create vector types to union, added support for int8/uint8

* [CAE-827] Moved test cases
2025-03-21 11:43:10 +02:00
Hristo Temelski
2ff5cb88d4 tests: Reenable and fix profile aggregate tests (#2910) 2025-03-19 12:18:30 +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
Hristo Temelski
1af01373db feat(search): Set default dialect to 2 for Redis Search commands (#2895)
- The default dialect `DEFAULT_DIALECT`  is now set to '2'
- Automatically append DIALECT parameter to search commands when not explicitly specified
2025-02-17 13:47:12 +02:00
dmaier-redislabs
f30926c91a Release search@5.0.0-next.6 2025-01-30 11:13:34 +02:00
dmaier-redislabs
153346b9aa Updated the search package to use client@5.0.0-next.6 2025-01-30 11:12:56 +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
d3e720ffbd Release search@5.0.0-next.5 2024-10-15 17:43:16 +02:00
dmaier-redislabs
c0a418140e Updated the Search package to use client@5.0.0-next.5 2024-10-15 17:42:24 +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
fff7b006c3 Release search@1.2.0 2024-07-29 10:25:26 -04:00
Shaya Potter
840ec57fb9 small refactor per discussion with leibele (#2801)
* small refactor per discussion with leibele

* move true type to boolean type

* fix geoshape to support NOINDEX & SORTABLE, clean code

* fix for last commit

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2024-07-29 09:27:53 -04:00
Shaya Potter
54b3e178f9 add addscores to aggregate search command (#2799)
* add addscores to aggregate search command

* change `true` to `boolean`

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2024-07-29 09:22:38 -04:00
Shaya Potter
0e7e2e6e29 add missing fields support to schema (v4) (#2789) 2024-07-17 11:36:45 +03:00
Shaya Potter
a1bee1caaf add geoshape support (#2788)
copied from what leibele did for v5
2024-07-10 19:45:17 +03:00
Leibale
a227cb0cef Release search@1.1.6 2023-11-20 13:49:13 -05:00
Savvas Papageorgiadis
0ee3278085 chore(search): export languages (#2651) 2023-11-20 13:41:44 -05:00
Leibale
3862fd2e9f Release search@1.1.5 2023-09-22 07:03:00 -04:00
Leibale
6cc635cb93 Release search@1.1.4 2023-09-19 17:54:58 -04:00
Brett Burch
a217cc1a88 Add support for FT.SEARCH NOCONTENT (#2610)
* Add support for NOCONTENT in FT.SEARCH

* Move support for NOCONTENT search option from client.search to client.searchNoContent

* Add test for SEARCH_NOCONTENT#transformReply

* Fix typo

* Enable test

* Update test field type

---------

Co-authored-by: Leibale <me@leibale.com>
2023-09-18 18:33:17 -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
alphabetkrish
b58833b6ea fix #2569 - fix @redis/search README 2023-07-20 16:09:35 -04:00
Leibale
99c7cd7c55 Release search@1.1.3 2023-05-31 15:44:12 +03:00
Leibale Eidelman
0298c1ac41 upgrade deps (#2517)
* upgrade deps

* fix graph tests
2023-05-29 09:01:34 -04:00
fast-facts
85091cde5a Add count option to FT.CURSOR READ (#2492)
* feat: Add count option to FT.CURSOR READ

* Update CURSOR_READ.spec.ts

---------

Co-authored-by: Leibale Eidelman <me@leibale.com>
2023-05-21 08:08:27 -04:00
Nanak
8d37c115e6 Add support for TIMEOUT in FT.AGGREGATE and FT.SEARCH (#2488)
* #2486: add timeout as optional param in FT.Search

* return timeout from aggregate

* add test case for TIMEOUT in aggregate

* add TIMEOUT option in search file

* add test cases for TIMEOUT option in search file

* uodate search/aggregates to add timeout when it is not undefuned

* update search to add timeout when it is not undefuned

* update test case for AGGREGATE
2023-05-21 08:01:17 -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