python3Packages.redis: 7.4.0 -> 8.0.0 (#525406)

This commit is contained in:
dotlambda
2026-06-04 04:41:57 +00:00
committed by GitHub
2 changed files with 69 additions and 9 deletions
@@ -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 ];
@@ -23,18 +23,32 @@
cryptography,
pyopenssl,
requests,
# extras: otel
opentelemetry-api,
opentelemetry-exporter-otlp-proto-http,
opentelemetry-sdk,
# extras: xxhash
xxhash,
# tests
numpy,
pytest-asyncio,
pytestCheckHook,
redisTestHook,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
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=";
tag = "v${finalAttrs.version}";
hash = "sha256-ze9Q8IfSWDAEH0sR+ql0tOu7ajeXF78AKYD6SHpZqRU=";
};
build-system = [ hatchling ];
@@ -52,6 +66,12 @@ buildPythonPackage rec {
pyopenssl
requests
];
otel = [
opentelemetry-api
opentelemetry-exporter-otlp-proto-http
opentelemetry-sdk
];
xxhash = [ xxhash ];
};
pythonImportsCheck = [
@@ -64,14 +84,54 @@ buildPythonPackage rec {
"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";
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 ];
};
}
})