Skip to content

Ability to turn off features #286

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

Closed
wmonk opened this issue Mar 13, 2018 · 6 comments
Closed

Ability to turn off features #286

wmonk opened this issue Mar 13, 2018 · 6 comments

Comments

@wmonk
Copy link

wmonk commented Mar 13, 2018

Hey, thanks for this plugin, it is working great! A little too great for me actually.

I am using https://github.com/autozimu/LanguageClient-neovim and want to be able to pass command line options to turn off various plugins like pyflakes. Is this possible currently?

@gatesn
Copy link
Contributor

gatesn commented Mar 15, 2018

I'm afraid you can't configure pyflakes right now. You are able to turn it off entirely by setting {'pyls': {'plugins': {'pyflakes': {'enabled': False}}}} in the configuration

@nanoant
Copy link

nanoant commented Mar 19, 2018

@wmonk @gatesn That is why I have forked and made couple of changed (for my own use) here develop...nanoant:patch/optional-rope-etc

Long story short it makes rope, yapt and pydocstyle optional, which is because:

  1. Rope startup and module pre-fetch was causing serious slowdown on my Windows workstation with enterprise antivirus software (few minutes for startup - one core busy - may be related to Took 2 minutes to respond to on_hover(), from 15:56:14 until 15:58:38 #257) and honestly I don't see a benefit of using Rope (an additional parser and CPU/IO burden) just to have "Rename" functionality. With Jedi only and no pre-fetch, startup is instant. Btw. I think there must be a way to utilize Jedi for Rename.

  2. Yapt and pydocstyle are not in conda, I don't want to install packages from pip, unless I install them from Git w/o dependencies, moreover I don't use/want Yapt and pydocstyle :)

IMHO, I think jedi should be only required dependency in PLS, rest should be completely optional. It should be most lightweight possible with its default setup.

Nevertheless, I am really happy now with (patched) PLS, I switched from Sublime Text + Anaconda to LSP plugin that handles multiple language servers. Hence @gatesn many thanks for PLS 🍺

However, I think PLS deserves some polish, there are too many things hard-coded there (Rope Projects, pre-catched modules) and (IMHO again) too many dependencies.

@gatesn I may deliver some PR for that based on what I did in my patch if you want, but I think you have better idea how to do it right.

@gatesn
Copy link
Contributor

gatesn commented Mar 23, 2018

@nanoant I completely agree with the sentiment of removing as many dependencies as possible. I've opened a ticket to track it here: #299

@gatesn
Copy link
Contributor

gatesn commented Mar 23, 2018

@nanoant does this PR work for you? #301

I know it doesn't address the pre-loading of modules. I will try to address that in a separate PR.

@gatesn
Copy link
Contributor

gatesn commented Mar 25, 2018

Fixed by #301

@nanoant
Copy link

nanoant commented Mar 26, 2018

@gatesn Thanks a lot for the latest changes, the only remaining problem is that PRELOADED_MODULES still are populated on startup even not needed, which can take a while on Windows machine, hence my additional PR #310.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants