Redis-om

Latest version: v0.3.0

Safety actively analyzes 624049 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

0.4.3

Fixed
- Fixed issue with change of casing in error message in RediSearch when calling `.dropIndex` on *Repository*

Added
- Add `.expireAt` method to *Repository*
- Add fuzz matching for 'text' type

0.4.2

Fixed
- Fixed issue with TAGs not properl;y escaping question marks

0.4.1

Added
- Added new type of `number[]` which works just like `number` but against an array of them

0.4.0

Added
- Added methods to *Repository* to allow you to provide your own *entityId* instead of relying on a generated one.
- Added support for Redis clustering by passing in a Node Redis connection created with `createCluster`.
- Added better and more meaningful exceptions.

Changed
- *Schema* now supports nested JSON via the `path` option.
- *Schema* now supports specifying the field for a Hash via the `field` option.
- *Schema* now supports `async` functions for *IdStrategy* allowing you to slow down your saves with I/O calls to generate IDs.
- *Repository* now allows adding Entities with properties that are not in the *Schema*. These can even be nested if you are using JSON.
- *Repository* can be now be constructed directly with `new` in addition to being created from a *Client* via `.fetchRepository`.
- *Repository* can now directly be handed an open Node Redis connection. No need to create a *Client* instance.
- *Client* deprecated in favor of using Node Redis connections.

Removed
- *Breaking Change* Removed *Entity* class. While still a type, it's no longer a class and is mostly just an alias for a JavaScript object.
- *Breaking Change* Removed `.execute` method on *Client*. Use Node Redis instead.
- *Breaking Change* Removed `.createEntity` and `.createAndSave` methods on *Repository*. Entities are simply JavaScript objects—to create one just create a JavaScript object and call `.save`.
- As *Entity* is no longer a class, custom methods on an *Entity* are no longer supported.

Fixed
- Corrected parsing where empty arrays were saved to a Hash as an empty String.
- Special characters can now, correctly, be field names

0.3.6

Changed
- *Breaking Change* Removed `.fetchMany` and replaced it with a variadic version of `.fetch`.
- Assorted internal cleanup.
- Changed test suite to use vitest.

0.3.5

Added
- Added additional field attributes to control RediSearch indexing behavior.
- Added search methods to retreive just key name or just *entityIds* instead of the entire entity. Methods include: `.returnAllKeys`, `.returnAllIds`, `.returnFirstKey`, `.returnFirstId`, `.returnPageOfKeys`, `.returnPageOfIds`, `.returnMinKey`, `.returnMinId`, `.returnMaxKey`, `.returnMaxId`
- Added `.fetchMany` to *Repository* which variadicly takes multiple *entityIds* and returns an array of fetch entities.

Changed
- Search methods that return a single item (like `.first`, `.min`, etc.) and can return *null* are now marked as returning *null* for TypeScript users.
- Repository `.remove` method is now variadic and takes one or more *entityIds* to remove.

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.