Merge pull request #29072 from FRidh/python-fixes-3

Python: several fixes (3)
This commit is contained in:
Frederik Rietdijk 2017-09-07 19:26:20 +02:00 committed by GitHub
commit 56c56fb414
10 changed files with 179 additions and 90 deletions

View File

@ -6,6 +6,8 @@
, setuptools , setuptools
, unzip , unzip
, ensureNewerSourcesHook , ensureNewerSourcesHook
# Prevent impurities by blocking setuptools/easy-install from downloading sdists
, distutils-cfg
}: }:
{ name { name
@ -60,7 +62,7 @@ python.stdenv.mkDerivation (builtins.removeAttrs attrs ["disabled" "checkInputs"
inherit pythonPath; inherit pythonPath;
buildInputs = [ wrapPython ] ++ buildInputs ++ pythonPath buildInputs = [ distutils-cfg wrapPython ] ++ buildInputs ++ pythonPath
++ [ (ensureNewerSourcesHook { year = "1980"; }) ] ++ [ (ensureNewerSourcesHook { year = "1980"; }) ]
++ (lib.optional (lib.hasSuffix "zip" attrs.src.name or "") unzip) ++ (lib.optional (lib.hasSuffix "zip" attrs.src.name or "") unzip)
++ lib.optionals doCheck checkInputs; ++ lib.optionals doCheck checkInputs;

View File

@ -9,16 +9,16 @@ let
}; };
setuptools_source = fetchPypi { setuptools_source = fetchPypi {
pname = "setuptools"; pname = "setuptools";
version = "36.0.1"; version = "36.4.0";
format = "wheel"; format = "wheel";
sha256 = "f2900e560efc479938a219433c48f15a4ff4ecfe575a65de385eeb44f2425587"; sha256 = "4d54c0bfee283e78609169213f9c075827d5837086f58b588b417b093c23464b";
}; };
# TODO: Shouldn't be necessary anymore for pip > 9.0.1! # TODO: Shouldn't be necessary anymore for pip > 9.0.1!
# https://github.com/NixOS/nixpkgs/issues/26392 # https://github.com/NixOS/nixpkgs/issues/26392
# https://github.com/pypa/setuptools/issues/885 # https://github.com/pypa/setuptools/issues/885
pkg_resources = fetchurl { 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"; sha256 = "1wdnq3mammk75mifkdmmjx7yhnpydvnvi804na8ym4mj934l2jkv";
}; };

View File

@ -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;
};
}

View File

@ -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;
};
}

View File

@ -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 ];
};
}

View File

@ -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;
};
}

View File

@ -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@<a href="http://www.example.com" rel="nofollow">@...@' src/restview/tests.py
'';
meta = {
description = "ReStructuredText viewer";
homepage = http://mg.pov.lt/restview/;
license = lib.licenses.gpl2;
maintainers = with lib.maintainers; [ koral ];
};
}

View File

@ -8,13 +8,13 @@
# Should use buildPythonPackage here somehow # Should use buildPythonPackage here somehow
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "setuptools"; pname = "setuptools";
version = "36.2.7"; version = "36.4.0";
name = "${python.libPrefix}-${pname}-${version}"; name = "${python.libPrefix}-${pname}-${version}";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
extension = "zip"; extension = "zip";
sha256 = "b0fe5d432d922df595e918577c51458d63f245115d141b309ac32ecfca329df5"; sha256 = "2758b0270fe8ceec42f336ee5b411e60dc8579febc27bb3ba9b794dc7f0239ae";
}; };
buildInputs = [ python wrapPython unzip ]; buildInputs = [ python wrapPython unzip ];

View File

@ -21,9 +21,12 @@ buildPythonPackage rec {
sha256 = "26431ab706fbae896db7870a0892743bfbb9f5c83231644692166a31d2d86048"; sha256 = "26431ab706fbae896db7870a0892743bfbb9f5c83231644692166a31d2d86048";
}; };
buildInputs = with self; [ nose ]; checkInputs = with self; [ nose ];
propagatedBuildInputs = with self; [numpy scipy pandas patsy cython matplotlib]; propagatedBuildInputs = with self; [numpy scipy pandas patsy cython matplotlib];
# Huge test suites with several test failures
doCheck = false;
meta = { meta = {
description = "Statistical computations and models for use with SciPy"; description = "Statistical computations and models for use with SciPy";
homepage = https://www.github.com/statsmodels/statsmodels; homepage = https://www.github.com/statsmodels/statsmodels;

View File

@ -34,6 +34,7 @@ let
bootstrapped-pip = callPackage ../development/python-modules/bootstrapped-pip { }; bootstrapped-pip = callPackage ../development/python-modules/bootstrapped-pip { };
mkPythonDerivation = makeOverridable( callPackage ../development/interpreters/python/mk-python-derivation.nix { 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`. # Derivations built with `buildPythonPackage` can already be overriden with `override`, `overrideAttrs`, and `overrideDerivation`.
@ -7018,27 +7019,7 @@ in {
}; };
}; };
logfury = buildPythonPackage rec { logfury = callPackage ../development/python-modules/logfury { };
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 ];
};
};
ndg-httpsclient = buildPythonPackage rec { ndg-httpsclient = buildPythonPackage rec {
version = "0.4.2"; version = "0.4.2";
@ -15768,22 +15749,7 @@ in {
pbr = callPackage ../development/python-modules/pbr { }; pbr = callPackage ../development/python-modules/pbr { };
fixtures = buildPythonPackage rec { fixtures = callPackage ../development/python-modules/fixtures { };
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;
};
};
pelican = callPackage ../development/python-modules/pelican { pelican = callPackage ../development/python-modules/pelican {
inherit (pkgs) glibcLocales pandoc git; inherit (pkgs) glibcLocales pandoc git;
@ -19147,31 +19113,7 @@ in {
}; };
restview = buildPythonPackage rec { restview = callPackage ../development/python-modules/restview { };
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@<a href="http://www.example.com" rel="nofollow">@...@' src/restview/tests.py
'';
meta = {
description = "ReStructuredText viewer";
homepage = http://mg.pov.lt/restview/;
license = licenses.gpl2;
platforms = platforms.all;
maintainers = with maintainers; [ koral ];
};
};
readme = buildPythonPackage rec { readme = buildPythonPackage rec {
name = "readme-${version}"; name = "readme-${version}";
@ -19200,6 +19142,8 @@ in {
}; };
}; };
readme_renderer = callPackage ../development/python-modules/readme_renderer { };
rjsmin = callPackage ../development/python-modules/rjsmin { }; rjsmin = callPackage ../development/python-modules/rjsmin { };
pysolr = buildPythonPackage rec { pysolr = buildPythonPackage rec {
@ -19286,27 +19230,7 @@ in {
}; };
}; };
django-multiselectfield = buildPythonPackage rec { django-multiselectfield = callPackage ../development/python-modules/django-multiselectfield { };
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";
};
};
reviewboard = buildPythonPackage rec { reviewboard = buildPythonPackage rec {
name = "ReviewBoard-2.5.1.1"; name = "ReviewBoard-2.5.1.1";