I'm trying to run MLSP in docker container to provide completions for a project i'm working on.
When running on a local machine / VM, everything works fine. In docker container however, the analysis gets stuck, until I trigger a filesystem operation such as running pip install. If I skip the initial workspace/didChangeConfiguration notification, analysis finishes fine.
Reading the code, I'm led to believe this is a problem with PathsWatcher class, which only gets created after workspace/didChangeConfiguration is called. It seems like it could be an issue with running System.IO.FileSystemWatcher in containerized environment, but i'm not 100% sure.
Environment data
- Language Server version: 0.5.7.0 (also tried 0.4.127)
- OS and version: Debian 9 (on MacOS host)
- Python version: 3.7.3
Expected behaviour
Analysis should go through all the packages and finish.
Actual behaviour
In docker, analysis never finishes with "Analysis restarted" message appearing before it gets stuck. When a filesystem operation is made (such as pip install), analysis gets reseted again and this time it finishes fine.
Logs
IN: marks a raw input send to MLSP, OUT: is the raw output i'm getting back. The communication is done through my custom LSP plugin in NodeJS, using vscode-jsonrpc package for jsonrpc comms.
There are 2 logs, first part is until the analysis got stuck, the second is then after I ran pip install in the container, analysis got unstack and finished.
Part 1:
https://gist.github.com/danzvara/8fcd139f5568d38e87957fd6dc3bc9dd
Part2:
https://gist.github.com/danzvara/07f94ceffecb071ab2c6e0e2d5101c75
Thanks for any help!
I'm trying to run MLSP in docker container to provide completions for a project i'm working on.
When running on a local machine / VM, everything works fine. In docker container however, the analysis gets stuck, until I trigger a filesystem operation such as running pip install. If I skip the initial
workspace/didChangeConfigurationnotification, analysis finishes fine.Reading the code, I'm led to believe this is a problem with
PathsWatcherclass, which only gets created afterworkspace/didChangeConfigurationis called. It seems like it could be an issue with runningSystem.IO.FileSystemWatcherin containerized environment, but i'm not 100% sure.Environment data
Expected behaviour
Analysis should go through all the packages and finish.
Actual behaviour
In docker, analysis never finishes with "Analysis restarted" message appearing before it gets stuck. When a filesystem operation is made (such as pip install), analysis gets reseted again and this time it finishes fine.
Logs
IN: marks a raw input send to MLSP, OUT: is the raw output i'm getting back. The communication is done through my custom LSP plugin in NodeJS, using
vscode-jsonrpcpackage for jsonrpc comms.There are 2 logs, first part is until the analysis got stuck, the second is then after I ran
pip installin the container, analysis got unstack and finished.Part 1:
https://gist.github.com/danzvara/8fcd139f5568d38e87957fd6dc3bc9dd
Part2:
https://gist.github.com/danzvara/07f94ceffecb071ab2c6e0e2d5101c75
Thanks for any help!