diff --git a/pkgs/development/interpreters/python/mk-python-derivation.nix b/pkgs/development/interpreters/python/mk-python-derivation.nix
index bc586e0b3ce..dae465edc0d 100644
--- a/pkgs/development/interpreters/python/mk-python-derivation.nix
+++ b/pkgs/development/interpreters/python/mk-python-derivation.nix
@@ -6,6 +6,8 @@
, setuptools
, unzip
, ensureNewerSourcesHook
+# Prevent impurities by blocking setuptools/easy-install from downloading sdists
+, distutils-cfg
}:
{ name
@@ -60,7 +62,7 @@ python.stdenv.mkDerivation (builtins.removeAttrs attrs ["disabled" "checkInputs"
inherit pythonPath;
- buildInputs = [ wrapPython ] ++ buildInputs ++ pythonPath
+ buildInputs = [ distutils-cfg wrapPython ] ++ buildInputs ++ pythonPath
++ [ (ensureNewerSourcesHook { year = "1980"; }) ]
++ (lib.optional (lib.hasSuffix "zip" attrs.src.name or "") unzip)
++ lib.optionals doCheck checkInputs;
diff --git a/pkgs/development/python-modules/bootstrapped-pip/default.nix b/pkgs/development/python-modules/bootstrapped-pip/default.nix
index 3e07806986b..26db071cad5 100644
--- a/pkgs/development/python-modules/bootstrapped-pip/default.nix
+++ b/pkgs/development/python-modules/bootstrapped-pip/default.nix
@@ -9,16 +9,16 @@ let
};
setuptools_source = fetchPypi {
pname = "setuptools";
- version = "36.0.1";
+ version = "36.4.0";
format = "wheel";
- sha256 = "f2900e560efc479938a219433c48f15a4ff4ecfe575a65de385eeb44f2425587";
+ sha256 = "4d54c0bfee283e78609169213f9c075827d5837086f58b588b417b093c23464b";
};
# TODO: Shouldn't be necessary anymore for pip > 9.0.1!
# https://github.com/NixOS/nixpkgs/issues/26392
# https://github.com/pypa/setuptools/issues/885
pkg_resources = fetchurl {
- url = https://raw.githubusercontent.com/pypa/setuptools/v36.0.1/pkg_resources/__init__.py;
+ url = "https://raw.githubusercontent.com/pypa/setuptools/v36.4.0/pkg_resources/__init__.py";
sha256 = "1wdnq3mammk75mifkdmmjx7yhnpydvnvi804na8ym4mj934l2jkv";
};
diff --git a/pkgs/development/python-modules/django-multiselectfield/default.nix b/pkgs/development/python-modules/django-multiselectfield/default.nix
new file mode 100644
index 00000000000..af7af221b9b
--- /dev/null
+++ b/pkgs/development/python-modules/django-multiselectfield/default.nix
@@ -0,0 +1,27 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, django
+}:
+
+buildPythonPackage rec {
+ pname = "django-multiselectfield";
+ name = "${pname}-${version}";
+ version = "0.1.8";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "52483d23aecbf6b502f9e6806e97da9288d5d7f2a3f99f736390763de68c8fd7";
+ };
+
+ propagatedBuildInputs = [ django ];
+
+ # No tests
+ doCheck = false;
+
+ meta = {
+ description = "django-multiselectfield";
+ homepage = "https://github.com/goinnn/django-multiselectfield";
+ license = lib.licenses.lgpl3;
+ };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/fixtures/default.nix b/pkgs/development/python-modules/fixtures/default.nix
new file mode 100644
index 00000000000..62741a78709
--- /dev/null
+++ b/pkgs/development/python-modules/fixtures/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pbr
+, testtools
+, mock
+, python
+}:
+
+buildPythonPackage rec {
+ pname = "fixtures";
+ version = "3.0.0";
+ name = "${pname}-${version}";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "fcf0d60234f1544da717a9738325812de1f42c2fa085e2d9252d8fff5712b2ef";
+ };
+
+ propagatedBuildInputs = [ pbr testtools mock ];
+
+ checkPhase = ''
+ ${python.interpreter} -m testtools.run fixtures.test_suite
+ '';
+
+ meta = {
+ description = "Reusable state for writing clean tests and more";
+ homepage = "https://pypi.python.org/pypi/fixtures";
+ license = lib.licenses.asl20;
+ };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/logfury/default.nix b/pkgs/development/python-modules/logfury/default.nix
new file mode 100644
index 00000000000..d9ce51eed1e
--- /dev/null
+++ b/pkgs/development/python-modules/logfury/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, funcsigs
+, six
+}:
+
+buildPythonPackage rec {
+ pname = "logfury";
+ name = "${pname}-${version}";
+ version = "0.1.2";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "1lywirv3d1lw691mc4mfpz7ak6r49klri43bbfgdnvsfppxminj2";
+ };
+
+ propagatedBuildInputs = [
+ funcsigs
+ six
+ ];
+
+ # No tests
+ doCheck = false;
+
+ meta = {
+ description = "Logfury is for python library maintainers. It allows for responsible, low-boilerplate logging of method calls.";
+ homepage = "https://github.com/ppolewicz/logfury";
+ license = lib.licenses.bsd3;
+ maintainers = with lib.maintainers; [ jwiegley ];
+ };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/readme_renderer/default.nix b/pkgs/development/python-modules/readme_renderer/default.nix
new file mode 100644
index 00000000000..af0b64fc340
--- /dev/null
+++ b/pkgs/development/python-modules/readme_renderer/default.nix
@@ -0,0 +1,36 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytest
+, bleach
+, docutils
+, pygments
+, six
+}:
+
+buildPythonPackage rec {
+ pname = "readme_renderer";
+ version = "17.2";
+ name = "${pname}-${version}";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "9deab442963a63a71ab494bf581b1c844473995a2357f4b3228a1df1c8cba8da";
+ };
+
+ checkInputs = [ pytest ];
+
+ propagatedBuildInputs = [
+ bleach docutils pygments six
+ ];
+
+ checkPhase = ''
+ py.test
+ '';
+
+ meta = {
+ description = "readme_renderer is a library for rendering readme descriptions for Warehouse";
+ homepage = https://github.com/pypa/readme_renderer;
+ license = lib.licenses.asl20;
+ };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/restview/default.nix b/pkgs/development/python-modules/restview/default.nix
new file mode 100644
index 00000000000..0f2ce45c885
--- /dev/null
+++ b/pkgs/development/python-modules/restview/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, docutils
+, readme_renderer
+, pygments
+, mock
+}:
+
+buildPythonPackage rec {
+ pname = "restview";
+ name = "${pname}-${version}";
+ version = "2.7.0";
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "e7842100f3de179c68cfe7c2cf56c61509cd6068bc6dd58ab42c0ade5d5f97ec";
+ };
+
+ propagatedBuildInputs = [ docutils readme_renderer pygments ];
+ checkInputs = [ mock ];
+
+ postPatch = ''
+ # dict order breaking tests
+ sed -i 's@@...@' src/restview/tests.py
+ '';
+
+ meta = {
+ description = "ReStructuredText viewer";
+ homepage = http://mg.pov.lt/restview/;
+ license = lib.licenses.gpl2;
+ maintainers = with lib.maintainers; [ koral ];
+ };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/setuptools/default.nix b/pkgs/development/python-modules/setuptools/default.nix
index b6bf629e746..1c6fb414a73 100644
--- a/pkgs/development/python-modules/setuptools/default.nix
+++ b/pkgs/development/python-modules/setuptools/default.nix
@@ -8,13 +8,13 @@
# Should use buildPythonPackage here somehow
stdenv.mkDerivation rec {
pname = "setuptools";
- version = "36.2.7";
+ version = "36.4.0";
name = "${python.libPrefix}-${pname}-${version}";
src = fetchPypi {
inherit pname version;
extension = "zip";
- sha256 = "b0fe5d432d922df595e918577c51458d63f245115d141b309ac32ecfca329df5";
+ sha256 = "2758b0270fe8ceec42f336ee5b411e60dc8579febc27bb3ba9b794dc7f0239ae";
};
buildInputs = [ python wrapPython unzip ];
diff --git a/pkgs/development/python-modules/statsmodels/default.nix b/pkgs/development/python-modules/statsmodels/default.nix
index 2ef294d8d9f..f4c74cfccf8 100644
--- a/pkgs/development/python-modules/statsmodels/default.nix
+++ b/pkgs/development/python-modules/statsmodels/default.nix
@@ -21,9 +21,12 @@ buildPythonPackage rec {
sha256 = "26431ab706fbae896db7870a0892743bfbb9f5c83231644692166a31d2d86048";
};
- buildInputs = with self; [ nose ];
+ checkInputs = with self; [ nose ];
propagatedBuildInputs = with self; [numpy scipy pandas patsy cython matplotlib];
+ # Huge test suites with several test failures
+ doCheck = false;
+
meta = {
description = "Statistical computations and models for use with SciPy";
homepage = https://www.github.com/statsmodels/statsmodels;
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 0068e345464..53f3cd82c3d 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -34,6 +34,7 @@ let
bootstrapped-pip = callPackage ../development/python-modules/bootstrapped-pip { };
mkPythonDerivation = makeOverridable( callPackage ../development/interpreters/python/mk-python-derivation.nix {
+ distutils-cfg = callPackage ../development/python-modules/distutils-cfg { };
});
# Derivations built with `buildPythonPackage` can already be overriden with `override`, `overrideAttrs`, and `overrideDerivation`.
@@ -7018,27 +7019,7 @@ in {
};
};
- logfury = buildPythonPackage rec {
- name = "logfury-${version}";
- version = "0.1.2";
-
- src = pkgs.fetchurl {
- url = "mirror://pypi/l/logfury/${name}.tar.gz";
- sha256 = "1lywirv3d1lw691mc4mfpz7ak6r49klri43bbfgdnvsfppxminj2";
- };
-
- buildInputs =
- [ self.funcsigs
- self.six
- ];
-
- meta = with pkgs.stdenv.lib; {
- description = "Logfury is for python library maintainers. It allows for responsible, low-boilerplate logging of method calls.";
- homepage = "https://github.com/ppolewicz/logfury";
- license = licenses.bsd3;
- maintainers = with maintainers; [ jwiegley ];
- };
- };
+ logfury = callPackage ../development/python-modules/logfury { };
ndg-httpsclient = buildPythonPackage rec {
version = "0.4.2";
@@ -15768,22 +15749,7 @@ in {
pbr = callPackage ../development/python-modules/pbr { };
- fixtures = buildPythonPackage rec {
- name = "fixtures-1.4.0";
-
- src = pkgs.fetchurl {
- url = "mirror://pypi/f/fixtures/${name}.tar.gz";
- sha256 = "0djxvdwm8s60dbfn7bhf40x6g818p3b3mlwijm1c3bqg7msn271y";
- };
-
- buildInputs = with self; [ pbr testtools mock ];
-
- meta = {
- description = "Reusable state for writing clean tests and more";
- homepage = "https://pypi.python.org/pypi/fixtures";
- license = licenses.asl20;
- };
- };
+ fixtures = callPackage ../development/python-modules/fixtures { };
pelican = callPackage ../development/python-modules/pelican {
inherit (pkgs) glibcLocales pandoc git;
@@ -19147,31 +19113,7 @@ in {
};
- restview = buildPythonPackage rec {
- name = "restview-${version}";
- version = "2.5.2";
-
- src = pkgs.fetchurl {
- url = "mirror://pypi/r/restview/${name}.tar.gz";
- sha256 = "0gmdmnlhiy6lagi17maiz312374hk6g6x90fhjwnbrwxif4r9bd5";
- };
-
- propagatedBuildInputs = with self; [ docutils readme pygments ];
- buildInputs = with self; [ mock ];
-
- patchPhase = ''
- # dict order breaking tests
- sed -i 's@@...@' src/restview/tests.py
- '';
-
- meta = {
- description = "ReStructuredText viewer";
- homepage = http://mg.pov.lt/restview/;
- license = licenses.gpl2;
- platforms = platforms.all;
- maintainers = with maintainers; [ koral ];
- };
- };
+ restview = callPackage ../development/python-modules/restview { };
readme = buildPythonPackage rec {
name = "readme-${version}";
@@ -19200,6 +19142,8 @@ in {
};
};
+ readme_renderer = callPackage ../development/python-modules/readme_renderer { };
+
rjsmin = callPackage ../development/python-modules/rjsmin { };
pysolr = buildPythonPackage rec {
@@ -19286,27 +19230,7 @@ in {
};
};
- django-multiselectfield = buildPythonPackage rec {
- name = "django-multiselectfield-${version}";
- version = "0.1.3";
-
- src = pkgs.fetchurl {
- url = "mirror://pypi/d/django-multiselectfield/django-multiselectfield-${version}.tar.gz";
- sha256 = "0v7wf82f8688srdsym9ajv1j54bxfxwvydypc03f8xyl4c1raziv";
- };
-
- propagatedBuildInputs = with self; [
-
- ];
- buildInputs = with self; [
-
- ];
-
- meta = with stdenv.lib; {
- description = "django-multiselectfield";
- homepage = "https://github.com/goinnn/django-multiselectfield";
- };
- };
+ django-multiselectfield = callPackage ../development/python-modules/django-multiselectfield { };
reviewboard = buildPythonPackage rec {
name = "ReviewBoard-2.5.1.1";