Laravel 10版本即将在2月7日发布看看会有什么变化
Laravel v10是Laravel的下一个主要版本, 计划于2023年2月7日发布.
在这篇文章中, 我们想概述一下我们所知道的所有新功能和变化.
我们鼓励你在接下来的几周内回头看看这个帖子,因为我们会继续关注Laravel 10的内容,并在2月发布前更新这个帖子。
Laravel 10的发布日期
在Laravel 9之前, 主要的框架版本是每年发布两次,或者大约每六个月发布一次。
从Laravel 9开始, 核心团队开始采用年度计划, 在2022年2月发布Laravel 9 (而不是最初计划的2021年9月):
> Laravel使用各种社区驱动的软件包,以及9个Symfony组件来实现框架内的一些功能。
Symfony 6.0将于11月发布。
出于这个原因, 我们选择将Laravel 9.0的发布推迟到2022年.
通过推迟发布,我们可以将我们的底层Symfony组件升级到Symfony 6.0,
而不必被迫等到2022年9月才进行升级。
此外,这也为我们未来的发布做了更好的定位,
因为我们每年的发布总是在Symfony的发布之后两个月进行。
今后的时间表是每年发布一个主要版本:
Laravel 9: 2022年2月8日
Laravel 10: 2023年2月7日
Laravel 11: 2024年2月6日
Laravel 9将继续获得错误修复,直到2023年8月8日,安全修复直到2024年2月6日。
你可以期待Laravel 10的bug修复到2024年8月6日,安全修复到2025年2月4日。
Laravel 10放弃了对PHP 8.0的支持
Laravel框架将在Laravel 10中放弃对PHP<=v8.0的支持。
最低要求的版本是PHP ^8.1。
浏览master和9.x的对比,我们可以期待看到框架中使用的8.1功能,比如只读属性。
https://github.com/laravel/framework/compare/9.x...master
https://laravel-news.com/php-8-1-0
Laravel 10骨架中的本地类型声明
在Laravel 10中, 应用程序的骨架代码将有本地类型声明。
这意味着,任何由框架生成的用户区代码都会有类型提示和返回类型。
我们的文章讨论了围绕这个方法的注意事项, 我们认为在未来创建新项目时,你会喜欢增加的类型。
类型的添加方式可以为Laravel项目带来最新的PHP类型提示功能,
而不会破坏框架层面的后向兼容性:
1.返回类型
2.方法参数
3.冗余的注解被尽可能的移除
4.允许用户在闭合参数中的土地类型
5.不包括类型化的属性
可调用的验证规则是默认的
从Laravel 10开始, 可调用的验证规则现在是默认的.
当你通过artisan创建一个新的验证规则时, 你可以看到这样的结果:
# Laravel 9创建了一个规则类,实现了
# Illuminate\Contracts\Validation\Rule接口
artisan make:rule Uppercase
# Laravel 9的标志是创建一个可调用的和隐含的规则
artisan make:rule Uppercase --invokable
artisan make:rule Uppercase --invokable --implicit
# Laravel 10默认创建一个可调用的规则
artisan make:rule Uppercase
# Laravel 10的隐式规则
artisan make:rule Uppercase --implicit
从Laravel 9开始废弃的方法
在Laravel 9中标记为废弃的方法将在Laravel 10中被删除.
我们可以期待在发布的升级指南中概述所有被废弃的方法, 潜在的影响评估, 以及如何在接近发布时升级.
以下是在撰写本文时,在Laravel框架的主分支和9.x分支的对比中发现的一些弃用情况。
删除各种缺失 Pull Request #41136
删除Pull Request #42587中已废弃的dates属性
删除 Pull Request #42590 中的 handleDeprecation 方法
删除已废弃的 assertTimesSent 方法 Pull Request #42592
删除已废弃的 ScheduleListCommand 的 $defaultName 属性 419471e
删除已废弃的 Route::home 方法 Pull Request #42614
删除已废弃的 dispatchNow 功能 Pull Request #42591
更多信息...
距离Laravel 10还有几个月的时间, 更多的新功能和公告将陆续发布.
我们会在这些功能公布后更新这个帖子。
你也可以查看官方发布的页面,以寻找更新的信息,因为它变得可用。
转:
https://laravel-news.com/laravel-10
相关文章