2013-06-19 6 views
14

私はすでに実行中のプロジェクトがSymfony 2.0.10にあります。しかし、今私はそれをSymfony 2.3にアップグレードする必要があります。私は最新のバージョンでcompitableにいくつかのコードを変更する必要があることを知っています。または、アップグレードするための正確な手順は何ですか?入手可能な資料がありますか?symfony 2.0から2.3へのアップグレード

編集:

私は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]. 

編集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 composer.phar update 

しかし2.3はいくつかを持って発行応じてあなたのcomposer.jsonにおけるバージョン制約を更新するために持っているように 今、私は取得しています

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

あなたの編集は、 "必要" @beta互換flag.'を使用する新しい質問:)編集にsymfony/ICUを導入した後(2.0)

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

前に: {"symfony/intl": "2.3.*@beta"} '...この問題に関連する:https://github.com/symfony/symfony/issues/8035 – nifr

+0

申し訳ありません:)。私はこの問題をcomposer.jsonファイルの "symfony/intl": "2.3。*" – stefun

+0

他にも大きな問題がありますか?そうでなければ、元の質問が私とパジで答えられたので、答えの1つをupvote/acceptしたいかもしれません:) – nifr

答えて

16

アップグレード情報

symfony/symfony github repositoryにアップグレードガイドを読む:

は、リポジトリにも変更履歴があります:

バックアッププロジェクト!


アップグレード作曲

composerを取得し、プロジェクトのルートにのsymfony 2.3の標準版のcomposer.jsonを置きます。

composer updateをプロジェクトのパッチと共に作業ディレクトリとして実行します。

- >変更の例外が発生するなどの理由により、一部の例外に直面します。 Googleは私の遺産のもの:)


個人的な経験

が2.0から2.1に最も顕著BCブレークを投影し解決するのに役立ちますthis oneフォーム・ビルダーに関連していた私は、すべてのフォームを更新する必要がありましたので、 。

(2.1+)

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

同じエラーが発生しました –

4

のアップグレードは、一般的なシンプルであります下位互換性が中断します。そのため、必要なコードの変更についてアップグレード・ドキュメントを注意深く読んでください。

+1

何が混乱。私は、Sf2の追加された複雑さに対処することが生産性のメリットに価値があるとは確信していません。 – Acyra

+0

2つのメジャーバージョンをスキップすると、それは正常です。新しいリリーススケジュールの2.3以降では、2.xバージョンでBCブレークは発生しません。 –

+0

Symfony 2.0はコンポーザーを使用していませんでした;) –