From eb85129277d5b49163f94f415fe78b96b0fc6cb9 Mon Sep 17 00:00:00 2001 From: Dennis Wuitz Date: Mon, 13 May 2024 16:38:05 +0200 Subject: [PATCH] python312Packages.django-ratelimit: init at 4.1.0 --- .../django-ratelimit/default.nix | 56 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 58 insertions(+) create mode 100644 pkgs/development/python-modules/django-ratelimit/default.nix diff --git a/pkgs/development/python-modules/django-ratelimit/default.nix b/pkgs/development/python-modules/django-ratelimit/default.nix new file mode 100644 index 000000000000..ca0216a9de5c --- /dev/null +++ b/pkgs/development/python-modules/django-ratelimit/default.nix @@ -0,0 +1,56 @@ +{ lib +, buildPythonPackage +, django +, django-redis +, fetchFromGitHub +, pymemcache +, pythonOlder +, setuptools +}: + +buildPythonPackage rec { + pname = "django-ratelimit"; + version = "4.1.0"; + pyproject = true; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "jsocol"; + repo = "django-ratelimit"; + rev = "refs/tags/v${version}"; + hash = "sha256-ZMtZSKOIIRSqH6eyC7bBeua7YLKyWW6NOXN/MDv9fy4="; + }; + + nativeBuildInputs = [ + setuptools + ]; + + propagatedBuildInputs = [ + django + django-redis + pymemcache + ]; + + pythonImportsCheck = [ + "django_ratelimit" + ]; + + checkPhase = '' + runHook preCheck + + export DJANGO_SETTINGS_MODULE=test_settings + python -m django test django_ratelimit + + runHook postCheck + ''; + + + meta = with lib; { + description = "Cache-based rate-limiting for Django"; + homepage = "https://github.com/jsocol/django-ratelimit"; + changelog = "https://github.com/jsocol/django-ratelimit/releases/tag/v${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ derdennisop ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 632a66425b20..17d113c01d11 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3300,6 +3300,8 @@ self: super: with self; { django-ranged-response = callPackage ../development/python-modules/django-ranged-response { }; + django-ratelimit = callPackage ../development/python-modules/django-ratelimit { }; + django-raster = callPackage ../development/python-modules/django-raster { }; django-redis = callPackage ../development/python-modules/django-redis { };