Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib
2, buildPythonPackage
3, fetchPypi
4, fetchFromGitHub
5, poetry-core
6, pythonRelaxDepsHook
7, docstring-to-markdown
8, jedi
9, pygls
10, pytestCheckHook
11, pyhamcrest
12, python-jsonrpc-server
13}:
14
15buildPythonPackage rec {
16 pname = "jedi-language-server";
17 version = "0.39.0";
18 format = "pyproject";
19
20 src = fetchFromGitHub {
21 owner = "pappasam";
22 repo = pname;
23 rev = "refs/tags/v${version}";
24 sha256 = "sha256-nra2Xvfo1cfMoZkY7sem7NIEDwDmODWbGVNCeefSuQY=";
25 };
26
27 pythonRelaxDeps = [
28 "pygls"
29 ];
30
31 nativeBuildInputs = [
32 poetry-core
33 pythonRelaxDepsHook
34 ];
35
36 propagatedBuildInputs = [
37 docstring-to-markdown
38 jedi
39 pygls
40 ];
41
42 checkInputs = [
43 pytestCheckHook
44 pyhamcrest
45 python-jsonrpc-server
46 ];
47
48 preCheck = ''
49 HOME="$(mktemp -d)"
50 '';
51
52 pythonImportsCheck = [
53 "jedi_language_server"
54 ];
55
56 meta = with lib; {
57 homepage = "https://github.com/pappasam/jedi-language-server";
58 changelog = "https://github.com/pappasam/jedi-language-server/blob/${src.rev}/CHANGELOG.md";
59 description = "A Language Server for the latest version(s) of Jedi";
60 license = licenses.mit;
61 maintainers = with maintainers; [ doronbehar ];
62 };
63}