From ca04963848648973a36563cbe75246df5451361e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 28 May 2026 17:02:39 -0700 Subject: [PATCH 1/4] python3Packages.redis: 7.4.0 -> 8.0.0 Diff: https://github.com/redis/redis-py/compare/v7.4.0...v8.0.0 Changelog: https://github.com/redis/redis-py/releases/tag/v8.0.0 --- .../python-modules/redis/default.nix | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/redis/default.nix b/pkgs/development/python-modules/redis/default.nix index 66f7a75717a5..0271f7d5c5ed 100644 --- a/pkgs/development/python-modules/redis/default.nix +++ b/pkgs/development/python-modules/redis/default.nix @@ -23,18 +23,26 @@ cryptography, pyopenssl, requests, + + # extras: otel + opentelemetry-api, + opentelemetry-exporter-otlp-proto-http, + opentelemetry-sdk, + + # extras: xxhash + xxhash, }: buildPythonPackage rec { pname = "redis"; - version = "7.4.0"; + version = "8.0.0"; pyproject = true; src = fetchFromGitHub { owner = "redis"; repo = "redis-py"; tag = "v${version}"; - hash = "sha256-alrfAYzjvoYsaA2NYVgI56f3R+5ed4CsA35ZmvXnk6k="; + hash = "sha256-ze9Q8IfSWDAEH0sR+ql0tOu7ajeXF78AKYD6SHpZqRU="; }; build-system = [ hatchling ]; @@ -52,6 +60,12 @@ buildPythonPackage rec { pyopenssl requests ]; + otel = [ + opentelemetry-api + opentelemetry-exporter-otlp-proto-http + opentelemetry-sdk + ]; + xxhash = [ xxhash ]; }; pythonImportsCheck = [ From c0bb1a038834705436cc4e266b75e74f7920c26a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 28 May 2026 17:11:55 -0700 Subject: [PATCH 2/4] python3Packages.redis: use finalAttrs --- pkgs/development/python-modules/redis/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/redis/default.nix b/pkgs/development/python-modules/redis/default.nix index 0271f7d5c5ed..24a401f4e3f6 100644 --- a/pkgs/development/python-modules/redis/default.nix +++ b/pkgs/development/python-modules/redis/default.nix @@ -33,7 +33,7 @@ xxhash, }: -buildPythonPackage rec { +buildPythonPackage (finalAttrs: { pname = "redis"; version = "8.0.0"; pyproject = true; @@ -41,7 +41,7 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "redis"; repo = "redis-py"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-ze9Q8IfSWDAEH0sR+ql0tOu7ajeXF78AKYD6SHpZqRU="; }; @@ -84,8 +84,8 @@ buildPythonPackage rec { meta = { description = "Python client for Redis key-value store"; homepage = "https://github.com/redis/redis-py"; - changelog = "https://github.com/redis/redis-py/releases/tag/${src.tag}"; + changelog = "https://github.com/redis/redis-py/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.mit; maintainers = [ lib.maintainers.dotlambda ]; }; -} +}) From 580c4bea8e9685918e83c71d5dfaa40c0f313ba0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 28 May 2026 17:08:27 -0700 Subject: [PATCH 3/4] python3Packages.redis: add passthru.tests --- .../python-modules/redis/default.nix | 48 ++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/redis/default.nix b/pkgs/development/python-modules/redis/default.nix index 24a401f4e3f6..801be1ce99c8 100644 --- a/pkgs/development/python-modules/redis/default.nix +++ b/pkgs/development/python-modules/redis/default.nix @@ -31,6 +31,12 @@ # extras: xxhash xxhash, + + # tests + numpy, + pytest-asyncio, + pytestCheckHook, + redisTestHook, }: buildPythonPackage (finalAttrs: { @@ -78,9 +84,49 @@ buildPythonPackage (finalAttrs: { "redis.utils" ]; - # Tests require a running redis + nativeCheckInputs = [ + numpy + pytest-asyncio + pytestCheckHook + redisTestHook + ] + ++ finalAttrs.passthru.optional-dependencies.circuit_breaker + ++ finalAttrs.passthru.optional-dependencies.otel; + + enabledTestMarks = [ + "onlynoncluster" + ]; + + disabledTestMarks = [ + "onlycluster" + "redismod" + ]; + + disabledTestPaths = [ + # requires Redis Sentinel + "tests/test_asyncio/test_sentinel.py" + "tests/test_sentinel.py" + # FIXME package redis-entraid + "tests/test_asyncio/test_credentials.py" + "tests/test_credentials.py" + ]; + + disabledTests = [ + # requires a Redis cluster + "test_readonly_invalid_cluster_state" + # we run Valkey, not Redis + "test_lolwut" + ]; + + # circular dependency via pybreaker doCheck = false; + passthru.tests = { + pytest = finalAttrs.finalPackage.overrideAttrs { + doInstallCheck = true; + }; + }; + meta = { description = "Python client for Redis key-value store"; homepage = "https://github.com/redis/redis-py"; From 4ab3d2ee743058c1145e7b00f4a90f91e6d3b7e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 30 May 2026 12:11:52 -0700 Subject: [PATCH 4/4] python3Packages.fakeredis: 2.35.1 -> 2.36.0 Diff: https://github.com/cunla/fakeredis-py/compare/v2.35.1...v2.36.0 Changelog: https://github.com/cunla/fakeredis-py/releases/tag/v2.36.0 --- pkgs/development/python-modules/fakeredis/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/fakeredis/default.nix b/pkgs/development/python-modules/fakeredis/default.nix index 74e0f892129b..f3255b611a25 100644 --- a/pkgs/development/python-modules/fakeredis/default.nix +++ b/pkgs/development/python-modules/fakeredis/default.nix @@ -20,14 +20,14 @@ buildPythonPackage (finalAttrs: { pname = "fakeredis"; - version = "2.35.1"; + version = "2.36.0"; pyproject = true; src = fetchFromGitHub { owner = "cunla"; repo = "fakeredis-py"; tag = "v${finalAttrs.version}"; - hash = "sha256-euhWKXFERpRoXX7G81ffAygt5e1mt7uy9Y9zAGacu38="; + hash = "sha256-rkq8fxQSNPMZE95mlNxSazdwxy5+DMlZKkVWweGVOtc="; }; build-system = [ hatchling ];