about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorxeji <36407913+xeji@users.noreply.github.com>2018-07-14 21:50:32 +0200
committerGitHub <noreply@github.com>2018-07-14 21:50:32 +0200
commit27eb3c267394f4047a4c3f16e6da9a19fe0f9ff2 (patch)
tree84a2f11751661ee0d316ada01662546a765ad4a6 /pkgs
parent1c88d0c6bd0d632d58dd715dcf97a10618f0ac43 (diff)
parent65b15ba6a96760125cc3984893f587af1ffacaac (diff)
downloadnixlib-27eb3c267394f4047a4c3f16e6da9a19fe0f9ff2.tar
nixlib-27eb3c267394f4047a4c3f16e6da9a19fe0f9ff2.tar.gz
nixlib-27eb3c267394f4047a4c3f16e6da9a19fe0f9ff2.tar.bz2
nixlib-27eb3c267394f4047a4c3f16e6da9a19fe0f9ff2.tar.lz
nixlib-27eb3c267394f4047a4c3f16e6da9a19fe0f9ff2.tar.xz
nixlib-27eb3c267394f4047a4c3f16e6da9a19fe0f9ff2.tar.zst
nixlib-27eb3c267394f4047a4c3f16e6da9a19fe0f9ff2.zip
Merge pull request #41934 from teto/cmd2_0.9.1
pythonPackages.cmd2: 0.8.0 -> 0.9.1
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/python-modules/cmd2/default.nix18
-rw-r--r--pkgs/development/python-modules/cmd2/old.nix49
-rw-r--r--pkgs/development/python-modules/wcwidth/default.nix26
-rw-r--r--pkgs/top-level/python-packages.nix29
4 files changed, 88 insertions, 34 deletions
diff --git a/pkgs/development/python-modules/cmd2/default.nix b/pkgs/development/python-modules/cmd2/default.nix
index 5ffa51def0d2..e83fd4163e4a 100644
--- a/pkgs/development/python-modules/cmd2/default.nix
+++ b/pkgs/development/python-modules/cmd2/default.nix
@@ -1,17 +1,15 @@
-{ stdenv, fetchPypi, buildPythonPackage, pythonOlder
-, pyperclip, six, pyparsing, vim
+{ stdenv, fetchPypi, buildPythonPackage, pythonOlder, isPy3k
+, pyperclip, six, pyparsing, vim, wcwidth, colorama
 , contextlib2 ? null, subprocess32 ? null
 , pytest, mock, which, fetchFromGitHub, glibcLocales
 }:
 buildPythonPackage rec {
   pname = "cmd2";
-  version = "0.8.0";
+  version = "0.9.1";
 
-  src = fetchFromGitHub {
-    owner = "python-cmd2";
-    repo = "cmd2";
-    rev = version;
-    sha256 = "0nw2b7n7zg51bc3glxw0l9fn91mwjnjshklhmxhyvjbsg7khf64z";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1wpw4f9zix30hfncm0hwxjjdx78zq26x3r8s9nvsq9vnxf41xb49";
   };
 
   LC_ALL="en_US.UTF-8";
@@ -31,14 +29,16 @@ buildPythonPackage rec {
     py.test -k 'not test_path_completion_user_expansion'
   '';
   doCheck = !stdenv.isDarwin;
+  disabled = !isPy3k;
 
   propagatedBuildInputs = [
+    colorama
     pyperclip
     six
     pyparsing
+    wcwidth
   ]
   ++ stdenv.lib.optional (pythonOlder "3.5") contextlib2
-  ++ stdenv.lib.optional (pythonOlder "3.0") subprocess32
   ;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/cmd2/old.nix b/pkgs/development/python-modules/cmd2/old.nix
new file mode 100644
index 000000000000..5ffa51def0d2
--- /dev/null
+++ b/pkgs/development/python-modules/cmd2/old.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchPypi, buildPythonPackage, pythonOlder
+, pyperclip, six, pyparsing, vim
+, contextlib2 ? null, subprocess32 ? null
+, pytest, mock, which, fetchFromGitHub, glibcLocales
+}:
+buildPythonPackage rec {
+  pname = "cmd2";
+  version = "0.8.0";
+
+  src = fetchFromGitHub {
+    owner = "python-cmd2";
+    repo = "cmd2";
+    rev = version;
+    sha256 = "0nw2b7n7zg51bc3glxw0l9fn91mwjnjshklhmxhyvjbsg7khf64z";
+  };
+
+  LC_ALL="en_US.UTF-8";
+
+  postPatch = stdenv.lib.optional stdenv.isDarwin ''
+    # Fake the impure dependencies pbpaste and pbcopy
+    mkdir bin
+    echo '#/bin/sh' > bin/pbpaste
+    echo '#/bin/sh' > bin/pbcopy
+    chmod +x bin/{pbcopy,pbpaste}
+    export PATH=$(realpath bin):$PATH
+  '';
+
+  checkInputs= [ pytest mock which vim glibcLocales ];
+  checkPhase = ''
+    # test_path_completion_user_expansion might be fixed in the next release
+    py.test -k 'not test_path_completion_user_expansion'
+  '';
+  doCheck = !stdenv.isDarwin;
+
+  propagatedBuildInputs = [
+    pyperclip
+    six
+    pyparsing
+  ]
+  ++ stdenv.lib.optional (pythonOlder "3.5") contextlib2
+  ++ stdenv.lib.optional (pythonOlder "3.0") subprocess32
+  ;
+
+  meta = with stdenv.lib; {
+    description = "Enhancements for standard library's cmd module";
+    homepage = https://github.com/python-cmd2/cmd2;
+    maintainers = with maintainers; [ teto ];
+  };
+}
diff --git a/pkgs/development/python-modules/wcwidth/default.nix b/pkgs/development/python-modules/wcwidth/default.nix
new file mode 100644
index 000000000000..fa993c593e1a
--- /dev/null
+++ b/pkgs/development/python-modules/wcwidth/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchurl, buildPythonPackage }:
+
+buildPythonPackage rec {
+    name = "wcwidth-${version}";
+    version = "0.1.7";
+
+    src = fetchurl {
+      url = "mirror://pypi/w/wcwidth/${name}.tar.gz";
+      sha256 = "0pn6dflzm609m4r3i8ik5ni9ijjbb5fa3vg1n7hn6vkd49r77wrx";
+    };
+
+    # Checks fail due to missing tox.ini file:
+    doCheck = false;
+
+    meta = with stdenv.lib; {
+      description = "Measures number of Terminal column cells of wide-character codes";
+      longDescription = ''
+        This API is mainly for Terminal Emulator implementors -- any Python
+        program that attempts to determine the printable width of a string on
+        a Terminal. It is implemented in python (no C library calls) and has
+        no 3rd-party dependencies.
+      '';
+      homepage = https://github.com/jquast/wcwidth;
+      license = licenses.mit;
+    };
+  }
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 5eb33fa96d96..add15eaae888 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -9110,7 +9110,9 @@ in {
    cachetools_1 = callPackage ../development/python-modules/cachetools/1.nix {};
    cachetools = callPackage ../development/python-modules/cachetools {};
 
-  cmd2 = callPackage ../development/python-modules/cmd2 {};
+  cmd2_8 = callPackage ../development/python-modules/cmd2/old.nix {};
+  cmd2_9 = callPackage ../development/python-modules/cmd2 {};
+  cmd2 = if isPy27 then self.cmd2_8 else self.cmd2_9;
 
  warlock = buildPythonPackage rec {
    name = "warlock-${version}";
@@ -14735,30 +14737,7 @@ EOF
     imagemagick = pkgs.imagemagickBig;
   };
 
-  wcwidth = buildPythonPackage rec {
-    name = "wcwidth-${version}";
-    version = "0.1.6";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/w/wcwidth/${name}.tar.gz";
-      sha256 = "02wjrpf001gjdjsaxxbzcwfg19crlk2dbddayrfc2v06f53yrcyw";
-    };
-
-    # Checks fail due to missing tox.ini file:
-    doCheck = false;
-
-    meta = {
-      description = "Measures number of Terminal column cells of wide-character codes";
-      longDescription = ''
-        This API is mainly for Terminal Emulator implementors -- any Python
-        program that attempts to determine the printable width of a string on
-        a Terminal. It is implemented in python (no C library calls) and has
-        no 3rd-party dependencies.
-      '';
-      homepage = https://github.com/jquast/wcwidth;
-      license = licenses.mit;
-    };
-  };
+  wcwidth = callPackage ../development/python-modules/wcwidth { };
 
   web = buildPythonPackage rec {
     version = "0.37";