Symfony 3.3.18: Composer Update/Install/Require fire => Недостаточно памяти

Я пытаюсь обновить проект с Symfony 3.3. Я получил эту ошибку, когда запускаю обновление композитора, установку композитора после удаления composer.lock и требуется композитор.

Неустранимая ошибка PHP: Недостаточно памяти (выделено 1601437696) (попытка выделить 268435456 байт) в phar://C:/Users/bbarhoum/Documents/ComposerSetup/bin/composer.phar/src/Composer/DependencyResolver/Solver.php на строка 223

Это мой composer.json:

{
    "name" : "symfony/framework-standard-edition",
    "license" : "MIT",
    "type" : "project",
    "description" : "The \"Symfony Standard Edition\" distribution",
    "autoload" : {
        "psr-0" : {
            "Detection" : "vendor/mobile-detect/namespaced"
        },
        "psr-4" : {
            "" : "src/"
        },
        "classmap" : [
            "app/AppKernel.php",
            "app/AppCache.php"
        ],
        "files" : [
            "vendor/wsdlwriter/classes/WsdlDefinition.php",
            "vendor/wsdlwriter/classes/WsdlWriter.php",
            "vendor/php-ga/src/autoload.php",
            "vendor/phpunit-selenium/PHPUnit/Extensions/SeleniumTestCase/Autoload.php",
            "vendor/htmlpurifier/library/HTMLPurifier.auto.php"
        ]
    },
    "require" : {
        "php" : ">=5.5.9",
        "symfony/symfony" : "3.3.*",
        "doctrine/orm" : "^2.5",
        "doctrine/doctrine-bundle" : "^1.6",
        "doctrine/doctrine-cache-bundle" : "^1.2",
        "symfony/swiftmailer-bundle" : "^2.3",
        "symfony/assetic-bundle" : "^2.3",
        "symfony/monolog-bundle" : "^3.0",
        "symfony/polyfill-apcu" : "^1.0",
        "sensio/distribution-bundle" : "^5.0",
        "sensio/framework-extra-bundle" : "^3.0.2",
        "incenteev/composer-parameter-handler" : "^2.0",
        "elasticsearch/elasticsearch" : "~5.0",
        "white-october/pagerfanta-bundle": "^1.2",
        "jasig/phpcas" : "1.3.5"
    },
    "require-dev" : {
        "sensio/generator-bundle" : "^3.0",
        "symfony/phpunit-bridge" : "^3.0",
        "doctrine/doctrine-fixtures-bundle" : "2.3.0",
        "phpunit/phpunit" : "5.5.*"
    },
    "scripts" : {
        "post-install-cmd" : [
            "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::removeSymfonyStandardFiles",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
        ],
        "post-update-cmd" : [
            "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::removeSymfonyStandardFiles",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
        ]
    },
    "config" : {
        "bin-dir" : "bin",
        "platform" : {
            "php" : "5.6.28"
        }
    },
    "minimum-stability" : "stable",
    "extra" : {
        "symfony-app-dir" : "app",
        "symfony-bin-dir" : "bin",
        "symfony-web-dir" : "web",
        "symfony-assets-install" : "relative",
        "incenteev-parameters" : {
            "file" : "app/config/parameters.yml"
        },
        "branch-alias" : {
            "dev-master" : "3.2-dev"
        }
    }
}

Диагноз композитора:

Checking platform settings: OK 
Checking git settings: OK 
Checking http connectivity to packagist: OK 
Checking https connectivity to packagist: OK 
Checking HTTP proxy: OK 
Checking HTTP proxy support for request_fulluri: OK 
Checking HTTPS proxy support for request_fulluri: OK 
Checking github.com rate limit: OK 
Checking disk free space: OK 
Checking pubkeys: Tags Public Key Fingerprint: 57815BA2 7E54DC31 7ECC7CC5 573090D0  87719BA6 8F3BB723 4E5D42D0 84A14642 Dev Public Key Fingerprint: 4AC45767 E5EC2265 2F0C1167 CBBB8A2B  0C708369 153E328C AD90147D AFE50952 OK Checking composer version: OK 
Composer version:1.9.3 
PHP version: 5.6.28 - Package overridden via config.platform (actual: 5.6.30)

person Bilel BARHOUMI    schedule 06.03.2020    source источник
comment
С какой версией PHP вы используете композитор? Вы пытались сузить ограничения версии? Например, вы можете прикрепить symfony/symfony к v3.3.18, так как данное ограничение версии никогда не будет разрешено для более поздней версии (поскольку 3.3 не поддерживается с июля 2018 года — это означает ошибки безопасности на packagist.org/packages/symfony/symfony/ никогда не будет исправляться, так что вам следует подумать об обновлении!)   -  person Nico Haase    schedule 06.03.2020
comment
Версия PHP: 5.6.30 Я пытался исправить весь пакет с точной версией, но это не работает.   -  person Bilel BARHOUMI    schedule 06.03.2020
comment
Вы можете попробовать запустить композитор, используя более новую версию PHP — настройка вашей платформы позаботится о том, чтобы не устанавливать несовместимые пакеты. Кроме того, вы должны запланировать обновление PHP довольно скоро. PHP 5.6 больше не получает обновлений больше года, а PHP 7 намного быстрее (также для Composer)   -  person Nico Haase    schedule 06.03.2020


Ответы (1)


Попробуйте запустить команду, удалив ограничение памяти PHP.

php -d memory_limit=-1 composer update

Возможно, вам придется использовать абсолютный путь для исполняемого файла composer.

Если это не работает, проверьте, предназначена ли ваша версия PHP для x86 или x64, и, если возможно, измените ее на версию x64.

Также убедитесь, что у вас установлена ​​последняя версия композитора, так как это улучшит производительность. composer self-update

Надеюсь, это поможет, как это было для меня много раз.

person alexcm    schedule 06.03.2020