-
Notifications
You must be signed in to change notification settings - Fork 202
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
Julia busy all the time #255
Comments
I'm not sure, at least I have not tested with julia 0.7 at all and I think we'll probably wait quite a bit longer before we start to work on 0.7 compat work. |
Aah, sorry, I meant julia-vscode 0.7, not Julia 0.7, I'm on Julia 0.6. |
Ah, ha, sorry :) Here is one vague theory: we actually load all the packages that are used in any project into the LS process. That process is not reusing the precompile cash of the user, instead it has its own precompile cash. So everything gets newly precompiled, and during that time there is no output. I could imagine that this is happening, i.e. you might still be stuck on the initial pre-compile pass. One way to detect this is to look into the The solution to this is not simple but very much on the roadmap for v0.8.0: we want the LS process to never load user code, but instead spawn new julia processes that do that, don't block anything and reuse the normal user pre-compile cache. But, of course there might also be something else going on :) |
Thanks, deleting those .ji files got things working again when I was editing CxxWrap, but when I loaded another package that uses CxxWrap (Trilinos.jl in this case, unreleased but on my Github) it got stuck again. Is there a way to get the output of this loading process? I must admit I'm mostly editing packages that are not purely Julia, so maybe loading the used packages causes side effects or problems finding a library or something. |
If you edit CxxWrap, it will actually not try to load that into the LS process, instead it will statically analyze that. In general, it will only load those packages into the LS process that are loaded by the code in the current working folder. I don't think there is any way to get any output about that... For me it mostly worked to just have on VS Code instance started and wait until it had everything precompiled... I'm not sure what happens if you have e.g. multiple VS Code instances running at the same time and they are all trying to pre-compile the same things. I know, that is really not very helpful, but I can't think of any better strategy, short of just fixing this whole situation as outlined above. But that will be v0.8.0, I'm afraid... |
OK, it seems CxxWrap is at least one of the culprits, but this time disabling the loading of the dynamic library in the init function doesn't seem to help. Anyway, thanks for the very quick response, I'll see if I can find a workaround and I'm looking forward to the next version. |
I'm experiencing this as well. I removed the .ji files in
CPU usage for the julia process drops to near zero, but the "Julia: busy" message remains in VS code, and when I hover over anything in my code, it still results in a "Loading..." tooltip. |
Yep, same here: it seems to work for a bit (documentation and auto-completion) but then after a while it stops. If I "Reload Window" it works again for a while and then stops again. |
Here the output from the "OUTPUT" console with debug output turned on in
As reported above: during all this time the status bar shows :Julia: busy" and the help text never shows but just "Loading..." Also during typing, there is a lot of activity in the "OUTPUT" console, but no auto-completions show up. So it seems like the language server is running but somehow its output doesn't make it into the editor. |
Eek, this is pretty bad this is somehow connected to the asyncrhonous loading of packages. I'll push the WIP for v0.8 that fixes this |
Mind linking that WIP? |
julia-vscode/LanguageServer.jl#168 and you'll need to:
|
Thanks! BTW, it would be good to document somewhere how all those packages play together. Otherwise it's hard to find things and file issues in the right place. |
No problem, I'll be adding things to that PR today to get it up to date with where we were. I'm just in the process of splitting things out into different packages at the moment but we're happy with all issues to be reported here |
Thank you! |
Without having it tested thoroughly, it seems having this extension https://github.com/bartosz-antosik/vscode-spellright enabled for Julia files makes the busy-problem appear much quicker. |
Hm, that is very strange, I would have thought that these extensions can't even mess with each other... |
This should be sorted now, in the main. I'll leave it open so that people can report back on whether the new release fixed it |
Are there instructions somewhere on how to try this before there is a release? |
Download https://github.com/JuliaEditorSupport/julia-vscode/releases/download/v0.8.0-beta.1/language-julia-0.8.0-beta.1.vsix and use the 'Extensions: Install from VSIX'. I'm going to post an announcement w/ further details onto Discourse tonight |
I installed the 0.8.0-beta.1.vsix to VSCode (1.16.1) and I'm afraid I'm still having similar issues with Julia being busy all the time. |
I haven't had the busy problem with 0.8-beta. |
I reinstalled VSCode + 0.8-beta and now I don't seem to have the busy problem either, at least during 20 minutes of testing. |
Off-topic: With the 0.8-beta, the "Julia starting up" does not disappear even when Julia has started up and things like tool-tips work. On-topic: not sure about the "busy" bug yet. |
I'm experiencing the same issue as @mauro3 regarding "Julia starting up". But ctrl+click navigation and tooltips work fine now. |
the incorrect 'starting up' message is fixed here |
Appears to work here, I'll keep testing the beta(s). |
Testing the 0.8 beta 1 on Linux gave me this error:
|
@barche That seems like an unrelated, new bug, right? |
Yep, I'm pushing a fix but I can't work out in my head what sort of anonymous function declaration would cause this |
Yes, seeing this on my Mac too now, always when editing Luxor.jl or a package that depends on it. Want me to open a new issue? |
Yeah, lets track that in a new issue, that would be great! |
I'm seeing this issue ( edit, more info: when I launch vscode I see things settle down to |
oh, hah, I still had the |
Yep, that will make it load 0.7. |
I also have this problem... When I start vs code, everything seems fine. But I cannot start Julia terminal!!!
For the first error, I configured the julia binary path by adding I am a newbie, please do not laugh at me if you found something stupid. |
I may find the reason... |
Ever since upgrading to 0.7, Julia is indicated as busy forever after trying to get completion or hovering over e.g. a function. Function help or completions also never appear. It seems to work on the first few functions sometimes, but then it gets stuck with no errors in the language server log. Is there some cache or something I can reset? I've been going through quite a few versions of the vscode plugin.
The text was updated successfully, but these errors were encountered: