[Python-modules-commits] [aioredis] 02/05: Import aioredis_1.0.0~b2.orig.tar.gz

Piotr Ożarowski piotr at moszumanska.debian.org
Thu Jul 20 18:10:16 UTC 2017


This is an automated email from the git hooks/post-receive script.

piotr pushed a commit to branch master
in repository aioredis.

commit f4af345b62a2d6e2423e3668e6f877b1892ddf1d
Author: Piotr Ożarowski <piotr at debian.org>
Date:   Thu Jul 20 19:32:45 2017 +0200

    Import aioredis_1.0.0~b2.orig.tar.gz
---
 .appveyor.yml                             |  29 +
 .bumpversion.cfg                          |   9 +
 .gitignore                                |  63 +++
 .pyup.yml                                 |   3 +
 .travis.yml                               |  72 +++
 CHANGES.txt                               | 304 +++--------
 CONTRIBUTORS.txt                          |   6 +
 CHANGES.txt => HISTORY.rst                | 141 +++--
 LICENSE                                   |   2 +-
 Makefile                                  | 111 ++++
 PKG-INFO                                  | 325 ++++-------
 README.rst                                |  18 +-
 aioredis.egg-info/PKG-INFO                | 325 ++++-------
 aioredis.egg-info/SOURCES.txt             |  37 +-
 aioredis.egg-info/requires.txt            |   1 +
 aioredis/__init__.py                      |  54 +-
 aioredis/commands/__init__.py             | 138 ++---
 aioredis/commands/cluster.py              |  26 +-
 aioredis/commands/generic.py              |  93 +++-
 aioredis/commands/geo.py                  |  12 +-
 aioredis/commands/hash.py                 |  33 +-
 aioredis/commands/hyperloglog.py          |   6 +-
 aioredis/commands/list.py                 |  39 +-
 aioredis/commands/pubsub.py               |  24 +-
 aioredis/commands/scripting.py            |  13 +-
 aioredis/commands/server.py               |  91 ++--
 aioredis/commands/set.py                  |  30 +-
 aioredis/commands/sorted_set.py           |  82 ++-
 aioredis/commands/string.py               |  53 +-
 aioredis/commands/transaction.py          |  35 +-
 aioredis/connection.py                    |  74 ++-
 aioredis/errors.py                        |  15 +
 aioredis/locks.py                         |  44 ++
 aioredis/log.py                           |  12 +
 aioredis/parser.py                        | 164 ++++++
 aioredis/pool.py                          | 248 +++++++--
 aioredis/pubsub.py                        |  35 +-
 aioredis/sentinel/__init__.py             |   9 +
 aioredis/sentinel/commands.py             | 194 +++++++
 aioredis/sentinel/pool.py                 | 473 +++++++++++++++++
 aioredis/streams.py                       |  53 ++
 aioredis/util.py                          |  15 +-
 docs/Makefile                             | 183 +++++++
 docs/_build/man/aioredis.1                | 857 +++++++++++++++++++++++-------
 docs/_templates/layout.html               |  23 +
 docs/api_reference.rst                    | 216 ++++++--
 docs/conf.py                              | 294 ++++++++++
 docs/examples.rst                         |   8 +
 docs/index.rst                            |   9 +-
 docs/mixins.rst                           |   4 +
 docs/requirements.txt                     |   4 +
 docs/sentinel.rst                         |  31 ++
 docs/spelling_wordlist.txt                | 132 +++++
 examples/commands.py                      |  37 +-
 examples/connection.py                    |  33 +-
 examples/pool.py                          |  27 +-
 examples/pool2.py                         |  10 +-
 examples/pool_pubsub.py                   |  18 +-
 examples/pubsub.py                        |  42 +-
 examples/pubsub2.py                       |   2 +-
 examples/py34/pool.py                     |   6 +-
 examples/py34/pool_pubsub.py              |  20 +-
 examples/py34/pubsub2.py                  |   2 +-
 examples/redis-sentinel.conf              |   9 +
 examples/redis.conf                       |   7 +
 examples/scan.py                          |  26 +-
 examples/sentinel.py                      |  19 +
 examples/transaction.py                   |  33 +-
 examples/transaction2.py                  |   1 +
 setup.cfg                                 |   2 +-
 setup.py                                  |   6 +-
 tests/conftest.py                         | 442 +++++++++++----
 tests/connection_commands_test.py         |  53 +-
 tests/connection_test.py                  | 145 ++++-
 tests/generic_commands_test.py            | 269 +++++++---
 tests/hash_commands_test.py               |  12 +-
 tests/integrational/integrational_test.py | 108 ++++
 tests/locks_test.py                       |  33 ++
 tests/log_test.py                         |  14 -
 tests/multi_exec_test.py                  |   5 +-
 tests/pool_test.py                        | 191 +++++--
 tests/pubsub_commands_test.py             |  30 +-
 tests/pubsub_receiver_test.py             |   9 +-
 tests/py35_pool_test.py                   |   4 +-
 tests/py35_pubsub_receiver_test.py        |  29 +-
 tests/pyreader_test.py                    | 234 ++++++++
 tests/reconnect_test.py                   |  40 --
 tests/requirements.txt                    |   7 +
 tests/scripting_commands_test.py          |   2 +-
 tests/sentinel_commands_test.py           | 244 +++++++++
 tests/sentinel_failover_test.py           | 190 +++++++
 tests/server_commands_test.py             | 153 +++++-
 tests/set_commands_test.py                |   2 -
 tests/sorted_set_commands_test.py         |  66 ++-
 tests/ssl/Makefile                        |  15 +
 tests/ssl/cafile.crt                      |  21 +
 tests/ssl/cert.pem                        |  49 ++
 tests/ssl/dhparam.pem                     |   8 +
 tests/ssl_test.py                         |   4 +-
 tests/string_commands_test.py             |  65 ++-
 tests/task_cancellation.py                |  34 --
 tests/transaction_commands_test.py        |  26 +-
 102 files changed, 6144 insertions(+), 1932 deletions(-)

diff --git a/.appveyor.yml b/.appveyor.yml
new file mode 100644
index 0000000..745c82b
--- /dev/null
+++ b/.appveyor.yml
@@ -0,0 +1,29 @@
+version: 1.0.0b1{build}
+build: off
+
+environment:
+  REDIS: "C:\\ProgramData\\chocolatey\\lib\\redis-64"
+  PYTHONASYNCIODEBUG: "1"
+  matrix:
+  - PYTHON: "C:\\Python35"
+  - PYTHON: "C:\\Python35-x64"
+  - PYTHON: "C:\\Python36"
+  - PYTHON: "C:\\Python36-x64"
+
+install:
+- "cinst redis-64"
+- "%PYTHON%\\python.exe -m pip install -r tests/requirements.txt"
+- "%PYTHON%\\python.exe -m pip install -e ."
+
+test_script:
+- "%REDIS%\\redis-server.exe --version"
+- "%PYTHON%\\python.exe -c \"import sys; print(sys.version)\""
+- "%PYTHON%\\python.exe -m pytest -svv --cov --cov-report=xml --junit-xml=results.xml --redis-server=%REDIS%\\redis-server.exe"
+
+on_finish:
+- ps: >-
+    $wc = New-Object 'System.Net.WebClient'
+
+    $wc.UploadFile("https://ci.appveyor.com/api/testresults/junit/$($env:APPVEYOR_JOB_ID)", (Resolve-Path results.xml))
+- "%PYTHON%\\python.exe -m pip install codecov"
+- "%PYTHON%\\python.exe -m codecov -f \"coverage.xml\""
diff --git a/.bumpversion.cfg b/.bumpversion.cfg
new file mode 100644
index 0000000..93751ba
--- /dev/null
+++ b/.bumpversion.cfg
@@ -0,0 +1,9 @@
+[bumpversion]
+current_version = 1.0.0
+commit = True
+tag = True
+
+[bumpversion:file:aioredis/__init__.py]
+
+[bumpversion:file:docs/conf.py]
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..d82541e
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,63 @@
+# Byte-compiled / optimized / DLL files
+__pycache__/
+*.py[cod]
+
+# C extensions
+*.so
+
+# Distribution / packaging
+.Python
+env/
+bin/
+build/
+develop-eggs/
+dist/
+eggs/
+lib/
+lib64/
+parts/
+sdist/
+var/
+*.egg-info/
+.installed.cfg
+*.egg
+
+# Installer logs
+pip-log.txt
+pip-delete-this-directory.txt
+
+# Unit test / coverage reports
+htmlcov/
+.tox/
+.coverage
+.cache
+nosetests.xml
+coverage.xml
+
+# Translations
+*.mo
+
+# Mr Developer
+.mr.developer.cfg
+.project
+.pydevproject
+
+#PyCharm
+.idea/
+
+# Rope
+.ropeproject
+
+# Django stuff:
+*.log
+*.pot
+
+# Sphinx documentation
+docs/_build/
+
+# OS hidden files
+.DS_Store
+
+# Vim
+.vim
+tests/ssl
diff --git a/.pyup.yml b/.pyup.yml
new file mode 100644
index 0000000..09f1ffc
--- /dev/null
+++ b/.pyup.yml
@@ -0,0 +1,3 @@
+# Label PRs with `deps-update` label
+label_prs: deps-update
+branch: pyup
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000..6f628f6
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,72 @@
+sudo: false
+dist: trusty
+
+language: python
+
+addons:
+  apt:
+    packages:
+    - socat
+    - enchant
+    - aspell
+    - aspell-en
+
+env:
+  global:
+  - REDIS_TAGS="2.6.17 2.8.22 3.0.7 3.2.8 4.0-rc2" INSTALL_DIR=$HOME/redis PYPY_RELEASE="pypy3-v5.7.1-linux64"
+
+python:
+- "3.3"
+- "3.4"
+- "3.5"
+- "3.6"
+- "pypy-5.3.1"
+
+matrix:
+  include:
+  - python: "3.6"
+    env: DOCS_SPELL_CHECK="y"
+    install:
+    - pip install -r docs/requirements.txt
+    - pip install -e. -c tests/requirements.txt
+    script:
+    - make spelling
+  - python: "3.6"
+    env: UVLOOP="y"
+  allow_failures:
+  - env: UVLOOP="y"
+  - python: "pypy-5.3.1"
+
+install:
+- make -j ci-build-redis
+- |
+    if [ "$TRAVIS_PYTHON_VERSION" = "pypy-5.3.1" ]; then
+      wget -nv -c "https://bitbucket.org/pypy/pypy/downloads/$PYPY_RELEASE.tar.bz2" -O - | tar -xjC $HOME
+      export PYPY_VERSION="$($HOME/$PYPY_RELEASE/bin/pypy3 -V | grep PyPy | cut -d ' ' -f2)"
+      $HOME/$PYPY_RELEASE/bin/pypy3 -m venv --clear $HOME/virtualenvs/pypy3
+      $HOME/$PYPY_RELEASE/bin/pypy3 -m venv $HOME/virtualenvs/pypy3
+      source $HOME/virtualenvs/pypy3/bin/activate
+      python --version
+      pip --version
+    fi
+- |
+    if [ "$UVLOOP" = "y" ]; then
+      export TEST_ARGS="$TEST_ARGS --uvloop"
+      pip install uvloop
+    fi;
+- pip install codecov
+- pip install -r tests/requirements.txt
+- pip install -e .
+
+script:
+- make flake
+- make ci-test
+- make examples
+
+cache: pip
+before_cache:
+  - rm -rf $HOME/.cache/pip/http  # drop tar.gz cache; keep only wheels
+  - rm -f $HOME/.cache/pip/log/debug.log
+
+after_script:
+- codecov
diff --git a/CHANGES.txt b/CHANGES.txt
index 8832f86..1badcd3 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,283 +1,133 @@
 Changes
 -------
 
-0.3.1 (2017-05-09)
-^^^^^^^^^^^^^^^^^^
-
-**FIX**:
-
-* Fix pubsub Receiver missing iter() method
-  (see `#203 <https://github.com/aio-libs/aioredis/issues/203>`_);
-
-
-0.3.0 (2017-01-11)
+1.0.0 (2017-xx-xx)
 ^^^^^^^^^^^^^^^^^^
 
 **NEW**:
 
-* Pub/Sub connection commands accept ``Channel`` instances
-  (see `#168 <https://github.com/aio-libs/aioredis/pull/168>`_);
-
-* Implement new Pub/Sub MPSC (multi-producers, single-consumer) Queue --
-  ``aioredis.pubsub.Receiver``
-  (see `#176 <https://github.com/aio-libs/aioredis/pull/176>`_);
-
-* Add ``aioredis.abc`` module providing abstract base classes
-  defining interface for basic lib components;
-  (see `#176 <https://github.com/aio-libs/aioredis/pull/176>`_);
-
-* Implement Geo commands support
-  (see `#177 <https://github.com/aio-libs/aioredis/pull/177>`_
-  and `#179 <https://github.com/aio-libs/aioredis/pull/179>`_);
-
-**FIX**:
-
-* Minor tests fixes;
-
-**MISC**:
-
-* Update examples and docs to use ``async``/``await`` syntax
-  also keeping ``yield from`` examples for history
-  (see `#173 <https://github.com/aio-libs/aioredis/pull/173>`_);
-
-* Reflow Travis CI configuration; add Python 3.6 section
-  (see `#170 <https://github.com/aio-libs/aioredis/pull/170>`_);
+* Connections pool has been refactored; now ``create_redis``
+  function will yield ``Redis`` instance instead of ``RedisPool``
+  (see `#129 <https://github.com/aio-libs/aioredis/pull/129>`_);
 
-* Add AppVeyor integration to run tests on Windows
-  (see `#180 <https://github.com/aio-libs/aioredis/pull/180>`_);
+* Dropped ``create_reconnecting_redis``, ``create_redis_pool`` should be
+  used instead;
 
-* Update multiple development requirements;
+* Implement Sentinel support
+  (see `#181 <https://github.com/aio-libs/aioredis/pull/181>`_);
 
+* Implement pure-python parser
+  (see `#212 <https://github.com/aio-libs/aioredis/pull/212>`_);
 
-0.2.9 (2016-10-24)
-^^^^^^^^^^^^^^^^^^
+* Add ``migrate_keys`` command
+  (see `#187 <https://github.com/aio-libs/aioredis/pull/187>`_);
 
-**NEW**:
+* Add ``zrevrangebylex`` command
+  (see `#201 <https://github.com/aio-libs/aioredis/pull/201>`_);
 
-* Allow multiple keys in ``EXISTS`` command
-  (see `#156 <https://github.com/aio-libs/aioredis/issues/156>`_
-  and `#157 <https://github.com/aio-libs/aioredis/issues/157>`_);
+* Add ``command``, ``command_count``, ``command_getkeys`` and
+  ``command_info`` commands
+  (see `#229 <https://github.com/aio-libs/aioredis/pull/229>`_);
 
 **FIX**:
 
-* Close RedisPool when connection to Redis failed
-  (see `#136 <https://github.com/aio-libs/aioredis/issues/136>`_);
-
-* Add simple ``INFO`` command argument validation
-  (see `#140 <https://github.com/aio-libs/aioredis/issues/140>`_);
-
-* Remove invalid uses of ``next()``
-
-**MISC**:
-
-* Update devel.rst docs; update Pub/Sub Channel docs (cross-refs);
-
-* Update MANIFEST.in to include docs, examples and tests in source bundle;
-
-
-0.2.8 (2016-07-22)
-^^^^^^^^^^^^^^^^^^
-
-**NEW**:
+* Fix critical bug in patched asyncio.Lock
+  (see `#256 <https://github.com/aio-libs/aioredis/pull/256>`_);
 
-* Add ``hmset_dict`` command
-  (see `#130 <https://github.com/aio-libs/aioredis/issues/130>`_);
+* Fix Multi/Exec transaction canceled error
+  (see `#225 <https://github.com/aio-libs/aioredis/pull/225>`_);
 
-* Add ``RedisConnection.address`` property;
+* Add missing arguments to ``create_redis`` and ``create_redis_pool``;
 
-* RedisPool ``minsize``/``maxsize`` must not be ``None``;
+* Fix deprecation warning
+  (see `#191 <https://github.com/aio-libs/aioredis/pull/191>`_);
 
-* Implement ``close()``/``wait_closed()``/``closed`` interface for pool
-  (see `#128 <https://github.com/aio-libs/aioredis/issues/128>`_);
+* Make correct ``__aiter__()``
+  (see `#192 <https://github.com/aio-libs/aioredis/pull/192>`_);
 
-**FIX**:
+* Backward compatibility fix for ``with (yield from pool) as conn:``
+  (see `#205 <https://github.com/aio-libs/aioredis/pull/205>`_);
 
-* Add test for ``hstrlen``;
-
-* Test fixes
+* Fixed pubsub receiver stop()
+  (see `#211 <https://github.com/aio-libs/aioredis/pull/211>`_);
 
 **MISC**:
 
-* Enable Redis 3.2.0 on Travis;
-
-* Add spell checking when building docs
-  (see `#132 <https://github.com/aio-libs/aioredis/issues/132>`_);
-
-* Documentation updated;
-
-
-0.2.7 (2016-05-27)
-^^^^^^^^^^^^^^^^^^
-
-* ``create_pool()`` minsize default value changed to 1;
-
-* Fixed cancellation of wait_closed
-  (see `#118 <https://github.com/aio-libs/aioredis/issues/118>`_);
-
-* Fixed ``time()`` convertion to float
-  (see `#126 <https://github.com/aio-libs/aioredis/issues/126>`_);
-
-* Fixed ``hmset()`` method to return bool instead of ``b'OK'``
-  (see `#126`_);
-
-* Fixed multi/exec + watch issue (changed watch variable was causing
-  ``tr.execute()`` to fail)
-  (see `#121 <https://github.com/aio-libs/aioredis/issues/121>`_);
-
-* Replace ``asyncio.Future`` uses with utility method
-  (get ready to Python 3.5.2 ``loop.create_future()``);
-
-* Tests switched from unittest to pytest (see `#126`_);
-
-* Documentation updates;
+* Multiple test fixes;
 
+* Add PyPy3 to build matrix;
 
-0.2.6 (2016-03-30)
-^^^^^^^^^^^^^^^^^^
-
-* Fixed Multi/Exec transactions cancellation issue
-  (see `#110 <https://github.com/aio-libs/aioredis/issues/110>`_
-  and `#114 <https://github.com/aio-libs/aioredis/issues/114>`_);
-
-* Fixed Pub/Sub subscribe concurrency issue
-  (see `#113 <https://github.com/aio-libs/aioredis/issues/113>`_
-  and `#115 <https://github.com/aio-libs/aioredis/issues/115>`_);
-
-* Add SSL/TLS support
-  (see  `#116 <https://github.com/aio-libs/aioredis/issues/116>`_);
-
-* ``aioredis.ConnectionClosedError`` raised in ``execute_pubsub`` as well
-  (see `#108 <https://github.com/aio-libs/aioredis/issues/108>`_);
+* Update dependencies versions;
 
-* ``Redis.slaveof()`` method signature changed: now to disable
-  replication one should call ``redis.slaveof(None)`` instead of ``redis.slaveof()``;
 
-* More tests added;
-
-
-0.2.5 (2016-03-02)
+0.3.2 (2017-06-21)
 ^^^^^^^^^^^^^^^^^^
 
-* Close all Pub/Sub channels on connection close
-  (see `#88 <https://github.com/aio-libs/aioredis/issues/88>`_);
-
-* Add ``iter()`` method to ``aioredis.Channel`` allowing to use it
-  with ``async for``
-  (see `#89 <https://github.com/aio-libs/aioredis/issues/89>`_);
-
-* Inline code samples in docs made runnable and downloadable
-  (see `#92 <https://github.com/aio-libs/aioredis/issues/92>`_);
-
-* Python 3.5 examples converted to use ``async``/``await`` syntax
-  (see `#93 <https://github.com/aio-libs/aioredis/issues/93>`_);
-
-* Fix Multi/Exec to honor encoding parameter
-  (see `#94 <https://github.com/aio-libs/aioredis/issues/94>`_
-  and `#97 <https://github.com/aio-libs/aioredis/issues/97>`_);
-
-* Add debug message in ``create_connection``
-  (see `#90 <https://github.com/aio-libs/aioredis/issues/90>`_);
-
-* Replace ``asyncio.async`` calls with wrapper that respects asyncio version
-  (see `#101 <https://github.com/aio-libs/aioredis/issues/101>`_);
-
-* Use NODELAY option for TCP sockets
-  (see `#105 <https://github.com/aio-libs/aioredis/issues/105>`_);
-
-* New ``aioredis.ConnectionClosedError`` exception added. Raised if
-  connection to Redis server is lost
-  (see `#108 <https://github.com/aio-libs/aioredis/issues/108>`_
-  and `#109 <https://github.com/aio-libs/aioredis/issues/109>`_);
-
-* Fix RedisPool to close and drop connection in subscribe mode on release;
-
-* Fix ``aioredis.util.decode`` to recursively decode list responses;
-
-* More examples added and docs updated;
-
-* Add google groups link to README;
-
-* Bump year in LICENSE and docs;
-
-
-
-0.2.4 (2015-10-13)
-^^^^^^^^^^^^^^^^^^
+**NEW**:
 
-* Python 3.5 ``async`` support:
+* Added ``zrevrangebylex`` command
+  (see `#201 <https://github.com/aio-libs/aioredis/pull/201>`_),
+  cherry-picked from master;
 
-  - New scan commands API (``iscan``, ``izscan``, ``ihscan``);
+* Add connection timeout
+  (see `#221 <https://github.com/aio-libs/aioredis/pull/221>`_),
+  cherry-picked from master;
 
-  - Pool made awaitable (allowing ``with await pool: ...`` and ``async
-    with pool.get() as conn:`` constructs);
+**FIX**:
 
-* Fixed dropping closed connections from free pool
-  (see `#83 <https://github.com/aio-libs/aioredis/issues/83>`_);
+* Fixed pool close warning
+  (see `#239 <https://github.com/aio-libs/aioredis/pull/239>`_
+  and `#236 <https://github.com/aio-libs/aioredis/issues/236>`_),
+  cherry-picked from master;
 
-* Docs updated;
+* Fixed asyncio Lock deadlock issue
+  (see `#231 <https://github.com/aio-libs/aioredis/issues/231>`_
+  and `#241 <https://github.com/aio-libs/aioredis/pull/241>`_);
 
 
-0.2.3 (2015-08-14)
+0.3.1 (2017-05-09)
 ^^^^^^^^^^^^^^^^^^
 
-* 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;
+**FIX**:
 
-* Few fixes in documentation;
+* Fix pubsub Receiver missing iter() method
+  (see `#203 <https://github.com/aio-libs/aioredis/issues/203>`_);
 
 
-0.2.2 (2015-07-07)
+0.3.0 (2017-01-11)
 ^^^^^^^^^^^^^^^^^^
 
-* Decoding data with ``encoding`` parameter 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:
+**NEW**:
 
-  ``ltrim`` command now returns bool value instead of 'OK';
+* Pub/Sub connection commands accept ``Channel`` instances
+  (see `#168 <https://github.com/aio-libs/aioredis/pull/168>`_);
 
-* Tests updated;
+* Implement new Pub/Sub MPSC (multi-producers, single-consumer) Queue --
+  ``aioredis.pubsub.Receiver``
+  (see `#176 <https://github.com/aio-libs/aioredis/pull/176>`_);
 
+* Add ``aioredis.abc`` module providing abstract base classes
+  defining interface for basic lib components;
+  (see `#176 <https://github.com/aio-libs/aioredis/pull/176>`_);
 
-0.2.1 (2015-07-06)
-^^^^^^^^^^^^^^^^^^
+* Implement Geo commands support
+  (see `#177 <https://github.com/aio-libs/aioredis/pull/177>`_
+  and `#179 <https://github.com/aio-libs/aioredis/pull/179>`_);
 
-* Logging added (aioredis.log module);
+**FIX**:
 
-* Fixed issue with ``wait_message`` in pub/sub
-  (see `#66 <https://github.com/aio-libs/aioredis/issues/66>`_);
+* Minor tests fixes;
 
+**MISC**:
 
-0.2.0 (2015-06-04)
-^^^^^^^^^^^^^^^^^^
+* Update examples and docs to use ``async``/``await`` syntax
+  also keeping ``yield from`` examples for history
+  (see `#173 <https://github.com/aio-libs/aioredis/pull/173>`_);
 
-* Pub/Sub support added;
+* Reflow Travis CI configuration; add Python 3.6 section
+  (see `#170 <https://github.com/aio-libs/aioredis/pull/170>`_);
 
-* Fix in ``zrevrangebyscore`` command
-  (see `#62 <https://github.com/aio-libs/aioredis/pull/62>`_);
+* Add AppVeyor integration to run tests on Windows
+  (see `#180 <https://github.com/aio-libs/aioredis/pull/180>`_);
 
-* Fixes/tests/docs;
+* Update multiple development requirements;
diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt
index 9f1adc9..c832b1e 100644
--- a/CONTRIBUTORS.txt
+++ b/CONTRIBUTORS.txt
@@ -21,3 +21,9 @@ Samuel Colvin
 Ihor Gorobets
 Thanos Lefteris
 Ilya Goncharov
+Brett Rosen
+Pau Freixes
+Aliaksei Urbanski
+Martin <the-panda>
+Marijn Giesen
+Anton Verinov
diff --git a/CHANGES.txt b/HISTORY.rst
similarity index 78%
copy from CHANGES.txt
copy to HISTORY.rst
index 8832f86..7802dd8 100644
--- a/CHANGES.txt
+++ b/HISTORY.rst
@@ -1,54 +1,3 @@
-Changes
--------
-
-0.3.1 (2017-05-09)
-^^^^^^^^^^^^^^^^^^
-
-**FIX**:
-
-* Fix pubsub Receiver missing iter() method
-  (see `#203 <https://github.com/aio-libs/aioredis/issues/203>`_);
-
-
-0.3.0 (2017-01-11)
-^^^^^^^^^^^^^^^^^^
-
-**NEW**:
-
-* Pub/Sub connection commands accept ``Channel`` instances
-  (see `#168 <https://github.com/aio-libs/aioredis/pull/168>`_);
-
-* Implement new Pub/Sub MPSC (multi-producers, single-consumer) Queue --
-  ``aioredis.pubsub.Receiver``
-  (see `#176 <https://github.com/aio-libs/aioredis/pull/176>`_);
-
-* Add ``aioredis.abc`` module providing abstract base classes
-  defining interface for basic lib components;
-  (see `#176 <https://github.com/aio-libs/aioredis/pull/176>`_);
-
-* Implement Geo commands support
-  (see `#177 <https://github.com/aio-libs/aioredis/pull/177>`_
-  and `#179 <https://github.com/aio-libs/aioredis/pull/179>`_);
-
-**FIX**:
-
-* Minor tests fixes;
-
-**MISC**:
-
-* Update examples and docs to use ``async``/``await`` syntax
-  also keeping ``yield from`` examples for history
-  (see `#173 <https://github.com/aio-libs/aioredis/pull/173>`_);
-
-* Reflow Travis CI configuration; add Python 3.6 section
-  (see `#170 <https://github.com/aio-libs/aioredis/pull/170>`_);
-
-* Add AppVeyor integration to run tests on Windows
-  (see `#180 <https://github.com/aio-libs/aioredis/pull/180>`_);
-
-* Update multiple development requirements;
-
-
 0.2.9 (2016-10-24)
 ^^^^^^^^^^^^^^^^^^
 
@@ -200,7 +149,6 @@ Changes
 * Bump year in LICENSE and docs;
 
 
-
 0.2.4 (2015-10-13)
 ^^^^^^^^^^^^^^^^^^
 
@@ -281,3 +229,92 @@ Changes
   (see `#62 <https://github.com/aio-libs/aioredis/pull/62>`_);
 
 * Fixes/tests/docs;
+
+
+0.1.5 (2014-12-09)
+^^^^^^^^^^^^^^^^^^
+
+* AutoConnector added;
+
+* wait_closed method added for clean connections shutdown;
+
+* ``zscore`` command fixed;
+
+* Test fixes;
+
+
+0.1.4 (2014-09-22)
+^^^^^^^^^^^^^^^^^^
+
+* Dropped following Redis methods -- ``Redis.multi()``,
+  ``Redis.exec()``, ``Redis.discard()``;
+
+* ``Redis.multi_exec`` hack'ish property removed;
+
+* ``Redis.multi_exec()`` method added;
+
+* High-level commands implemented:
+
+  * generic commands (tests);
+
+  * transactions commands (api stabilization).
+
+* Backward incompatibilities:
+
+  * Following sorted set commands' API changed:
+
+    ``zcount``, ``zrangebyscore``, ``zremrangebyscore``, ``zrevrangebyscore``;
+
+  * set string command' API changed;
+
+
+
+0.1.3 (2014-08-08)
+^^^^^^^^^^^^^^^^^^
+
+* RedisConnection.execute refactored to support commands pipelining
+  (see `#33 <http://github.com/aio-libs/aioredis/issues/33>`_);
+
+* Several fixes;
+
+* WIP on transactions and commands interface;
+
+* High-level commands implemented and tested:
+
+  * hash commands;
+  * hyperloglog commands;
+  * set commands;
+  * scripting commands;
+  * string commands;
+  * list commands;
+
+
+0.1.2 (2014-07-31)
+^^^^^^^^^^^^^^^^^^
+
+* ``create_connection``, ``create_pool``, ``create_redis`` functions updated:
+  db and password arguments made keyword-only
+  (see `#26 <http://github.com/aio-libs/aioredis/issues/26>`_);
+
+* Fixed transaction handling
+  (see `#32 <http://github.com/aio-libs/aioredis/issues/32>`_);
+
+* Response decoding
+  (see `#16 <http://github.com/aio-libs/aioredis/issues/16>`_);
+
+
+0.1.1 (2014-07-07)
+^^^^^^^^^^^^^^^^^^
+
+* Transactions support (in connection, high-level commands have some issues);
+* Docs & tests updated.
+
+
+0.1.0 (2014-06-24)
+^^^^^^^^^^^^^^^^^^
+
+* Initial release;
+* RedisConnection implemented;
+* RedisPool implemented;
+* Docs for RedisConnection & RedisPool;
+* WIP on high-level API.
diff --git a/LICENSE b/LICENSE
index 270d29e..35a984b 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,6 +1,6 @@
 The MIT License (MIT)
 
-Copyright (c) 2014-2016 Alexey Popravka
+Copyright (c) 2014-2017 Alexey Popravka
 
 Permission is hereby granted, free of charge, to any person obtaining a copy
 of this software and associated documentation files (the "Software"), to deal
diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..19f4d78
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,111 @@
+PYTHON ?= python3
+FLAKE ?= flake8
+PYTEST ?= py.test
+
+REDIS_VERSION ?= "$(shell redis-cli INFO SERVER | sed -n 2p)"
+REDIS_TAGS ?= 2.6.17 2.8.22 3.0.7 3.2.8 4.0-rc2
+
+ARCHIVE_URL = https://github.com/antirez/redis/archive
+INSTALL_DIR ?= build
+
+TEST_ARGS ?= "-n 4"
+
+REDIS_TARGETS = $(foreach T,$(REDIS_TAGS),$(INSTALL_DIR)/$T/redis-server)
+
+# Python version and implementation
+PYTHON_IMPL = $(shell $(PYTHON) -c "import sys; print(sys.implementation.name)")
+PYTHON_35 = $(shell $(PYTHON) -c "import sys; print(sys.version_info >= (3, 5))")
+
+ifeq ($(PYTHON_35), True)
+FLAKE_ARGS = aioredis tests examples
+EXAMPLES = $(shell find examples -name "*.py")
+else
+FLAKE_ARGS = --exclude=py35_* aioredis tests examples/py34
+EXAMPLES = $(shell find examples/py34 -name "*.py")
+endif
+
+.PHONY: all flake doc man-doc spelling test cov dist devel clean
+all: aioredis.egg-info flake doc cov
+
+doc: spelling
+	make -C docs html
+man-doc: spelling
+	make -C docs man
+spelling:
+	@echo "Running spelling check"
+	make -C docs spelling
+
+ifeq ($(PYTHON_IMPL), cpython)
+flake:
+	$(FLAKE) $(FLAKE_ARGS)
+else
+flake:
+	@echo "Job is not configured to run on $(PYTHON_IMPL); skipped."
+endif
+
+test:
+	$(PYTEST)
+
+cov coverage:
+	$(PYTEST) --cov
+
+dist: clean man-doc
+	$(PYTHON) setup.py sdist bdist_wheel
+
+clean:
+	-rm -r docs/_build
+	-rm -r build dist aioredis.egg-info
+
+devel: aioredis.egg-info
+	pip install -U pip
+	pip install -U \
+		sphinx \
+		sphinx_rtd_theme \
+		bumpversion \
+		wheel
+	pip install -Ur tests/requirements.txt
+	pip install -Ur docs/requirements.txt
+
+aioredis.egg-info:
+	pip install -Ue .
+
+
+ifdef TRAVIS
+examples: .start-redis $(EXAMPLES)
+else
+examples: $(EXAMPLES)
+endif
+
+$(EXAMPLES):
+	@export REDIS_VERSION="$(redis-cli INFO SERVER | sed -n 2p)"
+	$(PYTHON) $@
+
+.start-redis: $(lastword $(REDIS_TARGETS))
+	$< ./examples/redis.conf
+	$< ./examples/redis-sentinel.conf --sentinel
+	sleep 5s
+	echo "QUIT" | nc localhost 6379
+	echo "QUIT" | nc localhost 26379
+
+.PHONY: $(EXAMPLES)
+
+
+certificate:
+	make -C tests/ssl
+
+ci-test: $(REDIS_TARGETS)
+	@$(call echo, "Tests run")
+	py.test -rsxX --cov \
+		$(foreach T,$(REDIS_TARGETS),--redis-server=$T) $(TEST_ARGS)
+
+ci-test-%: $(INSTALL_DIR)/%/redis-server
+	py.test -rsxX --cov --redis-server=$< $(TEST_ARGS)
+
+ci-build-redis: $(REDIS_TARGETS)
+
+$(INSTALL_DIR)/%/redis-server:
+	@echo "Building redis-$*..."
+	wget -nv -c $(ARCHIVE_URL)/$*.tar.gz -O - | tar -xzC /tmp
+	make -j -C /tmp/redis-$* \
+		INSTALL_BIN=$(abspath $(INSTALL_DIR))/$* install >/dev/null 2>/dev/null
+	@echo "Done building redis-$*"
diff --git a/PKG-INFO b/PKG-INFO
index 5ece422..f4217d7 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: aioredis
-Version: 0.3.1
+Version: 1.0.0b2
 Summary: asyncio (PEP 3156) Redis support
 Home-page: https://github.com/aio-libs/aioredis
 Author: Alexey Popravka
@@ -26,19 +26,25 @@ Description: aioredis
... 11158 lines suppressed ...

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/aioredis.git



More information about the Python-modules-commits mailing list