flutter / flutter/devtools

Consider alternative algorithm for selecting node after auto-refreshing the inspector tree

Aperta
#8,481 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
inspector-2.0-polish P3 screen: inspector
Lingua principale
Dart
Stelle
1.7k
Fork
404
Merge medio
6g 17h
PR unite (30g)
18

Descrizione

Currently we walk up the tree from the previously selected node until we find the first unchanged ancestor. Then, we walk down the new tree from that ancestor until we find the first node matching the description of the previously selected node, or if we can't find any nodes matching the description, we select the first unchanged ancestor.

Instead, we could keep track of the path (as a linked list) from the previously selected node to the first unchanged ancestor, then use a variation of a path finding algorithm to walk down the path, including searching down paths where a node might have changed or been renamed. Note that this would be slightly less performant than the current approach.

Marking this as P3, can bump the priority if we decide this is a necessary improvement.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia tracciando la logica di selezione dell'auto-refresh dell'albero dell'inspector e documentando come attualmente risale fino a un antenato invariato e cerca un nodo corrispondente. Confronta questo comportamento con la ricerca del percorso proposta tramite una lista collegata, inclusi i nodi rinominati o modificati; il lavoro è completato quando il comportamento di selezione e il compromesso in termini di prestazioni sono sufficientemente compresi da poter scegliere un approccio.

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

Valutazione

Stack tecnologico
dart
Ambito
devtools
Tipo di issue
Refactoring
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.