microsoft / microsoft/vscode-java-debug

toString() Object View should catch exceptions, or default to false

Aperta
#1,297 8 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

ai-triaged bug enhancement evaluation ux variables
Lingua principale
TypeScript
Stelle
591
Fork
429
Merge medio
1g 9h
PR unite (30g)
19

Descrizione

When using the vscode java debugger, the experience can be really bad because some variables cannot be inspected seemingly for no reason. This gives the impression that the extension is still very buggy. It took me a long time to find out that disabling the toString() Object View solves that problem.

Likely there are exceptions thrown during toString() execution for those variables. These should either be caught, or the default for "Enable toString() Object View" should be false.

Environment
  • Operating System: MacOS Ventura 13.2
  • JDK version: debugee is OpenJDK Runtime Environment Homebrew (build 11.0.18+0)
  • Visual Studio Code version: 1.75.1 (Universal) Commit: 441438abd1ac652551dbe4d408dfcec8a499b8bf
  • Java extension version: v1.14.0
  • Java Debugger extension version: 0.48.0 - 2023-02-01
Steps To Reproduce
  1. set a breakpoint and look at Variables View, where some variables cannot be inspected
    image
  2. set "Enable toString() Object View" to false
    image
  3. Now the variables can be expanded:
    image
Current Result

Some variables cannot be inspected

Expected Result

It should be possible to inspect all variables, regardless of whether their toString() method throws an exception

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

L'issue non indica alcun file sorgente, test o punto di ingresso; riproducila nella Variables View con Enable toString() Object View abilitato, quindi traccia il percorso di valutazione di toString() del debugger. Il lavoro è completato quando ogni variabile rimane espandibile e ispezionabile anche se il suo toString() genera un'eccezione, e il comportamento è coperto da un apposito test di regressione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java, typescript, vscode
Ambito
devtools
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
42/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.