Обновление композитора дает ошибку

0

Всякий раз, когда я запускаю обновление для композитора, он дает мне следующее:

Loading composer repositories with package information

Updating dependencies (including require-dev)
Generating autoload files
Updating the "app/config/parameters.yml" file



  [Symfony\Component\DependencyInjection\Exception\OutOfBoundsException]  
  The index "4" is not in the range [0, 3].                               



Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache handling the post-update-cmd event terminated with an exception



  [RuntimeException]                                                         
  An error occurred when executing the "'cache:clear --no-warmup'" command.  



Exception trace:
 () at /var/www/api.agorafy.com/trunk/vendor/sensio/distribution-bundle/Sensio/Bundle/DistributionBundle/Composer/ScriptHandler.php:190
 Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::executeCommand() at /var/www/api.agorafy.com/trunk/vendor/sensio/distribution-bundle/Sensio/Bundle/DistributionBundle/Composer/ScriptHandler.php:62
 Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::clearCache() at phar:///usr/local/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:206
 Composer\EventDispatcher\EventDispatcher->executeEventPhpScript() at phar:///usr/local/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:174
 Composer\EventDispatcher\EventDispatcher->doDispatch() at phar:///usr/local/bin/composer/src/Composer/EventDispatcher/EventDispatcher.php:120
 Composer\EventDispatcher\EventDispatcher->dispatchCommandEvent() at phar:///usr/local/bin/composer/src/Composer/Installer.php:336
 Composer\Installer->run() at phar:///usr/local/bin/composer/src/Composer/Command/UpdateCommand.php:136
 Composer\Command\UpdateCommand->execute() at phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Command/Command.php:252
 Symfony\Component\Console\Command\Command->run() at phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:874
 Symfony\Component\Console\Application->doRunCommand() at phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:195
 Symfony\Component\Console\Application->doRun() at phar:///usr/local/bin/composer/src/Composer/Console/Application.php:146
 Composer\Console\Application->doRun() at phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:126
 Symfony\Component\Console\Application->run() at phar:///usr/local/bin/composer/src/Composer/Console/Application.php:83
 Composer\Console\Application->run() at phar:///usr/local/bin/composer/bin/composer:43
 require() at /usr/local/bin/composer:25


update [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--lock] [--no-plugins] [--no-custom-installers] [--no-autoloader] [--no-scripts] [--no-progress] [--with-dependencies] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [--ignore-platform-reqs] [--prefer-stable] [--prefer-lowest] [packages1] ... [packagesN]

Я не могу это решить Я пробовал следующие вещи:

  1. Очистите кеш перед запуском обновления.
  2. Удалите папку bin и vendor, затем запустите обновление композитора.
  3. перезапуск системы.
  4. удалить APC (не уверен в этом, но удаленный apc) Пожалуйста, помогите по этой проблеме.

Мой Composer.json:

{
    "name": "symfony/framework-standard-edition",
    "license": "MIT",
    "type": "project",
    "description": "The \"Symfony Standard Edition\" distribution",
    "autoload": {
        "psr-0": { "": "src/" }
    },
    "require": {
        "php":                                      ">=5.3.3",
        "symfony/symfony":                          "~2.4",
        "doctrine/orm":                             "~2.2,>=2.2.3",
        "doctrine/doctrine-bundle":                 "~1.2",
        "twig/extensions":                          "~1.0",
        "symfony/assetic-bundle":                   "~2.3",
        "symfony/swiftmailer-bundle":               "~2.3",
        "symfony/monolog-bundle":                   "~2.4",
        "sensio/distribution-bundle":               "~2.3",
        "sensio/framework-extra-bundle":            "~3.0",
        "sensio/generator-bundle":                  "~2.3",
        "incenteev/composer-parameter-handler":     "2.1.*@dev",
        "jms/di-extra-bundle":                      "1.5.*@dev",
        "friendsofsymfony/rest-bundle":             "1.4.*@dev",
        "nelmio/api-doc-bundle":                    "2.5.*@dev",
        "willdurand/hateoas-bundle":                "1.0.*@dev",
        "hautelook/templated-uri-bundle":           "1.0.*@dev",
        "willdurand/rest-extra-bundle":             "1.0.*@dev",
        "escapestudios/wsse-authentication-bundle": "2.3.x-dev",
        "knplabs/gaufrette":                        "dev-master",
        "knplabs/knp-gaufrette-bundle":             "dev-master",
        "amazonwebservices/aws-sdk-for-php":        "dev-master",
        "cybernox/amazon-webservices-bundle":       "dev-master",
        "escapestudios/wsse-authentication-bundle": "2.3.x-dev",
        "doctrine/doctrine-fixtures-bundle":        "2.2.*",
        "symfony/filesystem":                       "2.5.*@dev",
        "snc/redis-bundle":                         "1.1.x-dev",
        "predis/predis":                            "0.8.x-dev",
        "hwi/oauth-bundle":                         "0.4.*@dev"
    },
    "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"
        ],
        "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"
        ]
    },
    "config": {
        "bin-dir": "bin",
        "discard-changes": true
    },
    "extra": {
        "symfony-app-dir": "app",
        "symfony-web-dir": "web",
        "incenteev-parameters": {
            "file": "app/config/parameters.yml"
        },
        "branch-alias": {
            "dev-master": "2.4-dev"
        }
    }
}

РЕДАКТИРОВАТЬ

services.yml

parameters:
    application_p_api.userprovider.class: Application\PApiBundle\Provider\UserProvider
    application_p_api.amazon_s3.class: AmazonS3
    application_p_api.file_uploader.class: Application\PApiBundle\Services\FileUploader
    application_p_api.tsession.class: Application\PApiBundle\Services\TSSession

services:
    service.s3nfs:
        class: Application\PApiBundle\Services\s3nfs
        arguments: [@service_container]

    application_p_api.amazon_s3:
        class: %application_p_api.amazon_s3.class%
        arguments: 
            - { key: %aws_key%, secret: %aws_secret% }
    amazon_api_service: "@application_p_api.amazon_s3" #alias to application_p_api.amazon_s3 service

    application_p_api.file_uploader:
        class: %application_p_api.file_uploader.class%
        arguments: [@file_uploader_filesystem, @service_container]

    application_p_api.mailer:
        class: Application\PApiBundle\Services\MailsSender
        arguments: ['@service_container', '@mailer', '@twig']
        public: true
    mails_sender: "@application_p_api.mailer"   #alias to application_p_api.mailer service

    application_p_api.tsession:
        class: Application\PApiBundle\Services\TSSession
        arguments: [@service_container]

    #Form Validator Services
    p_api_contact_email_validator:
        class: Application\PApiBundle\Validator\Constraints\ContactEmailValidator
        arguments: [@doctrine.orm.read_only_entity_manager]
        tags:
            - { name: validator.constraint_validator, alias: contact_email_validator }

    p_api_not_user_email_validator:
        class: Application\PApiBundle\Validator\Constraints\NotUserEmailValidator
        arguments: [@doctrine.orm.read_only_entity_manager]
        tags:
            - { name: validator.constraint_validator, alias: not_user_email_validator }

    p_api_not_pending_user_email_validator:
        class: Application\PApiBundle\Validator\Constraints\NotPendingUserEmailValidator
        arguments: [@doctrine.orm.read_only_entity_manager]
        tags:
            - { name: validator.constraint_validator, alias: not_pending_user_email_validator }

    p_api_password_requirements_validator:
        class: Application\PApiBundle\Validator\Constraints\PasswordStrengthValidator
        arguments: ~
        tags:
            - { name: validator.constraint_validator, alias: password_requirements_validator }

Остальная часть кода находится здесь: https://github.com/jbpashu/composer-error-analysis-code

При необходимости посмотрите.

  • 0
    Это все еще происходит, если вы удаляете каталоги cache/* вручную?
  • 0
    да, я уже пробовал кеш: очищать и удалять папки вручную.
Показать ещё 3 комментария
Теги:
dependency-injection
composer-php

2 ответа

1

Используйте эту команду, чтобы увидеть подробную ошибку:

$ composer update -vvv

Я думаю, что у вас есть проблема в настройке одной из ваших сервисов, где вы устанавливаете еще один аргумент, чем ожидаемый (это может произойти, если вы измените определение службы в файле расширения или в проходе компилятора, например).

Это также может быть проблемой совместимости с одним из пакетов. Не забудьте сделать следующее, чтобы иметь последнюю версию Composer, прежде чем выполнять composer update вашего composer update:

$ sudo composer self-update
  • 0
    Я забыл упомянуть, что уже запускается самообновление композитора и -vvv не помогает. нет дополнительной информации об ошибке :(
  • 0
    Если у вас есть некоторые сервисы, можете ли вы дать мне их конфигурацию ( Resources/config/services.yml ), а затем содержимое вашего файла расширения ( DependencyInjection/...Extension.php ) и компилятор, который у вас есть (все файлы в DependencyInjection/Compiler/ ).
Показать ещё 6 комментариев
0

Вы пытались сделать redis-cli flushall перед composer update?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню