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

Uploaded Source

Built Distribution

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

Uploaded Python 3

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

Hashes for aioredis-models-3.0.0.tar.gz
Algorithm Hash digest
SHA256 4622ddd984e9148dc4d9e204487bbd258f5a5044490c7ba19105f49da4422fae
MD5 51280b407e1d7d5254f41f0aa2240ce9
BLAKE2b-256 255fa1c97b5fa5e45d8c67a966867addf500c80afaf7b085685c269a14265ce4

See more details on using hashes here.

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

Hashes for aioredis_models-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bd12cb84e4683151d65780fa31512dee8e632bfcbe924bc30365ceb38dc3169b
MD5 4829a1d64b8d4e7c14980d9cd8ae9d99
BLAKE2b-256 51915a17d611fac4f92cecd2ca0b4bcc6ef6ed1f7e0366af6f2473ac7f2a3bfb

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