-
Notifications
You must be signed in to change notification settings - Fork 12
WIP: Clone Project and run jedi locally on it #47
base: master
Are you sure you want to change the base?
Conversation
b14ff97
to
10fb68d
Compare
0c3da1b
to
da0ddb6
Compare
bf47164
to
25304ad
Compare
2f4f976
to
54f80dd
Compare
(the response from jedi seems to be correct, just a change in its behavior due to the update version)
The last test had to be changed since that repo has no installation file. This means that no ext dep is downloaded for that repo, so obviously there is no way for jedi to resolve the hover.
also delete the skipped test, which is literally a copy of the above passing test
1154e27
to
316ced8
Compare
316ced8
to
d346750
Compare
@ggilmore I've been trying to just speed up
I updated pytest to enable better log capturing. At first I was worried that we had to shell out to pipenv for every language server interaction (ie each hover), but that seems to be incorrect. So it seems most of the slowness is in setting up and tearing down the fixture. Can I propose we add an optional "fast" mode which avoids teardown and reuses the virtualenv per fixture. I think that should make the test suite much faster. |
Would it be okay if the fast mode was enabled locally, but disabled on CI?
…On Fri, Mar 16, 2018, 7:12 AM Keegan Carruthers-Smith < ***@***.***> wrote:
@ggilmore <https://github.com/ggilmore> I've been trying to just speed up
test_jedi.py. It seems we do pipenv twice for jedi, effectively doubling
the time it takes. I assume that is related to subprojects.
----------------------------------------------------------------------------- Captured log teardown ------------------------------------------------------------------------------
workspace.py 221 INFO Removing project's virtual environment /Users/keegan/.local/share/virtualenvs/init_extension_module-_7tEleXj
workspace.py 224 INFO Removing cloned project cache /Users/keegan/src/github.com/sourcegraph/python-langserver/test/python-cloned-projects-cache/github.com.davidhalter.jedi.9f61554c-a65d-4910-b921-70ef9438d47e/test/test_evaluate/init_extension_module
workspace.py <http://github.com/sourcegraph/python-langserver/test/python-cloned-projects-cache/github.com.davidhalter.jedi.9f61554c-a65d-4910-b921-70ef9438d47e/test/test_evaluate/init_extension_moduleworkspace.py> 221 INFO Removing project's virtual environment /Users/keegan/.local/share/virtualenvs/github.com.davidhalter.jedi.9f61554c-a65d--ACUveBg4
workspace.py 224 INFO Removing cloned project cache /Users/keegan/src/github.com/sourcegraph/python-langserver/test/python-cloned-projects-cache/github.com.davidhalter.jedi.9f61554c-a65d-4910-b921-70ef9438d47e
I updated pytest to enable better log capturing.
At first I was worried that we had to shell out to pipenv for every
language server interaction (ie each hover), but that seems to be
incorrect. So it seems most of the slowness is in setting up and tearing
down the fixture. Can I propose we add an optional "fast" mode which avoids
teardown and reuses the virtualenv per fixture. I think that should make
the test suite *much* faster.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#47 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AImqO1DuCITx6flYA_ScawGBVBeXIUb9ks5te8g0gaJpZM4SY9nJ>
.
|
And yes, two virtual environments are created because there is a subproject in the tests for the jedi repo. |
Re-subprojects: The current strategy is just to go through the entire workspace looking for installation files - and to assume that their presence indicates that there is a subproject that starts at that folder level. We create virtual environments for each subproject. This logic doesn't work off the bat with some simple test cases that I wrote (not sure why atm). Given that, I think that it's fine to revert b17dae2 if it makes things easier. |
yup, just on CI sounds good to me. FYI the |
No description provided.