Graph viewer: empty pane with no feedback on large graphs

Aperta
#1,334 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

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

Direzione di ricerca

Inizia riproducendo il problema nell’estensione VS Code con la query CodeQL fornita, variando 9999 per trovare la soglia delle dimensioni del grafo, e controlla il log dell’estensione. Il lavoro è completato quando i grafi di grandi dimensioni vengono visualizzati oppure il viewer fornisce un feedback sugli errori utile, preservando al contempo l’accesso tramite tabella ai risultati grezzi di archi e nodi; l’esportazione .dot richiesta è un’alternativa opzionale.

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

Descrizione

bug VSCode

When running graph queries that produce large graphs, the graph viewer in the extension just shows the CodeQL Query Results pane as an empty space, and I get no error feedback, even in the extension log.

Here's a query that reproduces the problem for me. You can change the value 9999 up or down to increase/decrease the size of the resulting graph.

/**
 * @kind graph
 * @id foo
 */
class Node extends int {
  Node() { this = [1 .. 9999] }
}

query predicate nodes(Node node, string attr, string val) {
  attr = ["semmle.label", "semmle.order"] and
  val = node.toString()
}

query predicate edges(Node a, Node b, string attr, string val) {
  b / 5 = a and
  (
    attr = "semmle.label" and val = ""
    or
    attr = "semmle.order" and val = b.toString()
  )
}

And here's what I see when I run that:

Screenshot 2022-05-04 at 16 11 54

Ideally, the graph would actually be rendered.

Failing that, I would like to see some kind of error feedback, and the ability to still view the raw edges and nodes results in table format. It might even be nice to give the option to just save a .dot file that I could manually run through graphviz.

Lingua principale
TypeScript
Stelle
539
Fork
240
Merge medio
2g 6h
PR unite (30g)
29

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.

Altre issue di github/vscode-codeql

Tutte le issue di github/vscode-codeql

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.