commit: 7818687a8d7108c8d9706e81de655f81f077ed2d
Author: Petr Vaněk <arkamar <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 8 13:42:13 2025 +0000
Commit: Petr Vaněk <arkamar <AT> gentoo <DOT> org>
CommitDate: Wed Oct 8 14:05:15 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7818687a
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 caccbcf18af4
("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 <AT> gentoo.org>
.../files/txredisapi-1.4.11-multiple-colons.patch | 35 ++++++++++++++++++++++
dev-python/txredisapi/txredisapi-1.4.11.ebuild | 6 +++-
2 files changed, 40 insertions(+), 1 deletion(-)
diff --git
a/dev-python/txredisapi/files/txredisapi-1.4.11-multiple-colons.patch
b/dev-python/txredisapi/files/txredisapi-1.4.11-multiple-colons.patch
new file mode 100644
index 000000000000..1dd05fd998d6
--- /dev/null
+++ b/dev-python/txredisapi/files/txredisapi-1.4.11-multiple-colons.patch
@@ -0,0 +1,35 @@
+From 3c8f36c263b7b6574e69422b50c9a900efc5ef7f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20Van=C4=9Bk?= <[email protected]>
+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 <[email protected]>
+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
+
diff --git a/dev-python/txredisapi/txredisapi-1.4.11.ebuild
b/dev-python/txredisapi/txredisapi-1.4.11.ebuild
index 24260ecca844..8476bb41e2ae 100644
--- a/dev-python/txredisapi/txredisapi-1.4.11.ebuild
+++ b/dev-python/txredisapi/txredisapi-1.4.11.ebuild
@@ -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