From e0fd0de587aa7a19d007694d0f2f753f05ac5c81 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Fri, 8 Aug 2025 19:39:53 +0200 Subject: [PATCH] python313Packages.uvicorn-worker: init at 0.3.0 Uvicorn worker for Gunicorn https://github.com/Kludex/uvicorn-worker --- .../python-modules/uvicorn-worker/default.nix | 52 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 54 insertions(+) create mode 100644 pkgs/development/python-modules/uvicorn-worker/default.nix diff --git a/pkgs/development/python-modules/uvicorn-worker/default.nix b/pkgs/development/python-modules/uvicorn-worker/default.nix new file mode 100644 index 000000000000..320dee57a853 --- /dev/null +++ b/pkgs/development/python-modules/uvicorn-worker/default.nix @@ -0,0 +1,52 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + gunicorn, + hatchling, + httpx, + pytestCheckHook, + trustme, + uvicorn, +}: + +buildPythonPackage rec { + pname = "uvicorn-worker"; + version = "0.3.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "Kludex"; + repo = "uvicorn-worker"; + tag = version; + hash = "sha256-a5L4H1Bym5Dx9/pGL/Vz6ZO699t/1Wmc1ExIb0t/ISc="; + }; + + build-system = [ hatchling ]; + + dependencies = [ + gunicorn + uvicorn + ]; + + nativeCheckInputs = [ + gunicorn + httpx + pytestCheckHook + trustme + ]; + + preCheck = '' + export PATH="$PATH:$out/bin"; + ''; + + pythonImportsCheck = [ "uvicorn_worker" ]; + + meta = { + description = "Uvicorn worker for Gunicorn"; + homepage = "https://github.com/Kludex/uvicorn-worker"; + changelog = "https://github.com/Kludex/uvicorn-worker/releases/tag/${src.tag}"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 157c0c161964..6d259618a0ea 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -19260,6 +19260,8 @@ self: super: with self; { uvicorn = callPackage ../development/python-modules/uvicorn { }; + uvicorn-worker = callPackage ../development/python-modules/uvicorn-worker { }; + uvloop = callPackage ../development/python-modules/uvloop { }; uwsgi-chunked = callPackage ../development/python-modules/uwsgi-chunked { };