Provide clearer instructions regarding setting the toolchain #383
Description
Version of VSCode: 1.24.0
Version of the extension: 0.4.2
OS: MacOS High Sierra
Description
As a newbie to Rust, I got confused about what I was supposed to do to set the toolchain. I initially tried "rust.rustup.toolchain": "nightly"
, setting the absolute path to all the tools and more before realizing, oh, it's a dictionary after I open up the project's configuration. Even then it took me a while to realize the value expected is the complete string as output by rustup toolchain list
.
My suggestion is that in legacy mode, if the user has not set their toolchain, the message shown should tell the user how they are to configure the toolchain; where to obtain it and where to set it.
On a somewhat related note: Some configuration items (like rust.rustup
) are currently set to null by default. If set to an empty dictionary or better yet, a dictionary with all the keys and null values, it would serve as a useful hint about the structure of the configuration. (should this be a separate issue?)
Output of the "Rust logging" channel
DEBUG: Rustup: updateToolchains: this.toolchains=[{"channel":"stable","host":"x86_64-apple-darwin","isDefault":false},{"channel":"nightly","host":"x86_64-apple-darwin","isDefault":true}]
DEBUG: activate: processPossibleSetButMissingUserToolchain: toolchainKind=toolchain
DEBUG: activate: processPossibleSetButMissingUserToolchain: no user toolchain
DEBUG: activate: handleMissingRustupUserToolchain: toolchainKind=toolchain
and the following dialog was shown:
Activity