Skip to main content
TOREDIS
=======

This is minimalistic, but feature rich redis client for Tornado built on top of `hiredis <https://github.com/pietern/hiredis-py>`_ protocol parser.

Supports all redis commands, which are auto-generated from the redis `JSON documentation file <https://github.com/antirez/redis-doc/blob/master/commands.json>`_.

Key design points:

1. While toredis attempts to add some syntactical sugar to the API, all responses are returned "as is". For example, if command returns
list of items and developer requested only one key, list with one entry will be returned. For example::

def handle(self, result):
print(len(result))

conn.hkeys('test1', handle)


2. Most redis commands accept one or more keys. Toredis adds a bit of logic to handle single key or array of keys. Due to python
limitations, it is not possible to use ``*args`` with named ``callback`` argument, so you will have to pass array of key names::

# This will work
conn.blpop('test', callback=callback)
conn.blpop(['test', 'test2'], callback=callback)

# This won't work
conn.blpop('test', 'test2', callback=callback)


3. If redis connection will be dropped while waiting for response, callback will be triggered with `None` as a value.

4. Toredis does not provide reconnection feature, but you can override :meth:`~toredis.Client.on_disconnect` method and implement your reconnection logic.

You can find command `documentation here <https://github.com/mrjoes/toredis/blob/master/toredis/commands.py>`_ (will be moved to rtd later).

Pipelining is also supported::

# For more than one pipeline for connection create it with Pipeline(conn)
pipeline = conn.pipeline()
pipeline.set('foo', 'bar')
pipeline.get('foo')
pipeline.send(callback=callback)

For more examples please refer to tests.
More on `redis pipelining <http://redis.io/topics/pipelining>`_.

Things missing:

* Backport pure-python redis protocol parser (for PyPy support)
* Connection pools

Metadata

Release files for toredis-fork 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for toredis-fork 0.1.4
File Size Uploaded Provenance
toredis-fork-0.1.4.tar.gz 12.0 kB Without provenance Details

Release files / toredis-fork-0.1.4.tar.gz

Download URL toredis-fork-0.1.4.tar.gz
Size 12.0 kB
Tags Source
SHA-256 checksum
How to use checksums
06f1f88bc132fa0e0e148c393b01bb85d7eb8633877300f3ada74d380abaffe4
BLAKE2b-256 checksum
How to use checksums
fb3c1224e002cf9f1d23dad5d5ac0ded131c994d00b50f66ca76198778350bcd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for toredis-fork 0.1.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page