2
0
mirror of https://github.com/gentoo-mirror/gentoo.git synced 2026-01-11 16:45:50 +03:00

dev-python/txredisapi: lift dev-db/redis restriction

The Redis version was restricted due to a test failures with
>=dev-db/redis-7.2 for stabilization bug 912462 in commit caccbcf18a
("dev-python/txredisapi: restrict dev-db/redis for tests") and the issue
was reported upstream [1]. The tests were failing because Redis included
listener information [2] in Redis 7.2, which might contain IPv6 address,
however, txredisapi expects only one colon in line.

The simple fix is applied here in form of a patch as it was proposed
upstream [3]. The restriction is no longer needed, txredisapi works with
any current redis version available in the tree.

Bug: https://bugs.gentoo.org/912462
Upstream-issue: https://github.com/IlyaSkriblovsky/txredisapi/issues/151 [1]
Redis-commit: 0c4d2fcc8eff ("Add listeners info string for 'INFO' command") [2]
Upstream-PR: https://github.com/IlyaSkriblovsky/txredisapi/pull/157 [3]
Signed-off-by: Petr Vaněk <arkamar@gentoo.org>
This commit is contained in:
Petr Vaněk
2025-10-08 15:42:13 +02:00
parent 7cf0306ceb
commit 7818687a8d
2 changed files with 40 additions and 1 deletions

View File

@@ -0,0 +1,35 @@
From 3c8f36c263b7b6574e69422b50c9a900efc5ef7f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20Van=C4=9Bk?= <arkamar@gentoo.org>
Date: Wed, 8 Oct 2025 15:33:27 +0200
Subject: [PATCH] Fix INFO command parsing for lines with multiple colons
This commit resolves an issue with parsing the INFO command output when
lines contain multiple `:` characters, such as those with IPv6
addresses:
listener0:name=tcp,bind=127.0.0.1,bind=::1,port=6379
Such a line can appear there since the Redis version 7.2.0. Listneres
info was introdcued commit 0c4d2fcc8eff ("Add listeners info string for
'INFO' command").
The fix is simple, the split() method in _process_info() is restricted
to perform the split only on the first `:` character.
Fixes: https://github.com/IlyaSkriblovsky/txredisapi/issues/151
Signed-off-by: Petr Vaněk <arkamar@gentoo.org>
Upstream-PR: https://github.com/IlyaSkriblovsky/txredisapi/pull/157
diff --git a/txredisapi.py b/txredisapi.py
index b02a78e..2f1875d 100644
--- a/txredisapi.py
+++ b/txredisapi.py
@@ -1685,7 +1685,7 @@ def _process_info(self, r):
':' in x and not x.startswith('#')]
d = {}
for kv in keypairs:
- k, v = kv.split(':')
+ k, v = kv.split(':', 1)
d[k] = v
return d

View File

@@ -32,12 +32,16 @@ RDEPEND="
BDEPEND="
test? (
${RDEPEND}
<dev-db/redis-7.2
dev-db/redis
dev-python/hiredis[${PYTHON_USEDEP}]
dev-python/mock[${PYTHON_USEDEP}]
)
"
PATCHES=(
"${FILESDIR}"/${P}-multiple-colons.patch
)
src_prepare() {
sed -i "/redis_sock =/s:/tmp:${T}:" tests/test_unix_connection.py || die