diff --git a/pkgs/development/python-modules/asgi-lifespan/default.nix b/pkgs/development/python-modules/asgi-lifespan/default.nix new file mode 100644 index 000000000000..05e21d84585f --- /dev/null +++ b/pkgs/development/python-modules/asgi-lifespan/default.nix @@ -0,0 +1,51 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, setuptools +, setuptools-scm +, sniffio +}: + +buildPythonPackage rec { + pname = "asgi-lifespan"; + version = "2.1.0"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "florimondmanca"; + repo = "asgi-lifespan"; + rev = "refs/tags/${version}"; + hash = "sha256-Jgmd/4c1lxHM/qi3MJNN1aSSUJrI7CRNwwHrFwwcCkc="; + }; + + postPatch = '' + sed -i "/--cov/d" setup.cfg + ''; + + build-system = [ + setuptools + setuptools-scm + ]; + + dependencies = [ + sniffio + ]; + + # Circular dependencies, starlette + doCheck = false; + + pythonImportsCheck = [ + "asgi_lifespan" + ]; + + meta = with lib; { + description = "Programmatic startup/shutdown of ASGI apps"; + homepage = "https://github.com/florimondmanca/asgi-lifespan"; + changelog = "https://github.com/florimondmanca/asgi-lifespan/blob/${version}/CHANGELOG.md"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a4810fd36006..646526c40549 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -783,6 +783,8 @@ self: super: with self; { asgi-csrf = callPackage ../development/python-modules/asgi-csrf { }; + asgi-lifespan = callPackage ../development/python-modules/asgi-lifespan { }; + asgi-logger = callPackage ../development/python-modules/asgi-logger { }; asgineer = callPackage ../development/python-modules/asgineer { };