rust-lang / rust-lang/rust-analyzer

Request failed in remote development(vscode)

Open
#11,139 9 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

A-macro C-bug
Dominant language
Rust
Stars
16.9k
Forks
2.2k
Avg merge
1d 12h
Merged PRs (30d)
72

Description

I often get a "request failed" pop-up prompt in vscode remote development, and the completion and goto definition failed or always loading, but local development does not have this problem. I have tried v0.2.880 and v0.3.882 and had the same problem. The log is as follows

extension version: v0.2.880 and v0.3.882
rustc version: 1.57.0

v0.2.880 Rust Analyzer Language Server log

[Info  - 4:59:48 PM] Connection to server got closed. Server will restart.
[Error - 4:59:48 PM] Request textDocument/definition failed.
Error: Connection got disposed.
	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:29:4406)
	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:34:9492)
	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:36:9144)
	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:39:24418)
	at t (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:36:8852)
	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:14424)
	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:15189)
	at vt (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:3:6159)
	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:14424)
	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:15189)
	at ws.fireClose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:17440)
	at Socket.<anonymous> (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:18992)
	at Socket.emit (events.js:327:22)
	at Pipe.<anonymous> (net.js:673:12)
[Error - 4:59:48 PM] Request textDocument/documentHighlight failed.
Error: Connection got disposed.
	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:29:4406)
	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:34:9492)
	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:36:9144)
	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:39:24418)
	at t (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:36:8852)
	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:14424)
	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:15189)
	at vt (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:3:6159)
	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:14424)
	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:15189)
	at ws.fireClose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:17440)
	at Socket.<anonymous> (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:18992)
	at Socket.emit (events.js:327:22)
	at Pipe.<anonymous> (net.js:673:12)
[Error - 4:59:48 PM] Request textDocument/definition failed.
Error: Connection got disposed.
	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:29:4406)
	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:34:9492)
	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:36:9144)
	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:39:24418)
	at t (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:36:8852)
	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:14424)
	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:15189)
	at vt (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:3:6159)
	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:14424)
	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:15189)
	at ws.fireClose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:17440)
	at Socket.<anonymous> (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:18992)
	at Socket.emit (events.js:327:22)
	at Pipe.<anonymous> (net.js:673:12)

v0.2.880 Rust Analyzer Client log

WARN [12/29/2021, 4:46:02 PM]: LSP request failed {
  method: 'rust-analyzer/inlayHints',
  param: {
    textDocument: {
      uri: 'file:///home/ubuntu/code/rust/geek-course/thumbor/src/main.rs'
    }
  },
  error: [Error: Connection got disposed.
  	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:29:4406)
  	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:34:9492)
  	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:36:9144)
  	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:39:24418)
  	at t (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:36:8852)
  	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:14424)
  	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:15189)
  	at vt (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:3:6159)
  	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:14424)
  	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:15189)
  	at ws.fireClose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:17440)
  	at Socket.<anonymous> (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:2:18992)
  	at Socket.emit (events.js:327:22)
  	at Pipe.<anonymous> (net.js:673:12)]
}
INFO [12/29/2021, 4:55:01 PM]: Extension version: 0.2.880
INFO [12/29/2021, 4:55:01 PM]: Using configuration {
  cargoRunner: null,
  runnableEnv: null,
  inlayHints: {
    enable: true,
    smallerHints: true,
    chainingHints: true,
    maxLength: 25,
    parameterHints: true,
    typeHints: true,
    hideNamedConstructorHints: false
  },
  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: {
    importGranularity: 'crate',
    importEnforceGranularity: false,
    importPrefix: 'plain',
    importGroup: true,
    allowMergingIntoGlobImports: true
  },
  cache: { warmup: true },
  callInfo: { full: true },
  cargo: {
    autoreload: true,
    allFeatures: false,
    unsetTest: [ 'core' ],
    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,
    snippets: {
      'Arc::new': {
        postfix: 'arc',
        body: 'Arc::new(${receiver})',
        requires: 'std::sync::Arc',
        description: 'Put the expression into an `Arc`',
        scope: 'expr'
      },
      'Rc::new': {
        postfix: 'rc',
        body: 'Rc::new(${receiver})',
        requires: 'std::rc::Rc',
        description: 'Put the expression into an `Rc`',
        scope: 'expr'
      },
      'Box::pin': {
        postfix: 'pinbox',
        body: 'Box::pin(${receiver})',
        requires: 'std::boxed::Box',
        description: 'Put the expression into a pinned `Box`',
        scope: 'expr'
      },
      Ok: {
        postfix: 'ok',
        body: 'Ok(${receiver})',
        description: 'Wrap the expression in a `Result::Ok`',
        scope: 'expr'
      },
      Err: {
        postfix: 'err',
        body: 'Err(${receiver})',
        description: 'Wrap the expression in a `Result::Err`',
        scope: 'expr'
      },
      Some: {
        postfix: 'some',
        body: 'Some(${receiver})',
        description: 'Wrap the expression in an `Option::Some`',
        scope: 'expr'
      }
    },
    postfix: { enable: true },
    autoimport: { enable: true },
    autoself: { enable: true }
  },
  diagnostics: {
    enable: true,
    enableExperimental: true,
    disabled: [],
    remapPrefix: {},
    warningsAsHint: [],
    warningsAsInfo: []
  },
  experimental: { procAttrMacros: true },
  files: { watcher: 'client', excludeDirs: [] },
  highlightRelated: {
    references: true,
    exitPoints: true,
    breakPoints: true,
    yieldPoints: true
  },
  highlighting: { strings: true },
  hover: { documentation: true, linksInHover: true },
  hoverActions: {
    debug: true,
    enable: true,
    gotoTypeDef: true,
    implementations: true,
    references: false,
    run: true
  },
  joinLines: {
    joinElseIf: true,
    removeTrailingComma: true,
    unwrapTrivialBlock: true,
    joinAssignments: true
  },
  lens: {
    debug: true,
    enable: true,
    implementations: true,
    run: true,
    methodReferences: false,
    references: false,
    enumVariantReferences: false,
    forceCustomCommands: true
  },
  linkedProjects: [],
  lruCapacity: null,
  notifications: { cargoTomlNotFound: true },
  procMacro: { enable: true, server: null },
  runnables: { overrideCargo: null, cargoExtraArgs: [] },
  rustcSource: null,
  rustfmt: {
    extraArgs: [],
    overrideCommand: null,
    enableRangeFormatting: false
  },
  workspace: { symbol: { search: { scope: 'workspace', kind: 'only_types' } } }
}
INFO [12/29/2021, 4:55:01 PM]: PersistentState: { serverVersion: '0.2.880' }
INFO [12/29/2021, 4:55:01 PM]: Using server binary at /home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/server/rust-analyzer
DEBUG [12/29/2021, 4:55:01 PM]: Checking availability of a binary at /home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/server/rust-analyzer
DEBUG [12/29/2021, 4:55:01 PM]: /home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/server/rust-analyzer --version: {
  status: 0,
  signal: null,
  output: [ null, 'rust-analyzer 68319187d 2021-12-27 stable\n', '' ],
  pid: 128248,
  stdout: 'rust-analyzer 68319187d 2021-12-27 stable\n',
  stderr: ''
}
WARN [12/29/2021, 4:55:17 PM]: LSP request timed out {
  method: 'rust-analyzer/inlayHints',
  param: {
    textDocument: {
      uri: 'file:///home/ubuntu/code/rust/geek-course/thumbor/src/main.rs'
    }
  },
  error: [$i [Error]: canceled by client
  	at Gt (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:4:223)
  	at rn (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:3:6520)
  	at Immediate.<anonymous> (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.2.880/out/main.js:3:6373)
  	at processImmediate (internal/timers.js:461:21)] {
    code: -32800,
    data: undefined
  }
}

v0.3.882 Rust Analyzer Language Server log

[Error - 3:16:13 PM] Request textDocument/codeLens failed.
Error: Connection got disposed.
	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:29:4406)
	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:34:9492)
	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:36:9144)
	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:39:24418)
	at t (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:36:8852)
	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:14424)
	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:15189)
	at vt (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:3:6159)
	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:14424)
	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:15189)
	at ws.fireClose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:17440)
	at Socket.<anonymous> (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:18992)
	at Socket.emit (events.js:327:22)
	at Pipe.<anonymous> (net.js:673:12)

v0.3.882 Rust Analyzer Client log

```prolog
INFO [12/29/2021, 3:01:02 PM]: Extension version: 0.3.882
INFO [12/29/2021, 3:01:02 PM]: Using configuration {
  cargoRunner: null,
  runnableEnv: null,
  inlayHints: {
    enable: true,
    smallerHints: true,
    chainingHints: true,
    maxLength: 25,
    parameterHints: true,
    typeHints: true,
    hideNamedConstructorHints: false
  },
  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: {
    importGranularity: 'crate',
    importEnforceGranularity: false,
    importPrefix: 'plain',
    importGroup: true,
    allowMergingIntoGlobImports: true
  },
  cache: { warmup: true },
  callInfo: { full: true },
  cargo: {
    autoreload: true,
    allFeatures: false,
    unsetTest: [ 'core' ],
    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,
    snippets: {
      'Arc::new': {
        postfix: 'arc',
        body: 'Arc::new(${receiver})',
        requires: 'std::sync::Arc',
        description: 'Put the expression into an `Arc`',
        scope: 'expr'
      },
      'Rc::new': {
        postfix: 'rc',
        body: 'Rc::new(${receiver})',
        requires: 'std::rc::Rc',
        description: 'Put the expression into an `Rc`',
        scope: 'expr'
      },
      'Box::pin': {
        postfix: 'pinbox',
        body: 'Box::pin(${receiver})',
        requires: 'std::boxed::Box',
        description: 'Put the expression into a pinned `Box`',
        scope: 'expr'
      },
      Ok: {
        postfix: 'ok',
        body: 'Ok(${receiver})',
        description: 'Wrap the expression in a `Result::Ok`',
        scope: 'expr'
      },
      Err: {
        postfix: 'err',
        body: 'Err(${receiver})',
        description: 'Wrap the expression in a `Result::Err`',
        scope: 'expr'
      },
      Some: {
        postfix: 'some',
        body: 'Some(${receiver})',
        description: 'Wrap the expression in an `Option::Some`',
        scope: 'expr'
      }
    },
    postfix: { enable: true },
    autoimport: { enable: true },
    autoself: { enable: true }
  },
  diagnostics: {
    enable: true,
    enableExperimental: true,
    disabled: [],
    remapPrefix: {},
    warningsAsHint: [],
    warningsAsInfo: []
  },
  experimental: { procAttrMacros: true },
  files: { watcher: 'client', excludeDirs: [] },
  highlightRelated: {
    references: true,
    exitPoints: true,
    breakPoints: true,
    yieldPoints: true
  },
  highlighting: { strings: true },
  hover: { documentation: true, linksInHover: true },
  hoverActions: {
    debug: true,
    enable: true,
    gotoTypeDef: true,
    implementations: true,
    references: false,
    run: true
  },
  joinLines: {
    joinElseIf: true,
    removeTrailingComma: true,
    unwrapTrivialBlock: true,
    joinAssignments: true
  },
  lens: {
    debug: true,
    enable: true,
    implementations: true,
    run: true,
    methodReferences: false,
    references: false,
    enumVariantReferences: false,
    forceCustomCommands: true
  },
  linkedProjects: [],
  lruCapacity: null,
  notifications: { cargoTomlNotFound: true },
  procMacro: { enable: true, server: null },
  runnables: { overrideCargo: null, cargoExtraArgs: [] },
  rustcSource: null,
  rustfmt: {
    extraArgs: [],
    overrideCommand: null,
    enableRangeFormatting: false
  },
  workspace: { symbol: { search: { scope: 'workspace', kind: 'only_types' } } }
}
INFO [12/29/2021, 3:01:02 PM]: PersistentState: { serverVersion: '0.3.882' }
INFO [12/29/2021, 3:01:02 PM]: Using server binary at /home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/server/rust-analyzer
DEBUG [12/29/2021, 3:01:02 PM]: Checking availability of a binary at /home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/server/rust-analyzer
DEBUG [12/29/2021, 3:01:02 PM]: /home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/server/rust-analyzer --version: {
  status: 0,
  signal: null,
  output: [ null, 'rust-analyzer 355a4bdb8 2021-12-29 nightly\n', '' ],
  pid: 114165,
  stdout: 'rust-analyzer 355a4bdb8 2021-12-29 nightly\n',
  stderr: ''
}
WARN [12/29/2021, 3:06:55 PM]: LSP request failed {
  method: 'rust-analyzer/inlayHints',
  param: {
    textDocument: {
      uri: 'file:///home/ubuntu/code/rust/geek-course/thumbor/src/main.rs'
    }
  },
  error: [Error: Connection got disposed.
  	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:29:4406)
  	at Object.dispose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:34:9492)
  	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:36:9144)
  	at Bp.handleConnectionClosed (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:39:24418)
  	at t (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:36:8852)
  	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:14424)
  	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:15189)
  	at vt (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:3:6159)
  	at Cl.invoke (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:14424)
  	at Xr.fire (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:15189)
  	at ws.fireClose (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:17440)
  	at Socket.<anonymous> (/home/ubuntu/.vscode-server/extensions/matklad.rust-analyzer-0.3.882/out/main.js:2:18992)
  	at Socket.emit (events.js:327:22)
  	at Pipe.<anonymous> (net.js:673:12)]
}

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure in VS Code remote development while comparing it with local development. Inspect the Rust Analyzer Language Server and Client logs around the textDocument/definition, textDocument/documentHighlight, and rust-analyzer/inlayHints requests, including the server binary and extension versions shown. Done means the server remains connected and completion and go-to-definition no longer fail or stay loading.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust, vscode
Domain
devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.