Model Redis data structures
Project description
aioredis-models
A wrapper over aioredis that models Redis data as simple data structures.
Supported data structures
- Keys
- Strings
- Lists
- Hash maps
- Sets
- Double hash maps
Requirements
- Python 3.6+
- aioredis requirements
Documentation
Detailed documentation is available at https://aioredis-models.readthedocs.io/.
Usage
Construction of all data structures requires at least an aioredis.Redis
instance
and a key. For example, to create a RedisString
:
from aioredis-models import RedisString
redis_string = RedisString(redis, 'my-string')
Once a model has been constructed, various functions can be used to interact with it.
import aioredis
from aioredis-models import RedisString
async def do_work(redis_string: RedisString):
stored_value = await redis_string.get()
print(stored_value)
Contributing
The library is currently in very early stages of development and there is a lot of room for growth.
As such, contributions are welcome. To contribute, create a pull request into the main
branch.
Make sure the tests pass and there are no linting errors. Also, please update documentation, if
needed.
Testing
The easiest way to run the tests is through docker-compose and Docker:
docker-compose up --build unit-test
To run directly on the host:
pip3 install -r requirements.txt
tox -e unit-py39
End-to-end tests can also be run with docker-compose:
docker-compose up --build e2e-test
Linting
Similar to testing, linting rules can be run through:
docker-compose up --build lint
To run directly on the host:
pip3 install -r requirements.txt
pylint aioredis_models
Documentation
Documentation can get regenerated by starting the generate-docs
service in docker-compose:
docker-compose up --build generate-docs
To run directly on the host:
pip3 install -r requirements.txt
sphinx-apidoc -f -o docs/source aioredis_models && (cd docs && make html)
License
This library is offered under the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file aioredis-models-3.0.0.tar.gz
.
File metadata
- Download URL: aioredis-models-3.0.0.tar.gz
- Upload date:
- Size: 12.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4622ddd984e9148dc4d9e204487bbd258f5a5044490c7ba19105f49da4422fae |
|
MD5 | 51280b407e1d7d5254f41f0aa2240ce9 |
|
BLAKE2b-256 | 255fa1c97b5fa5e45d8c67a966867addf500c80afaf7b085685c269a14265ce4 |
File details
Details for the file aioredis_models-3.0.0-py3-none-any.whl
.
File metadata
- Download URL: aioredis_models-3.0.0-py3-none-any.whl
- Upload date:
- Size: 17.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd12cb84e4683151d65780fa31512dee8e632bfcbe924bc30365ceb38dc3169b |
|
MD5 | 4829a1d64b8d4e7c14980d9cd8ae9d99 |
|
BLAKE2b-256 | 51915a17d611fac4f92cecd2ca0b4bcc6ef6ed1f7e0366af6f2473ac7f2a3bfb |