Optimisation de la gestion mémoire lors du phrasage des dépots
Les dépôts, en particulier le legacy, peuvent être gros, et leur parsing entraine facilement une fatale pour cause de memory limit. On procède à quelques optimisations, notamment :
- en évitant de multiplier les copies du contenu texte du depots (que l'on avait jusqu'à 4 fois en mémoire)
- en évitant de tout parser si on a activé
_DEV_VERSION_SPIP_COMPAT(ce qui provoquait souvent des timeout sur les versions de dev locales) : il faut rester en mode runtime, mais simplement prendre en compte la constante dans le md5
Avant cette PR, le parsing du archives.xml legacy finissait avec 89Mo d'occupation mémoire sur une version dev (utilisant donc la constante _DEV_VERSION_SPIP_COMPAT), et avec ces modifs on finit à 27Mo.
A noter qu'on utilise quand même plus que ça, car si le fichier cache .md5.txt n'est pas vide on commence par le stocker en mémoire, ce qui est une nouvelle copie des données, il nous faut donc environ 38Mo pour parser le archives.xml legacy de 9Mo