diff --git a/0001-fix-tests-with-redis-pre-5.0.0.patch b/0001-fix-tests-with-redis-pre-5.0.0.patch deleted file mode 100644 index 6040d6e..0000000 --- a/0001-fix-tests-with-redis-pre-5.0.0.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 90532bd2c4d6d74110ab37d800653d7abafe2e0b Mon Sep 17 00:00:00 2001 -From: tuxmaster5000 <837503+tuxmaster5000@users.noreply.github.com> -Date: Fri, 18 Oct 2019 09:47:27 +0200 -Subject: [PATCH] Support old EPEL-7 Redis. (#1227) -Upstream: merged(https://github.com/andymccurdy/redis-py/pull/1227) - -Fix test suite with Redis versions pre-5.0.0 - ---- - tests/test_monitor.py | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/tests/test_monitor.py b/tests/test_monitor.py -index 09ec21bd..fe9e68a9 100644 ---- a/tests/test_monitor.py -+++ b/tests/test_monitor.py -@@ -1,5 +1,7 @@ - from __future__ import unicode_literals - from redis._compat import unicode -+from .conftest import (skip_if_server_version_lt, skip_if_server_version_gte, -+ skip_unless_arch_bits) - - - def wait_for_command(client, monitor, command): -@@ -17,12 +19,14 @@ def wait_for_command(client, monitor, command): - - - class TestPipeline(object): -+ @skip_if_server_version_lt('5.0.0') - def test_wait_command_not_found(self, r): - "Make sure the wait_for_command func works when command is not found" - with r.monitor() as m: - response = wait_for_command(r, m, 'nothing') - assert response is None - -+ @skip_if_server_version_lt('5.0.0') - def test_response_values(self, r): - with r.monitor() as m: - r.ping() -@@ -34,12 +38,14 @@ def test_response_values(self, r): - assert isinstance(response['client_port'], unicode) - assert response['command'] == 'PING' - -+ @skip_if_server_version_lt('5.0.0') - def test_command_with_quoted_key(self, r): - with r.monitor() as m: - r.get('foo"bar') - response = wait_for_command(r, m, 'GET foo"bar') - assert response['command'] == 'GET foo"bar' - -+ @skip_if_server_version_lt('5.0.0') - def test_command_with_binary_data(self, r): - with r.monitor() as m: - byte_string = b'foo\x92' -@@ -47,6 +53,7 @@ def test_command_with_binary_data(self, r): - response = wait_for_command(r, m, 'GET foo\\x92') - assert response['command'] == 'GET foo\\x92' - -+ @skip_if_server_version_lt('5.0.0') - def test_lua_script(self, r): - with r.monitor() as m: - script = 'return redis.call("GET", "foo")' diff --git a/python-redis.changes b/python-redis.changes index 93645e2..37c29a1 100644 --- a/python-redis.changes +++ b/python-redis.changes @@ -1,3 +1,58 @@ +------------------------------------------------------------------- +Thu Mar 19 11:37:31 UTC 2020 - pgajdos@suse.com + +- version update to 3.4.1 + * 3.4.1 + * Move the username argument in the Redis and Connection classes to the + end of the argument list. This helps those poor souls that specify all + their connection options as non-keyword arguments. #1276 + * Prior to ACL support, redis-py ignored the username component of + Connection URLs. With ACL support, usernames are no longer ignored and + are used to authenticate against an ACL rule. Some cloud vendors with + managed Redis instances (like Heroku) provide connection URLs with a + username component pre-ACL that is not intended to be used. Sending that + username to Redis servers < 6.0.0 results in an error. Attempt to detect + this condition and retry the AUTH command with only the password such + that authentication continues to work for these users. #1274 + * Removed the __eq__ hooks to Redis and ConnectionPool that were added + in 3.4.0. This ended up being a bad idea as two separate connection + pools be considered equal yet manage a completely separate set of + connections. + * 3.4.0 + * Allow empty pipelines to be executed if there are WATCHed keys. + This is a convenient way to test if any of the watched keys changed + without actually running any other commands. Thanks @brianmaissy. + #1233, #1234 + * Removed support for end of life Python 3.4. + * Added support for all ACL commands in Redis 6. Thanks @IAmATeaPot418 + for helping. + * Pipeline instances now always evaluate to True. Prior to this change, + pipeline instances relied on __len__ for boolean evaluation which + meant that pipelines with no commands on the stack would be considered + False. #994 + * Client instances and Connection pools now support a 'client_name' + argument. If supplied, all connections created will call CLIENT SETNAME + as soon as the connection is opened. Thanks to @Habbie for supplying + the basis of this change. #802 + * Added the 'ssl_check_hostname' argument to specify whether SSL + connections should require the server hostname to match the hostname + specified in the SSL cert. By default 'ssl_check_hostname' is False + for backwards compatibility. #1196 + * Slightly optimized command packing. Thanks @Deneby67. #1255 + * Added support for the TYPE argument to SCAN. Thanks @netocp. #1220 + * Better thread and fork safety in ConnectionPool and + BlockingConnectionPool. Added better locking to synchronize critical + sections rather than relying on CPython-specific implementation details + relating to atomic operations. Adjusted how the pools identify and + deal with a fork. Added a ChildDeadlockedError exception that is + raised by child processes in the very unlikely chance that a deadlock + is encountered. Thanks @gmbnomis, @mdellweg, @yht804421715. #1270, + #1138, #1178, #906, #1262 + * Added __eq__ hooks to the Redis and ConnectionPool classes. + Thanks @brainix. #1240 +- deleted patches + - 0001-fix-tests-with-redis-pre-5.0.0.patch (upstreamed) + ------------------------------------------------------------------- Fri Dec 13 19:00:52 UTC 2019 - Matthias Fehring diff --git a/python-redis.spec b/python-redis.spec index 55b07c6..35b40f2 100644 --- a/python-redis.spec +++ b/python-redis.spec @@ -1,7 +1,7 @@ # # spec file for package python-redis # -# Copyright (c) 2019 SUSE LLC +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,14 +18,13 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-redis -Version: 3.3.11 +Version: 3.4.1 Release: 0 Summary: Python client for Redis key-value store License: MIT Group: Development/Languages/Python URL: https://github.com/andymccurdy/redis-py Source: https://files.pythonhosted.org/packages/source/r/redis/redis-%{version}.tar.gz -Patch0: 0001-fix-tests-with-redis-pre-5.0.0.patch BuildRequires: %{python_module mock} BuildRequires: %{python_module pytest >= 2.7.0} BuildRequires: %{python_module setuptools} @@ -43,7 +42,6 @@ The Python interface to the Redis key-value store. %prep %setup -q -n redis-%{version} -%patch0 -p1 %build %python_build @@ -54,7 +52,7 @@ The Python interface to the Redis key-value store. %check %{_sbindir}/redis-server --port 6379 & -%python_exec setup.py test +%pytest killall redis-server %files %{python_files} diff --git a/redis-3.3.11.tar.gz b/redis-3.3.11.tar.gz deleted file mode 100644 index f65d579..0000000 --- a/redis-3.3.11.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8d0fc278d3f5e1249967cba2eb4a5632d19e45ce5c09442b8422d15ee2c22cc2 -size 131072 diff --git a/redis-3.4.1.tar.gz b/redis-3.4.1.tar.gz new file mode 100644 index 0000000..3a52a49 --- /dev/null +++ b/redis-3.4.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dcfb335921b88a850d461dc255ff4708294943322bd55de6cfd68972490ca1f +size 137568