## Walrus
![](http://media.charlesleifer.com/blog/photos/walrus-logo-0.png)
Lightweight Python utilities for working with [Redis](http://redis.io).
The purpose of [walrus](https://github.com/coleifer/walrus) is to make working
with Redis in Python a little easier. Rather than ask you to learn a new
library, walrus subclasses and extends the popular `redis-py` client, allowing
it to be used as a drop-in replacement. In addition to all the features in
`redis-py`, walrus adds support for some newer commands, including full support
for streams and consumer groups.
walrus consists of:
* Pythonic container classes for the Redis data-types:
* [Hash](https://walrus.readthedocs.io/en/latest/containers.html#hashes)
* [List](https://walrus.readthedocs.io/en/latest/containers.html#lists)
* [Set](https://walrus.readthedocs.io/en/latest/containers.html#sets)
* [Sorted Set](https://walrus.readthedocs.io/en/latest/containers.html#sorted-sets-zset)
* [HyperLogLog](https://walrus.readthedocs.io/en/latest/containers.html#hyperloglog)
* [Array](https://walrus.readthedocs.io/en/latest/containers.html#arrays) (custom type)
* [BitField](https://walrus.readthedocs.io/en/latest/containers.html#bitfield)
* [BloomFilter](https://walrus.readthedocs.io/en/latest/containers.html#bloomfilter)
* [**Streams**](https://walrus.readthedocs.io/en/latest/streams.html)
* [Autocomplete](https://walrus.readthedocs.io/en/latest/autocomplete.html)
* [Cache](https://walrus.readthedocs.io/en/latest/cache.html) implementation that exposes several decorators for caching function and method calls.
* [Full-text search](https://walrus.readthedocs.io/en/latest/full-text-search.html) supporting set operations.
* [Graph store](https://walrus.readthedocs.io/en/latest/graph.html)
* [Rate-limiting](https://walrus.readthedocs.io/en/latest/rate-limit.html)
* [Locking](https://walrus.readthedocs.io/en/latest/api.html#walrus.Lock)
* **Experimental** active-record style [Models](https://walrus.readthedocs.io/en/latest/models.html) that support persisting structured information and performing complex queries using secondary indexes.
* More? [More!](https://walrus.readthedocs.io)
### Models
Persistent structures implemented on top of Hashes. Supports secondary indexes to allow filtering on equality, inequality, ranges, less/greater-than, and a basic full-text search index. The full-text search features a boolean search query parser, porter stemmer, stop-word filtering, and optional double-metaphone implementation.
### Found a bug?
![](http://media.charlesleifer.com/blog/photos/p1420743625.21.png)
Please open a [github issue](https://github.com/coleifer/walrus/issues/new) and I will try my best to fix it!
### Alternative Backends
Walrus also can integrate with the Redis-like databases [rlite](https://github.com/seppo0010/rlite), [ledis](http://ledisdb.io/), and [vedis](http://vedis.symisc.net). Check the [documentation](https://walrus.readthedocs.io/en/latest/alt-backends.html) for more details.
Raw data
{
"_id": null,
"home_page": "http://github.com/coleifer/walrus/",
"name": "walrus",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "Charles Leifer",
"author_email": "coleifer@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/42/68/f723c30e9fa0a7932eae09cccf02d48a42c87861863ae11a38f6042b2f70/walrus-0.9.4.tar.gz",
"platform": null,
"description": "## Walrus\n\n![](http://media.charlesleifer.com/blog/photos/walrus-logo-0.png)\n\nLightweight Python utilities for working with [Redis](http://redis.io).\n\nThe purpose of [walrus](https://github.com/coleifer/walrus) is to make working\nwith Redis in Python a little easier. Rather than ask you to learn a new\nlibrary, walrus subclasses and extends the popular `redis-py` client, allowing\nit to be used as a drop-in replacement. In addition to all the features in\n`redis-py`, walrus adds support for some newer commands, including full support\nfor streams and consumer groups.\n\nwalrus consists of:\n\n* Pythonic container classes for the Redis data-types:\n * [Hash](https://walrus.readthedocs.io/en/latest/containers.html#hashes)\n * [List](https://walrus.readthedocs.io/en/latest/containers.html#lists)\n * [Set](https://walrus.readthedocs.io/en/latest/containers.html#sets)\n * [Sorted Set](https://walrus.readthedocs.io/en/latest/containers.html#sorted-sets-zset)\n * [HyperLogLog](https://walrus.readthedocs.io/en/latest/containers.html#hyperloglog)\n * [Array](https://walrus.readthedocs.io/en/latest/containers.html#arrays) (custom type)\n * [BitField](https://walrus.readthedocs.io/en/latest/containers.html#bitfield)\n * [BloomFilter](https://walrus.readthedocs.io/en/latest/containers.html#bloomfilter)\n * [**Streams**](https://walrus.readthedocs.io/en/latest/streams.html)\n* [Autocomplete](https://walrus.readthedocs.io/en/latest/autocomplete.html)\n* [Cache](https://walrus.readthedocs.io/en/latest/cache.html) implementation that exposes several decorators for caching function and method calls.\n* [Full-text search](https://walrus.readthedocs.io/en/latest/full-text-search.html) supporting set operations.\n* [Graph store](https://walrus.readthedocs.io/en/latest/graph.html)\n* [Rate-limiting](https://walrus.readthedocs.io/en/latest/rate-limit.html)\n* [Locking](https://walrus.readthedocs.io/en/latest/api.html#walrus.Lock)\n* **Experimental** active-record style [Models](https://walrus.readthedocs.io/en/latest/models.html) that support persisting structured information and performing complex queries using secondary indexes.\n* More? [More!](https://walrus.readthedocs.io)\n\n### Models\n\nPersistent structures implemented on top of Hashes. Supports secondary indexes to allow filtering on equality, inequality, ranges, less/greater-than, and a basic full-text search index. The full-text search features a boolean search query parser, porter stemmer, stop-word filtering, and optional double-metaphone implementation.\n\n### Found a bug?\n\n![](http://media.charlesleifer.com/blog/photos/p1420743625.21.png)\n\nPlease open a [github issue](https://github.com/coleifer/walrus/issues/new) and I will try my best to fix it!\n\n### Alternative Backends\n\nWalrus also can integrate with the Redis-like databases [rlite](https://github.com/seppo0010/rlite), [ledis](http://ledisdb.io/), and [vedis](http://vedis.symisc.net). Check the [documentation](https://walrus.readthedocs.io/en/latest/alt-backends.html) for more details.\n",
"bugtrack_url": null,
"license": null,
"summary": "walrus",
"version": "0.9.4",
"project_urls": {
"Homepage": "http://github.com/coleifer/walrus/"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "4268f723c30e9fa0a7932eae09cccf02d48a42c87861863ae11a38f6042b2f70",
"md5": "a325f37cc599305abe7ed227d52dcd01",
"sha256": "b9f190b9c9a5192f144ffdd7b628eff5d5dbe3353bb2fb5aa48026594e82b7aa"
},
"downloads": -1,
"filename": "walrus-0.9.4.tar.gz",
"has_sig": false,
"md5_digest": "a325f37cc599305abe7ed227d52dcd01",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 82791,
"upload_time": "2024-06-22T12:53:04",
"upload_time_iso_8601": "2024-06-22T12:53:04.568505Z",
"url": "https://files.pythonhosted.org/packages/42/68/f723c30e9fa0a7932eae09cccf02d48a42c87861863ae11a38f6042b2f70/walrus-0.9.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-06-22 12:53:04",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "coleifer",
"github_project": "walrus",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "redis",
"specs": []
}
],
"lcname": "walrus"
}