nixpkgs/pkgs/development/python-modules/meinheld/default.nix
Lancelot SIX 14cae0af31 pythonPackages.greenlet: 0.4.17 -> 1.0.0
Update greenlet to 1.0.0.

meinheld declares a dependency to greenlet <0.5, but according to [1]
and [2], there are no API or ABI changes leading to greenlet-1.0.0, so
it seems reasonable to drop the strict requirement.  This commit
uses substituteInPlace to patch setup.py since no upstream commit has
landed in the main branch yet.

Morehover, quoting [2]:

    Prior to greenlet 1.0 there were no semantic meanings attached to
    greenlet versions — API and ABI regularly changed from 0.4.x
    to 0.4.x+1, so their current pin doesn't make much sense anyway.

nix-review reveals few broken packages that are also broken in master.

[1] https://github.com/mopemope/meinheld/pull/123
[2] https://github.com/benoitc/gunicorn/issues/2541#issuecomment-800353993
2021-04-06 21:10:22 +01:00

28 lines
697 B
Nix

{ lib, fetchPypi, buildPythonPackage, greenlet }:
buildPythonPackage rec {
pname = "meinheld";
version = "1.0.2";
src = fetchPypi {
inherit pname version;
sha256 = "008c76937ac2117cc69e032dc69cea9f85fc605de9bac1417f447c41c16a56d6";
};
patchPhase = ''
# Allow greenlet-1.0.0.
# See https://github.com/mopemope/meinheld/pull/123
substituteInPlace setup.py --replace "greenlet>=0.4.5,<0.5" "greenlet>=0.4.5,<2.0.0"
'';
propagatedBuildInputs = [ greenlet ];
# No tests
doCheck = false;
meta = with lib; {
description = "High performance asynchronous Python WSGI Web Server";
homepage = "https://meinheld.org/";
license = licenses.bsd3;
};
}