diff --git a/pkgs/development/python-modules/line_profiler/default.nix b/pkgs/development/python-modules/line_profiler/default.nix index 256cf107c86b..00ea8dba663e 100644 --- a/pkgs/development/python-modules/line_profiler/default.nix +++ b/pkgs/development/python-modules/line_profiler/default.nix @@ -16,12 +16,18 @@ buildPythonPackage rec { sha256 = "efa66e9e3045aa7cb1dd4bf0106e07dec9f80bc781a993fbaf8162a36c20af5c"; }; + patches = [ ./python37.patch ]; + buildInputs = [ cython ]; propagatedBuildInputs = [ ipython ]; disabled = isPyPy; + preBuild = '' + rm -f _line_profiler.c + ''; + checkPhase = '' ${python.interpreter} -m unittest discover -s tests ''; @@ -32,4 +38,4 @@ buildPythonPackage rec { license = lib.licenses.bsd3; maintainers = with lib.maintainers; [ fridh ]; }; -} \ No newline at end of file +} diff --git a/pkgs/development/python-modules/line_profiler/python37.patch b/pkgs/development/python-modules/line_profiler/python37.patch new file mode 100644 index 000000000000..0b6e93732c44 --- /dev/null +++ b/pkgs/development/python-modules/line_profiler/python37.patch @@ -0,0 +1,36 @@ +From 542baf59f3b2eada13bde48e8a89e484c2cfeeef Mon Sep 17 00:00:00 2001 +From: Hanaasagi +Date: Wed, 17 Apr 2019 06:46:03 +0000 +Subject: [PATCH] Support Python 3.7 Generator (PEP 479) + +--- + kernprof.py | 2 ++ + line_profiler.py | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/kernprof.py b/kernprof.py +index 108d36e..6461cf6 100755 +--- a/kernprof.py ++++ b/kernprof.py +@@ -102,6 +102,8 @@ def wrapper(*args, **kwds): + self.enable_by_count() + try: + item = g.send(input) ++ except StopIteration: ++ return + finally: + self.disable_by_count() + input = (yield item) +diff --git a/line_profiler.py b/line_profiler.py +index a481dd2..5744d05 100755 +--- a/line_profiler.py ++++ b/line_profiler.py +@@ -100,6 +100,8 @@ def wrapper(*args, **kwds): + self.enable_by_count() + try: + item = g.send(input) ++ except StopIteration: ++ return + finally: + self.disable_by_count() + input = (yield item)