1{
2 lib,
3 fetchFromGitHub,
4 buildPythonPackage,
5 setuptools,
6 websockets,
7 pytest-asyncio,
8 pytestCheckHook,
9}:
10
11buildPythonPackage rec {
12 pname = "aiorpcx";
13 version = "0.24.0";
14 pyproject = true;
15
16 src = fetchFromGitHub {
17 owner = "kyuupichan";
18 repo = "aiorpcX";
19 tag = "0.24"; # TODO: https://github.com/kyuupichan/aiorpcX/issues/52
20 hash = "sha256-0c4AqKDWAmAFR1t42VE54kgbupe4ljajCR/TB5fZfME=";
21 };
22
23 build-system = [ setuptools ];
24
25 optional-dependencies.ws = [ websockets ];
26
27 nativeCheckInputs = [
28 pytest-asyncio
29 pytestCheckHook
30 ] ++ lib.flatten (lib.attrValues optional-dependencies);
31
32 disabledTests = [
33 # network access
34 "test_create_connection_resolve_good"
35 ];
36
37 pythonImportsCheck = [ "aiorpcx" ];
38
39 meta = with lib; {
40 description = "Transport, protocol and framing-independent async RPC client and server implementation";
41 homepage = "https://github.com/kyuupichan/aiorpcX";
42 license = licenses.mit;
43 maintainers = with maintainers; [ prusnak ];
44 };
45}