You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make pylint respect libraries installed into VIRTUAL_ENV
Jedi respects VIRTUAL_ENV environment variable at finding out
libraries. Therefore, (virtualenv) runtime for pyls/jedi can be
separated from one for the target workspace.
On the other hand, pylint does not respect VIRTUAL_ENV, and might
cause unintentional "import-error" (E0401) for libraries installed in
such virtualenv, even though jedi can recognize them.
In order to make pylint respect libraries installed into VIRTUAL_ENV,
this commit uses Document.sys_path() instead of sys.path of current
pyls process, at spawning pylint. Document.sys_path() should respect
VIRTUAL_ENV, (original) PYTHONPATH, and so on, because it uses
Environment.get_sys_path() of jedi.
This commit chooses changing pyls instead of pylint, because pylint
uses "astroid" library to find out libraries imported in the target
file, and making astroid respect VIRTUAL_ENV seems very difficult (at
least, not so easy).
0 commit comments