CakePHP 4.5.0 发布
CakePHP 核心团队很高兴宣布 CakePHP 4.5.0 立即可用。这是 4.5.0 的第一个稳定版本。4.5.0 为 CakePHP 提供了许多改进。4.5.0 引入了大量弃用警告,旨在帮助将来升级到 CakePHP 5.0。
升级到 4.5.0
您可以使用 composer 升级到 CakePHP 4.5.0
php composer.phar require --update-with-dependencies "cakephp/cakephp:4.5.*"
弃用警告
4.5 引入了一些弃用。所有这些功能将在 4.x 的整个生命周期中继续存在,但将在 5.0 中移除。请查看 迁移指南。
4.5.0 的新功能?
迁移指南 中列出了 4.5.0 中的所有新功能。我们建议您在升级时阅读该页面。以下是一些 4.5.0 的亮点
- bin/cake cache clear_group <name> 已添加。此命令提供了一个清除特定缓存组的 CLI 接口。
- ComponentRegistry 现在已自动添加到应用程序的 DI 容器中。
- Controller::addViewClasses() 已添加。此方法允许您以编程方式构建控制器的视图类。
- 数据库和 ORM 连接现在支持 read 和 write 连接角色。连接角色允许您通过使用读副本来扩展应用程序。在定义连接时,角色可以使用连接配置中的 read 和 write 键进行配置,这些键会覆盖共享配置。
- 查询中添加了新方法来选择要使用的 read 或 write 连接角色。
- ModelAwareTrait::fetchModel() 已添加。此方法的工作原理类似于 loadModel(),但不会将模型设置为属性。
- 开发错误页面设计已改进。它现在呈现链式异常,并使导航堆栈跟踪变得更容易,因为每个帧可以单独折叠。
- 控制台异常消息现在包含链式异常的堆栈跟踪。
- EntityTrait::$_hasAllowsNull 已添加。此属性允许您逐步选择在 5.x 中为 EntityTrait::has() 提供的重大更改。
- View::addHelper() 已添加。此方法补充了 addBehavior() 和 addComponent()。
4.5.0 的贡献者
感谢所有帮助 4.5 实现的贡献者
- ADmad
- Alejandro Ibarra
- Brian French
- Chris Nizzardini
- Jaro Varga
- Jose Daian
- Kevin Pfeifer
- Lars Ebert
- leon.schaub
- Marcelo Rocha
- Mark Scherer
- Mark Story
- Matthias Wirtz
- othercorey
- Roland Waldner
- wowDAS Ing. Markus Ramšak
与往常一样,衷心感谢所有社区成员,他们通过报告问题和发送拉取请求帮助实现了此版本。4.5.0 是一个大型版本,如果没有社区的支持和反馈,将不可能实现。
接下来做什么
随着 5.0 和 4.5 的发布,核心团队将主要关注 CakePHP 5.x。未来的 4.x 版本将主要由社区驱动。4.x 的功能和错误修复版本将持续到 2025 年 9 月。4.x 的安全修复将持续到 2026 年 9 月。
5.x 的路线图仍在开发中。我们希望从 4.5.0 升级到 5.0 变得更加平滑,并且感谢您对升级困难的任何反馈。请打开一个问题并开始讨论。
下载 github 上的打包版本。