1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 mock,
6 pytest-cov-stub,
7 pytestCheckHook,
8 pythonOlder,
9 setuptools,
10 ujson,
11 versioneer,
12}:
13
14buildPythonPackage rec {
15 pname = "python-jsonrpc-server";
16 version = "0.4.0";
17 pyproject = true;
18
19 disabled = pythonOlder "3.11";
20
21 src = fetchFromGitHub {
22 owner = "palantir";
23 repo = "python-jsonrpc-server";
24 tag = version;
25 hash = "sha256-hlMw+eL1g+oe5EG7mwK8jSX0UcOQo7La+BZ3tjEojl0=";
26 };
27
28 postPatch = ''
29 # Remove vendorized versioneer.py
30 rm versioneer.py
31 '';
32
33 build-system = [
34 setuptools
35 versioneer
36 ];
37
38 dependencies = [ ujson ];
39
40 nativeCheckInputs = [
41 mock
42 pytest-cov-stub
43 pytestCheckHook
44 ];
45
46 pythonImportsCheck = [ "pyls_jsonrpc" ];
47
48 meta = with lib; {
49 description = "Module for erver implementation of the JSON RPC 2.0 protocol";
50 homepage = "https://github.com/palantir/python-jsonrpc-server";
51 changelog = "https://github.com/palantir/python-jsonrpc-server/releases/tag/${version}";
52 license = licenses.mit;
53 maintainers = with maintainers; [ mic92 ];
54 };
55}