Я потратил несколько дней, пытаясь разобраться с депилами в Symfony 2.0.15. Я не могу найти совместимый список пакетов, и я преследовал коммиты вокруг github, пытаясь следовать цепочке изменений без BC, чтобы получить список версий, которые работают для меня. В конце концов я решил отказаться от работы и доработать композитору, только чтобы обнаружить, что для ядра ядра Doctrine требуется Symfony 2.1, но некоторые из других наборов Doctrine требуют Symfony < 2.1, и в итоге я тоже отказался от этого.Какая версия DoctrineBundle работает с Symfony 2.0.15?
Может ли кто-нибудь со следующими пучками установить, пожалуйста, дайте мне знать, какие стабильные версии они используют с их deps.lock?
[symfony]
git=http://github.com/symfony/symfony.git
version=v2.0.15
[twig]
git=http://github.com/fabpot/Twig.git
version=v1.8.2
[monolog]
git=http://github.com/Seldaek/monolog.git
version=1.0.2
[doctrine-common]
git=http://github.com/doctrine/common.git
version=2.1.4
[doctrine-dbal]
git=http://github.com/doctrine/dbal.git
version=2.1.7
[doctrine]
git=http://github.com/doctrine/doctrine2.git
version=2.1.7
[swiftmailer]
git=http://github.com/swiftmailer/swiftmailer.git
version=v4.1.7
[assetic]
git=http://github.com/kriswallsmith/assetic.git
version=cc2e9adb744df0704a5357adc1cf9287c427420f
[twig-extensions]
git=http://github.com/fabpot/Twig-extensions.git
[metadata]
git=http://github.com/schmittjoh/metadata.git
version=1.0.0
[SensioFrameworkExtraBundle]
git=http://github.com/sensio/SensioFrameworkExtraBundle.git
target=/bundles/Sensio/Bundle/FrameworkExtraBundle
version=origin/2.0
[JMSSecurityExtraBundle]
git=http://github.com/schmittjoh/JMSSecurityExtraBundle.git
target=/bundles/JMS/SecurityExtraBundle
version=origin/1.0.x
[SensioDistributionBundle]
git=http://github.com/sensio/SensioDistributionBundle.git
target=/bundles/Sensio/Bundle/DistributionBundle
version=origin/2.0
[SensioGeneratorBundle]
git=http://github.com/sensio/SensioGeneratorBundle.git
target=/bundles/Sensio/Bundle/GeneratorBundle
version=origin/2.0
[AsseticBundle]
git=http://github.com/symfony/AsseticBundle.git
target=/bundles/Symfony/Bundle/AsseticBundle
version=v1.0.1
[doctrine-mongodb]
git=http://github.com/doctrine/mongodb.git
[doctrine-mongodb-odm]
git=http://github.com/doctrine/mongodb-odm.git
[DoctrineMongoDBBundle]
git=http://github.com/doctrine/DoctrineMongoDBBundle.git
target=/bundles/Symfony/Bundle/DoctrineMongoDBBundle
version=v2.0.1
[DoctrineMigrationsBundle]
git=https://github.com/doctrine/DoctrineMigrationsBundle.git
target=/bundles/Symfony/Bundle/DoctrineMigrationsBundle
version=origin/2.0
[doctrine-migrations]
git=http://github.com/doctrine/migrations.git
[doctrine-fixtures]
git=http://github.com/doctrine/data-fixtures.git
[DoctrineFixturesBundle]
git=https://github.com/doctrine/DoctrineFixturesBundle.git
target=/bundles/Symfony/Bundle/DoctrineFixturesBundle
version=origin/2.0
[DoctrineBundle]
git=http://github.com/doctrine/DoctrineBundle.git
target=/bundles/Doctrine/Bundle/DoctrineBundle
[FOSJsRoutingBundle]
git=http://github.com/FriendsOfSymfony/FOSJsRoutingBundle.git
target=/bundles/FOS/JsRoutingBundle
[GedmoDoctrineExtensions]
git=http://github.com/l3pp4rd/DoctrineExtensions.git
target=/gedmo-doctrine-extensions
[StofDoctrineExtensionsBundle]
git=http://github.com/stof/StofDoctrineExtensionsBundle.git
target=/bundles/Stof/DoctrineExtensionsBundle
С этими комбинациями я получаю постоянный набор ошибок из-за классы не существующих или переименованы методами, которые я потом смотрю в GitHub репозитории и пытаюсь исправить с фиксацией/тегом, который устраняет эту ошибку, только для получения другого набора ошибок из-за других классов, не существующих или переименованных методов. Я не могу вернуться в стабильное состояние, которое у меня было несколько недель назад из-за изменений пространства имен в организации Doctrine - (@see What happened to Doctrine's Symfony Bundle repos?)
В качестве альтернативы я не против переключения на композитор; Херес composer.json, что я пробовал, но не работает
{
"require": {
"symfony/symfony" : "v2.0.15",
"symfony/doctrine-bridge": "2.1.x-dev",
"doctrine/common" : "2.1.4",
"doctrine/orm" : "2.1.6",
"symfony/finder" : "v2.0.15",
"symfony/assetic-bundle" : "2.0.x-dev",
"twig/extensions" : "dev-master",
"jms/security-extra-bundle" : "1.0.x",
"sensio/framework-extra-bundle" : "2.0.x-dev",
"sensio/distribution-bundle" : "2.0.x-dev",
"sensio/generator-bundle" : "2.0.x-dev",
"doctrine/doctrine-bundle": "v1.0.0-beta1",
"doctrine/mongodb-odm-bundle": "v2.0.1",
},
"autoload": {
"psr-0": {
"Oh": "src/"
}
}
}
Всякий раз, когда я пытаюсь исправить зависимости в composer.json я, кажется, чтобы получить в цикле модернизации и ухудшая те же пакеты снова и снова но всегда получаю сообщение об ошибке «Ваши требования не могут быть решены до устанавливаемого набора пакетов». Если бы кто-то мог предоставить мне настройку composer.json с помощью Symfony 2.0.15 с пакетами Doctrine, MongoDB, DoctrineFixtures и DoctrineMigrations, я был бы очень благодарен.
спасибо jakub. Наверное, я пытался включить слишком много пакетов в композитора. Мне удалось получить работающего композитора, заменив все версии пакета на «*», чтобы позволить ему разобраться в собственных зависимостях, но я думаю, что это рискованно использовать нестабильные версии всего. Я поместил весь свой composer.json и AppKernel в суть, чтобы помочь всем, кому это может понадобиться. Https://gist.github.com/2947908 –
Если вы хотите заблокировать версии (ов), то packagist.org может помочь вам , Вы можете увидеть версии своего пакета и его зависимости. –
Проблема для меня заключалась в том, что я включал пакеты в свой composer.json, которые уже были включены в другие пакеты дальше по строке, и трудно увидеть все, что будет установлено. Было бы удобно, если бы был инструмент для просмотра всех зависимостей в древовидной структуре, вместо того, чтобы искать каждый из них и помнить, что от него зависит. –