microsoft / vscode-python

Python extension for Visual Studio Code
https://aka.ms/pvsc-marketplace
MIT License
4.34k stars 1.19k forks source link

Intellisense stops working for python files when using the new 'Outline' feature #1721

Closed derekwallace closed 6 years ago

derekwallace commented 6 years ago

Environment data

Actual behavior

using network drive as project is hosted on a shared drive. intellisense becomes un-responsive after a few python files are opened. snippets also stops working intellisense will work fine for other file types.

using process explorer i kill "python completion.py". intellisense becomes responsive and works correct.

Expected behavior

intellisense always work.

Steps to reproduce:

brettcannon commented 6 years ago

"there is still something going on that is interfering with normal behaviour", and that behaviour is the outline view. 😉 VS Code is basically hammering Jedi every 250 ms to re-parse the file and analyze it for symbols. IOW there's not much we can do here short of throttling even more or magically making Jedi faster (also realize the Outline view is in preview for VS Code for a reason 😉; we actually had to provide the feedback to even have the 250 ms throttle added as originally it was every key press triggering a re-scan).

We are hoping to have the Outline view supported by our experimental analysis engine soon which should help alleviate this performance bottleneck. Once #1934 is merged and we have verified the new analysis engine works with the outline view I can provide instructions here on how to flip it on.

derekwallace commented 6 years ago

Thanks Brett for providing clear explanation of what is happening. Do you think it would be possible that the 250 could be a setting so that users that have an issue would be able to investigate finding a sweet spot that works sufficiently for them? Or the ability to refresh the outline only on file load &save?

If you want any feedback or roadtest of the new engine I'm willing to try.

Thanks

On Wed, 13 Jun 2018, 14:57 Brett Cannon, notifications@github.com wrote:

"there is still something going on that is interfering with normal behaviour", and that behaviour is the outline view. 😉 VS Code is basically hammering Jedi every 250 ms to re-parse the file and analyze it for symbols. IOW there's not much we can do here short of throttling even more or magically making Jedi faster (also realize the Outline view is in preview for VS Code for a reason 😉; we actually had to provide the feedback to even have the 250 ms throttle added as originally it was every key press triggering a re-scan).

We are hoping to have the Outline view supported by our experimental analysis engine soon which should help alleviate this performance bottleneck. Once #1934 https://github.com/Microsoft/vscode-python/pull/1934 is merged and we have verified the new analysis engine works with the outline view I can provide instructions here on how to flip it on.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Microsoft/vscode-python/issues/1721#issuecomment-397048502, or mute the thread https://github.com/notifications/unsubscribe-auth/AFUOVnyJ4XGy5fhlwA1lBC13pUFPd8zMks5t8WCXgaJpZM4UJPik .

brettcannon commented 6 years ago

The latest build of the new language server should have the Outline functioning as expected. You can download a development build of the extension to test it out.