about summary refs log tree commit diff
path: root/pkgs/development/python-modules/aioitertools/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/aioitertools/default.nix')
-rw-r--r--pkgs/development/python-modules/aioitertools/default.nix40
1 files changed, 33 insertions, 7 deletions
diff --git a/pkgs/development/python-modules/aioitertools/default.nix b/pkgs/development/python-modules/aioitertools/default.nix
index 813eb00b1fb64..cae0b10ea6907 100644
--- a/pkgs/development/python-modules/aioitertools/default.nix
+++ b/pkgs/development/python-modules/aioitertools/default.nix
@@ -1,29 +1,55 @@
 { lib
-
 , buildPythonPackage
+, fetchpatch
 , fetchPypi
+, pythonAtLeast
 , pythonOlder
+
+# native
+, flit-core
+
+# propagates
 , typing-extensions
-, coverage
+
+# tests
 , python
-, toml
 }:
 
 buildPythonPackage rec {
   pname = "aioitertools";
   version = "0.8.0";
-  disabled = pythonOlder "3.7";
+  format = "pyproject";
+
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "8b02facfbc9b0f1867739949a223f3d3267ed8663691cc95abd94e2c1d8c2b46";
   };
 
-  propagatedBuildInputs = [ typing-extensions ];
-  checkInputs = [ coverage toml ];
+  patches = lib.optionals (pythonAtLeast "3.10") [
+    (fetchpatch {
+      # Fix TypeError: wait() got an unexpected keyword argument 'loop'
+      # See https://github.com/omnilib/aioitertools/issues/84
+      url = "https://raw.githubusercontent.com/archlinux/svntogit-community/packages/python-aioitertools/trunk/python310.patch";
+      sha256 = "sha256-F10sduGaLBcxEoP83N/lGpZIlzkM2JTnQnhHKFwc7P0=";
+    })
+  ];
+
+  nativeBuildInputs = [
+    flit-core
+  ];
+
+  propagatedBuildInputs = lib.optionals (pythonOlder "3.8") [
+    typing-extensions
+  ];
+
+  pythonImportsCheck = [
+    "aioitertools"
+  ];
 
   checkPhase = ''
-    ${python.interpreter} -m coverage run -m aioitertools.tests
+    ${python.interpreter} -m unittest discover
   '';
 
   meta = with lib; {