vscode-rust
vscode-rust copied to clipboard
RLS crashes upon opening a VScode's git DIFF
Version of VSCode: 1.14.2 Version of the extension: 0.4.2 OS: Arch Linux
Description: When I use VSCode's git integration to get a diff from a rust file in my repo the RLS crashes and refuses to come back, unless I close the diff and restart RLS manually. My guess it's beause it's attempting to parse the garbled vscode temporary formatted git diff version.
Output of the "Rust logging" channel:
DEBUG: Rustup: updateToolchains: this.toolchains=[{"channel":"nightly","host":"x86_64-unknown-linux-gnu","isDefault":true}]
DEBUG: activate: processPossibleSetButMissingUserToolchain: toolchainKind=toolchain
DEBUG: activate: processPossibleSetButMissingUserToolchain: user toolchain is installed
DEBUG: Rustup: updateComponents(nightly-x86_64-unknown-linux-gnu): components=["cargo-x86_64-unknown-linux-gnu (default)","rls-x86_64-unknown-linux-gnu (installed)","rust-analysis-x86_64-unknown-linux-gnu (installed)","rust-docs-x86_64-unknown-linux-gnu (default)","rust-src (installed)","rust-std-aarch64-apple-ios","rust-std-aarch64-linux-android","rust-std-aarch64-unknown-fuchsia","rust-std-aarch64-unknown-linux-gnu","rust-std-arm-linux-androideabi","rust-std-arm-unknown-linux-gnueabi","rust-std-arm-unknown-linux-gnueabihf","rust-std-arm-unknown-linux-musleabi","rust-std-arm-unknown-linux-musleabihf","rust-std-armv7-apple-ios","rust-std-armv7-linux-androideabi","rust-std-armv7-unknown-linux-gnueabihf","rust-std-armv7-unknown-linux-musleabihf","rust-std-armv7s-apple-ios","rust-std-asmjs-unknown-emscripten","rust-std-i386-apple-ios","rust-std-i586-pc-windows-msvc","rust-std-i586-unknown-linux-gnu","rust-std-i686-apple-darwin","rust-std-i686-linux-android","rust-std-i686-pc-windows-gnu","rust-std-i686-pc-windows-msvc","rust-std-i686-unknown-freebsd","rust-std-i686-unknown-linux-gnu","rust-std-i686-unknown-linux-musl","rust-std-mips-unknown-linux-gnu","rust-std-mips-unknown-linux-musl","rust-std-mips64-unknown-linux-gnuabi64","rust-std-mips64el-unknown-linux-gnuabi64","rust-std-mipsel-unknown-linux-gnu","rust-std-mipsel-unknown-linux-musl","rust-std-powerpc-unknown-linux-gnu","rust-std-powerpc64-unknown-linux-gnu","rust-std-powerpc64le-unknown-linux-gnu","rust-std-s390x-unknown-linux-gnu","rust-std-sparc64-unknown-linux-gnu","rust-std-wasm32-unknown-emscripten","rust-std-x86_64-apple-darwin","rust-std-x86_64-apple-ios","rust-std-x86_64-linux-android","rust-std-x86_64-pc-windows-gnu","rust-std-x86_64-pc-windows-msvc","rust-std-x86_64-rumprun-netbsd","rust-std-x86_64-unknown-freebsd","rust-std-x86_64-unknown-fuchsia","rust-std-x86_64-unknown-linux-gnu (default)","rust-std-x86_64-unknown-linux-musl","rust-std-x86_64-unknown-netbsd","rustc-x86_64-unknown-linux-gnu (default)",""]
DEBUG: RlsMode: start: enter
DEBUG: RlsMode: start: no RLS executable
DEBUG: RlsMode: start: processPossibleSetButMissingUserToolchain: toolchainKind=nightly toolchain
DEBUG: RlsMode: start: processPossibleSetButMissingUserToolchain: no user nightly toolchain
DEBUG: RlsMode: start: handleMissingRustupUserToolchain: toolchainKind=nightly toolchain
DEBUG: RlsMode: processPossiblyMissingRlsComponents: RLS is installed
DEBUG: RlsMode: processPossiblyMissingRlsComponents: rust-analysis is installed
DEBUG: RlsMode: start: User has not decided whether rustfmt should be used yet
DEBUG: RlsMode: handleMissingValueForUseRustfmt: enter
DEBUG: RlsMode: handleMissingValueForUseRustfmt: User decided to use rustfmt
DEBUG: RlsMode: start: User decided to use rustfmt
DEBUG: RlsMode: start: rlsPath=rustup
DEBUG: RlsMode: start: env={"RUST_SRC_PATH":"/home/samosaara/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src"}
DEBUG: RlsMode: start: args=["run","nightly-x86_64-unknown-linux-gnu","rls"]
DEBUG: RlsMode: start: revealOutputChannelOn=3
DEBUG: RlsMode: start: Language Client Manager: start
DEBUG: RlsMode: start: Language Client Manager: stop
DEBUG: RlsMode: start: Language Client Manager: start
DEBUG: RlsMode: start: Language Client Manager: stop
[So on and so forth same message again for the dozens of times I had to manually restart it]
And this is the RLS error that shows up when I open the diff
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: StringError("URI scheme is not `file`")', /checkout/src/libcore/result.rs:860:4
note: Run with `RUST_BACKTRACE=1` for a backtrace.
[Error - 15:43:51] Connection to server got closed. Server will not be restarted.
It's a RLS issue. Please see https://github.com/rust-lang-nursery/rls/issues/421
Oh ok, Sorry didn't consider checking RLS itself. I tought the extension was missing a check or something before trying to lint a git tab, oh well let's wait for RLS then.