rust-lang / rust-lang/rust-analyzer

Add a bugreport command

Open
#9,829 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

This command should be something we can point issue reporters to for getting information that is useful for debugging problems. At the very least it should list the following things:

  • extension version
  • server version (and path if not downloaded by the extension)
  • server config
  • panics (and crashes of the proc-macro server) that happened since starting the server the last time including panic message and backtrace

Care must be taken to not include any potentially sensitive information in the common case and make it easily recognizable (and censorable) by the user when unavoidable (maybe some panic messages contain potentially sensitive information like project location).

It may also be nice to have a (by default disabled) option to include more sensitive information like the project repo and commit.

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

The issue names no files or tests. Start by locating how commands are registered and where extension, server configuration, and panic information are stored; then define the safe default output and the opt-in sensitive data boundary. Done means the command produces the requested diagnostic information while clearly exposing or censoring unavoidable sensitive values.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cli, devtools, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.