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.1.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: aioredis-models-2.2.1.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.1.tar.gz
Algorithm Hash digest
SHA256 0fd90337759becad22b603960b56fa9b22fed57c52d648727472fea472ea361e
MD5 f4506318523c79a8bec55dc220ac9f82
BLAKE2b-256 ae3cf1768466ab0247895218f20de7a2898f8962594fe5829211995a07a89c4d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aioredis_models-2.2.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 05ed1ca83f342111773ded9efd4f6fcdcd4d6a9c8beda3cfd3e737fa1df06635
MD5 aa027c2f9fbe175c4eb57a7f6c095389
BLAKE2b-256 9c13924ba2032eabe2a57e0dc80778d6fbb56681eb5a3afd54c4e75f7c18d2b8

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