Fix bugs #108, #254, #499 for 1.0 release#792
Merged
Conversation
- Add redisvl as optional dependency (pip install redis-om[redisvl]) - Add to_redisvl_schema() to convert OM models to RedisVL IndexSchema - Add get_redisvl_index() to get ready-to-use SearchIndex - Supports all OM field types: text, tag, numeric, vector - Supports FLAT and HNSW vector algorithms with all parameters Refs #790
6428db8 to
6bb86bc
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR fixes three bugs identified for the 1.0 release:
Bug Fixes
#108 - Enum with int values produces wrong query syntax
Enum(notIntEnum) with int values in queries, the query would produce incorrect syntax like@status:[Status.ACTIVE Status.ACTIVE]instead of@status:[2 2].valuefrom Enum objects inresolve_value()for NUMERIC fields#499 - IN operator doesn't work for NUMERIC fields
<<) only worked for TAG fields, not NUMERIC fields(@field:[v1 v1])|(@field:[v2 v2])#254 - Optional field retrieval breaks HashModel
Noneas empty string""because Redis HSET requires non-null valuesfloat), causing ValidationErrorconvert_empty_strings_to_none()that converts empty strings back toNonefor Optional fieldsChanges
aredis_om/model/model.py: Core fixes for all three bugstests/test_bug_fixes.py: New test file with 6 tests covering all fixesTesting
All 480 tests pass.
Closes #108
Closes #254
Closes #499