Metadata-Version: 1.1
Name: aioredis
Version: 0.2.4
Summary: asyncio (PEP 3156) Redis support
Home-page: https://github.com/aio-libs/aioredis
Author: Alexey Popravka
Author-email: alexey.popravka@horsedevel.com
License: MIT
Description: aioredis
        ========
        
        asyncio (PEP 3156) Redis client library.
        
        .. image:: https://travis-ci.org/aio-libs/aioredis.svg?branch=master
           :target: https://travis-ci.org/aio-libs/aioredis
        
        
        .. image:: https://coveralls.io/repos/aio-libs/aioredis/badge.png?branch=master
           :target: https://coveralls.io/r/aio-libs/aioredis?branch=master
        
        Features
        --------
        
        ================================  ==============================
        hiredis_ parser                     Yes
        Pure-python parser                  TBD
        Low-level & High-level APIs         Yes
        Connections Pool                    Yes
        Pipelining support                  Yes
        Pub/Sub support                     Yes
        Redis Cluster support               WIP
        Trollius (python 2.7)               No
        Tested python versions              `3.3, 3.4, 3.5`_
        Tested for Redis server             `2.6, 2.8, 3.0`_
        Support for dev Redis server        through low-level API
        ================================  ==============================
        
        Documentation
        -------------
        
        http://aioredis.readthedocs.org/
        
        Usage examples
        --------------
        
        Simple low-level interface:
        
        .. code:: python
        
            import asyncio
            import aioredis
        
            loop = asyncio.get_event_loop()
        
            @asyncio.coroutine
            def go():
                conn = yield from aioredis.create_connection(
                    ('localhost', 6379), loop=loop)
                yield from conn.execute('set', 'my-key', 'value')
                val = yield from conn.execute('get', 'my-key')
                print(val)
                conn.close()
            loop.run_until_complete(go())
            # will print 'value'
        
        Simple high-level interface:
        
        .. code:: python
        
            import asyncio
            import aioredis
        
            loop = asyncio.get_event_loop()
        
            @asyncio.coroutine
            def go():
                redis = yield from aioredis.create_redis(
                    ('localhost', 6379), loop=loop)
                yield from redis.set('my-key', 'value')
                val = yield from redis.get('my-key')
                print(val)
                redis.close()
            loop.run_until_complete(go())
            # will print 'value'
        
        Connections pool:
        
        .. code:: python
        
            import asyncio
            import aioredis
        
            loop = asyncio.get_event_loop()
        
            @asyncio.coroutine
            def go():
                pool = yield from aioredis.create_pool(
                    ('localhost', 6379),
                    minsize=5, maxsize=10,
                    loop=loop)
                with (yield from pool) as redis:    # high-level redis API instance
                    yield from redis.set('my-key', 'value')
                    print((yield from redis.get('my-key')))
                yield from pool.clear()    # closing all open connections
        
            loop.run_until_complete(go())
        
        
        Requirements
        ------------
        
        * Python_ 3.3+
        * asyncio_ or Python_ 3.4+
        * hiredis_
        
        .. note::
        
            hiredis is preferred requirement.
            Pure-python fallback protocol parser is TBD.
        
        
        License
        -------
        
        The aioredis is offered under MIT license.
        
        .. _Python: https://www.python.org
        .. _asyncio: https://pypi.python.org/pypi/asyncio
        .. _hiredis: https://pypi.python.org/pypi/hiredis
        .. _3.3, 3.4, 3.5:
        .. _2.6, 2.8, 3.0:
        .. _travis: https://travis-ci.org/aio-libs/aioredis
        
        Changes
        -------
        
        0.2.4 (2015-10-13)
        ^^^^^^^^^^^^^^^^^^
        
        * Python 3.5 ``async`` support:
        
          - New scan commands API (``iscan``, ``izscan``, ``ihscan``);
        
          - Pool made awaitable (allowing ``with await pool: ...`` constructs);
        
        * Fixed dropping closed connections from free pool
          (see `#83 <https://github.com/aio-libs/aioredis/issues/83>`_);
        
        * Docs updated;
        
        
        0.2.3 (2015-08-14)
        ^^^^^^^^^^^^^^^^^^
        
        * Redis cluster support work in progress;
        
        * Fixed pool issue causing pool growth over max size & ``acquire`` call hangs
          (see `#71 <https://github.com/aio-libs/aioredis/issues/71>`_);
        
        * ``info`` server command result parsing implemented;
        
        * Fixed behavior of util functions
          (see `#70 <https://github.com/aio-libs/aioredis/issues/70>`_);
        
        * ``hstrlen`` command added;
        
        * Few fixes in examples;
        
        * Few fixes in documentation;
        
        
        0.2.2 (2015-07-07)
        ^^^^^^^^^^^^^^^^^^
        
        * Decoding data with ``encoding`` paramter now takes into account
          list (array) replies
          (see `#68 <https://github.com/aio-libs/aioredis/pull/68>`_);
        
        * ``encoding`` parameter added to following commands:
        
          - generic commands: keys, randomkey;
        
          - hash commands: hgetall, hkeys, hmget, hvals;
        
          - list commands: blpop, brpop, brpoplpush, lindex, lpop, lrange, rpop, rpoplpush;
        
          - set commands: smembers, spop, srandmember;
        
          - string commands: getrange, getset, mget;
        
        * Backward incompatibility:
        
          ``ltrim`` command now returns bool value instead of 'OK';
        
        * Tests updated;
        
        
        0.2.1 (2015-07-06)
        ^^^^^^^^^^^^^^^^^^
        
        * Logging added (aioredis.log module);
        
        * Fixed issue with ``wait_message`` in pub/sub
          (see `#66 <https://github.com/aio-libs/aioredis/issues/66>`_);
        
        
        0.2.0 (2015-06-04)
        ^^^^^^^^^^^^^^^^^^
        
        * Pub/Sub support added;
        
        * Fix in ``zrevrangebyscore`` command
          (see `#62 <https://github.com/aio-libs/aioredis/pull/62>`_);
        
        * Fixes/tests/docs;
Platform: POSIX
Classifier: License :: OSI Approved :: MIT License
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Operating System :: POSIX
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
