Rustup tight integration #243
Description
Currently there are the following opened issues: #242, #238, #231, #225, #187.
I am going to reform an approach I have chosen.
At the first iteration, I am going to remove updating rustup since it is useless most time.
At the second iteration, I am going to reform how the extension checks if some path belongs to rustup.
Currently it checks if the result of rustc --print=sysroot
contains ".rustup"
. I made the wrong assumption because some people has it differently.
It will use rustup run nightly rustc --print=sysroot
.
At this point those who don't use the nightly toolchain will show an error message saying that the nightly toolchain is not installed.
It will check with rustup component list --toolchain nightly
.
It will install with rustup component install rls --toolchain nightly
.
At the third iteration, I am going to make the extension install the nightly toolchain.
At this point users who have Rustup will no longer have any issues.
At the fourth iteration, I am going to make the extension install Rustup.
At the fifth iteration, I am going to make the extension offer a user to choose which way one wants the extension to run.
Let me know if you want something to be done differently.