Skip to main content

Model Redis data structures

Reason this release was yanked:

This should have been a major version upgrade. Please use 3.0.0 instead.

Project description

aioredis-models

A wrapper over aioredis that models Redis data as simple data structures.

GitHub PyPI

GitHub Workflow Status (event) Documentation Status codecov GitHub Workflow Status

Supported data structures

  • Keys
  • Strings
  • Lists
  • Hash maps
  • Sets
  • Double hash maps

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aioredis-models-2.2.0.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

aioredis_models-2.2.0-py3-none-any.whl (17.3 kB view details)

Uploaded Python 3

File details

Details for the file aioredis-models-2.2.0.tar.gz.

File metadata

  • Download URL: aioredis-models-2.2.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

Hashes for aioredis-models-2.2.0.tar.gz
Algorithm Hash digest
SHA256 ffe08c8ed6f5481d3333bb5f9730397da4ada637978e86f0cc35a47b80c64f35
MD5 5a890ce821273da03c776e83e3ea8409
BLAKE2b-256 9d398a85c4799f8e5db1fd48f3982baac38229e1682fce328a8756a310411378

See more details on using hashes here.

File details

Details for the file aioredis_models-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: aioredis_models-2.2.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

Hashes for aioredis_models-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d0287934255231af342584531cb95bd460fc7899d9a53a00ccd6a5d66c1ff564
MD5 3b74f97ad7b7fb38c09fb890ad211327
BLAKE2b-256 709977077aaa88913809d58ddf89661f4bc6fdb461af4c94d67b6bd6e28467ee

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page