From ce5b550d0139a3a98b6517ad34af27df45002b11 Mon Sep 17 00:00:00 2001 From: Keshav Kini Date: Fri, 11 Dec 2020 03:09:48 -0800 Subject: [PATCH] python36Packages.traitlets, pythonPackages.traitlets: 5.0.5 -> 4.3.3 Version 5.x of traitlets requires Python 3.7, so it doesn't build on Python 3.6. This commit downgrades traitlets to 4.3.3 on Python versions older than 3.7 so that it can still be used. --- .../python-modules/traitlets/4.nix | 36 +++++++++++++++++++ .../python-modules/traitlets/default.nix | 5 ++- pkgs/top-level/python-packages.nix | 5 ++- 3 files changed, 42 insertions(+), 4 deletions(-) create mode 100644 pkgs/development/python-modules/traitlets/4.nix diff --git a/pkgs/development/python-modules/traitlets/4.nix b/pkgs/development/python-modules/traitlets/4.nix new file mode 100644 index 00000000000..bffd7c790be --- /dev/null +++ b/pkgs/development/python-modules/traitlets/4.nix @@ -0,0 +1,36 @@ +{ lib +, buildPythonPackage +, fetchPypi +, glibcLocales +, pytest +, mock +, ipython_genutils +, decorator +, enum34 +, pythonOlder +, six +}: + +buildPythonPackage rec { + pname = "traitlets"; + version = "4.3.3"; + + src = fetchPypi { + inherit pname version; + sha256 = "d023ee369ddd2763310e4c3eae1ff649689440d4ae59d7485eb4cfbbe3e359f7"; + }; + + checkInputs = [ glibcLocales pytest mock ]; + propagatedBuildInputs = [ ipython_genutils decorator six ] ++ lib.optional (pythonOlder "3.4") enum34; + + checkPhase = '' + LC_ALL="en_US.UTF-8" py.test + ''; + + meta = { + description = "Traitlets Python config system"; + homepage = "http://ipython.org/"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ ]; + }; +} diff --git a/pkgs/development/python-modules/traitlets/default.nix b/pkgs/development/python-modules/traitlets/default.nix index 5d304c61f5c..3bc05897af6 100644 --- a/pkgs/development/python-modules/traitlets/default.nix +++ b/pkgs/development/python-modules/traitlets/default.nix @@ -1,6 +1,5 @@ { lib , buildPythonPackage -, isPy27 , fetchPypi , glibcLocales , pytest @@ -15,7 +14,7 @@ buildPythonPackage rec { pname = "traitlets"; version = "5.0.5"; - disabled = isPy27; + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; @@ -23,7 +22,7 @@ buildPythonPackage rec { }; checkInputs = [ glibcLocales pytest mock ]; - propagatedBuildInputs = [ ipython_genutils decorator six ] ++ lib.optional (pythonOlder "3.4") enum34; + propagatedBuildInputs = [ ipython_genutils decorator six ]; checkPhase = '' LC_ALL="en_US.UTF-8" py.test diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 447bbcbbdbe..421aca7033a 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7437,7 +7437,10 @@ in { trackpy = callPackage ../development/python-modules/trackpy { }; - traitlets = callPackage ../development/python-modules/traitlets { }; + traitlets = if pythonOlder "3.7" then + callPackage ../development/python-modules/traitlets/4.nix { } + else + callPackage ../development/python-modules/traitlets { }; traits = callPackage ../development/python-modules/traits { };