python.pkgs.cherrypy: spilt expression in two

This commit is contained in:
Robert Schütz 2019-03-27 15:07:06 +01:00
parent 5f47ad0f8a
commit 489d7351da
3 changed files with 56 additions and 29 deletions

View File

@ -0,0 +1,36 @@
{ lib, buildPythonPackage, fetchPypi
, setuptools_scm
, cheroot, contextlib2, portend, routes, six, zc_lockfile
, backports_unittest-mock, objgraph, pathpy, pytest, pytestcov, backports_functools_lru_cache, requests_toolbelt
}:
buildPythonPackage rec {
pname = "cherrypy";
version = "17.4.1";
src = fetchPypi {
pname = "CherryPy";
inherit version;
sha256 = "1kl17anzz535jgkn9qcy0c2m0zlafph0iv7ph3bb9mfrs2bgvagv";
};
propagatedBuildInputs = [
cheroot contextlib2 portend routes six zc_lockfile
];
nativeBuildInputs = [ setuptools_scm ];
checkInputs = [
backports_unittest-mock objgraph pathpy pytest pytestcov backports_functools_lru_cache requests_toolbelt
];
checkPhase = ''
pytest
'';
meta = with lib; {
homepage = https://www.cherrypy.org;
description = "A pythonic, object-oriented HTTP framework";
license = licenses.bsd3;
};
}

View File

@ -1,54 +1,42 @@
{ lib, buildPythonPackage, fetchPypi, isPy3k { lib, buildPythonPackage, fetchPypi, isPy3k
, cheroot, contextlib2, portend, routes, six , setuptools_scm
, setuptools_scm, zc_lockfile, more-itertools , cheroot, portend, more-itertools, zc_lockfile, routes
, backports_unittest-mock, objgraph, pathpy, pytest, pytestcov , objgraph, pytest, pytestcov, pathpy, requests_toolbelt, pytest-services
, backports_functools_lru_cache, requests_toolbelt, pytest-services
}: }:
let buildPythonPackage rec {
srcInfo = if isPy3k then { pname = "cherrypy";
version = "18.1.0"; version = "18.1.0";
sha256 = "4dd2f59b5af93bd9ca85f1ed0bb8295cd0f5a8ee2b84d476374d4e070aa5c615";
} else { disabled = !isPy3k;
version = "17.4.1";
sha256 = "1kl17anzz535jgkn9qcy0c2m0zlafph0iv7ph3bb9mfrs2bgvagv";
};
in buildPythonPackage rec {
pname = "CherryPy";
inherit (srcInfo) version;
src = fetchPypi { src = fetchPypi {
inherit pname; pname = "CherryPy";
inherit (srcInfo) version sha256; inherit version;
sha256 = "4dd2f59b5af93bd9ca85f1ed0bb8295cd0f5a8ee2b84d476374d4e070aa5c615";
}; };
propagatedBuildInputs = if isPy3k then [ propagatedBuildInputs = [
# required # required
cheroot portend more-itertools zc_lockfile cheroot portend more-itertools zc_lockfile
# optional # optional
routes routes
] else [
cheroot contextlib2 portend routes six zc_lockfile
]; ];
buildInputs = [ setuptools_scm ]; nativeBuildInputs = [ setuptools_scm ];
checkInputs = if isPy3k then [ checkInputs = [
objgraph pytest pytestcov pathpy requests_toolbelt pytest-services objgraph pytest pytestcov pathpy requests_toolbelt pytest-services
] else [
backports_unittest-mock objgraph pathpy pytest pytestcov backports_functools_lru_cache requests_toolbelt
]; ];
checkPhase = '' checkPhase = ''
# 3 out of 5 SignalHandlingTests need network access
# test_2_File_Concurrency also fails upstream: https://github.com/cherrypy/cherrypy/issues/1306 # test_2_File_Concurrency also fails upstream: https://github.com/cherrypy/cherrypy/issues/1306
# ...and skipping it makes 2 other tests fail # ...and skipping it makes 2 other tests fail
LANG=en_US.UTF-8 pytest -k "not SignalHandlingTests and not test_4_Autoreload \ pytest -k "not test_2_File_Concurrency and not test_3_Redirect and not test_4_File_deletion"
and not test_2_File_Concurrency and not test_3_Redirect and not test_4_File_deletion"
''; '';
meta = with lib; { meta = with lib; {
homepage = "http://www.cherrypy.org"; homepage = https://www.cherrypy.org;
description = "A pythonic, object-oriented HTTP framework"; description = "A pythonic, object-oriented HTTP framework";
license = licenses.bsd3; license = licenses.bsd3;
}; };

View File

@ -1363,7 +1363,10 @@ in {
cheetah = callPackage ../development/python-modules/cheetah { }; cheetah = callPackage ../development/python-modules/cheetah { };
cherrypy = callPackage ../development/python-modules/cherrypy {}; cherrypy = if isPy3k then
callPackage ../development/python-modules/cherrypy { }
else
callPackage ../development/python-modules/cherrypy/17.nix { };
cfgv = callPackage ../development/python-modules/cfgv { }; cfgv = callPackage ../development/python-modules/cfgv { };