X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=CHANGES;h=261af0f6febc334c2591100d5193f36afa4ca1ae;hb=06ec2d2aca7a44198986d2d93c996d6a6438f6fb;hp=8a08efe7d556f9da025da51a6eea8a5dafdf4c93;hpb=dfb54cce3fda5cc6fc413c519ce0e9266888ba0d;p=ethna%2Fethna.git diff --git a/CHANGES b/CHANGES index 8a08efe..261af0f 100644 --- a/CHANGES +++ b/CHANGES @@ -1,5 +1,163 @@ * 変更点一覧 +** 2.5.0-preview6 + +*** features + +- Ethna_ViewClass#redirect にて、リダイレクト用HTTPステータスコードが302で固定だったので、オプション引数として変更可能とした +- 国際化に関する変更 +-- デフォルトのタイムゾーンとして、date.timezone を 'Asia/Tokyo' に設定 +-- Ethna_I18N クラス に setTimeZone メソッドを追加 (static呼出) +- Ethna_MailSender にて、メール送信に問題がある場合の設定として 'mail_func_workaround' を追加 +-- この値を true に設定すると、メールヘッダの改行コードを一律 CRLF にする処理を回避する +-- $mail = new Ethna_MailSender(); $mail->setOption(array('mail_func_workaround')); でも設定可能 +- Ethna_Plugin::import という,プラグインソースをincludeするための,staticメソッドを追加. +- すべてのPluginの基底となる抽象クラス,Ethna_Plugin_Abstractを追加 +-- 既存のプラグインの親クラスを,Ethna_Plugin_Abstract を継承するように変更 +-- Plugin に設定を受け渡す方法を変更したため,etcのskelを変更 +--- それに伴い,Ethna_Plugin_Cachemanager_Memcacheの設定方法を変更 + +*** bug fix + +- ethna make-plugin-package のデフォルトインストールディレクトリが誤っていたバグを修正 +- iniディレクティブ date.timezone が設定されてないために、E_WARNING が PHP 5.3.0 で出ていたバグを修正 +- Ethna_Plugin::includePlugin メソッドの実装が動作するものではなかったので変更 +- Ethna_Plugin_Cachemanager のクラスのプロパティに指定する $namespace が意味をなしていなかったので修正 (#17753) + +** 2.5.0-preview5 + +*** features + +- フォーム定義に関する変更 +-- フォーム定義を動的に変更するためのAPIをさらに追加 +-- Ethna_ActionForm#setFormDef_ViewHelper +- APPID_Controller.php のスケルトンに継承を想定したメソッドを追加 +-- skel/app.controller.php _setDefaultTemplateEngin +- add-project 時の www 以下に出来るエントリポイントから APPID_Controller へのパスを相対パスに変更 +- ethna コマンドの挙動変更 +-- ethna help コマンドを追加 +- 指定 Action が存在しない場合、app/action 以下を全て include する仕様を変更 +-- include せず、fallback用のactionを実行する +- add-project -b オプションの挙動変更 +- controller での smarty_xx_plugin の機能を削除 +- ビューまわりの変更 +-- Ethna_ActionClass から、Ethna_ViewClass#preforward に引数を渡せるようにした +--- return array('forward_name', $params); の形式で渡せば、$params が preforwardの引数として渡される +-- 汎用ビュークラスを実装 +--- ビューへの出力時によく使われる処理を雛形として実装したもの +--- Ethna_View_Json.php +--- Ethna_View_403.php +--- Ethna_View_404.php +--- Ethna_View_500.php +--- Ethna_View_Redirect.php +---- アクションクラスで return array('redirect', 'http://example.com'); + とすれば http://example.com にリダイレクトされる +-- レイアウトテンプレートを実装 +--- HTMLの外側に当たる雛形のテンプレートを描くためのもの。各アクションの出力はこのテンプレートの出力でラップされる +--- デフォルトは template/{locale_name}/layout.tpl に置かれている。 +--- この機能はデフォルトで有効になっている。無効にしたければ、[appid]_ViewClass.php の $use_layout を false にする +-- フォームヘルパのテキストエリアに value 属性を付加していた動きを修正。(thanks: syachi5150) +--- http://sourceforge.jp/ticket/browse.php?group_id=1343&tid=16326 +- [Breaking B.C] プラグインに関する変更 +-- プラグインから名前空間を除去することで、複数アプリケーションでの利用を可能に +-- 検索用のアプリケーションIDを削除した +-- ファイル名の命名規則を変更 +-- extlibの設置 +-- プラグイン関連のethnaコマンドを整理し、インストール、アンインストール関連コマンドは ethna pear-local コマンドに一本化 +--- ethna channel-update (削除) +--- ethna info-plugin (削除) +--- ethna install-plugin (削除) +--- ethna uninstall-plugin (削除) +--- ethna upgrade-plugin (削除) +--- ethna list-plugin (削除) +-- プラグインパッケージのスケルトンを生成するコマンドとして ethna create-plugin コマンドを追加 +--- 複数のtypeのプラグイン同時作成が可能に +--- Ethnaプロジェクト内でのプラグインの自動生成が可能に +--- ethna make-plugin-package との連動が可能に +-- ethna create-plugin コマンドの出力から ethna make-plugin-package を実行できるようにコマンドを再実装 +--- これにより、複数のプラグインを含んだパッケージの作成が可能に +-- Filterは一貫してプラグインを使うように変更したため、add-project時の app/filter ディレクトリを削除。 +- Smartyに関する変更 +-- Smarty を 2.6.26 に追随 +-- 組み込みの Smarty プラグインの追加 +--- explode修正子 (文字列を,ある文字で分割して配列に変換する) +- その他雑多な変更 +-- [Breaking B.C] ルールがユーザにとって直感的ではないとの理由から、フォーム定義の max と フォームヘルパの maxlength の連携機能を削除 (thanks: syachi5150) +--- https://sourceforge.jp/ticket/browse.php?group_id=1343&tid=16325 +-- Windowsユーザへの便宜のため、zipアーカイブで成果物を配布するオプションを追加 + +*** bug fix + +- Ethna_Controller#getTemplatedir を無視してテンプレートディレクトリを決定していたバグを修正(thanks: hiko) +-- getTemplatedirメソッドをオーバライドしても強制的にロケールが付加されていた +-- https://sourceforge.jp/ticket/browse.php?group_id=1343&tid=15570 +- "ethna pear-local list -a" の実行結果がエラーになってしまうバグを修正 +-- https://sourceforge.jp/ticket/browse.php?group_id=1343&tid=15760 +- safe-mode が ON の際に、CacheManager_Localfile がディレクトリを生成できないので、tmp ディレクトリ直下にキャッシュファイルを作成するようにした +-- skel/skel.app_manager.php も修正 +- APPID-ini.php が存在しない場合,またはURLが設定にない場合,デフォルトURLが HTTP_HOST で設定されていたが,末尾に / がなかったので修正 +- フォームヘルパで自動的に出力されるhiddenタグの閉じ忘れを修正(thanks: id:syachi5150) +- ethna add-app-manager コマンドで生成されるファイル名およびクラス名が間違っていたバグを修正(thanks: id:syachi5150) +-- https://sourceforge.jp/ticket/browse.php?group_id=1343&tid=16137 +- Validatorが出力するメッセージからフォーム名の後ろのスペースを削るように修正。(thanks: id:syachi5150) +-- https://sourceforge.jp/ticket/browse.php?group_id=1343&tid=16336 +- Smarty 拡張プラグインの wordwrap_i18n にアルファベットのみを渡した場合に正しい結果が返らないバグを修正 +-- 末尾のスペースを取り除く挙動も wordwrap に合わせて削除 +-- http://sourceforge.jp/ticket/browse.php?group_id=1343&tid=16839 +- Ethna_Session#isAnonymous メソッドが状態を正しく取得できない場合があるバグを修正(thanks:longkey1) +-- http://ml.ethna.jp/pipermail/users/2008-February/000899.html +- ethna add-test コマンドのヘルプが機能していなかったバグを修正 + +** 2.5.0-preview4 + +*** bug fix + +- フォーム定義が配列で、Ethna_ActionForm#getHiddenVars の値を Ethna_ActionForm#setAppNE した場合、クロスサイトスクリプティング +脆弱性が存在するバグを修正 (thanks: shuitic) +-- http://sourceforge.jp/ticket/browse.php?group_id=1343&tid=17332 + +** 2.5.0-preview3 + +*** features + +- アクションフォームに関する変更 +-- フォーム定義を多次元配列に対応させました (thanks: id:syachi5150) +--- http://d.hatena.ne.jp/syachi5150/20081022/1224676038 +-- フォーム定義を「'def' => array(),」 と定義しなくても、「'def',」 と定義するだけで親のフォームテンプレートの定義を補うようにした (thanks: sotarok) +-- フォーム定義を動的に変更するためのAPIを追加 +--- Ethna_ActionForm#setFormDef_PreHelper + Ethna_Backend や Ethna_Session が初期化後に呼ばれる +- フォームヘルパに関する変更 +-- 1つのテンプレートに 複数 {form} が指定されたときに、submitされたformに対してのみ補正処理が働くように改善 この場合、{form name=...} 属性の指定が必須 +-- 1つのテンプレートに 複数 {form} が置かれた場合に、それぞれのフォームの配列を区別するようにした +- Smarty プラグインに関する変更 +-- Ethna 組み込みの Smarty プラグインを分割 +--- Ethna 組み込みの Smarty プラグインとして class/Plugin/Smarty/ に Smarty のプラグイン形式で個別に作成 +--- それに伴い Ethna_Smarty_Plugin クラスは削除 +--- 読み込み順は次のように指定 1. Controller の plugin ディレクトリ 2. Ethna 組み込みの Plugin/Smarty/ ディレクトリ 3. samrty デフォルトのプラグイン +-- デフォルトの smarty プラグイン よりも Controller の plugins ディレクトリに定義されたプラグインを優先させるように変更 +-- アプリケーション独自のSmarty Pluginの定義場所を app/plugin/Smarty にできるようデフォルトでディレクトリの作成、コントローラに値のセットするよう変更 +- その他雑多な変更 +-- Smarty を 2.6.22 に追随 +-- アプリケーションの最終処理を行うメソッドとして、Ethna_Controller#end を追加 +-- フィルタを一貫してプラグインから取得するように変更 + +*** bug fix + +- safe-mode が ON の際に、Ethna_View_Test がエラーを吐く現象を回避 (thanks:longkey1 [ethna-users:1059]) +- "ethna add-view" コマンドにて、locale 及び client encoding のデフォルト設定が誤っていたバグを修正 +- Ethna_Renderer_Rhaco.php を 1.x 系の最新バージョン 1.6.1 に追随 (thanks: id:akiraneko [ethna-users:1081]) +- 複数ファイルをアップロード(つまり配列を使用)する際、必須チェックが機能しなかったバグを修正(thanks: id:syachi5150) +- ethna add-app-manager コマンドで生成されるアプリケーションマネージャのクラス名が、[Appid]_Controller#getManagerClassName の設定を反映するように修正。 +- smarty_modifier_unique プラグインが、仕様通り動作していなかったバグを修正 +- Ethna_PearWrapper のエラー処理が誤っていたのを修正 (thanks: id:nazo) +-- http://wassr.jp/user/nazo/statuses/SkfJTckkN2 +- Ethna_ActionForm#getHiddenVars メソッドで、フォーム定義が配列で設定された値がスカラーの場合に警告が出ていたのを修正(thanks: maru_cc) +-- 逆に、フォーム定義がスカラーで値が配列の場合は救いようがないので警告扱い +- www/info.php を実行したり、www/unittest.php を実行すると、サーバが応答しなくなることがあるバグを修正 +-- アクションクラスの書き方によっては、Ethna_InfoManager が 無限ループに陥っていたため +-- http://sourceforge.jp/tracker/index.php?func=detail&aid=10006&group_id=1343&atid=5092 + ** 2.5.0-preview2 *** features @@ -27,6 +185,12 @@ - 配布する Smarty を 2.6.20 に追随 - [Breaking B.C] 互換性を保つために残されていた内部メソッドを削除 -- Ethna_ViewClass#_getTemplateEngine +- Ethna_ActionClass のメンバに $logger(Ethna_Logger) を追加 +- Ethna_ViewClass のメンバに $ctl(Ethna_Controller) を追加 +-- i18n 周りの情報を容易に変更させるようにするため +- Ethna_Controller#_setLanguage メソッドを、backend, Session, actionform の初期化が終わってから呼ぶようにした。 +- 2.5.0 preview1 で追加した Ethna_ViewClass#_setLanguage メソッドを削除 +-- アクション実行後のロケール変更はあまり意味がないため :( *** bug fix @@ -39,6 +203,7 @@ - Ethna_MailSender にてメールを送信する際、テンプレートが存在しなかった場合にも空メールを送ってしまうバグを修正 (thanks: ryosuke@sekido.info -> [ethna-users:1053]) - smarty_modifier_checkbox が仕様に反する動作をしていたバグを修正し、仕様を厳密化した(thanks: maru_cc) -- checked が付くのはスカラーで、0 と空文字列、null, false 以外の場合とする +- Ethna_ActionError#_getActionForm で、E_NOTICE が出る問題を回避 ** 2.5.0-preview1 @@ -100,6 +265,56 @@ - Ethna_Plugin_LogWriter クラスにて、バックトレース走査時の軽微なバグを修正(ethna-users:1024, thanks:sfio) - Ethna_Config.php にて、設定ファイルのロックが機能していなかったバグを修正 +** 2.3.7 [#ca10ecac] + +*** bug fix [#qb2a22c6] + +- フォーム定義が配列で、Ethna_ActionForm#getHiddenVars の値を Ethna_ActionForm#setAppNE した場合、クロスサイトスクリプティング +脆弱性が存在するバグを修正 (thanks: shuitic) +-- [[http://sourceforge.jp/ticket/browse.php?group_id=1343&tid=17332:http://sourceforge.jp/ticket/browse.php?group_id=1343&tid=17332]] + +** 2.3.6 [#w8dda865] + +*** features [#f44940f9] + +- レンタルサーバを考慮して、[appid]_Controllerの include_path を、[appid]/lib を優先するように変更 + +*** bug fixes [#mf615558] + +- 2.5.0 preview3からのバックポート +-- 複数ファイルをアップロード(つまり配列を使用)する際、必須チェックが機能しなかったバグを修正(thanks: id:syachi5150) +--- このバグは重大なので全ての安定版ユーザはアップデートを推奨 +-- プラグインを使用しない場合に、required_num の場合について、ファイルの場合は1つ入力されていたらvalidとされていたのを、 +プラグインの動作に合わせて一応修正 +--- この点は通常ユーザには影響しない。プラグインを使用するのがデフォルトだから。 +-- Ethna_Renderer_Rhaco.php を 1.x 系の最新バージョン 1.6.1 に追随 (thanks: id:akiraneko [ethna-users:1081]) +-- smarty_modifier_unique プラグインが、仕様通り動作していなかったバグを修正 +-- Ethna_ActionForm#getHiddenVars メソッドで、フォーム定義が配列で設定された値がスカラーの場合に警告が出ていたのを修正(t +hanks: maru_cc) +--- 逆に、フォーム定義がスカラーで値が配列の場合は救いようがないので警告扱い +-- www/info.php を実行したり、www/unittest.php を実行すると、サーバが応答しなくなることがあるバグを修正 +--- アクションクラスの書き方によっては、Ethna_InfoManager が 無限ループに陥っていたため +--- http://sourceforge.jp/tracker/index.php?func=detail&aid=10006&group_id=1343&atid=5092 +- 2.5.0 preview2からのバックポート +-- selected="selected" の修正漏れを修正 (thanks:maru_cc) +-- Ethna_MailSender にてメールを送信する際、テンプレートが存在しなかった場合にも空メールを送ってしまうバグを修正 (thanks +: ryosuke@sekido.info -> [ethna-users:1053]) +-- smarty_modifier_checkbox が仕様に反する動作をしていたバグを修正し、仕様を厳密化した(thanks: maru_cc) +--- checked が付くのはスカラーで、0 と空文字列、null, false 以外の場合とする +-- Ethna_ActionError#_getActionForm で、E_NOTICE が出る問題を回避 +- 2.5.0 preview1からのバックポート +-- tpl/info.tpl のタグミスを修正 +-- smarty_modifier_select の戻り値が、諸々のHTML標準と異なっていたバグを修正(thanks: maru_cc) +--- selected="true" -> selected="selected" +-- アプリケーションIDの始めの文字に数値を許していたバグを修正 +--- クラス名のprefixになるため、数値を許すと自動生成物がコンパイルエラーを起こす +-- Ethna_Plugin_LogWriter クラスにて、バックトレース走査時の軽微なバグを修正(ethna-users:1024, thanks:sfio) +-- Ethna_Config.php にて、設定ファイルのロックが機能していなかったバグを修正 +- その他安定版にのみ影響するもの +-- アクションフォームクラスのスケルトンの一部で、$use_validator_plugin = false となっていたのをデフォルトのtrueに修正 +--- これはプロジェクト作成時の app/action/Index.php にのみ影響する。ユーザはこれを通常は再利用しないと考えられるので、通 +常は影響ない + ** 2.3.5 *** features