Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Python language server provider #31180

Closed
wants to merge 6 commits into from
Closed

Conversation

teto
Copy link
Member

@teto teto commented Nov 3, 2017

Motivation for this change

LSP (Language Service Protocol) is the current big thing in IDEs https://langserver.org/ .
You can try on vim with for instance https://github.com/autozimu/LanguageClient-neovim .

This should work (the pyls binary is made available) but needs some cleaning.
I have a few other PRs I would like to clean first so feel free to takeover. I opened the PR to prevent duplicate work.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

@teto
Copy link
Member Author

teto commented Nov 6, 2017

I've cleaned up the PR. I think it's ready with the exception of python-language-server which requires even more new packages. I've thus disabled the tests. I've tested the language server which works fine.

@teto
Copy link
Member Author

teto commented Nov 9, 2017

Sorry I had pushed the clean version to the wrong branch. Fixed now.

@teto teto changed the title [RFC] Python language server provider [RDY] Python language server provider Nov 9, 2017
@teto
Copy link
Member Author

teto commented Nov 14, 2017

my only concern is how I dealt with configparser (which is an external library in python 2 but in the batteries for python3) but when testing locally, it seemed ok and tests pass. So I marked it ready.

@teto
Copy link
Member Author

teto commented Nov 20, 2017

bump ?

@teto
Copy link
Member Author

teto commented Dec 6, 2017

rebased

@fpletz
Copy link
Member

fpletz commented Dec 11, 2017

@GrahamcOfBorg build python-language-server

Copy link

@GrahamcOfBorg GrahamcOfBorg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Failure for system: x86_64-linux

  Retrying (Retry(total=0, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError('<pip._vendor.requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7ffff0dfaf28>: Failed to establish a new connection: [Errno -2] Name or service not known',)': /simple/snowballstemmer/
  Could not find a version that satisfies the requirement snowballstemmer (from pydocstyle==2.1.1) (from versions: )
No matching distribution found for snowballstemmer (from pydocstyle==2.1.1)

python installed: The directory '/homeless-shelter/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
___________________________________ summary ____________________________________
ERROR:   python: InvocationError: /tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/python/bin/pip install /tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/dist/pydocstyle-2.1.1.zip (see /tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/python/log/python-1.log)
builder for ‘/nix/store/6add2im972kc596r4f01bsya6ml7kixz-pydocstyle-2.1.1.drv’ failed with exit code 1
cannot build derivation ‘/nix/store/9hf7aql4rwxjjdi7pfp7414j7kzl9jd8-python-language-server-0.10.0.drv’: 1 dependencies couldn't be built
error: build of ‘/nix/store/9hf7aql4rwxjjdi7pfp7414j7kzl9jd8-python-language-server-0.10.0.drv’ failed

@teto
Copy link
Member Author

teto commented Dec 11, 2017

Not sure if it's a temporary (DNS) failure ? What GrahamcOfBorg does that the CI doesn't ?
I tried installing and that worked fine. Should I try rebasing on master instead ?

@fpletz
Copy link
Member

fpletz commented Dec 11, 2017

Please test with sandboxing enabled. There are some dependencies missing which pip will try to fetch via network. We generally don't want that in our packages and if it is really necessary, the expression should be a fixed-output derivation. Shouldn't be needed in this case, though.

@teto
Copy link
Member Author

teto commented Dec 11, 2017

Thanks for the help !
I managed to reproduce the error. Seems like the install was fine but running the tests was error prone.
The tests start a bunch of virtual env wchih might sound like a bad idea in nixos so I disabled the tests for pydocstyle.

pydocstyle==2.1.1)
Installing collected packages: pydocstyle
Successfully installed pydocstyle-2.1.1
/tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1
stripping (with flags -S) in /nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1/lib  /nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1/bin 
patching script interpreter paths in /nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1
checking for references to /tmp/nix-build-pydocstyle-2.1.1.drv-0 in /nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1...
wrapping `/nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1/bin/pydocstyle'...
running install tests
GLOB sdist-make: /tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/setup.py
WARNING:could not copy distfile to /homeless-shelter/.tox/distshare
python create: /tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/python
python inst: /tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/dist/pydocstyle-2.1.1.zip
ERROR: invocation failed (exit code 1), logfile: /tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/python/log/python-1.log
ERROR: actionid: python
msg: installpkg
cmdargs: ['/tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/python/bin/pip', 'install', '/tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/dist/pydocstyle-2.1.1.zip']
env: {'WINDRES': 'windres', 'propagatedBuildInputs': '/nix/store/x5sm2kl63ybwv07y75w5j23hlyq105w3-python3.6-snowballstemmer-1.2.1 /nix/store/bqpl681q7mag14sjrx18z48sa8b69qdw-python3.6-six-1.11.0 /nix/store/x96akmfpwi0bb2sdnxilxfiv9xw52dvl-python3-3.6.3 /nix/store/976v8x3crc6iaf54fsllwa1xcqlcmgk2-python3.6-setuptools-36.7.1', 'stdenv': '/nix/store/nz4lxbw9jyw1c28kqsrqy1vz8xw27pkk-stdenv', 'TZ': 'UTC', 'version': '2.1.1', 'OLDPWD': '/tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/dist', 'installCheckPhase': 'tox\n', 'out': '/nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1', 'src': '/nix/store/y2vk4351i42mq5ylq10myk1sfnagfzi6-pydocstyle-2.1.1.tar.gz', 'CONFIG_SHELL': '/nix/store/ski5znw2b8bj5qnsncrcq6128hkrwgvq-bash-4.4-p12/bin/bash', 'buildInputs': '/nix/store/abikpshpdb4ksv253yk22ail3yzp2drr-hook /nix/store/1vacmar6p9rwzf3drmpyjdg81w8h6gf0-hook /nix/store/976v8x3crc6iaf54fsllwa1xcqlcmgk2-python3.6-setuptools-36.7.1 /nix/store/sl3r468xkfyr4pimz8vk6c07j7kz79nk-python3.6-tox-2.4.1 /nix/store/vyprq1q61xqqbyx4wflc98s7h79ww0yz-python3.6-bootstrapped-pip-9.0.1', 'builder': '/nix/store/ski5znw2b8bj5qnsncrcq6128hkrwgvq-bash-4.4-p12/bin/bash', 'program_PATH': '/nix/store/x96akmfpwi0bb2sdnxilxfiv9xw52dvl-python3-3.6.3/bin:/nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1/bin:/nix/store/976v8x3crc6iaf54fsllwa1xcqlcmgk2-python3.6-setuptools-36.7.1/bin', 'CC': 'gcc', 'READELF': 'readelf', 'PYTHONHASHSEED': '932633201', 'STRIP': 'strip', 'OBJCOPY': 'objcopy', 'propagatedNativeBuildInputs': '', 'PYTHONNOUSERSITE': 'true', 'postFixup': 'wrapPythonPrograms\n# Check if we have two packages with the same name in the closure and fail.\n# If this happens, something went wrong with the dependencies specs.\n# Intentionally kept in a subdirectory, see catch_conflicts/README.md.\n/nix/store/x96akmfpwi0bb2sdnxilxfiv9xw52dvl-python3-3.6.3/bin/python3.6m /nix/store/lvg31h3na663n390jysm22q3z4lsbc3b-catch_conflicts/catch_conflicts.py\n', 'system': 'x86_64-linux', 'shellHook': '\nif test -e setup.py; then\n  tmp_path=$(mktemp -d)\n  export PATH="$tmp_path/bin:$PATH"\n  export PYTHONPATH="$tmp_path/lib/python3.6/site-packages:$PYTHONPATH"\n  mkdir -p $tmp_path/lib/python3.6/site-packages\n  /nix/store/vyprq1q61xqqbyx4wflc98s7h79ww0yz-python3.6-bootstrapped-pip-9.0.1/bin/pip install -e . --prefix $tmp_path >&2\nfi\n\n', 'PWD': '/tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1', 'HOME': '/homeless-shelter', 'TMP': '/tmp/nix-build-pydocstyle-2.1.1.drv-0', 'pname': 'pydocstyle', 'NIX_ENFORCE_NO_NATIVE': '1', 'checkPhase': 'tox\n', 'RANLIB': 'ranlib', 'OBJDUMP': 'objdump', 'AS': 'as', 'AR': 'ar', 'SSL_CERT_FILE': '/no-cert-file.crt', 'NIX_CC': '/nix/store/wddj8cd8aq02m8zakqngc7605haahlki-gcc-wrapper-6.4.0', 'NIX_CFLAGS_COMPILE': ' -isystem /nix/store/x96akmfpwi0bb2sdnxilxfiv9xw52dvl-python3-3.6.3/include', 'NIX_STORE': '/nix/store', 'configurePhase': 'runHook preConfigure\nrunHook postConfigure\n', 'NIX_CC_WRAPPER_x86_64_unknown_linux_gnu_TARGET_HOST': '1', 'program_PYTHONPATH': '/nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1/lib/python3.6/site-packages:/nix/store/x5sm2kl63ybwv07y75w5j23hlyq105w3-python3.6-snowballstemmer-1.2.1/lib/python3.6/site-packages:/nix/store/p9rzw9rns23viximgvcidr4xz78n574s-python3.6-PyStemmer-1.3.0/lib/python3.6/site-packages:/nix/store/976v8x3crc6iaf54fsllwa1xcqlcmgk2-python3.6-setuptools-36.7.1/lib/python3.6/site-packages:/nix/store/bqpl681q7mag14sjrx18z48sa8b69qdw-python3.6-six-1.11.0/lib/python3.6/site-packages', 'configureFlags': '', '_PATH': '/nix/store/976v8x3crc6iaf54fsllwa1xcqlcmgk2-python3.6-setuptools-36.7.1/bin:/nix/store/sl3r468xkfyr4pimz8vk6c07j7kz79nk-python3.6-tox-2.4.1/bin:/nix/store/x96akmfpwi0bb2sdnxilxfiv9xw52dvl-python3-3.6.3/bin:/nix/store/vlg053mnzwjvks31l7mgd3dhn5pb0rig-python3.6-virtualenv-15.1.0/bin:/nix/store/vyprq1q61xqqbyx4wflc98s7h79ww0yz-python3.6-bootstrapped-pip-9.0.1/bin:/nix/store/8f51wlm35f4d5fgpvkr5078lrg84s0yl-patchelf-0.9/bin:/nix/store/krsfp96dnac8c5dwqkhf19wqslc7npzl-paxctl-0.9/bin:/nix/store/wddj8cd8aq02m8zakqngc7605haahlki-gcc-wrapper-6.4.0/bin:/nix/store/c30dlkmiyrjxxjv6nv63igjkzcj1fzxi-gcc-6.4.0/bin:/nix/store/bg6s6y814hgsswynmca9fk7v19y8p0n1-binutils-2.28.1/bin:/nix/store/z03423p0sw9ds5mh0incv2j2638mibn7-glibc-2.26-75-bin/bin:/nix/store/lkbz0nzs8nmc822k0yj829ykkdc7bszn-coreutils-8.28/bin', 'DETERMINISTIC_BUILD': '1', 'TMPDIR': '/tmp/nix-build-pydocstyle-2.1.1.drv-0', 'name': 'pydocstyle-2.1.1', 'doInstallCheck': '1', 'doCheck': '', 'NM': 'nm', 'CXX': 'g++', 'SHELL': '/nix/store/ski5znw2b8bj5qnsncrcq6128hkrwgvq-bash-4.4-p12/bin/bash', 'NIX_LDFLAGS': '-rpath /nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1/lib64 -rpath /nix/store/3jwd6lql44wr22dnv046ldw8f47z3kax-pydocstyle-2.1.1/lib  -L/nix/store/976v8x3crc6iaf54fsllwa1xcqlcmgk2-python3.6-setuptools-36.7.1/lib -L/nix/store/sl3r468xkfyr4pimz8vk6c07j7kz79nk-python3.6-tox-2.4.1/lib -L/nix/store/aafmzs3yjn7zagmsavwaj9csf4lm8zgp-python3.6-py-1.4.34/lib -L/nix/store/x96akmfpwi0bb2sdnxilxfiv9xw52dvl-python3-3.6.3/lib -L/nix/store/vlg053mnzwjvks31l7mgd3dhn5pb0rig-python3.6-virtualenv-15.1.0/lib -L/nix/store/n4f7wgbyp9nfzmddap2890fb7m3jl418-python3.6-pluggy-0.3.1/lib -L/nix/store/vyprq1q61xqqbyx4wflc98s7h79ww0yz-python3.6-bootstrapped-pip-9.0.1/lib -L/nix/store/x5sm2kl63ybwv07y75w5j23hlyq105w3-python3.6-snowballstemmer-1.2.1/lib -L/nix/store/p9rzw9rns23viximgvcidr4xz78n574s-python3.6-PyStemmer-1.3.0/lib -L/nix/store/bqpl681q7mag14sjrx18z48sa8b69qdw-python3.6-six-1.11.0/lib', 'TEMPDIR': '/tmp/nix-build-pydocstyle-2.1.1.drv-0', 'shell': '/nix/store/ski5znw2b8bj5qnsncrcq6128hkrwgvq-bash-4.4-p12/bin/bash', 'NIX_INDENT_MAKE': '1', 'SHLVL': '1', 'NIX_BUILD_CORES': '4', 'installPhase': 'runHook preInstall\n\nmkdir -p "$out/lib/python3.6/site-packages"\nexport PYTHONPATH="$out/lib/python3.6/site-packages:$PYTHONPATH"\n\npushd dist\n/nix/store/vyprq1q61xqqbyx4wflc98s7h79ww0yz-python3.6-bootstrapped-pip-9.0.1/bin/pip install *.whl --no-index --prefix=$out --no-cache  --build tmpbuild\npopd\n\nrunHook postInstall\n', 'SOURCE_DATE_EPOCH': '1507568044', 'TEMP': '/tmp/nix-build-pydocstyle-2.1.1.drv-0', 'STRINGS': 'strings', 'buildPhase': 'runHook preBuild\ncp /nix/store/fscd8f71wmpwphcmi5mx8qnif2402x9m-run_setup.py nix_run_setup.py\n/nix/store/x96akmfpwi0bb2sdnxilxfiv9xw52dvl-python3-3.6.3/bin/python3.6m nix_run_setup.py  bdist_wheel\nrunHook postBuild\n', 'PATH': '/tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/python/bin:/nix/store/x96akmfpwi0bb2sdnxilxfiv9xw52dvl-python3-3.6.3/bin:/nix/store/sl3r468xkfyr4pimz8vk6c07j7kz79nk-python3.6-tox-2.4.1/bin:/nix/store/976v8x3crc6iaf54fsllwa1xcqlcmgk2-python3.6-setuptools-36.7.1/bin:/nix/store/vlg053mnzwjvks31l7mgd3dhn5pb0rig-python3.6-virtualenv-15.1.0/bin:/nix/store/976v8x3crc6iaf54fsllwa1xcqlcmgk2-python3.6-setuptools-36.7.1/bin:/nix/store/sl3r468xkfyr4pimz8vk6c07j7kz79nk-python3.6-tox-2.4.1/bin:/nix/store/x96akmfpwi0bb2sdnxilxfiv9xw52dvl-python3-3.6.3/bin:/nix/store/vlg053mnzwjvks31l7mgd3dhn5pb0rig-python3.6-virtualenv-15.1.0/bin:/nix/store/vyprq1q61xqqbyx4wflc98s7h79ww0yz-python3.6-bootstrapped-pip-9.0.1/bin:/nix/store/8f51wlm35f4d5fgpvkr5078lrg84s0yl-patchelf-0.9/bin:/nix/store/krsfp96dnac8c5dwqkhf19wqslc7npzl-paxctl-0.9/bin:/nix/store/wddj8cd8aq02m8zakqngc7605haahlki-gcc-wrapper-6.4.0/bin:/nix/store/c30dlkmiyrjxxjv6nv63igjkzcj1fzxi-gcc-6.4.0/bin:/nix/store/bg6s6y814hgsswynmca9fk7v19y8p0n1-binutils-2.28.1/bin:/nix/store/z03423p0sw9ds5mh0incv2j2638mibn7-glibc-2.26-75-bin/bin:/nix/store/lkbz0nzs8nmc822k0yj829ykkdc7bszn-coreutils-8.28/bin:/nix/store/lkbz0nzs8nmc822k0yj829ykkdc7bszn-coreutils-8.28/bin:/nix/store/vnwcvx46rj104xqir7sl6gr6q07zpih0-findutils-4.6.0/bin:/nix/store/bx9m3j9fxbnxlsw78cdp9cy2zlnsnc0w-diffutils-3.6/bin:/nix/store/zbvl9mj6ix5hv6q83s5yvj6wzjsr2l72-gnused-4.4/bin:/nix/store/16i91r3wy2ww457nzc6h1zd9zlyidpmm-gnugrep-3.1/bin:/nix/store/kdji4mzwqsxdz995lv531l6a9sih64hy-gawk-4.2.0/bin:/nix/store/x8sx4dsv31q3j2di97a80pqs8gxxn3qw-gnutar-1.29/bin:/nix/store/92ihck777kcwj2bm3a7wavw4qwmgr31j-gzip-1.8/bin:/nix/store/1p2k0jv2aj4nyaxcq73yjyclzflgq215-bzip2-1.0.6.0.1-bin/bin:/nix/store/6vdn0sjsgq5ixkkn6lyhm06dg59hln90-gnumake-4.2.1/bin:/nix/store/ski5znw2b8bj5qnsncrcq6128hkrwgvq-bash-4.4-p12/bin:/nix/store/avlkihcgc5kwr5q5k0aipy0cylh8nrxz-patch-2.7.5/bin:/nix/store/3r878rgry837ijsvbqdsw97r8kfz2m09-xz-5.2.3-bin/bin', 'NIX_BUILD_TOP': '/tmp/nix-build-pydocstyle-2.1.1.drv-0', 'NIX_ENFORCE_PURITY': '1', 'SIZE': 'size', 'nativeBuildInputs': '', 'LD': 'ld', 'VIRTUAL_ENV': '/tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/python'}

The directory '/homeless-shelter/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/homeless-shelter/.cache/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Processing ./.tox/dist/pydocstyle-2.1.1.zip
Collecting snowballstemmer (from pydocstyle==2.1.1)
  Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError('<pip._vendor.requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7ffff1b14278>: Failed to establish a new connection: [Errno -2] Name or service not known',)': /simple/snowballstemmer/
  Retrying (Retry(total=3, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError('<pip._vendor.requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7ffff1b14dd8>: Failed to establish a new connection: [Errno -2] Name or service not known',)': /simple/snowballstemmer/
  Retrying (Retry(total=2, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError('<pip._vendor.requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7ffff1b14940>: Failed to establish a new connection: [Errno -2] Name or service not known',)': /simple/snowballstemmer/
  Retrying (Retry(total=1, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError('<pip._vendor.requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7ffff0dd5668>: Failed to establish a new connection: [Errno -2] Name or service not known',)': /simple/snowballstemmer/
  Retrying (Retry(total=0, connect=None, read=None, redirect=None)) after connection broken by 'NewConnectionError('<pip._vendor.requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7ffff0dd5898>: Failed to establish a new connection: [Errno -2] Name or service not known',)': /simple/snowballstemmer/
  Could not find a version that satisfies the requirement snowballstemmer (from pydocstyle==2.1.1) (from versions: )
No matching distribution found for snowballstemmer (from pydocstyle==2.1.1)

python installed: The directory '/homeless-shelter/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
___________________________________ summary ____________________________________
ERROR:   python: InvocationError: /tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/python/bin/pip install /tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/dist/pydocstyle-2.1.1.zip (see /tmp/nix-build-pydocstyle-2.1.1.drv-0/pydocstyle-2.1.1/.tox/python/log/python-1.log)
builder for ‘/nix/store/lkdkj820r8g4j001p1n90p9mqpsqrkb4-pydocstyle-2.1.1.drv’ failed with exit code 1
cannot build derivation ‘/nix/store/2fb1s759kd2yhrjj3q6qpyip6pfad38c-python-language-server-0.10.0.drv’: 1 dependencies couldn't be built

Now I pushed the result but the CI has "Failed to enumerate outputs of master" which I don't know how to fix.

@teto
Copy link
Member Author

teto commented Dec 22, 2017

rebased. (Don't think it will succeed but @GrahamcOfBorg build python-language-server)

@teto
Copy link
Member Author

teto commented Jan 20, 2018

thanks for the review, I fixed the commit message too so that it reflects the 0.13 version.

@teto
Copy link
Member Author

teto commented Feb 20, 2018

bumped language server to 0.15. Should be ready.

sha256 = "1al97fc27fjnd7h6wvx0kk0lr3iygbqwmb1fsx81252sqgw1knxl";
};

postPatch = stdenv.lib.optionalString (!pythonOlder "3.0") ''
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should not be needed since python3Packages.callPackage is used.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LanguageServerProtocol says "A Python 2.7 and 3.4+ implementation of the Language Server Protocol." so some people might want to use it with python2. So even if it is an application. maybe I should implement it as a python-module ?

pyflakes
pluggy
rope
] ++ stdenv.lib.optionals (pythonOlder "3.0") [ configparser ];
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here.

rope
] ++ stdenv.lib.optionals (pythonOlder "3.0") [ configparser ];

# Enabling tests require porting these extra packages
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Which packages now?

@teto
Copy link
Member Author

teto commented Feb 21, 2018

I updated the commit message to reflect the bump to 15 (forgotten) and moved the program to python packages so that one can install the server for python2 and 3. I also fixed the tests that were not running and doing so realized a problem with upstream archive I notified here palantir/python-language-server#269

@teto teto changed the title [RDY] Python language server provider [WIP] Python language server provider Feb 26, 2018
@teto
Copy link
Member Author

teto commented May 18, 2018

bumping LSP to 0.18. HAve a problem with some tests not being imported, README https://github.com/palantir/python-language-server/tree/0.18.0 says to run pip install .[test] && tox

@teto
Copy link
Member Author

teto commented May 25, 2018

see #41061 instead

@teto teto closed this May 25, 2018
@teto teto deleted the python-lsp branch June 8, 2018 06:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants