Skip to main content

Model Redis data structures

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

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

Uploaded Source

Built Distribution

aioredis_models-1.2.0-py3-none-any.whl (11.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: aioredis-models-1.2.0.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for aioredis-models-1.2.0.tar.gz
Algorithm Hash digest
SHA256 d31799bc10f43e30ab57753d6d1d622f2bf4117ecb199c5545a6ae896d432d65
MD5 5defdadf4c3ef1f23a3c0809a7e528c1
BLAKE2b-256 2d1dc5fc88a26685262300c5a3a59e45840cfbfbe84c108e6f76f3375e38ef52

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aioredis_models-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 11.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for aioredis_models-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9da7ef0921e034613ea9cb999be24b632b72177e8d9fbaf64dbc4ed33afc03c9
MD5 816093a73085985b8b3405527d4266f1
BLAKE2b-256 192f7056263b8ff963841c9305c7846f3b1c0874aa208e78d83b983161f4497e

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