1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pytestCheckHook,
6 pytest-cov-stub,
7 pythonOlder,
8 setuptools,
9 setuptools-scm,
10 ujson,
11}:
12
13buildPythonPackage rec {
14 pname = "python-lsp-jsonrpc";
15 version = "1.1.2";
16 format = "pyproject";
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchFromGitHub {
21 owner = "python-lsp";
22 repo = "python-lsp-jsonrpc";
23 tag = "v${version}";
24 hash = "sha256-5WN/31e6WCgXVzevMuQbNjyo/2jjWDF+m48nrLKS+64=";
25 };
26
27 nativeBuildInputs = [
28 setuptools
29 setuptools-scm
30 ];
31
32 propagatedBuildInputs = [ ujson ];
33
34 nativeCheckInputs = [
35 pytestCheckHook
36 pytest-cov-stub
37 ];
38
39 pythonImportsCheck = [ "pylsp_jsonrpc" ];
40
41 meta = with lib; {
42 description = "Python server implementation of the JSON RPC 2.0 protocol";
43 homepage = "https://github.com/python-lsp/python-lsp-jsonrpc";
44 changelog = "https://github.com/python-lsp/python-lsp-jsonrpc/blob/v${version}/CHANGELOG.md";
45 license = licenses.mit;
46 maintainers = with maintainers; [ fab ];
47 };
48}