Abrir Settings › Plugins tomaba casi un segundo
- Causa
- Para cada plugin instalado, la página volvía a armar los mapas de plugins y de módulos y recorría las dependencias de todos los plugins esenciales, en el hilo de interfaz. El costo crece con el cuadrado del número de plugins instalados, y el código ya tenía un FIXME al respecto.
- Intervención
- Calcular una sola vez, por conjunto de plugins, cuáles requieren los plugins esenciales, y buscar cada plugin en ese conjunto. La caché se descarta cuando se reemplaza el conjunto de plugins.
- Resultado
- Con 158 plugins cargados, la página tardaba entre 689–931 ms en abrir. Un solo recorrido más una consulta por plugin toma 8–22 ms y da la misma respuesta para los 158.
Ticket y test de mediciónPull request #3701