バージョン 4.1.6
リリース日: 2022年1月3日
CodeIgniter4 の 4.1.6 リリース
セキュリティ
old()
関数に見つかった *信頼できないデータのデシリアライゼーション* が修正されました。詳細は セキュリティアドバイザリ を参照してください。
破壊的変更
複数のテーブル名が
BaseBuilder::$tableName
に格納されなくなりました。代わりに空の文字列が使用されます。
バリデーションの変更
以前のバージョンのバリデーションは、配列項目を処理できません。バグ修正のため、バリデーション結果が異なる場合や、
TypeError
が発生する場合があります。ただし、以前のバージョンの結果は正しくない可能性があります。バリデーションでは、
contacts.*.name
のような複数フィールドと単一フィールドのバリデーションプロセスを分けていました。単一フィールドに配列データがある場合、以前のバージョンは配列の各要素を検証していました。バリデーションルールは、配列の要素をパラメータとして受け取ります。一方、現在のバージョンは、配列全体をバリデーションルールに渡します。
機能強化
PHP 8.1 を完全にサポート。
デバッグツールバーのデータベースペインに、クエリが呼び出された場所が表示されるようになりました。また、完全なバックトレースも表示されます。
QueryBuilder の サブクエリ は、BaseBuilder クラスのインスタンスにすることができます。
Kint が ^3.3 から ^4.0 にアップデートされました。
変更
Cookie を送信するプロセスが
Response
クラスに移動されました。Security
クラスとCookieStore
クラスは Cookie を送信せず、Response に設定します。
非推奨
Seeder::faker()
とSeeder::$faker
は非推奨になりました。BaseBuilder::cleanClone()
は非推奨になりました。
バグ修正
修正されたバグの完全なリストについては、リポジトリの CHANGELOG_4.1.md を参照してください。