待望のSymfony0.6がこの週末リリース予定です

symfony PHP5 framework 期待の新バージョン0.6が明日リリース予定です。

symfony PHP5 framework

0.6になって何が変わるのかをwhat_s_new_0_6を元に抜粋してみます。

ダイナミックコンフィグレーション

動的にコンフィグレーションをいじれるようになりました。テストの時に便利かもしれません。

コンポネント

アクションをpartialの様にインクルードします。view.ymlを利用したslotよりも断然早く、ビューをインクルードするだけのpartialでは書きにくかった(データベース処理のような)複雑なコードを書きやすくなりました。

  • partial(テンプレート)
  • component(アクション)
  • slot(コンフィグレーション)

と覚えておく良いかも。

アプリケーションディレクトリの変更

0.5系いぜんではアプリケーションディレクトリが

frontend/
backend/

  

の様にプロジェクトのルートに配置されるのが気持ち悪かったのですが、 0.6からappsディレクトリの下に移動しました。

apps/
frontend/
backend/

0.5のアプリケーションから0.6にアップグレードする場合は、ディレクトリを移動した後にアップグレードすればよいようです。

管理者用画面作成

今回の目玉です。これだけでも、0.6使いたくなりませんか?

上のような、かっこいいそして検索機能のついた管理画面を自動生成します。 ジェネレータに対する設定ファイルが使えるようになりました。すごすぎです。

複数のデータベースの利用

これが出来なくてセッションをデータベースに乗せるのに困りました。(結局セッションストレージにPropelを使わなかった) 

プラグイン

Symfonyのサブプロダクトをプラグインとしてインストールできるようになりました。サードパーティ製のプラグインの配布が加速しそうです。

フラッシュパラメータ

次のリクエストにパラメータを引き継ぎたいのだけれど、User(セッション)を利用して以降のリクエストにまで引き継ぎたくないときに利用できるフラッシュパラメータが追加されました。

$this->setFlash('attrib', $value);

結果画面やフォームの確認画面を出すときに使えそうですね。

その他

sfFinder

ファイルやディレクトリの取得(検索)に便利なユーティリティが追加されました。

$files = sfFinder::type('file')->name('*.php')->size('<10K')->maxdepth(3)->in('/home/production/myproject');

Sandbox

Symfonyの開発環境をすばやく(10秒で!)作るためのものらしい。実態は不明。

Propel のコマンド名変更

0.4 command           0.6 command
------------------    ------------------
build-model           propel-build-model
build-sql             propel-build-sql
build-schema          propel-build-schema
insert-sql            propel-insert-sql
init-propelcrud       propel-init-crud
generate-propelcrud   propel-generate-crud
メンドクサクなりました。

邪推かもしれませんが、 sfPagerもsfPropelPagerに変わるなど、SymfonyはPropelをある程度切り離して他のアクティブレコードエンジンにも対応しようとしているのかもしれませんね。

Response object

sfWebResponseが追加され

$response->setHttpHeader()

とか

$response->setCookie()

使えるようになりました。 PHP関数のheaderを使うのはやめましょう。

Smart cache

テンプレートレベルでのキャッシュコントロールのパラメータが増えたらしい。多分、view.ymlに書くのだろうけど詳細不明。

アップグレード時の自動キャッシュクリア

国際化(i18n)、権限(credentials)、validateXXX()

0.4からへのプラスで0.5からはあまり変わらないようだ。

その他

バグ修正たくさん。

以上、検証も追いつかず、サイトの翻訳も出来ずトピックだけパパラッチの様に追いかけてみました。誤認識も多いと思いますのでこの週末にでも気づいた点は修正します。(お気づきの点はご指摘くださいませ)

総論として、Symfonyの0.6リリースは実用途からフィードバックを受けた新機能とこれからフレームワークを育てていく足場を提供する非常に大きな意味を持つものだという印象を受けました。今後も期待していきたいと思います。

4 Responses to “待望のSymfony0.6がこの週末リリース予定です”

1
きりゅ。 - 09/02/06
>Sandbox trunk拾ってきて、bin/create_quickstart.sh 参照。 trunkからpearパッケージ作ってインストール。 アプリの生成まで自動でやってくれますお。 きもーい。
2
きりゅ。 - 09/02/06
書き忘れ。 >>アップグレード フレームワークアップデートしたときは symfony upgrade 0.6 で、コンフィグの書き換えやバージョン管理下に置かれたファイルの再設置とかしてくれます。 >>SymfonyはPropelをある程度切り離して他のアクティブレコードエンジンにも対応しようとしているのかもしれませんね。 すでにpluginの中に、ezpdo対応が含まれてたりします。
3
mshk - 09/02/06
Symfony 0.6 楽しみです。 ところで、素人な質問かもしれませんが「複数データベースが使えなくてセッションをのせられなかった」とは、どのような意味でしょうか?
4
tumf - 10/02/06
”Symfony 0.6 is out!” http://www.symfony-project.com/ つきみやさんのところで指摘されていますが 週末どころかもう出ました。 >mshkさん セッションのデータベースは他のデータベースと分離したかったのですがそれが出来なかったという意味です。判りにくくてすいません。

Leave a Reply

You must be logged in to post a comment.