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