rust-analyzer/rust-analyzer.github.io

Provide clear instructions for version identification in VS Code

shoffmeister opened this issue · 2 comments

Please provide clear instructions for version identification for rust-analyzer components in VS Code.

I believe that the "correct" way to identify rust-analyzer as it is used in "my" instance of Visual Code is to View -> Open View -> Output and, there, pick the "Rust Analyzer Client" component from the drop-down.

This then yields the information block below, including the Visual Studio Code extension version (here: 0.3.566-nightly) and some identifier for the rust-analyzer binary (here: rust-analyzer 2021-04-19-66-g70fe7a451) which I gather is subject to tweaking right now (rust-lang/rust-analyzer#8571)

FWIW, while I create this issue here for the website, I wonder whether linking from the VS Code extension's About page directly to such documentation would help? After all, this is a fast-moving project (nightlies, and I see the commit traffic); good version information will help.

INFO [4/21/2021, 6:06:31 AM]: Extension version: 0.3.566-nightly
INFO [4/21/2021, 6:06:31 AM]: Using configuration {
  cargoRunner: null,
  runnableEnv: null,
  inlayHints: {
    enable: true,
    chainingHints: true,
    maxLength: 25,
    parameterHints: true,
    typeHints: true
  },
  updates: { channel: 'nightly', askBeforeDownload: true },
  server: { path: null, extraEnv: null },
  trace: { server: 'off', extension: true },
  debug: {
    engine: 'auto',
    sourceFileMap: {
      '/rustc/<id>': '${env:USERPROFILE}/.rustup/toolchains/<toolchain-id>/lib/rustlib/src/rust'
    },
    openDebugPane: false,
    engineSettings: {}
  },
  assist: {
    importMergeBehavior: 'full',
    importPrefix: 'plain',
    importGroup: true
  },
  callInfo: { full: true },
  cargo: {
    autoreload: true,
    allFeatures: true,
    features: [],
    runBuildScripts: true,
    useRustcWrapperForBuildScripts: true,
    noDefaultFeatures: false,
    target: null,
    noSysroot: false
  },
  checkOnSave: {
    enable: true,
    allFeatures: null,
    allTargets: true,
    command: 'check',
    noDefaultFeatures: null,
    target: null,
    extraArgs: [],
    features: null,
    overrideCommand: null
  },
  completion: {
    addCallArgumentSnippets: true,
    addCallParenthesis: true,
    postfix: { enable: true },
    autoimport: { enable: true }
  },
  diagnostics: {
    enable: true,
    enableExperimental: true,
    disabled: [],
    warningsAsHint: [],
    warningsAsInfo: []
  },
  files: { watcher: 'client', excludeDirs: [] },
  hoverActions: {
    debug: true,
    enable: true,
    gotoTypeDef: true,
    implementations: true,
    run: true,
    linksInHover: true
  },
  lens: {
    debug: true,
    enable: true,
    implementations: true,
    run: true,
    methodReferences: true,
    references: true
  },
  linkedProjects: [],
  lruCapacity: null,
  notifications: { cargoTomlNotFound: true },
  procMacro: { enable: true, server: null },
  runnables: { overrideCargo: null, cargoExtraArgs: [] },
  rustcSource: null,
  rustfmt: { extraArgs: [], overrideCommand: null }
}
INFO [4/21/2021, 6:06:31 AM]: PersistentState: {
  lastCheck: 1618977860393,
  releaseId: 41747331,
  serverVersion: '0.3.566-nightly'
}
INFO [4/21/2021, 6:06:31 AM]: Using server binary at /home/stefan/.config/Code/User/globalStorage/matklad.rust-analyzer/rust-analyzer-x86_64-unknown-linux-gnu
DEBUG [4/21/2021, 6:06:31 AM]: Checking availability of a binary at /home/stefan/.config/Code/User/globalStorage/matklad.rust-analyzer/rust-analyzer-x86_64-unknown-linux-gnu
DEBUG [4/21/2021, 6:06:31 AM]: /home/stefan/.config/Code/User/globalStorage/matklad.rust-analyzer/rust-analyzer-x86_64-unknown-linux-gnu --version: {
  status: 0,
  signal: null,
  output: [ null, 'rust-analyzer 2021-04-19-66-g70fe7a451\n', '' ],
  pid: 3156,
  stdout: 'rust-analyzer 2021-04-19-66-g70fe7a451\n',
  stderr: ''
}

Hm, stumbled over https://rust-analyzer.github.io/manual.html#troubleshooting - that's six pages down from the top of the page, no Table of Contents entry...

Perhaps all it takes is making "Troubleshooting" more prominent? A dedicated ToC entry, waaaay at the top?

RTFM is all nice and well, but a reality check (also with myself) suggests that the attention span is gone after 140 characters. Modern times.