Symfony2.3系のシステムを2.8系にバージョンアップしてみた
こんにちは、光永です。
なんと!今回はバリっと技術記事です!えらい!(自画自賛)
開発中のシステムをSyfony2.3系から2.8系にバージョン上げたのでまとめてみました。
別段難しいことはしていませんが、覚書までに。
諸注意
- composerを使用した場合の例です
- composerが遅い場合はここ↓がお勧めです。ただし、自己責任で使ってください
なぜverUPするのか?
端的にいうと、開発しやすいからです。2.3系は現在もデバッグ・サポートが継続されていますので、
とりあえず開発終了していれば、必ずしもverUpは必要ないでしょう。
ただし、現在進行形のプロジェクトであれば、以下の利点があります。
※追記(2016/6/2) 2.3.42が最終バージョンとなると発表がありました。この機にバージョンアップを!
- debug環境が大幅に改善された
- dump()関数の導入
- なんかむやみやたらとおしゃれになったデバッグパネルおよびデバッグページ
- ajax通信がデバックパネルに表示され、通信内容をデバックページで表示しやすくなった
- えとせえとせ
- フォーム周りの処理が変更され、より開発しやすくなった
- 便利メソッドがちょっと増えた
- render($this->generateUrl($route)) => rendirectToRoute($route) など
- えとせえとせ
やったこと
一旦2.3系最新へverUp
※必要ではないですが、長らくマイナーバージョンを更新していない場合などは
ソースが本家の改修とぶつかって円バグしている恐れがあります。
規模の大きいシステムであれば特に、やっておいて損はないと思います。
composer.jsonは以下の通りです
コマンドを実行
軽く動作確認をしておきましょう。
2.8系へ
※ 実施する前にバックアップを取ってください!失敗したときに泣きます
composer.jsonを書き換え
その他いくつか古いバンドル/記載があったので
ver.2.8で作成したプロジェクトのcomposer.jsonを参照し、ついでにupdate
コマンドを実行
注意事項
- 2.8系から、app.php / app_dev.php / consoleが変更になっています。
- gitから落として入れ替えましょう
https://github.com/symfony/symfony-standard/tree/2.8/web
- gitから落として入れ替えましょう
- 以下のエラーがでます(sensio/distribution-bundle が原因?)
- config_dev.yml / routing_dev.yml に以下の表記がありますのでコメントアウト
- config_dev.yml / routing_dev.yml に以下の表記がありますのでコメントアウト
- 心行くまでデバッグしましょう。どこがバグってるともしれません
おまけ
このブログはAtomのMarkdownエディタ機能を使ってかきました
手順
以上、参考になっていれば幸いです。光永でした!