1{ lib
2, buildPythonPackage
3, isPyPy
4, fetchPypi
5, fetchpatch
6, pytestCheckHook
7, setuptools-scm
8, apipkg
9, py
10}:
11
12buildPythonPackage rec {
13 pname = "execnet";
14 version = "1.9.0";
15 format = "setuptools";
16
17 src = fetchPypi {
18 inherit pname version;
19 sha256 = "8f694f3ba9cc92cab508b152dcfe322153975c29bda272e2fd7f3f00f36e47c5";
20 };
21
22 patches = [
23 (fetchpatch {
24 # Fix test compat with pytest 7.2.0
25 url = "https://github.com/pytest-dev/execnet/commit/c0459b92bc4a42b08281e69b8802d24c5d3415d4.patch";
26 hash = "sha256-AT2qr7AUpFXcPps525U63A7ARcEVmf0HM6ya73Z2vi0=";
27 })
28 ];
29
30 # remove vbox tests
31 postPatch = ''
32 rm -v testing/test_termination.py
33 rm -v testing/test_channel.py
34 rm -v testing/test_xspec.py
35 rm -v testing/test_gateway.py
36 ${lib.optionalString isPyPy "rm -v testing/test_multi.py"}
37 '';
38
39 nativeBuildInputs = [
40 setuptools-scm
41 ];
42
43 propagatedBuildInputs = [
44 apipkg
45 ];
46
47 nativeCheckInputs = [
48 py
49 pytestCheckHook
50 ];
51
52 pythonImportsCheck = [
53 "execnet"
54 ];
55
56 __darwinAllowLocalNetworking = true;
57
58 meta = with lib; {
59 changelog = "https://github.com/pytest-dev/execnet/blob/v${version}/CHANGELOG.rst";
60 description = "Distributed Python deployment and communication";
61 homepage = "https://execnet.readthedocs.io/";
62 license = licenses.mit;
63 maintainers = with maintainers; [ ];
64 };
65
66}