-
Notifications
You must be signed in to change notification settings - Fork 62
RLS crashes #229
Comments
@jrmuizel,
And post the output of the RLS channel. |
@KalitaAlexey Seeing the same thing. Here's the debug output:
EDIT: I actually think this is what you're looking for:
Edit2: Here's the output of
|
That matches what I see. |
Did it work before? A week ago? |
I have had rls working previously, but that was a more manual setup using these steps from rls_vscode: "Next, without installing the client as a regular VSCode extension, open the client folder in VSCode. Go to the debugger and run "Launch Extension". This opens a new instance of VSCode with the plugin installed." |
@jrmuizel, |
That no longer works. I'll try investigate the RLS issue. |
I've filed rust-lang/rls#306 |
Version of VSCode: Not sure if the same underlaying issues, RLS crashes almost immediately. RLS console output
Rust logging output
My rust settings"rust.forceLegacyMode": false,
"rust.actionOnSave": "check",
"rust.rls": {
"executable": "rustup",
"args": [
"run",
"nightly",
"rls"
],
"env": {
"RUST_LOG": "rls=debug",
"RUST_BACKTRACE": 1
}
} I am having no trouble running |
Does it crash when you don't set "rust.rls.env"? |
There's a cross-issue in RLS already: rust-lang/rls#312 It might have to do with a new field in the |
@KalitaAlexey yes, crashes no matter the combo of the config |
A further look into the RLS type definitions brought me to these changes in |
Just a tiny update, rust-lang/rls#313 should fix this issue without requiring changes to this extension. :) |
@Enet4 do you know if Does anyone know what the
|
@dvdplm It was a consequence of the field "experimental" in one of the RLS type definitions being declared as mandatory, while it should have been optional in accordance to the language server protocol. The fix has already landed in the master branch, but apparently still not in Nightly. We'll probably have to wait and see. |
Still crashing with the latest nightly, hopefully they make us happy soon... |
The PR was only merged this morning, so it sounds unlikely that the fix hit nightly already. Those of you who want RLS to work right away can do so by building rls from the sources and directing vscode to the built executable in the extension's settings. You might also need to add the path to the Rust nightly dynamic libraries into your system's library path environment variable (LD_LIBRARY_PATH on Linux) if the program crashes about a missing dynamically linked file (.so, .dll, ...). |
Just in case someone's still wondering, the fix to this crash is already available in rustc 1.19.0-nightly (386b0b9d3 2017-05-14). It should be safe to close this issue. |
It might be that you have opened a fairly large project (or at least with large dependencies). RLS isn't very efficient yet, and will eagerly perform a static analysis of the project and its dependencies right when a Rust source code file is opened. If that extreme usage doesn't disappear after a while, it could be a bug. |
The project is 2 files with the following dependencies:
|
@Banashek I can reproduce that in my core i5 machine, it took around 2 minutes to complete. It might be diesel and its carpload of dependencies that take long to analyse. AFAIK, other than using the extension in legacy mode, there is no other way around that at the moment. |
Thanks. That's good to know. |
@Enet4 Both the neovim languageservice and vscode seem to be wrecking my cpu with just these few declared dependencies (I'm sure they each have a ton of their own). |
@Banashek, |
The new version will remove the problem. I'm about to publish it: #279. |
Note to anyone who comes here because it blows up: I uninstalled and reinstalled the extension and that fixed things. |
@KalitaAlexey I am not able to use the extension. Please see the output attached. Thanks. Rust Logging output:
User Settings:
VS Code:
|
Add "RUST_BACKTRACE" = 1 to "rust.rls.env" and attach what the output channel will give you. |
Can you confirm I added the backtrace correctly? Adding in VSCode settings as
RLS output:
|
I think you add it correct. Could you paste the output of "Rust Logging"? |
|
@peterschussheim, |
OK, please let me know if you need more data from me. |
Nope. I hate JavaScript. |
That's my fault of course. I wrote |
As a workaround:
It should open VSCode. |
RLS output:
Rust Logging output:
|
Still not enough. |
|
My bad. It showed |
Okay now I see. |
I'm a bad programmer) |
Tomorrow I'll publish another version. |
Removing |
Thanks for finding problems. |
Version of VSCode: Version 1.12.1 (1.12.1)
Version of the extension: 0.3.14
OS: OS X
Description: RLS crashes. The status bar shows "RLS: Crashed"
Output of the "Rust logging" channel:
RLS channel
The text was updated successfully, but these errors were encountered: