summary refs log tree commit diff
path: root/pkgs/development/python-modules
diff options
context:
space:
mode:
authorJan Malakhovski <oxij@oxij.org>2018-03-10 14:41:34 +0000
committerJan Malakhovski <oxij@oxij.org>2018-03-10 20:38:13 +0000
commit7079e744d4666db3af186899fe2fc0ef3cbeb842 (patch)
treed65e951be75dab998ecd2e8337e1c30e7722e28c /pkgs/development/python-modules
parent4eec6bc9c9cafac55dbf774a2fd30da7e5a79cc4 (diff)
parentddddca5c2fe1c93369404979ac194a1bc5d5fbaf (diff)
downloadnixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar
nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar.gz
nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar.bz2
nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar.lz
nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar.xz
nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.tar.zst
nixlib-7079e744d4666db3af186899fe2fc0ef3cbeb842.zip
Merge branch 'master' into staging
Resolved the following conflicts (by carefully applying patches from the both
branches since the fork point):

   pkgs/development/libraries/epoxy/default.nix
   pkgs/development/libraries/gtk+/3.x.nix
   pkgs/development/python-modules/asgiref/default.nix
   pkgs/development/python-modules/daphne/default.nix
   pkgs/os-specific/linux/systemd/default.nix
Diffstat (limited to 'pkgs/development/python-modules')
-rw-r--r--pkgs/development/python-modules/aiohttp/cors.nix14
-rw-r--r--pkgs/development/python-modules/aiohttp/default.nix2
-rw-r--r--pkgs/development/python-modules/antlr4-python3-runtime/default.nix18
-rw-r--r--pkgs/development/python-modules/asgi_ipc/default.nix21
-rw-r--r--pkgs/development/python-modules/asgi_redis/default.nix24
-rw-r--r--pkgs/development/python-modules/asgiref/default.nix4
-rw-r--r--pkgs/development/python-modules/daphne/default.nix4
-rw-r--r--pkgs/development/python-modules/datashape/default.nix4
-rw-r--r--pkgs/development/python-modules/h11/default.nix19
-rw-r--r--pkgs/development/python-modules/junos-eznc/default.nix42
-rw-r--r--pkgs/development/python-modules/latexcodec/default.nix20
-rw-r--r--pkgs/development/python-modules/ncclient/default.nix41
-rw-r--r--pkgs/development/python-modules/odo/default.nix21
-rw-r--r--pkgs/development/python-modules/oset/default.nix19
-rw-r--r--pkgs/development/python-modules/pillow/default.nix11
-rw-r--r--pkgs/development/python-modules/polib/default.nix20
-rw-r--r--pkgs/development/python-modules/proboscis/default.nix21
-rw-r--r--pkgs/development/python-modules/progressbar/default.nix21
-rw-r--r--pkgs/development/python-modules/protocol/default.nix20
-rw-r--r--pkgs/development/python-modules/publicsuffix/default.nix27
-rw-r--r--pkgs/development/python-modules/pybtex-docutils/default.nix20
-rw-r--r--pkgs/development/python-modules/pybtex/default.nix20
-rw-r--r--pkgs/development/python-modules/pychart/default.nix19
-rw-r--r--pkgs/development/python-modules/pyftgl/default.nix4
-rw-r--r--pkgs/development/python-modules/pyglet/default.nix4
-rw-r--r--pkgs/development/python-modules/pyjade/default.nix29
-rw-r--r--pkgs/development/python-modules/pytest-mock/default.nix4
-rw-r--r--pkgs/development/python-modules/python-ptrace/default.nix24
-rw-r--r--pkgs/development/python-modules/scp/default.nix34
-rw-r--r--pkgs/development/python-modules/sphinx-navtree/default.nix18
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-bibtex/default.nix22
-rw-r--r--pkgs/development/python-modules/wsproto/default.nix14
32 files changed, 494 insertions, 91 deletions
diff --git a/pkgs/development/python-modules/aiohttp/cors.nix b/pkgs/development/python-modules/aiohttp/cors.nix
index 9da239b524a6..3065bb17c05d 100644
--- a/pkgs/development/python-modules/aiohttp/cors.nix
+++ b/pkgs/development/python-modules/aiohttp/cors.nix
@@ -1,20 +1,24 @@
-{lib, stdenv, buildPythonPackage, fetchPypi, pythonOlder, typing, aiohttp }:
+{ lib, stdenv, buildPythonPackage, fetchPypi, pythonOlder
+, typing, aiohttp
+}:
 
 buildPythonPackage rec {
   pname = "aiohttp-cors";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1r0mb4dw0dc1lpi54dk5vxqs06nyhvagp76lyrvk7rd94z5mjkd4";
+    sha256 = "0pczn54bqd32v8zhfbjfybiza6xh1szwxy6as577dn8g23bwcfad";
   };
 
-  # Requires network access
-  doCheck = false;
+  disabled = pythonOlder "3.5";
 
   propagatedBuildInputs = [ aiohttp ]
   ++ lib.optional (pythonOlder "3.5") typing;
 
+  # Requires network access
+  doCheck = false;
+
   meta = with lib; {
     description = "CORS support for aiohttp";
     homepage = "https://github.com/aio-libs/aiohttp-cors";
diff --git a/pkgs/development/python-modules/aiohttp/default.nix b/pkgs/development/python-modules/aiohttp/default.nix
index c9bc6cb781c5..5408fb7b2f2c 100644
--- a/pkgs/development/python-modules/aiohttp/default.nix
+++ b/pkgs/development/python-modules/aiohttp/default.nix
@@ -22,7 +22,7 @@ buildPythonPackage rec {
     sha256 = "bb873da531401416acb7045a8f0bdf6555e9c6866989cd977166fae3cbbb954b";
   };
 
-  disabled = pythonOlder "3.4";
+  disabled = pythonOlder "3.5";
 
   checkInputs = [ pytest gunicorn pytest-mock ];
 
diff --git a/pkgs/development/python-modules/antlr4-python3-runtime/default.nix b/pkgs/development/python-modules/antlr4-python3-runtime/default.nix
new file mode 100644
index 000000000000..84f2859d50c0
--- /dev/null
+++ b/pkgs/development/python-modules/antlr4-python3-runtime/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl, buildPythonPackage, isPy3k }:
+
+buildPythonPackage rec {
+  version = "4.7.1";
+  name = "antlr4-python3-runtime-${version}";
+  disabled = !isPy3k;
+
+  src = fetchurl {
+    url = "mirror://pypi/a/antlr4-python3-runtime/${name}.tar.gz";
+    sha256 = "1lrzmagawmavyw1n1z0qarvs2jmbnbv0p89dah8g7klj8hnbf9hv";
+  };
+
+  meta = {
+    description = "Runtime for ANTLR";
+    homepage = "http://www.antlr.org/";
+    license = stdenv.lib.licenses.bsd3;
+  };
+}
diff --git a/pkgs/development/python-modules/asgi_ipc/default.nix b/pkgs/development/python-modules/asgi_ipc/default.nix
deleted file mode 100644
index bdb12203de67..000000000000
--- a/pkgs/development/python-modules/asgi_ipc/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ stdenv, buildPythonPackage, fetchurl,
-  asgiref, msgpack, posix_ipc
-}:
-buildPythonPackage rec {
-  version = "1.4.2";
-  pname = "asgi_ipc";
-  name = "${pname}-${version}";
-
-  src = fetchurl {
-    url = "mirror://pypi/a/asgi_ipc/${name}.tar.gz";
-    sha256 = "2403f41184405791b05e7aee570bd6ccd47e2d91845d78fe17adcf58ef48c037";
-  };
-
-  propagatedBuildInputs = [ asgiref msgpack posix_ipc ];
-
-  meta = with stdenv.lib; {
-    description = "Posix IPC-backed ASGI channel layer implementation";
-    license = licenses.bsd3;
-    homepage = https://github.com/django/asgi_ipc/;
-  };
-}
diff --git a/pkgs/development/python-modules/asgi_redis/default.nix b/pkgs/development/python-modules/asgi_redis/default.nix
deleted file mode 100644
index d4c9388f1a7d..000000000000
--- a/pkgs/development/python-modules/asgi_redis/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ stdenv, buildPythonPackage, fetchPypi,
-  asgiref, asgi_ipc, msgpack, six, redis, cryptography
-}:
-buildPythonPackage rec {
-  version = "1.4.3";
-  pname = "asgi_redis";
-  name = "${pname}-${version}";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "10xk7k7mcd28nb3v93mc8xa7sa6p02jnbl8idk6scr6p75jaixzi";
-  };
-
-  # Requires a redis server available
-  doCheck = false;
-
-  propagatedBuildInputs = [ asgiref asgi_ipc msgpack six redis cryptography ];
-
-  meta = with stdenv.lib; {
-    description = "Redis-backed ASGI channel layer implementation";
-    license = licenses.bsd3;
-    homepage = https://github.com/django/asgi_redis/;
-  };
-}
diff --git a/pkgs/development/python-modules/asgiref/default.nix b/pkgs/development/python-modules/asgiref/default.nix
index 2b3be05d0608..a556cd3c87f2 100644
--- a/pkgs/development/python-modules/asgiref/default.nix
+++ b/pkgs/development/python-modules/asgiref/default.nix
@@ -1,6 +1,6 @@
 { stdenv, buildPythonPackage, fetchFromGitHub, async-timeout, pytest, pytest-asyncio }:
 buildPythonPackage rec {
-  version = "2.1.6";
+  version = "2.2.0";
   pname = "asgiref";
 
   # PyPI tarball doesn't include tests directory
@@ -8,7 +8,7 @@ buildPythonPackage rec {
     owner = "django";
     repo = pname;
     rev = version;
-    sha256 = "12p1i2ai03x2hx6b3i7xgicyfi2x11is6pkbdac4jpz7fmbz3zlh";
+    sha256 = "0jsdkgwzswm1jbfm6d100yfvfzpic8v6ysydcnn798bbpwclj8ip";
   };
 
   propagatedBuildInputs = [ async-timeout ];
diff --git a/pkgs/development/python-modules/daphne/default.nix b/pkgs/development/python-modules/daphne/default.nix
index 7fafee56b422..7ead1cacfa66 100644
--- a/pkgs/development/python-modules/daphne/default.nix
+++ b/pkgs/development/python-modules/daphne/default.nix
@@ -4,7 +4,7 @@
 }:
 buildPythonPackage rec {
   pname = "daphne";
-  version = "2.0.3";
+  version = "2.1.0";
 
   disabled = !isPy3k;
 
@@ -12,7 +12,7 @@ buildPythonPackage rec {
     owner = "django";
     repo = pname;
     rev = version;
-    sha256 = "1rdnzpgyk5cnx4xc3c7k11v2x9xpihgjpq14fib80jfpcqggw687";
+    sha256 = "1lbpn0l796ar77amqy8dap30zxmsn6as8y2lbmp4lk8m9awscwi8";
   };
 
   nativeBuildInputs = [ pytestrunner ];
diff --git a/pkgs/development/python-modules/datashape/default.nix b/pkgs/development/python-modules/datashape/default.nix
index 9177e9f0ff48..4fcb38e7b36b 100644
--- a/pkgs/development/python-modules/datashape/default.nix
+++ b/pkgs/development/python-modules/datashape/default.nix
@@ -31,8 +31,10 @@ in buildPythonPackage rec {
   checkInputs = [ pytest mock ];
   propagatedBuildInputs = [ numpy multipledispatch dateutil ];
 
+  # Disable several tests
+  # https://github.com/blaze/datashape/issues/232
   checkPhase = ''
-    py.test datashape/tests
+    py.test -k "not test_validate and not test_nested_iteratables and not test_validate_dicts and not test_tuples_can_be_records_too" datashape/tests
   '';
 
   meta = {
diff --git a/pkgs/development/python-modules/h11/default.nix b/pkgs/development/python-modules/h11/default.nix
new file mode 100644
index 000000000000..097495128dbd
--- /dev/null
+++ b/pkgs/development/python-modules/h11/default.nix
@@ -0,0 +1,19 @@
+{ lib, buildPythonPackage, fetchPypi, pytest }:
+
+buildPythonPackage rec {
+  pname = "h11";
+  version = "0.7.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    extension = "zip";
+    sha256 = "1n9hsm1n2qq32j3hh9wj93w738bwa5nqyzxjwvirz03gp8fbn3qw";
+  };
+
+  buildInputs = [ pytest ];
+
+  meta = with lib; {
+    description = "Pure-Python, bring-your-own-I/O implementation of HTTP/1.1";
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/junos-eznc/default.nix b/pkgs/development/python-modules/junos-eznc/default.nix
new file mode 100644
index 000000000000..992780ef33d3
--- /dev/null
+++ b/pkgs/development/python-modules/junos-eznc/default.nix
@@ -0,0 +1,42 @@
+{ stdenv
+, buildPythonPackage
+, fetchPypi
+, six
+, scp
+, pyserial
+, paramiko
+, netaddr
+, ncclient
+, lxml
+, jinja2
+, pyyaml
+, nose
+}:
+
+buildPythonPackage rec {
+  pname = "junos-eznc";
+  version = "2.1.7";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "95a037cdd05618a189517357e46a06886909a18c7923b628c6ac43d5f54b2912";
+  };
+
+
+  checkInputs = [ nose ];
+
+  propagatedBuildInputs = [
+    scp six pyserial paramiko netaddr ncclient lxml jinja2 pyyaml
+  ];
+
+  checkPhase = ''
+    nosetests -v --with-coverage --cover-package=jnpr.junos --cover-inclusive -a unit
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.github.com/Juniper/py-junos-eznc;
+    description = "Junos 'EZ' automation for non-programmers";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ xnaveira ];
+  };
+}
diff --git a/pkgs/development/python-modules/latexcodec/default.nix b/pkgs/development/python-modules/latexcodec/default.nix
new file mode 100644
index 000000000000..3b639ee2afb9
--- /dev/null
+++ b/pkgs/development/python-modules/latexcodec/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, buildPythonPackage, fetchPypi, six }:
+
+buildPythonPackage rec {
+  pname = "latexcodec";
+  version = "1.0.5";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0zdd1gf24i83ykadx0y30n3001j43scqr2saql3vckk5c39dj1wn";
+  };
+
+  propagatedBuildInputs = [ six ];
+
+  meta = {
+    homepage = "https://github.com/mcmtroffaes/latexcodec";
+    description = "Lexer and codec to work with LaTeX code in Python";
+    license = stdenv.lib.licenses.mit;
+  };
+
+}
diff --git a/pkgs/development/python-modules/ncclient/default.nix b/pkgs/development/python-modules/ncclient/default.nix
new file mode 100644
index 000000000000..4cc5769d8d83
--- /dev/null
+++ b/pkgs/development/python-modules/ncclient/default.nix
@@ -0,0 +1,41 @@
+{ stdenv
+, buildPythonPackage
+, fetchPypi
+, paramiko
+, lxml
+, libxml2
+, libxslt
+, pytest
+, nose
+, rednose
+}:
+
+buildPythonPackage rec {
+  pname = "ncclient";
+  version = "0.5.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "fe6b9c16ed5f1b21f5591da74bfdd91a9bdf69eb4e918f1c06b3c8db307bd32b";
+  };
+
+  checkInputs = [ nose rednose ];
+
+  propagatedBuildInputs = [
+    paramiko lxml libxml2 libxslt
+  ];
+
+  checkPhase = ''
+    nosetests test --rednose --verbosity=3 --with-coverage --cover-package ncclient
+  '';
+
+  #Unfortunately the test hangs at te end
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = http://ncclient.org/;
+    description = "Python library for NETCONF clients";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ xnaveira ];
+  };
+}
diff --git a/pkgs/development/python-modules/odo/default.nix b/pkgs/development/python-modules/odo/default.nix
index 73b3f0be1503..fc3747ac59ae 100644
--- a/pkgs/development/python-modules/odo/default.nix
+++ b/pkgs/development/python-modules/odo/default.nix
@@ -1,6 +1,6 @@
 { lib
 , buildPythonPackage
-, fetchPypi
+, fetchFromGitHub
 , pytest
 , datashape
 , numpy
@@ -8,23 +8,28 @@
 , toolz
 , multipledispatch
 , networkx
+, dask
 }:
 
 buildPythonPackage rec {
   pname = "odo";
-  version= "0.5.0";
-  name = "${pname}-${version}";
+  version= "0.5.1";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1mh5k69d9ph9jd07jl9yqh78rbnh5cjspi1q530v3ml7ivjzz4p8";
+
+  src = fetchFromGitHub {
+    owner = "blaze";
+    repo = pname;
+    rev = version;
+    sha256 = "142f4jvaqjn0dq6rvlk7d7mzcmc255a9z4nxc1b3a862hp4gvijs";
   };
 
-  checkInputs = [ pytest ];
+  checkInputs = [ pytest dask ];
   propagatedBuildInputs = [ datashape numpy pandas toolz multipledispatch networkx ];
 
+  # Disable failing tests
+  # https://github.com/blaze/odo/issues/609
   checkPhase = ''
-    py.test odo/tests
+    py.test -k "not test_numpy_asserts_type_after_dataframe" odo/tests
   '';
 
   meta = {
diff --git a/pkgs/development/python-modules/oset/default.nix b/pkgs/development/python-modules/oset/default.nix
new file mode 100644
index 000000000000..aa435b403e8b
--- /dev/null
+++ b/pkgs/development/python-modules/oset/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, buildPythonPackage, fetchPypi }:
+
+buildPythonPackage rec {
+  pname = "oset";
+  version = "0.1.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "017rr1m72s2fh9bmz5vrvc5mshczgzisi5894v9zkvvfr7gdf7sc";
+  };
+
+  doCheck = false;
+
+  meta = {
+    description = "Ordered set";
+    license = stdenv.lib.licenses.psfl;
+  };
+
+}
diff --git a/pkgs/development/python-modules/pillow/default.nix b/pkgs/development/python-modules/pillow/default.nix
index 034748255277..cb6008ea9a2b 100644
--- a/pkgs/development/python-modules/pillow/default.nix
+++ b/pkgs/development/python-modules/pillow/default.nix
@@ -31,6 +31,14 @@ buildPythonPackage rec {
     ++ stdenv.lib.optionals (isPyPy) [ tk libX11 ];
 
   # NOTE: we use LCMS_ROOT as WEBP root since there is not other setting for webp.
+  # NOTE: The Pillow install script will, by default, add paths like /usr/lib
+  # and /usr/include to the search paths. This can break things when building
+  # on a non-NixOS system that has some libraries installed that are not
+  # installed in Nix (for example, Arch Linux has jpeg2000 but Nix doesn't
+  # build Pillow with this support). We patch the `disable_platform_guessing`
+  # setting here, instead of passing the `--disable-platform-guessing`
+  # command-line option, since the command-line option doesn't work when we run
+  # tests.
   preConfigure = let
     libinclude' = pkg: ''"${pkg.out}/lib", "${pkg.out}/include"'';
     libinclude = pkg: ''"${pkg.out}/lib", "${pkg.dev}/include"'';
@@ -41,7 +49,8 @@ buildPythonPackage rec {
             s|^ZLIB_ROOT =.*$|ZLIB_ROOT = ${libinclude zlib}|g ;
             s|^LCMS_ROOT =.*$|LCMS_ROOT = ${libinclude lcms2}|g ;
             s|^TIFF_ROOT =.*$|TIFF_ROOT = ${libinclude libtiff}|g ;
-            s|^TCL_ROOT=.*$|TCL_ROOT = ${libinclude' tcl}|g ;'
+            s|^TCL_ROOT=.*$|TCL_ROOT = ${libinclude' tcl}|g ;
+            s|self\.disable_platform_guessing = None|self.disable_platform_guessing = True|g ;'
     export LDFLAGS="-L${libwebp}/lib"
     export CFLAGS="-I${libwebp}/include"
   ''
diff --git a/pkgs/development/python-modules/polib/default.nix b/pkgs/development/python-modules/polib/default.nix
new file mode 100644
index 000000000000..3b2ee20c8251
--- /dev/null
+++ b/pkgs/development/python-modules/polib/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, buildPythonPackage, fetchPypi }:
+
+buildPythonPackage rec {
+  pname = "polib";
+  version = "1.0.4";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "16klwlswfbgmkzrra80fgzhic9447pk3mnr75r2fkz72bkvpcclb";
+  };
+
+  # error: invalid command 'test'
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "A library to manipulate gettext files (po and mo files)";
+    homepage = https://bitbucket.org/izi/polib/;
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/proboscis/default.nix b/pkgs/development/python-modules/proboscis/default.nix
new file mode 100644
index 000000000000..f2373e4702f9
--- /dev/null
+++ b/pkgs/development/python-modules/proboscis/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, buildPythonPackage, fetchPypi, nose }:
+
+buildPythonPackage rec {
+  pname = "proboscis";
+  version = "1.2.6.0";
+  name = "${pname}-${version}";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "b822b243a7c82030fce0de97bdc432345941306d2c24ef227ca561dd019cd238";
+  };
+
+  propagatedBuildInputs = [ nose ];
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "A Python test framework that extends Python's built-in unittest module and Nose with features from TestNG";
+    homepage = https://pypi.python.org/pypi/proboscis;
+    license = licenses.asl20;
+  };
+}
diff --git a/pkgs/development/python-modules/progressbar/default.nix b/pkgs/development/python-modules/progressbar/default.nix
new file mode 100644
index 000000000000..18dfa693f5b5
--- /dev/null
+++ b/pkgs/development/python-modules/progressbar/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, buildPythonPackage, fetchPypi }:
+
+buildPythonPackage rec {
+  pname = "progressbar";
+  version = "2.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "dfee5201237ca0e942baa4d451fee8bf8a54065a337fabe7378b8585aeda56a3";
+  };
+
+  # invalid command 'test'
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = https://pypi.python.org/pypi/progressbar;
+    description = "Text progressbar library for python";
+    license = licenses.lgpl3Plus;
+    maintainers = with maintainers; [ domenkozar ];
+  };
+}
diff --git a/pkgs/development/python-modules/protocol/default.nix b/pkgs/development/python-modules/protocol/default.nix
deleted file mode 100644
index f8ff177437c3..000000000000
--- a/pkgs/development/python-modules/protocol/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ stdenv, buildPythonPackage, fetchFromGitHub }:
-
-buildPythonPackage rec {
-  pname = "protocol";
-  version = "20171226";
-
-  src = fetchFromGitHub {
-    owner = "luismartingarcia";
-    repo = "protocol";
-    rev = "d450da7d8a58595d8ef82f1d199a80411029fc7d";
-    sha256 = "1g31s2xx0bw8ak5ag1c6mv0p0b8bj5dp3lkk9mxaf2ndj1m1qdkw";
-  };
-
-  meta = with stdenv.lib; {
-    description = "An ASCII Header Generator for Network Protocols";
-    homepage = https://github.com/luismartingarcia/protocol;
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ teto ];
-  };
-}
diff --git a/pkgs/development/python-modules/publicsuffix/default.nix b/pkgs/development/python-modules/publicsuffix/default.nix
new file mode 100644
index 000000000000..9c90161c6eaa
--- /dev/null
+++ b/pkgs/development/python-modules/publicsuffix/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, buildPythonPackage, fetchPypi, isPy3k }:
+
+buildPythonPackage rec {
+  pname = "publicsuffix";
+  version = "1.1.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1adx520249z2cy7ykwjr1k190mn2888wqn9jf8qm27ly4qymjxxf";
+  };
+
+
+  # fix the ASCII-mode LICENSE file read
+  # disable test_fetch and the doctests (which also invoke fetch)
+  patchPhase = stdenv.lib.optionalString isPy3k ''
+    sed -i "s/)\.read(/,encoding='utf-8'\0/" setup.py
+  '' + ''
+    sed -i -e "/def test_fetch/i\\
+    \\t@unittest.skip('requires internet')" -e "/def additional_tests():/,+1d" tests.py
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Allows to get the public suffix of a domain name";
+    homepage = "https://pypi.python.org/pypi/publicsuffix/";
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/pybtex-docutils/default.nix b/pkgs/development/python-modules/pybtex-docutils/default.nix
new file mode 100644
index 000000000000..45d907df2233
--- /dev/null
+++ b/pkgs/development/python-modules/pybtex-docutils/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, buildPythonPackage, fetchPypi, docutils, pybtex, six }:
+
+buildPythonPackage rec {
+  version = "0.2.1";
+  pname = "pybtex-docutils";
+
+  doCheck = false;
+  buildInputs = [ docutils pybtex six ];
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0dqk4lplij7rbqqi4dbpw3wzr4wj08ysswvdibls6s0x3ij7bc74";
+  };
+
+  meta = {
+    description = "A docutils backend for pybtex";
+    homepage = "https://github.com/mcmtroffaes/pybtex-docutils";
+    license = stdenv.lib.licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/pybtex/default.nix b/pkgs/development/python-modules/pybtex/default.nix
new file mode 100644
index 000000000000..20689255435a
--- /dev/null
+++ b/pkgs/development/python-modules/pybtex/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, buildPythonPackage, fetchPypi, latexcodec, pyyaml }:
+
+buildPythonPackage rec {
+  version = "0.21";
+  pname = "pybtex";
+
+  doCheck = false;
+  propagatedBuildInputs = [ latexcodec pyyaml ];
+
+  src = fetchPypi {
+    inherit version pname;
+    sha256 = "00300j8dn5pxq4ndxmfmbmycg2znawkqs49val2x6jlmfiy6r2mg";
+  };
+
+  meta = {
+    homepage = "https://pybtex.org/";
+    description = "A BibTeX-compatible bibliography processor written in Python";
+    license = stdenv.lib.licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/pychart/default.nix b/pkgs/development/python-modules/pychart/default.nix
new file mode 100644
index 000000000000..259c87347d72
--- /dev/null
+++ b/pkgs/development/python-modules/pychart/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, buildPythonPackage, fetchPypi, isPy27 }:
+
+buildPythonPackage rec {
+  pname = "pychart";
+  version = "1.39";
+
+  disabled = ! isPy27;
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "882650928776a7ca72e67054a9e0ac98f78645f279c0cfb5910db28f03f07c2e";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Library for creating high quality encapsulated Postscript, PDF, PNG, or SVG charts";
+    homepage = https://pypi.python.org/pypi/PyChart;
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/development/python-modules/pyftgl/default.nix b/pkgs/development/python-modules/pyftgl/default.nix
index 117169a26121..a85837472255 100644
--- a/pkgs/development/python-modules/pyftgl/default.nix
+++ b/pkgs/development/python-modules/pyftgl/default.nix
@@ -1,5 +1,5 @@
 { stdenv, buildPythonPackage, fetchFromGitHub, isPy3k
-, boost, freetype, ftgl, mesa }:
+, boost, freetype, ftgl, libGLU_combined }:
 
 buildPythonPackage rec {
   pname = "pyftgl";
@@ -17,7 +17,7 @@ buildPythonPackage rec {
     sed -i "s,'boost_python','boost_python3',g" setup.py
   '';
 
-  buildInputs = [ boost freetype ftgl mesa ];
+  buildInputs = [ boost freetype ftgl libGLU_combined ];
 
   meta = with stdenv.lib; {
     description = "Python bindings for FTGL (FreeType for OpenGL)";
diff --git a/pkgs/development/python-modules/pyglet/default.nix b/pkgs/development/python-modules/pyglet/default.nix
index 8ac066500a4c..3fc7f8ddb683 100644
--- a/pkgs/development/python-modules/pyglet/default.nix
+++ b/pkgs/development/python-modules/pyglet/default.nix
@@ -1,5 +1,5 @@
 { stdenv, buildPythonPackage, fetchPypi
-, mesa, xorg, freetype, fontconfig, future}:
+, libGLU_combined, xorg, freetype, fontconfig, future}:
 
 buildPythonPackage rec {
   version = "1.3.1";
@@ -11,7 +11,7 @@ buildPythonPackage rec {
   };
 
   postPatch = let
-    libs = [ mesa xorg.libX11 freetype fontconfig ];
+    libs = [ libGLU_combined xorg.libX11 freetype fontconfig ];
     paths = builtins.concatStringsSep "," (map (l: "\"${l}/lib\"") libs);
   in "sed -i -e 's|directories\.extend.*lib[^]]*|&,${paths}|' pyglet/lib.py";
 
diff --git a/pkgs/development/python-modules/pyjade/default.nix b/pkgs/development/python-modules/pyjade/default.nix
new file mode 100644
index 000000000000..ad6742f5deb3
--- /dev/null
+++ b/pkgs/development/python-modules/pyjade/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, buildPythonPackage, fetchPypi, pyramid_mako, nose, django, jinja2
+, tornado, pyramid, Mako, six }:
+
+buildPythonPackage rec {
+  pname = "pyjade";
+  version = "4.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1mycn5cc9cp4fb0i2vzgkkk6d0glnkbilggwb4i99i09vr0vg5cd";
+  };
+
+  buildInputs = [ pyramid_mako nose django jinja2 tornado pyramid Mako ];
+  propagatedBuildInputs = [ six ];
+  postPatch = ''
+    sed -i 's/1.4.99/1.99/' setup.py
+  '';
+  checkPhase = ''
+    nosetests pyjade
+  '';
+  # No tests distributed. https://github.com/syrusakbary/pyjade/issues/262
+  doCheck = false;
+  meta = with stdenv.lib; {
+    description = "Jade syntax template adapter for Django, Jinja2, Mako and Tornado templates";
+    homepage    = "https://github.com/syrusakbary/pyjade";
+    license     = licenses.mit;
+    maintainers = with maintainers; [ nand0p ];
+  };
+}
diff --git a/pkgs/development/python-modules/pytest-mock/default.nix b/pkgs/development/python-modules/pytest-mock/default.nix
index 6b852583c7ed..e8f8d0a5b767 100644
--- a/pkgs/development/python-modules/pytest-mock/default.nix
+++ b/pkgs/development/python-modules/pytest-mock/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pytest-mock";
-  version = "1.7.0";
+  version = "1.7.1";
  
   src = fetchPypi {
     inherit pname version;
-    sha256 = "8ed6c9ac6b7565b226b4da2da48876c9198d76401ec8d9c5e4c69b45423e33f8";
+    sha256 = "0jgr1h1f0m9dl3alxiiw55as28pj2lpihz12gird9z1i3vvdyydq";
   };
 
   patches = fetchpatch {
diff --git a/pkgs/development/python-modules/python-ptrace/default.nix b/pkgs/development/python-modules/python-ptrace/default.nix
new file mode 100644
index 000000000000..ad0a17da2ac8
--- /dev/null
+++ b/pkgs/development/python-modules/python-ptrace/default.nix
@@ -0,0 +1,24 @@
+{ stdenv
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  pname = "python-ptrace";
+  version = "0.9.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "019jlpya2d2b3vbg037hnj4z0f564r7ibygayda7bm7qbpw0sa4g";
+  };
+
+  # requires distorm, which is optionally
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Python binding of ptrace library";
+    homepage = https://github.com/vstinner/python-ptrace;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ mic92 ];
+  };
+}
diff --git a/pkgs/development/python-modules/scp/default.nix b/pkgs/development/python-modules/scp/default.nix
new file mode 100644
index 000000000000..a612528d47ab
--- /dev/null
+++ b/pkgs/development/python-modules/scp/default.nix
@@ -0,0 +1,34 @@
+{ stdenv
+, buildPythonPackage
+, fetchPypi
+, paramiko
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "scp";
+  version = "0.10.2";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "18f59e48df67fac0b069591609a0f4d50d781a101ddb8ec705f0c2e3501a8386";
+  };
+
+  propagatedBuildInputs = [
+    paramiko
+  ];
+
+  checkPhase = ''
+    SCPPY_PORT=10022 ${python.interpreter} test.py
+  '';
+
+  #The Pypi package doesn't include the test
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/jbardin/scp.py;
+    description = "SCP module for paramiko";
+    license = licenses.lgpl3;
+    maintainers = with maintainers; [ xnaveira ];
+  };
+}
diff --git a/pkgs/development/python-modules/sphinx-navtree/default.nix b/pkgs/development/python-modules/sphinx-navtree/default.nix
new file mode 100644
index 000000000000..02e5711e888f
--- /dev/null
+++ b/pkgs/development/python-modules/sphinx-navtree/default.nix
@@ -0,0 +1,18 @@
+{ lib, fetchPypi, buildPythonPackage, sphinx }:
+
+buildPythonPackage rec {
+  version = "0.3.0";
+  pname = "sphinx-navtree";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1nqcsbqwr8ihk1fv534i0naag1qw04f7ibcgl2j8csvkh8q90b4p";
+  };
+
+  propagatedBuildInputs = [ sphinx ];
+
+  meta = {
+    description = "Navigation tree customization for Sphinx";
+    homepage = "https://github.com/bintoro/sphinx-navtree";
+    license = lib.licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/sphinxcontrib-bibtex/default.nix b/pkgs/development/python-modules/sphinxcontrib-bibtex/default.nix
new file mode 100644
index 000000000000..4911c982cd06
--- /dev/null
+++ b/pkgs/development/python-modules/sphinxcontrib-bibtex/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildPythonPackage, fetchPypi
+, oset, pybtex, pybtex-docutils, sphinx
+}:
+
+buildPythonPackage rec {
+  version = "0.3.6";
+  pname = "sphinxcontrib-bibtex";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1mfl3k6axq6rzqwq62fj8y9gabim2zcvydjpqmjj27f8v1qw0kpc";
+  };
+
+  propagatedBuildInputs = [ oset pybtex pybtex-docutils sphinx ];
+
+  meta = {
+    description = "A Sphinx extension for BibTeX style citations";
+    homepage = "https://github.com/mcmtroffaes/sphinxcontrib-bibtex";
+    license = stdenv.lib.licenses.bsd2;
+  };
+
+}
diff --git a/pkgs/development/python-modules/wsproto/default.nix b/pkgs/development/python-modules/wsproto/default.nix
new file mode 100644
index 000000000000..e98fcf205fd5
--- /dev/null
+++ b/pkgs/development/python-modules/wsproto/default.nix
@@ -0,0 +1,14 @@
+{ lib, buildPythonPackage, fetchPypi, h11, enum34 }:
+
+buildPythonPackage rec {
+  pname = "wsproto";
+  version = "0.11.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "092qk4pbyaxx8b81hv9p7pc3ww54bwfqybhya4madka3pgv19wh2";
+  };
+
+  propagatedBuildInputs = [ h11 enum34 ];
+
+}