CakePHP 3.0.4 发布

CakePHP 核心团队很高兴宣布 CakePHP 3.0.4 立即可用。这是一个维护版本,包含安全修复和错误修复。

安全修复

有两个问题会影响 CakePHP 应用程序的安全

  • CsrfComponent 无法使缺少 CSRF 令牌和 CSRF POST 数据的请求失效。
  • 在编组请求数据时,空实体可以通过精心制作的 JSON 有效负载绕过验证方法。RulesChecker 验证不会被这些空实体绕过。

我们感谢 'Hayato Araki' 通过我们的 安全问题 过程与我们联系,告知我们 CsrfComponent 问题。我们建议所有 CakePHP 用户尽快升级到 3.0.4。

错误修复

除了安全问题外,以下缺陷也已修复

  • 具有自定义别名的关联上的级联删除不再会失败。
  • XmlView 现在支持 _xmlOptions。这与 JsonView 的行为一致。
  • EntityTrait::extractOriginal() 现在与 extract() 的行为一致。两种方法现在都包含所有命名属性,而不仅仅是不变的属性。一个新的方法 extractOriginalChanged() 可以用于仅提取已更改属性的原始值。
  • 查询字符串参数现在在 IntegrationTestCase 中得到正确支持。
  • Collection::isEmpty()Cake\ORM\Query::isEmpty() 已添加。
  • 现在可以不使用 action 属性创建表单。
  • 访问实体数据现在更高效。实体将缓存自定义访问器的结果,并在属性发生更改或删除时使缓存失效。

要更深入地了解发生了什么变化,请查看 发行说明

CakeFest 2015 门票

如果您还没有,现在仍然可以获得 CakeFest 2015 的门票。5 月 28 日和 CakePHP 的 10 周年纪念日即将到来。

与往常一样,要感谢所有帮助完成此版本的社区成员,他们报告了问题并发送了拉取请求。

github 上下载打包版本