2013-06-19 3 views
14

У меня уже есть проект, который находится в Symfony 2.0.10. Но теперь мне нужно обновить его до Symfony 2.3. Я знаю, что нужно изменить какой-то код на компиляцию с последней версией. Есть ли какая-нибудь команда для обновления? Или что такое точная процедура обновления? Есть ли доступный документ?обновление от symfony 2.0 до 2.3

Edit:

Я положил symfony 2.3composer.json файл и при этом php composer.phar update я получил эту ошибку.

Problem 1 
    - symfony/symfony v2.3.1 requires symfony/icu >=1.0,<2.0 -> no matching package found. 
    - symfony/symfony v2.3.0 requires symfony/icu >=1.0,<2.0 -> no matching package found. 
    - Installation request for symfony/symfony 2.3.* -> satisfiable by symfony/symfony[v2.3.0, v2.3.1]. 

Edit 2: Сначала я получил эту ошибку:

[InvalidArgumentException]                     
    The dist file "app/config/parameters.yml.dist" does not exist. Check your dist-file config or create it. 

поэтому я создал parameters.yml.dist файл. Теперь я получаю

PHP Fatal error: Class 'Symfony\Component\ClassLoader\UniversalClassLoader' not found in /var/www/git/sample/app/autoload.php on line 6 
Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap handling the post-update-cmd event terminated with an exception 

    [RuntimeException]          
    An error occurred when generating the bootstrap file. 
+1

ваша правка ввел новый вопрос :) редактировать Symfony/ICU использовать @beta flag.' совместимости "требуют": {"symfony/intl": "2.3.*@beta"} '..., связанный с этой проблемой: https://github.com/symfony/symfony/issues/8035 – nifr

+0

Извините :). Я решил эту проблему, добавив в файле composer.json «symfony/intl»: «2.3. *» – stefun

+0

отличные любые другие проблемы? в противном случае вы могли бы поддержать или принять один из ответов, поскольку исходный вопрос был дан мной и pazi :) – nifr

ответ

16

Обновление информации

Прочитайте руководства по обновлению в symfony/symfony github repository:

Есть также в списке изменения хранилища:

Резервного копирования ваш проект!


Обновление с композитором

Получить composer и поставить Symfony 2.3 стандарта Edition, composer.json в корневом каталоге проекта.

Теперь запустите composer update с патчем вашего проекта в качестве рабочего каталога.

-> Вы столкнетесь с некоторыми исключениями из-за нарушения изменений. Google поможет решить эти :)


Личный опыт

В моем наследии проецирует наиболее заметный разрыв Ьс от 2,0 до 2,1 была this one связана с формой-строитель, потому что я должен был обновить каждую форму ,

До (2.0)

use Symfony\Component\Form\FormBuilder; 
public function buildForm(FormBuilder $builder, array $options) 

После (2.1+)

use Symfony\Component\Form\FormBuilderInterface; 
public function buildForm(FormBuilderInterface $builder, array $options) 
+0

такая же ошибка для меня, как обновить, пожалуйста, предложите –

4

Обновление в общем простой, так как у вас есть только для обновления версии ограничений в вашем composer.json по standard distribution и выдачи

php composer.phar update 

Но 2,3 имеет некоторые обратная совместимость. Поэтому внимательно прочитайте каждый обновляемый документ для необходимых изменений кода.

+1

Какой беспорядок. Я не уверен, что работа с дополнительной сложностью Sf2 стоит того, чтобы повысить производительность. – Acyra

+0

Что, это нормально, когда вы пропускаете две основные версии. Только с 2.3 с новым расписанием релизов не должно быть bc-разрывов с версиями 2.x. –

+0

Symfony 2.0 не использовал композитор;) –

Смежные вопросы