Folgende Fehlermeldung hat mein Composer trotz unbegrenztem Speicher:
composer update Loading composer repositories with package information Updating dependencies (including require-dev) VirtualAlloc() failed: [0x00000008] Zur Verarbeitung dieses Befehls sind nicht gen VirtualAlloc() failed: [0x00000008] Zur Verarbeitung dieses Befehls sind nicht gen Fatal error: Out of memory (allocated 1260388352) (tried to allocate 201326600 bytes) in phar://C:/ProgramData/ComposerSetup/bin/composer.phar/src/Composer/DependencyResolver/RuleSet.php on line 83
Wenn man unter Windows ein composer Update nicht mehr durchführen kann, obwohl man das Memory Limit auf unbegrenzt gesetzt hat, dann hat man ein Problem:
Das Windows-Xammp ist nur als 32 bit System erhältlich und kann nur 2GB Ram bereitstellen im Moment, eine weitere Erhöhung ist nicht möglich.
Die Lösung ist Composer mit einem 64bit PHP auf der Konsole auszuführen (dies hat dann bis zu 4GB Memory).
- Download von PHP x64 Version
- entpacken und php.ini anlegen (umbennnen der php.ini-development)
- memory Limit erhöhen in php.ini: memory_limit = -1
- auf der Konsole ausführen:
"C:\php-7.2.12-nts-Win32-VC15-x64\php" C:\ProgramData\ComposerSetup\bin\composer.phar update