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:

Reply via email to