Обновление Symfony с 2.1 до 2.2 Ошибка композитора

Я пытаюсь обновить свой проект с symfony 2.1 до 2.2. Я пытаюсь обновить его пакет за пакетом. Когда я набираю composer.phar update symfony/symfony, я получаю следующую ошибку:

 Problem 1
- Conclusion: don't install symfony/symfony 2.2.x-dev
- Conclusion: don't install symfony/symfony v2.2.0
- Conclusion: don't install symfony/symfony v2.2.0-RC3
- Conclusion: don't install symfony/symfony v2.2.0-RC2
- Installation request for symfony/monolog-bundle == 2.1.9999999.9999999-dev -> satisfiable by symfony/monolog-bundle 2.1.x-dev.
- Conclusion: don't install symfony/symfony v2.2.0-RC1
- Conclusion: don't install symfony/symfony v2.2.0-BETA2
- doctrine/doctrine-bundle v1.2.0-beta1 requires symfony/framework-bundle >=2.2.0-beta2,<2.3-dev -> satisfiable by symfony/symfony 2.2.x-dev, symfony/symfony v2.2.0, symfony/symfony v2.2.0-BETA2, symfony/symfony v2.2.0-RC1, symfony/symfony v2.2.0-RC2, symfony/symfony v2.2.0-RC3, symfony/framework-bundle 2.2.x-dev, symfony/framework-bundle v2.2.0, symfony/framework-bundle v2.2.0-BETA2, symfony/framework-bundle v2.2.0-RC1, symfony/framework-bundle v2.2.0-RC2, symfony/framework-bundle v2.2.0-RC3.
- doctrine/doctrine-bundle 1.2.x-dev requires symfony/framework-bundle >=2.2.0-beta2,<2.3-dev -> satisfiable by symfony/symfony 2.2.x-dev, symfony/symfony v2.2.0, symfony/symfony v2.2.0-BETA2, symfony/symfony v2.2.0-RC1, symfony/symfony v2.2.0-RC2, symfony/symfony v2.2.0-RC3, symfony/framework-bundle 2.2.x-dev, symfony/framework-bundle v2.2.0, symfony/framework-bundle v2.2.0-BETA2, symfony/framework-bundle v2.2.0-RC1, symfony/framework-bundle v2.2.0-RC2, symfony/framework-bundle v2.2.0-RC3.
- don't install symfony/framework-bundle 2.2.x-dev|don't install symfony/symfony v2.2.0-BETA1
- don't install symfony/framework-bundle v2.2.0|don't install symfony/symfony v2.2.0-BETA1
- don't install symfony/framework-bundle v2.2.0-BETA2|don't install symfony/symfony v2.2.0-BETA1
- don't install symfony/framework-bundle v2.2.0-RC1|don't install symfony/symfony v2.2.0-BETA1
- don't install symfony/framework-bundle v2.2.0-RC2|don't install symfony/symfony v2.2.0-BETA1
- don't install symfony/framework-bundle v2.2.0-RC3|don't install symfony/symfony v2.2.0-BETA1
- Installation request for symfony/symfony 2.2.* -> satisfiable by symfony/symfony 2.2.x-dev, symfony/symfony v2.2.0, symfony/symfony v2.2.0-BETA1, symfony/symfony v2.2.0-BETA2, symfony/symfony v2.2.0-RC1, symfony/symfony v2.2.0-RC2, symfony/symfony v2.2.0-RC3.
- Installation request for doctrine/doctrine-bundle 1.2.* -> satisfiable by doctrine/doctrine-bundle 1.2.x-dev, doctrine/doctrine-bundle v1.2.0-beta1.

Мой композитор.json:

{
    "name": "symfony/framework-standard-edition",
    "description": "The \"Symfony Standard Edition\" distribution",
    "autoload": {
        "psr-0": { "": "src/" }
    },
    "require": {
        "php": ">=5.3.3",
        "symfony/symfony": "2.2.*",
        "doctrine/orm": "~2.2,>=2.2.3",
        "doctrine/doctrine-bundle": "1.2.*",
        "twig/extensions": "1.0.*",
        "symfony/assetic-bundle": "2.1.*",
        "symfony/swiftmailer-bundle": "2.2.*",
        "symfony/monolog-bundle": "2.2.*",
        "sensio/distribution-bundle": "2.2.*",
        "sensio/framework-extra-bundle": "2.2.*",
        "sensio/generator-bundle": "2.2.*",
        "jms/security-extra-bundle": "1.4.*",
        "jms/di-extra-bundle": "1.3.*",

        "friendsofsymfony/rest": "0.7.0",
        "friendsofsymfony/rest-bundle": "0.9.0",
        "jms/serializer-bundle": "0.9.0",
        "friendsofsymfony/jsrouting-bundle": "1.0.3",
        "friendsofsymfony/user-bundle": "v1.3.0",
        "knplabs/knp-menu-bundle": "dev-master",
        "knplabs/knp-paginator-bundle": "v2.3",
        "guzzle/guzzle": "dev-master"
    },
    "scripts": {
        "post-install-cmd": [
            "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": [
            "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"
    },
    "minimum-stability": "dev",
    "extra": {
        "symfony-app-dir": "app",
        "symfony-web-dir": "web",
        "branch-alias": {
            "dev-master": "2.3-dev"
        }
    }
}

person Ris90    schedule 21.03.2013    source источник
comment
Я предлагаю вам изменить минимальную стабильность на альфа-версию и заменить версию dev-master на точную версию с @dev posfix. Таким образом, версия knpmenubundle будет 2.0.*@dev.   -  person Vadim Ashikhman    schedule 21.03.2013


Ответы (2)


Вы заблокировали некоторые сторонние пакеты для определенного тега/версии.

"friendsofsymfony/user-bundle": "v1.3.0",

Тег v1.3.0 в этого пакета поддерживает только Symfony 2.1.*.

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

Строка выше должна выглядеть так

"friendsofsymfony/user-bundle": "v1.3.1",

Вы можете увидеть требования тега v1.3.1 в файле composer.json комплект.

Вы также можете использовать тег dev-master, но это может вызвать проблемы, если вы не планируете регулярно обновлять Symfony.

person Thomas Potaire    schedule 22.03.2013
comment
Да, ты прав. Теперь я столкнулся со следующей ошибкой: служба jms_serializer.metadata_driver зависит от несуществующей доктрины службы. В composer.json: doctrine/doctrine-bundle: 1.2.*@alpha, jms/serializer-bundle: 0.12.* - person Ris90; 22.03.2013
comment
Вы пробовали без @alpha? Вы уверены, что Doctrine включена в AppKernel.php? - person Thomas Potaire; 22.03.2013

У меня точно такая же проблема. Я изменил запись композитора для пакета доктрины на

"doctrine/doctrine-bundle": "1.2.*@alpha",

потому что это причина, по которой флаг общей стабильности установлен на альфа-канал в соответствии с: http://symfony.com/blog/symfony-2-2-0 .

Но теперь у меня все еще есть это сообщение при обновлении пакетов:

Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for doctrine/doctrine-bundle 1.2.*@alpha -> satisfiable by doctrine/doctrine-bundle v1.2.0-beta1.
    - Conclusion: don't install symfony/symfony 2.2.x-dev
    - Conclusion: don't install symfony/symfony v2.2.0
    - Conclusion: don't install symfony/symfony v2.2.0-RC3
    - Conclusion: don't install symfony/symfony v2.2.0-RC2
    - Installation request for bcc/resque-bundle v1.0 -> satisfiable by bcc/resque-bundle v1.0.
    - Conclusion: don't install symfony/symfony v2.2.0-RC1
    - Conclusion: don't install symfony/symfony v2.2.0-BETA2
    - doctrine/doctrine-bundle v1.2.0-beta1 requires symfony/framework-bundle >=2.2.0-beta2,<2.3-dev -> satisfiable by symfony/symfony 2.2.x-dev, symfony/symfony v2.2.0, symfony/symfony v2.2.0-BETA2, symfony/symfony v2.2.0-RC1, symfony/symfony v2.2.0-RC2, symfony/symfony v2.2.0-RC3, symfony/framework-bundle 2.2.x-dev, symfony/framework-bundle v2.2.0, symfony/framework-bundle v2.2.0-BETA2, symfony/framework-bundle v2.2.0-RC1, symfony/framework-bundle v2.2.0-RC2, symfony/framework-bundle v2.2.0-RC3.
    - don't install symfony/framework-bundle 2.2.x-dev|don't install symfony/symfony v2.2.0-BETA1
    - don't install symfony/framework-bundle v2.2.0|don't install symfony/symfony v2.2.0-BETA1
    - don't install symfony/framework-bundle v2.2.0-BETA2|don't install symfony/symfony v2.2.0-BETA1
    - don't install symfony/framework-bundle v2.2.0-RC1|don't install symfony/symfony v2.2.0-BETA1
    - don't install symfony/framework-bundle v2.2.0-RC2|don't install symfony/symfony v2.2.0-BETA1
    - don't install symfony/framework-bundle v2.2.0-RC3|don't install symfony/symfony v2.2.0-BETA1
    - Installation request for symfony/symfony 2.2.* -> satisfiable by symfony/symfony 2.2.x-dev, symfony/symfony v2.2.0, symfony/symfony v2.2.0-BETA1, symfony/symfony v2.2.0-BETA2, symfony/symfony v2.2.0-RC1, symfony/symfony v2.2.0-RC2, symfony/symfony v2.2.0-RC3.

Я действительно не понимаю, в чем реальная проблема из-за этих сообщений об ошибках.

person dirkaholic    schedule 21.03.2013
comment
У меня были проблемы с обновлением из-за дополнительных пакетов. Их тоже необходимо обновить. Теперь у меня проблемы с кешем: очистить. Служба jms_serializer.metadata_driver зависит от несуществующей доктрины службы. - person Ris90; 21.03.2013