Merge pull request #307098 from r-ryantm/auto-update/cilium-cli
[NixPkgs.git] / pkgs / development / python-modules / eventlet / default.nix
blobdbdc82bd35acb29ab96bfec6ee9965436f2aebf7
1 { lib
2 , stdenv
3 , buildPythonPackage
4 , fetchFromGitHub
5 , pythonAtLeast
7 # build-system
8 , hatch-vcs
9 , hatchling
11 # dependencies
12 , dnspython
13 , greenlet
14 , isPyPy
15 , six
17 # tests
18 , iana-etc
19 , pytestCheckHook
20 , libredirect
23 buildPythonPackage rec {
24   pname = "eventlet";
25   version = "0.35.2";
26   pyproject = true;
28   src = fetchFromGitHub {
29     owner = "eventlet";
30     repo = "eventlet";
31     rev = "v${version}";
32     hash = "sha256-jMbCxqIn9f9+16rFwpQdkBHj6NwTNkQxnSVV4qQ1fjM=";
33   };
35   nativeBuildInputs = [
36     hatch-vcs
37     hatchling
38   ];
40   propagatedBuildInputs = [
41     dnspython
42     greenlet
43     six
44   ];
46   nativeCheckInputs = [
47     pytestCheckHook
48   ];
50   # libredirect is not available on darwin
51   # tests hang on pypy indefinitely
52   doCheck = !stdenv.isDarwin && !isPyPy;
54   preCheck = lib.optionalString doCheck ''
55     echo "nameserver 127.0.0.1" > resolv.conf
56     export NIX_REDIRECTS=/etc/protocols=${iana-etc}/etc/protocols:/etc/resolv.conf=$(realpath resolv.conf)
57     export LD_PRELOAD=${libredirect}/lib/libredirect.so
59     export EVENTLET_IMPORT_VERSION_ONLY=0
60   '';
62   disabledTests = [
63     # AssertionError: Expected single line "pass" in stdout
64     "test_fork_after_monkey_patch"
65     # Tests requires network access
66     "test_getaddrinfo"
67     "test_hosts_no_network"
68   ];
70   pythonImportsCheck = [ "eventlet" ];
72   meta = with lib; {
73     changelog = "https://github.com/eventlet/eventlet/blob/v${version}/NEWS";
74     description = "A concurrent networking library for Python";
75     homepage = "https://github.com/eventlet/eventlet/";
76     license = licenses.mit;
77     maintainers = with maintainers; [ SuperSandro2000 ];
78   };