From e2e115c03c3f32a46655157b2945af14cf4efb7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dani=C3=ABl=20de=20Kok?= Date: Sat, 20 Jun 2020 11:08:21 +0200 Subject: [PATCH 1/4] python3Packages.srsly: disable on Python older than 3.6 Also add an import check. --- pkgs/development/python-modules/srsly/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/srsly/default.nix b/pkgs/development/python-modules/srsly/default.nix index 92e6b84afdfe..54590f2e35a6 100644 --- a/pkgs/development/python-modules/srsly/default.nix +++ b/pkgs/development/python-modules/srsly/default.nix @@ -15,6 +15,8 @@ buildPythonPackage rec { pname = "srsly"; version = "2.0.1"; + disabled = pythonOlder "3.6"; + src = fetchPypi { inherit pname version; sha256 = "fa3c7375be8fe75f23c27feafbfb5f738d55ffdbf02964c6896fb7684f519a52"; @@ -22,8 +24,6 @@ buildPythonPackage rec { nativeBuildInputs = [ cython ]; - propagatedBuildInputs = lib.optional (pythonOlder "3.4") pathlib; - checkInputs = [ mock numpy @@ -35,6 +35,8 @@ buildPythonPackage rec { # Possibly because of sandbox restrictions. doCheck = false; + pythonImportsCheck = [ "srsly" ]; + meta = with stdenv.lib; { description = "Modern high-performance serialization utilities for Python"; homepage = "https://github.com/explosion/srsly"; From e6b1c9b1b456124f0789197b17923e42b5dd9622 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dani=C3=ABl=20de=20Kok?= Date: Sat, 20 Jun 2020 11:09:18 +0200 Subject: [PATCH 2/4] python3Packages.thinc: relax catalogue, plac, and srsly constraints Also add an import check. --- pkgs/development/python-modules/thinc/default.nix | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pkgs/development/python-modules/thinc/default.nix b/pkgs/development/python-modules/thinc/default.nix index e47e17094af3..b32b996ffd6f 100644 --- a/pkgs/development/python-modules/thinc/default.nix +++ b/pkgs/development/python-modules/thinc/default.nix @@ -58,10 +58,19 @@ buildPythonPackage rec { # Cannot find cython modules. doCheck = false; + postPatch = '' + substituteInPlace setup.py \ + --replace "catalogue>=0.0.7,<1.1.0" "catalogue>=0.0.7,<3.0" \ + --replace "plac>=0.9.6,<1.2.0" "plac>=0.9.6,<2.0" \ + --replace "srsly>=0.0.6,<1.1.0" "srsly>=0.0.6,<3.0" + ''; + checkPhase = '' pytest thinc/tests ''; + pythonImportsCheck = [ "thinc" ]; + meta = with stdenv.lib; { description = "Practical Machine Learning for NLP in Python"; homepage = "https://github.com/explosion/thinc"; From 916330f28edaf53b0e6c9f44a5eabe3ab31c6be6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dani=C3=ABl=20de=20Kok?= Date: Sat, 20 Jun 2020 11:26:36 +0200 Subject: [PATCH 3/4] python3Packages.spacy: relax catalogue, plac, and srsly versions Also add an import check. --- pkgs/development/python-modules/spacy/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/spacy/default.nix b/pkgs/development/python-modules/spacy/default.nix index f0a143ec30c7..51b04d372c5e 100644 --- a/pkgs/development/python-modules/spacy/default.nix +++ b/pkgs/development/python-modules/spacy/default.nix @@ -54,9 +54,15 @@ buildPythonPackage rec { # ''; postPatch = '' - substituteInPlace setup.cfg --replace "thinc==7.4.1" "thinc>=7.4.1,<8" + substituteInPlace setup.cfg \ + --replace "catalogue>=0.0.7,<1.1.0" "catalogue>=0.0.7,<3.0" \ + --replace "plac>=0.9.6,<1.2.0" "plac>=0.9.6,<2.0" \ + --replace "srsly>=1.0.2,<1.1.0" "srsly>=1.0.2,<3.0" \ + --replace "thinc==7.4.1" "thinc>=7.4.1,<8" ''; + pythonImportsCheck = [ "spacy" ]; + meta = with lib; { description = "Industrial-strength Natural Language Processing (NLP) with Python and Cython"; homepage = "https://github.com/explosion/spaCy"; From be79367b2566d88292e3cf754bb0aa0f20e060cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dani=C3=ABl=20de=20Kok?= Date: Sat, 20 Jun 2020 13:38:17 +0200 Subject: [PATCH 4/4] python2Packages.catalogue: remove --- .../python-modules/catalogue/1.nix | 24 ------------------- .../python-modules/catalogue/default.nix | 3 +++ pkgs/top-level/python-packages.nix | 5 +--- 3 files changed, 4 insertions(+), 28 deletions(-) delete mode 100644 pkgs/development/python-modules/catalogue/1.nix diff --git a/pkgs/development/python-modules/catalogue/1.nix b/pkgs/development/python-modules/catalogue/1.nix deleted file mode 100644 index 9376377e9c77..000000000000 --- a/pkgs/development/python-modules/catalogue/1.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ stdenv -, buildPythonPackage -, fetchPypi -, importlib-metadata -}: - -buildPythonPackage rec { - pname = "catalogue"; - version = "1.0.0"; - - src = fetchPypi { - inherit pname version; - sha256 = "d74d1d856c6b36a37bf14aa6dbbc27d0582667b7ab979a6108e61a575e8723f5"; - }; - - propagatedBuildInputs = [ importlib-metadata ]; - - meta = with stdenv.lib; { - description = "Tiny library for adding function or object registries"; - homepage = "https://github.com/explosion/catalogue"; - license = licenses.mit; - maintainers = with maintainers; [ danieldk ]; - }; -} \ No newline at end of file diff --git a/pkgs/development/python-modules/catalogue/default.nix b/pkgs/development/python-modules/catalogue/default.nix index 0697a4e61179..eb1aec37c634 100644 --- a/pkgs/development/python-modules/catalogue/default.nix +++ b/pkgs/development/python-modules/catalogue/default.nix @@ -1,6 +1,7 @@ { stdenv , buildPythonPackage , fetchPypi +, pythonOlder , importlib-metadata }: @@ -8,6 +9,8 @@ buildPythonPackage rec { pname = "catalogue"; version = "2.0.0"; + disabled = pythonOlder "3.6"; + src = fetchPypi { inherit pname version; sha256 = "34f8416ec5e7ed08e55c10414416e67c3f4d66edf83bc67320c3290775293816"; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0ecba8ceb468..71f0ed9d2b7e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -569,10 +569,7 @@ in { cadquery = callPackage ../development/python-modules/cadquery { }; - catalogue = if isPy3k then - callPackage ../development/python-modules/catalogue { } - else - callPackage ../development/python-modules/catalogue/1.nix { }; + catalogue = callPackage ../development/python-modules/catalogue { }; cbeams = callPackage ../misc/cbeams { };