Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-valkey for openSUSE:Factory checked in at 2026-07-26 11:28:09 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-valkey (Old) and /work/SRC/openSUSE:Factory/.python-valkey.new.2004 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-valkey" Sun Jul 26 11:28:09 2026 rev:4 rq:1367680 version:6.1.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-valkey/python-valkey.changes 2025-11-05 16:19:36.741376230 +0100 +++ /work/SRC/openSUSE:Factory/.python-valkey.new.2004/python-valkey.changes 2026-07-26 11:30:16.790430280 +0200 @@ -1,0 +2,14 @@ +Fri Jul 24 14:03:10 UTC 2026 - Martin Pluskal <[email protected]> + +- Add fix-tests-valkey-9.1-module-list.patch and + fix-tests-valkey-9.1-acl-databases.patch: + * Fix the test suite with valkey >= 9.1. The scripting engine is now + a static "lua" module, so MODULE LIST is no longer empty and the + Redis Stack module tests (bloom/json/search/timeseries) raised + during collection instead of being skipped (gh#valkey-io/valkey-py#302) + * ACL GETUSER selectors now carry a databases/alldbs field +- Make the %check helper teardown best-effort (kill ... || :) so an + already-stopped valkey-server/sentinel PID no longer fails an + otherwise green test run + +------------------------------------------------------------------- New: ---- fix-tests-valkey-9.1-acl-databases.patch fix-tests-valkey-9.1-module-list.patch ----------(New B)---------- New:- Add fix-tests-valkey-9.1-module-list.patch and fix-tests-valkey-9.1-acl-databases.patch: * Fix the test suite with valkey >= 9.1. The scripting engine is now New: - Add fix-tests-valkey-9.1-module-list.patch and fix-tests-valkey-9.1-acl-databases.patch: ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-valkey.spec ++++++ --- /var/tmp/diff_new_pack.GNuiQ1/_old 2026-07-26 11:30:17.838466243 +0200 +++ /var/tmp/diff_new_pack.GNuiQ1/_new 2026-07-26 11:30:17.838466243 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-valkey # -# Copyright (c) 2025 SUSE LLC and contributors +# Copyright (c) 2026 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -29,20 +29,26 @@ # PATCH-FIX-UPSTREAM fix-tests-valkey-9.0.patch # https://github.com/valkey-io/valkey-py/pull/239 Patch0: fix-tests-valkey-9.0.patch +# PATCH-FIX-UPSTREAM fix-tests-valkey-9.1-module-list.patch +# https://github.com/valkey-io/valkey-py/pull/302 +Patch1: fix-tests-valkey-9.1-module-list.patch +# PATCH-FIX-UPSTREAM fix-tests-valkey-9.1-acl-databases.patch +# https://github.com/valkey-io/valkey-py/commit/046c7fb9e8260c2d69d05141b1519903c4e40efe +Patch2: fix-tests-valkey-9.1-acl-databases.patch BuildRequires: %{python_module base >= 3.10} -BuildRequires: %{python_module pip} -BuildRequires: %{python_module setuptools} -BuildRequires: %{python_module wheel} -BuildRequires: python-rpm-macros # Tests BuildRequires: %{python_module cachetools} +BuildRequires: %{python_module pip} BuildRequires: %{python_module pytest-asyncio} BuildRequires: %{python_module pytest-timeout} BuildRequires: %{python_module pytest} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} BuildRequires: fdupes +BuildRequires: python-rpm-macros BuildRequires: valkey -Suggests: python-cryptography >= 36.0.1 Suggests: python-PyOpenSSL >= 23.2.1 +Suggests: python-cryptography >= 36.0.1 Suggests: python-requests >= 2.31.0 BuildArch: noarch %python_subpackages @@ -62,10 +68,10 @@ %check # Start a server -valkey-server %SOURCE1 --port 6379 & +valkey-server %{SOURCE1} --port 6379 & server_pid=$! # We also need a sentinel service running -cp %SOURCE2 . +cp %{SOURCE2} . valkey-sentinel sentinel.conf & sentinel_pid=$! # Requires entire stunnel setup and certs @@ -75,7 +81,10 @@ # Requires module setting donttest+=" or test_module" %pytest $ignore -m 'not onlycluster' -k "not ($donttest)" -kill -9 $server_pid $sentinel_pid +# Best-effort teardown: a tail-end sentinel/shutdown test may already have +# stopped the server or sentinel, and killing an already-gone PID must not +# fail the build (upstream tears the helpers down via docker, never kill). +kill -9 $server_pid $sentinel_pid || : %files %{python_files} %doc README.md ++++++ fix-tests-valkey-9.1-acl-databases.patch ++++++ From: Kurt McKee <[email protected]> Subject: tests: handle new `databases` field in ACL GETUSER selectors Based on upstream commit 046c7fb9e8260c2d69d05141b1519903c4e40efe, but made version-conditional so the test also passes against valkey < 9.1: the databases/alldbs selector field is new in valkey 9.1 (upstream tests unconditionally against valkey:latest, but the package may rebuild against an older valkey). Mirrors the existing version check in fix-tests-valkey-9.0. --- diff --git a/tests/test_commands.py b/tests/test_commands.py index dace6ca..544494b 100644 --- a/tests/test_commands.py +++ b/tests/test_commands.py @@ -330,11 +330,28 @@ class TestValkeyCommands: assert set(acl["keys"]) == {"~cache:*", "~objects:*"} assert len(acl["passwords"]) == 2 assert set(acl["channels"]) == {"&message:*"} + # Valkey 9.1 adds a databases/alldbs field to each ACL selector. + if Version(VALKEY_INFO.get("version", "0")) >= Version("9.1.0"): + resp2_selectors = [ + ["commands", "-@all +set", "keys", "%W~app*", "channels", "", + "databases", "alldbs"] + ] + resp3_selectors = [ + {"commands": "-@all +set", "keys": "%W~app*", "channels": "", + "databases": "alldbs"} + ] + else: + resp2_selectors = [ + ["commands", "-@all +set", "keys", "%W~app*", "channels", ""] + ] + resp3_selectors = [ + {"commands": "-@all +set", "keys": "%W~app*", "channels": ""} + ] assert_resp_response( r, acl["selectors"], - [["commands", "-@all +set", "keys", "%W~app*", "channels", ""]], - [{"commands": "-@all +set", "keys": "%W~app*", "channels": ""}], + resp2_selectors, + resp3_selectors, ) @skip_if_server_version_lt("6.0.0") ++++++ fix-tests-valkey-9.1-module-list.patch ++++++ From: valkey-py upstream (PR #302) Subject: tests: skip (not error) when a queried module is absent Backport of https://github.com/valkey-io/valkey-py/pull/302 . Since Valkey 9.1 loads a static "lua" module, MODULE LIST is no longer empty, so skip_ifmodversion_lt() falls through to the final branch. Make that branch skip the test instead of raising AttributeError, which otherwise aborts collection of the Redis-Stack module test files (bloom/json/search/timeseries) that Valkey does not ship. --- diff --git a/tests/conftest.py b/tests/conftest.py index e551897..173b68d 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -244,7 +244,7 @@ def skip_ifmodversion_lt(min_version: str, module_name: str): check = version < mv return pytest.mark.skipif(check, reason="Valkey module version") - raise AttributeError(f"No valkey module named {module_name}") + return pytest.mark.skipif(True, reason=f"No valkey module named {module_name}") def skip_if_nocryptography() -> _TestDecorator:
