From fd67fc5dd48cba8266be62ca0258e960d26a53dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 10 Mar 2021 15:08:30 +0100 Subject: [PATCH 1/6] pythonPackages.convertdate: dropped support for Python 2 --- pkgs/development/python-modules/convertdate/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/convertdate/default.nix b/pkgs/development/python-modules/convertdate/default.nix index f285a74e544..0dee95541b0 100644 --- a/pkgs/development/python-modules/convertdate/default.nix +++ b/pkgs/development/python-modules/convertdate/default.nix @@ -1,5 +1,6 @@ { lib , buildPythonPackage +, isPy27 , fetchFromGitHub , pymeeus , pytz @@ -10,6 +11,8 @@ buildPythonPackage rec { pname = "convertdate"; version = "2.3.0"; + disabled = isPy27; + # Tests are not available in the PyPI tarball so use GitHub instead. src = fetchFromGitHub { owner = "fitnr"; From e1d60a05af55daadaeaf85d14869459b9b8c9635 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 10 Mar 2021 15:11:41 +0100 Subject: [PATCH 2/6] pythonPackages.convertdate: add python2-compatible expression --- .../python-modules/convertdate/2.2.x.nix | 36 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 5 ++- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/convertdate/2.2.x.nix diff --git a/pkgs/development/python-modules/convertdate/2.2.x.nix b/pkgs/development/python-modules/convertdate/2.2.x.nix new file mode 100644 index 00000000000..d67f4c5a344 --- /dev/null +++ b/pkgs/development/python-modules/convertdate/2.2.x.nix @@ -0,0 +1,36 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pymeeus +, pytz +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "convertdate"; + version = "2.2.2"; + + # Tests are not available in the PyPI tarball so use GitHub instead. + src = fetchFromGitHub { + owner = "fitnr"; + repo = pname; + rev = "v${version}"; + sha256 = "1xgi7x9b9kxm0q51bqnmwdm5lp8vwhx5yk4d1b23r37spz9dbhw5"; + }; + + propagatedBuildInputs = [ + pymeeus + pytz + ]; + + checkInputs = [ + pytestCheckHook + ]; + + meta = with lib; { + homepage = "https://github.com/fitnr/convertdate"; + description = "Utils for converting between date formats and calculating holidays"; + license = licenses.mit; + maintainers = with maintainers; [ jluttine ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7799b6356b3..6237954eac3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1472,7 +1472,10 @@ in { contextvars = callPackage ../development/python-modules/contextvars { }; - convertdate = callPackage ../development/python-modules/convertdate { }; + convertdate = if isPy27 then + callPackage ../development/python-modules/convertdate/2.2.x.nix { } + else + callPackage ../development/python-modules/convertdate { }; cookiecutter = callPackage ../development/python-modules/cookiecutter { }; From dc7fd28f2a34bf8ab2261bbf37d5dba156c85718 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 10 Mar 2021 15:28:50 +0100 Subject: [PATCH 3/6] pythonPackages.dateparser: add python2-compatible expression --- .../python-modules/dateparser/0.x.nix | 55 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 5 +- 2 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/dateparser/0.x.nix diff --git a/pkgs/development/python-modules/dateparser/0.x.nix b/pkgs/development/python-modules/dateparser/0.x.nix new file mode 100644 index 00000000000..49e2d1f2796 --- /dev/null +++ b/pkgs/development/python-modules/dateparser/0.x.nix @@ -0,0 +1,55 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, mock +, parameterized +, pytestCheckHook +, dateutil +, pytz +, regex +, tzlocal +, convertdate +, umalqurra +, jdatetime +, ruamel_yaml +}: + +buildPythonPackage rec { + pname = "dateparser"; + version = "0.7.6"; + + src = fetchFromGitHub { + owner = "scrapinghub"; + repo = "dateparser"; + rev = "v${version}"; + sha256 = "0j3sm4hlx7z0ci5fnjq5n9i02vvlfz0wxa889ydryfknjhy5apqw"; + }; + + checkInputs = [ + mock + parameterized + pytestCheckHook + ]; + + pytestFlagsArray = [ "tests" ]; + + disabledTestPaths = [ + "tests/test_dateparser_data_integrity.py" # ImportError: No module named ruamel.yaml + ]; + + propagatedBuildInputs = [ + # install_requires + dateutil pytz regex tzlocal + # extra_requires + convertdate umalqurra jdatetime ruamel_yaml + ]; + + pythonImportsCheck = [ "dateparser" ]; + + meta = with lib; { + description = "Date parsing library designed to parse dates from HTML pages"; + homepage = "https://github.com/scrapinghub/dateparser"; + license = licenses.bsd3; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6237954eac3..c2473c7f821 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1669,7 +1669,10 @@ in { inherit (pkgs.llvmPackages) libcxx; }; - dateparser = callPackage ../development/python-modules/dateparser { }; + dateparser = if isPy27 then + callPackage ../development/python-modules/dateparser/0.x.nix { } + else + callPackage ../development/python-modules/dateparser { }; datrie = callPackage ../development/python-modules/datrie { }; From e53717ca1183556abe78493cc2fc3fae40ecee71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 10 Mar 2021 15:36:55 +0100 Subject: [PATCH 4/6] pythonPackages.construct: add python2-compatible expression --- .../python-modules/construct/2.10.54.nix | 29 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 5 +++- 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/construct/2.10.54.nix diff --git a/pkgs/development/python-modules/construct/2.10.54.nix b/pkgs/development/python-modules/construct/2.10.54.nix new file mode 100644 index 00000000000..6bb279490ab --- /dev/null +++ b/pkgs/development/python-modules/construct/2.10.54.nix @@ -0,0 +1,29 @@ +{ lib, stdenv, buildPythonPackage, fetchFromGitHub, pythonOlder +, six, pytestCheckHook, pytest-benchmark, enum34, numpy, arrow, ruamel_yaml +}: + +buildPythonPackage rec { + pname = "construct"; + version = "2.10.54"; + + # no tests in PyPI tarball + src = fetchFromGitHub { + owner = pname; + repo = pname; + rev = "v${version}"; + sha256 = "1mqspsn6bf3ibvih1zna2glkg8iw7vy5zg9gzg0d1m8zcndk2c48"; + }; + + checkInputs = [ pytestCheckHook pytest-benchmark enum34 numpy arrow ruamel_yaml ]; + + disabledTests = lib.optionals stdenv.isDarwin [ "test_multiprocessing" ]; + + pytestFlagsArray = [ "--benchmark-disable" ]; + + meta = with lib; { + description = "Powerful declarative parser (and builder) for binary data"; + homepage = "https://construct.readthedocs.org/"; + license = licenses.mit; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c2473c7f821..e8a71295448 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1462,7 +1462,10 @@ in { constantly = callPackage ../development/python-modules/constantly { }; - construct = callPackage ../development/python-modules/construct { }; + construct = if isPy27 then + callPackage ../development/python-modules/construct/2.10.54.nix { } + else + callPackage ../development/python-modules/construct { }; consul = callPackage ../development/python-modules/consul { }; From 8b114a0e8672ea62289da553cd919ded96a51feb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 10 Mar 2021 15:44:42 +0100 Subject: [PATCH 5/6] pythonPackages.vcrpy: dropped support for Python 2.7 --- pkgs/development/python-modules/vcrpy/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/vcrpy/default.nix b/pkgs/development/python-modules/vcrpy/default.nix index e67bbc59e93..7766e75ba05 100644 --- a/pkgs/development/python-modules/vcrpy/default.nix +++ b/pkgs/development/python-modules/vcrpy/default.nix @@ -1,5 +1,6 @@ { buildPythonPackage , lib +, isPy27 , six , fetchPypi , pyyaml @@ -17,6 +18,8 @@ buildPythonPackage rec { pname = "vcrpy"; version = "4.1.1"; + disabled = isPy27; + src = fetchPypi { inherit pname version; sha256 = "57095bf22fc0a2d99ee9674cdafebed0f3ba763018582450706f7d3a74fff599"; From 46abe66ddb301861bcfef02b707a4ce5d43b6969 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Wed, 10 Mar 2021 15:45:06 +0100 Subject: [PATCH 6/6] pythonPackages.vcrpy: add python2-compatible expression --- pkgs/development/python-modules/vcrpy/3.nix | 48 +++++++++++++++++++++ pkgs/top-level/python-packages.nix | 5 ++- 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/vcrpy/3.nix diff --git a/pkgs/development/python-modules/vcrpy/3.nix b/pkgs/development/python-modules/vcrpy/3.nix new file mode 100644 index 00000000000..ddd4015aad1 --- /dev/null +++ b/pkgs/development/python-modules/vcrpy/3.nix @@ -0,0 +1,48 @@ +{ buildPythonPackage +, lib +, six +, fetchPypi +, pyyaml +, mock +, contextlib2 +, wrapt +, pytest +, pytest-httpbin +, yarl +, pythonOlder +, pythonAtLeast +}: + +buildPythonPackage rec { + pname = "vcrpy"; + version = "3.0.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "21168d5ae14263a833d4b71acfd8278d8841114f24be1b4ab4a5719d0c7f07bc"; + }; + + checkInputs = [ + pytest + pytest-httpbin + ]; + + propagatedBuildInputs = [ + pyyaml + wrapt + six + ] + ++ lib.optionals (pythonOlder "3.3") [ contextlib2 mock ] + ++ lib.optionals (pythonAtLeast "3.4") [ yarl ]; + + checkPhase = '' + py.test --ignore=tests/integration -k "not TestVCRConnection" + ''; + + meta = with lib; { + description = "Automatically mock your HTTP interactions to simplify and speed up testing"; + homepage = "https://github.com/kevin1024/vcrpy"; + license = licenses.mit; + }; +} + diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e8a71295448..725b1645a80 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -8363,7 +8363,10 @@ in { varint = callPackage ../development/python-modules/varint { }; - vcrpy = callPackage ../development/python-modules/vcrpy { }; + vcrpy = if isPy27 then + callPackage ../development/python-modules/vcrpy/3.nix { } + else + callPackage ../development/python-modules/vcrpy { }; vcver = callPackage ../development/python-modules/vcver { };