Catégories
Dev

Composer – PHP Fatal error: Allowed memory size exhausted

Toutes les solutions pour résoudre le problème de dépassement mémoire de Composer, qui arrivent encore souvent lors des mises à jour de votre site Laravel par exemple.

Cette erreur peut se produire en particulier lorsque vous mettez à jour de grandes bibliothèques ou des bibliothèques avec de nombreuses dépendances, comme on peut l’avoir avec des projets matures sous Laravel. Composer peut être assez gourmand en mémoire et le paramétrage de la version cliente de PHP pas toujours optimale.

Première approche : être à jour !

Assurez-vous que votre Composer est mis à jour avec la dernière version. Depuis la version 2 de composer, des énormes amélioration sur la charge mémoire, ainsi que sur la rapidité on été réalisée. Un passage en V2 peut rapidement corriger le problème, surtout que la migration est simplicime :

php composer.phar --self-update

Augmentation temporaire de la limite mémoire

Vous pouvez augmenter temporairement la limite de mémoire pour Composer en ajoutant la variable d’environnement de limite de mémoire:

COMPOSER_MEMORY_LIMIT=256MB php composer.phar update


On utilisera le format «256M» pour mégaoctet ou «2G» pour gigaoctet. Vous pouvez également utiliser la valeur «-1» pour ignorer complètement la limite de mémoire.

Augmenter la limite mémoire de PHP

Une autre façon serait d’augmenter la limite de mémoire PHP:

php -d memory_limit=512M composer.phar update

Si après tout ça vous n’arrivez toujours pas à mettre à jour votre Composer. Vous pouvez toujours aller sur la page dédiée sur le site de Composer.

Laisser un commentaire