1{ lib
2, buildPythonPackage
3, fetchPypi
4, serpent
5, dill
6, cloudpickle
7, msgpack
8, isPy27
9, pytestCheckHook
10}:
11
12buildPythonPackage rec {
13 pname = "Pyro4";
14 version = "4.81";
15
16 disabled = isPy27;
17
18 src = fetchPypi {
19 inherit pname version;
20 sha256 = "e130da06478b813173b959f7013d134865e07fbf58cc5f1a2598f99479cdac5f";
21 };
22
23 propagatedBuildInputs = [
24 serpent
25 ];
26
27 buildInputs = [
28 dill
29 cloudpickle
30 msgpack
31 ];
32
33 checkInputs = [ pytestCheckHook ];
34
35 # add testsupport.py to PATH
36 preCheck = "PYTHONPATH=tests/PyroTests:$PYTHONPATH";
37
38 # ignore network related tests, which fail in sandbox
39 pytestFlagsArray = [ "--ignore=tests/PyroTests/test_naming.py" ];
40
41 disabledTests = [
42 "StartNSfunc"
43 "Broadcast"
44 "GetIP"
45 ];
46
47 # otherwise the tests hang the build
48 __darwinAllowLocalNetworking = true;
49
50 meta = with lib; {
51 description = "Distributed object middleware for Python (RPC)";
52 homepage = "https://github.com/irmen/Pyro4";
53 license = licenses.mit;
54 maintainers = with maintainers; [ prusnak ];
55 };
56}