CakePHP 3.4.8 发布
CakePHP 核心团队很高兴宣布 CakePHP 3.4.8 立即发布。这是 3.4 分支的维护版本,修复了社区报告的几个问题。
错误修复和新功能
您可以在 3.4.8 中看到以下更改。查看 变更日志 以获取每个提交。
- 改进了子拆分包的 composer 关键字。
- BelongsToMany::link() 现在可以正确地持久化多个操作。
- 改进了 API 文档。
- PO 文件解析在同一个消息键被定义为有上下文和没有上下文时,可以正确地解析消息。这改变了翻译消息的内部数据表示,您应该注意在升级时清除您的 i18n 缓存数据。
- ValidationRule 在参数是关联数组时不再引发解包错误。
- RouteBuilder::prefix() 现在支持 path 选项,这允许您自定义用于前缀路由范围的路径段。
- 日志记录现在将记录实体的 JSON 编码版本。此外,被记录的 JsonSerializable 实例将不会对 Unicode 数据进行编码。
- 在其他 matching() 调用中使用 matching() 调用的分页查询不再发出无效的 SQL。
- 自动链接更好地处理由 AngularJS 生成的 URL。
- Mailer 正确地代理了 Email 上的 getX 方法。
- Database\Query::clause() 在读取未知子句时现在会引发异常。
- RedisEngine::add() 现在使用 setTimeout() 来设置 TTL,而不是两次写入键。
- RedisEngine::increment() 和 decrement() 现在在计数器上设置引擎的 TTL。这使得 redis 计数器与 Memcached 计数器具有一致的行为。
- 使用 'Z' 时区 的 ISO8601 日期时间现在可以正确解析。
- ProgressHelper::init()、draw() 和 increment() 现在返回 $this。
- MySQL 模式反射不再强制主键列在明确禁用 autoIncrement 时成为自增列。
- FormHelper::radio() 现在在单选按钮选项使用复杂形式定义时,并且只有一部分单选按钮选项被禁用时,可以处理禁用属性的生成。
- TableHelper::output() 不再要求所有行具有相同的键。
3.4.8 的贡献者
感谢所有帮助实现此版本的贡献者。
- Albert Cansado Solà
- Bryan Crowe
- Florian Brede
- Ian den Hartog
- Jan Zdunek
- Jeremy Harris
- José Lorenzo Rodríguez
- Julian Carrivick
- Marc Würth
- Mark Scherer
- Mark Story
- Mehdi Fathi
- Michael Hoffmann
- Mirko Pagliai
- Rachman Chavik
- Sevvlor
- Yasuo Harada
- inoas
与往常一样,我们要感谢所有打开问题、创建拉取请求或更新文档的贡献者。