about summary refs log tree commit diff
path: root/pkgs/development/python-modules/rq/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/rq/default.nix')
-rw-r--r--pkgs/development/python-modules/rq/default.nix41
1 files changed, 35 insertions, 6 deletions
diff --git a/pkgs/development/python-modules/rq/default.nix b/pkgs/development/python-modules/rq/default.nix
index b8e19d46f790..36ddd4d95b34 100644
--- a/pkgs/development/python-modules/rq/default.nix
+++ b/pkgs/development/python-modules/rq/default.nix
@@ -1,15 +1,27 @@
 { lib
+, stdenv
 , fetchFromGitHub
 , buildPythonPackage
 , pythonOlder
+
+# build-system
+, hatchling
+
+# dependencies
 , click
 , redis
+
+# tests
+, psutil
+, pytestCheckHook
+, redis-server
+, sentry-sdk
 }:
 
 buildPythonPackage rec {
   pname = "rq";
-  version = "1.15.1";
-  format = "setuptools";
+  version = "1.16.1";
+  pyproject = true;
 
   disabled = pythonOlder "3.7";
 
@@ -17,16 +29,33 @@ buildPythonPackage rec {
     owner = "rq";
     repo = "rq";
     rev = "refs/tags/v${version}";
-    hash = "sha256-cymNXFI+6YEVw2Pc7u6+vroC0428oW7BTLxyBgPqLng=";
+    hash = "sha256-1E7jPTSQCjuKZVFL4uZqL1WZHnxWSLTNcnpyvfHz7oY=";
   };
 
-  propagatedBuildInputs = [
+  build-system = [
+    hatchling
+  ];
+
+  dependencies = [
     click
     redis
   ];
 
-  # Tests require a running Redis rerver
-  doCheck = false;
+  nativeCheckInputs = [
+    psutil
+    pytestCheckHook
+    sentry-sdk
+  ];
+
+  preCheck = lib.optionalString stdenv.isLinux ''
+    PATH=$out/bin:$PATH
+    ${redis-server}/bin/redis-server &
+    REDIS_PID=$!
+  '';
+
+  postCheck = lib.optionalString stdenv.isLinux ''
+    kill $REDIS_PID
+  '';
 
   pythonImportsCheck = [
     "rq"