Files
nixpkgs/pkgs/development/python-modules/grpc-interceptor/default.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

60 lines
1.4 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitHub,
pythonOlder,
poetry-core,
grpcio,
protobuf,
pytest-asyncio,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "grpc-interceptor";
version = "0.15.4";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "d5h-foss";
repo = "grpc-interceptor";
tag = "v${version}";
hash = "sha256-GJkVCslPXShJNDrqhFtCsAK5+VaG8qFJo0RQTsiMIFY=";
};
nativeBuildInputs = [ poetry-core ];
propagatedBuildInputs = [
grpcio
protobuf
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
pytest-asyncio
pytestCheckHook
];
pythonImportsCheck = [ "grpc_interceptor" ];
meta = with lib; {
description = "Simplified gRPC interceptors";
homepage = "https://github.com/d5h-foss/grpc-interceptor";
changelog = "https://github.com/d5h-foss/grpc-interceptor/releases/tag/v${version}";
longDescription = ''
Simplified Python gRPC interceptors.
The Python gRPC package provides service interceptors, but they're a bit
hard to use because of their flexibility. The gRPC interceptors don't
have direct access to the request and response objects, or the service
context. Access to these are often desired, to be able to log data in the
request or response, or set status codes on the context.
'';
license = licenses.mit;
maintainers = with maintainers; [ tomaskala ];
};
}