72 Commits (main)

Author SHA1 Message Date
Manabu Niseki 3a0fa0c7be
Allow using Pydantic v2 (#533)
Co-authored-by: Chayim <chayim@users.noreply.github.com>
10 months ago
Chayim 70f64011fd
Dependency update changes (#534) 10 months ago
Yaraslau Zhylko 412bdd6401
fix: all_pks() for complex keys (#471)
* fix: all_pks for complex keys

* fix tests

* more fixes

* support Python below 3.9+

* black

* linter again
1 year ago
dvora-h f77c21a059
Add support for `count` (#397)
* add count

* update poetry
2 years ago
dvora-h e9529e35be
Fix crash when trying to delete non-existent record (#372) 2 years ago
Mahmoud Harmouch 551429c01a
Allow users to define a new primary key. (#347)
* make primary key programmable

Signed-off-by: wiseaidev <business@wiseai.dev>

* get primary key field using the `key` method

Signed-off-by: wiseaidev <business@wiseai.dev>

* adjust delete_many & expire methods

Signed-off-by: wiseaidev <business@wiseai.dev>

* fix query for int primary key

Signed-off-by: wiseaidev <business@wiseai.dev>

* fix grammar

Signed-off-by: wiseaidev <business@wiseai.dev>

* add unit tests

Signed-off-by: wiseaidev <business@wiseai.dev>

Signed-off-by: wiseaidev <business@wiseai.dev>
Co-authored-by: Chayim <chayim@users.noreply.github.com>
Co-authored-by: dvora-h <67596500+dvora-h@users.noreply.github.com>
2 years ago
dvora-h 57608d85f4
Replace `execute_command` with specific redis functions when possible (#346)
* replace execute_command

* change to root_path
2 years ago
dvora-h a00a68b414
Add `delete_many` to support for bulk deletes (#305)
* Add support for bulk deletes

* linters

* linters

* fix review comments

* update more-itertools version

* poetry fix - maybe?

* merge main & add more-itertools 8.14.0

* update poetry.lock

* linters

* fix test

Co-authored-by: Chayim I. Kirshen <c@kirshen.com>
2 years ago
Serhii Charykov 4661459ddd
Migrate from aioredis to redis-py with asyncio support (#233)
* Migrate from aioredis to redis with asyncio support

Add test for redis type
Fix imports from wrong module (for tests_sync)

* fixing merge conflicts and up to dating the lock file

Co-authored-by: Chayim I. Kirshen <c@kirshen.com>
2 years ago
Mahmoud Harmouch e5e887229a
Implement page function (#339)
* implement page function

Signed-off-by: wiseaidev <business@wiseai.dev>

* add unit tests

Signed-off-by: wiseaidev <business@wiseai.dev>

* fix linter issues

Signed-off-by: wiseaidev <business@wiseai.dev>
2 years ago
Mahmoud Harmouch ac6a75be19
fixed a potential bug (#337)
* fixed a potential bug

Signed-off-by: wiseaidev <business@wiseai.dev>

* add unit tests

Signed-off-by: wiseaidev <business@wiseai.dev>

* remove unnecessary logic related to six module

Signed-off-by: wiseaidev <business@wiseai.dev>

* remove six from dependencies

Signed-off-by: wiseaidev <business@wiseai.dev>

* pass "ignore" as a kwarg

Signed-off-by: wiseaidev <business@wiseai.dev>

* get rid of try catch and simplify logic

Signed-off-by: wiseaidev <business@wiseai.dev>

* rm poetry.lock

Signed-off-by: wiseaidev <business@wiseai.dev>

* rm poetry.lock

Signed-off-by: wiseaidev <business@wiseai.dev>

* run black

Signed-off-by: wiseaidev <business@wiseai.dev>

* fix mypy issue

Signed-off-by: wiseaidev <business@wiseai.dev>

* adjust other tests accordingly

Signed-off-by: wiseaidev <business@wiseai.dev>
2 years ago
Serhii Charykov 85540c02bd Implement temporary workaround from unasync package 2 years ago
Serhii Charykov 490fcec1a7 Fix DeprecationWarning '@pytest.fixture' 2 years ago
Serhii Charykov 838a712d57 Remove deletion logic duplication 2 years ago
Serhii Charykov 0ae8ef882e Refactoring 2 years ago
Serhii Charykov 56f1d35de9 lint & format 2 years ago
Serhii Charykov 5016f739dd Fix ordering in test_full_text_search_queries 2 years ago
Serhii Charykov 675722b221 Add redis "barrier" in cleanup_keys
To prevent pytest-xdist workers stomping each other with _delete_test_keys
2 years ago
Simon Prickett e5c6c0494a Adds test for first() on hashes. 2 years ago
Simon Prickett eefa5a9f42 Added test for HashModel all_pks() 2 years ago
Simon Prickett 274ff788b1 Adds all_pks() method and test. 2 years ago
Simon Prickett b42e63606a Adds expire and test. 2 years ago
Simon Prickett 6d009a0d72 Fixed linter errors, refactored delete. 2 years ago
Simon Prickett 885b24b35b Adds delete function at a class level. 2 years ago
Simon Prickett 7fa62da881 Linter fixes. 2 years ago
Simon Prickett 954913031a Amended schema test too. 2 years ago
Simon Prickett 8d69b59916 Adds tests for full text hash search. 2 years ago
Andrew Brookins e4e3583006 Document some possible error messages 3 years ago
Andrew Brookins 269d44c26e Final docs push 3 years ago
Andrew Brookins 5dee757041 Add linted change 3 years ago
Andrew Brookins 3cd22b30bf Remove outdated comment 3 years ago
Andrew Brookins 58a798444d Clean up test keys properly 3 years ago
Andrew Brookins 5ab53c916c Support both sync and asyncio uses 3 years ago
Andrew Brookins ca6ae7d6e9 Merge branch 'main' into asyncio 3 years ago
Andrew Brookins bc441143de Add all_pks() method to HashModel 3 years ago
Andrew Brookins 2b1994b98b Disable features without required Redis modules
Some features, like querying and embedded models, require
either the RediSearch or RedisJSON modules running in Redis.
Without these modules, using these features would result
in inscrutable errors.

We now disable some tests if the Redis module required for the
test is not found in the Redis instance the tests are using,
and raise errors or log messages if the same is true during
execution of HashModel and JsonModel.
3 years ago
Andrew Brookins 1921a49059 Fix linting 3 years ago
Andrew Brookins 7c0bea751b WIP on README 3 years ago
Andrew Brookins 09c91fb756 Add building, linting for PyPI upload 3 years ago
Andrew Brookins c9967b0d40 Rename to redis_om 3 years ago
Andrew Brookins b2c2dd9f6f WIP on async - test failure due to closed event loop 3 years ago
Andrew Brookins 0f9f7aa868 Attempt run-time change of type annotations on model fields 3 years ago
Andrew Brookins 7155b9af35 Lint 3 years ago
Andrew Brookins 2ffd4e6f5a Run tests across multiple cores/CPUs 3 years ago
Andrew Brookins 49654eeede Refine connection strings (dotenv), Makefile targets 3 years ago
Andrew Brookins d2fa4c586f Add Makefile, black, reformat with black 3 years ago
Andrew Brookins 2bd71ff087 Rename orm module to om 3 years ago
Andrew Brookins c51a071982 Tests & errors for preview list limitations 3 years ago
Andrew Brookins 389a6ea878 Add support for IN queries 3 years ago
Andrew Brookins bb08fb9eb5 Use a default value for the "embedded" config 3 years ago