版本 4.2.2

发布日期:2022 年 8 月 6 日

CodeIgniter4 的 4.2.2 版本

重大变更

  • 现在 Services::request() 返回 IncomingRequestCLIRequest

  • 已更改 CodeIgniter\Debug\Exceptions::__construct() 的方法签名。已从 $request 参数的 IncomingRequest 类型提示中删除。扩展类也应删除该参数,以免违反 LSP。

  • 已更改 BaseBuilder.php::insert()BaseBuilder.php::update() 的方法签名。已从 $set 参数的 ?array 类型提示中删除。

  • 已修复使用页面缓存时导致页面在执行完后过滤器之前被缓存的错误。现在,在后过滤器中添加响应头或更改响应主体将正确地缓存它们。

  • 由于修复了一个错误,现在 random_string() 的第一个参数为 'crypto' 时,如果第二个参数 $len 是奇数,则会抛出 InvalidArgumentException

消息变更

  • 已修复 Language/en/HTTP.php 中的 invalidRoute 消息。

变更

  • 已修复:BaseBuilder::increment()BaseBuilder::decrement() 在查询后不会重置 BaseBuilder 状态。

  • 已修复:验证以星号(通配符)开头的字段。

  • 现在 CLIRequest::isCLI() 始终返回 true。

  • 现在 IncommingRequest::isCLI() 始终返回 false。

  • Vagrantfile.dist 已移至 CodeIgniter DevKit

弃用

  • 已弃用 Services::request() 的参数。

  • 已弃用 CodeIgniter::gatherOutput() 的第一个参数 $cacheConfig

  • 已弃用 Forge::_createTable() 的第二个参数 $ifNotExists

已修复的错误

有关已修复错误的完整列表,请参阅仓库的 CHANGELOG_4.2.md