Moony 0.15.0リリース

Moony 0.15.0をリリースしました。ダウンロードはSourceForge.jpからどうぞ。

変更点は以下の通り:

  • アクションクラスで実行されるメソッドを変更
    • init、filter、validate、executeの順番
    • セッションの設定/開始はinitメソッドの実行後
  • アクションクラスのprepareメソッドを評価しないように変更
    • 代わりにinitメソッドを使用してください
  • アクションクラスのfilterメソッドを評価するように
    • リクエストパラメータなどのフィルタ処理を行う
    • Moony_Filterのインスタンスを渡すように
      • クラス追加: Moony_Filter
  • アクションクラスのvalidateメソッドの扱いを変更
    • Moony_Validatorのインスタンスを渡すように
      • プロパティ廃止: Moony_Action::validator
    • Moony_Validator::hasError()がtrueの場合、また、アクションクラスのvalidateメソッドが明示的にfalseを返す場合、アクションクラスのexecuteメソッドが実行されないように変更
      • メソッド廃止: Moony_Action::renderOnError()
      • メソッド廃止: Moony_Action::redirectOnError()
      • メソッド廃止: Moony_Action::redirectActionOnError()
  • リダイレクト処理方法の変更
    • アクションクラスのredirectメソッドに集約
      • 「[a-z]+://」で始まる場合はそのURLにリダイレクト、それ以外はアクション名とみなしてそのアクションにリダイレクト
      • アクションにリダイレクトする際、URLの末尾が「/index」で終わる場合は「/」になるように変更
    • メソッド変更: Moony_Action::redirect()
    • メソッド廃止: Moony_Action::redirectAction()
  • Flash変数の機能を追加
    • 一時的にセッションに保存される変数で、次のアクション実行時に値の取り出しおよびセッションからの除去が行われる
    • 値は次のアクションのプロパティに設定される
    • メソッド追加: Moony_Action::flash()
  • PATH_INFOでアクションに渡されたパラメータの取得方法変更
    • アクションクラスのargsプロパティに配列で格納
    • プロパティ追加: Moony_Action::args
    • メソッド廃止: Moony_Request::getActionParam()
  • 環境変数のPATH_INFOに依存しないように
    • $_SERVER['REQUEST_URI']と$_SERVER['SCRIPT_NAME']を組み合わせて取得
    • メソッド変更: Moony_Request::getPathInfo()
  • moonyコマンドの変更
    • エントリポイント作成時に.htaccessも作成するように
  • アクションクラスの整理
    • メソッド追加: Moony_Action::renderIf()
    • メソッド追加: Moony_Action::redirectIf()
    • メソッド廃止: Moony_Action::renderImage()
  • Cacheコンポーネントの廃止
    • クラス廃止: Moony_Cache
    • メソッド廃止: Moony::setCacheDir()
    • プロパティ廃止: Moony_Action::cache
    • moonyコマンドで生成されるエントリポイントの内容を修正
  • Viewコンポーネントの廃止
    • クラス廃止: Moony_View
    • Moony_Viewに実装されていたヘルパー関数をHelpers.phpに移動
      • ファイル追加: Moony/Helpers.php
  • グローバル変数を使わないように再度変更
    • クラス追加: Moony_Registry
  • その他
    • メソッド追加: Moony_Request::getHttpVersion()
    • メソッド追加: Moony_Session::rememberMe()