commit:     7c721736ec775e070c175fb3e366b882b0acd799
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Mon May  8 19:14:27 2023 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Mon May  8 19:31:01 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7c721736

dev-python/redis: add 4.5.5

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 dev-python/redis/Manifest           |  1 +
 dev-python/redis/redis-4.5.5.ebuild | 83 +++++++++++++++++++++++++++++++++++++
 2 files changed, 84 insertions(+)

diff --git a/dev-python/redis/Manifest b/dev-python/redis/Manifest
index 5d910d8a1623..58933e0734b9 100644
--- a/dev-python/redis/Manifest
+++ b/dev-python/redis/Manifest
@@ -1 +1,2 @@
 DIST redis-py-4.5.4.gh.tar.gz 4739418 BLAKE2B 
a02a581dc12a09cedd0f5158bc261ffb0efcf0346d193ebcb060f50fa95dbaadb7322446c242ac68094bbfbd80c9879d8c9a9fc8362aa6a6e9be85d7e46d9aaa
 SHA512 
55c4530ab715c4bddb502ce58ae3c62db9c27d16ddbfa8f87c88e9425e0285d9fd570338428c30d0a3f1fe2d81868fd8385da0255d58c3dd9b9813f9454eeb30
+DIST redis-py-4.5.5.gh.tar.gz 4748642 BLAKE2B 
6e924477be81af995190328b8747e2eac3d905fcff8cd97c6f89702e3888a4185918144cf11b9173b25dd4c2e62ce988e2f1f5b2c1261bb35e64031772a5a81a
 SHA512 
f1d8f1b009f30613776904cef42a090a51da2833d667d47f9650c9a35187d11911d5b23b20f2ba2279714758963830c873473028775f39419e4d996da54eee83

diff --git a/dev-python/redis/redis-4.5.5.ebuild 
b/dev-python/redis/redis-4.5.5.ebuild
new file mode 100644
index 000000000000..37fbc3edbe6d
--- /dev/null
+++ b/dev-python/redis/redis-4.5.5.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9..11} pypy3 )
+
+inherit distutils-r1
+
+MY_P=redis-py-${PV}
+DESCRIPTION="Python client for Redis key-value store"
+HOMEPAGE="
+       https://github.com/redis/redis-py/
+       https://pypi.org/project/redis/
+"
+SRC_URI="
+       https://github.com/redis/redis-py/archive/v${PV}.tar.gz
+               -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+       $(python_gen_cond_dep '
+               >=dev-python/async-timeout-4.0.2[${PYTHON_USEDEP}]
+       ' 3.{9..10})
+"
+BDEPEND="
+       test? (
+               dev-db/redis
+               dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+               dev-python/pytest-timeout[${PYTHON_USEDEP}]
+       )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+       local EPYTEST_DESELECT=(
+               # Flaky test
+               tests/test_pubsub.py::TestPubSubDeadlock::test_pubsub_deadlock
+               # TODO
+               tests/test_commands.py::TestRedisCommands::test_acl_list
+               # redis-7 different return
+               tests/test_commands.py::TestRedisCommands::test_xautoclaim
+       )
+
+       # TODO: try to run more servers?
+       epytest -m "not redismod and not onlycluster and not replica and not 
ssl"
+}
+
+src_test() {
+       local redis_pid="${T}"/redis.pid
+       local redis_port=6379
+
+       if has_version ">=dev-db/redis-7"; then
+               local extra_conf="
+                       enable-debug-command yes
+                       enable-module-command yes
+               "
+       fi
+
+       # Spawn Redis itself for testing purposes
+       einfo "Spawning Redis"
+       einfo "NOTE: Port ${redis_port} must be free"
+       "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start 
redis server"
+               daemonize yes
+               pidfile ${redis_pid}
+               port ${redis_port}
+               bind 127.0.0.1 ::1
+               ${extra_conf}
+       EOF
+
+       # Run the tests
+       distutils-r1_src_test
+
+       # Clean up afterwards
+       kill "$(<"${redis_pid}")" || die
+}

Reply via email to