Laravel 10.11版本发布

2023-06-01 00:00:00 laravel 版本 发布

Laravel团队本周发布了Laravel 10.11,能够从UUID中检索时间戳Carbon实例,使Sleep类可宏,以及新的Precognition-Success头,用于验证成功的Precognition响应,等等。

让我们深入了解一下本周的新内容:


从UUID/ULID中检索时间戳作为一个Carbon实例

@DarkGhostHunter 贡献了从UUID或ULID中检索一个Carbon实例:

use Illuminate\Support\Facades\Date;
 
// Dates from ULID
$date = Date::createFromUid('01H06ZMA15EBJASEXHWJC1SY5F');
 
// Dates from UUID
$date = Date::createFromUid('01880dfa-2825-72e4-acbb-b1e4981cf8af');
 
$date = Date::createFromUid($uid);
 
if (is_null($date)) {
    return 'The UID is invalid';
} elseif (!$date) {
    return 'The UID has no timestamp';
}
 
return $date;


添加 "预知成功 "标题

Tim MacDonald贡献了一个Precognition-Success: true响应头。

当客户端收到204的时候,它并不能单独保证Precognition成功,所以这个额外的头确保Precognition是成功的。更多细节请参见 Pull Request #47081。


让Sleep类变得可宏化

Bradie Tilley贡献了使Laravel 10.10中引入的Sleep类可宏化。

在拉动请求的描述中提供了一个例子:

// AppServiceProvider
Sleep::macro('forConfiguredTime', static function () {
    $milliseconds = DB::table('settings')
        ->where('key', 'sleep_after_action')
        ->first()
        ->value ?? 1000;
 
    return Sleep::for($milliseconds)->milliseconds();
});


发布说明

你可以在GitHub上看到以下完整的新功能和更新列表以及10.10.0和10.11.0之间的差异。

下面的发布说明直接来自于更新日志:

https://github.com/laravel/framework/compare/v10.10.0...v10.11.0
https://github.com/laravel/framework/blob/d925372e25d1acf50550433562119915ff6c5d02/CHANGELOG.md#v10100-2023-05-09


v10.11.0

增加了

增加了为DatabaseNotificationCollection扩展通用类型的能力(#47048)。
添加了 /Illuminate/Support/Carbon::createFromId() (#47046)
添加了槽上的名称属性 (#47065)
添加了预知-成功标题(#47081)
为睡眠类添加了Macroable特性 (#47099)

修复了

修正了Illuminate/Database/Console/ShowModelCommand::getPolicy() (#47043)

已更改

删除channelRoutes方法的返回 (#47059)
Illuminate/Database/Migrations/Migrator::reset()中字符串路径的错误(#47047)
统一游标分页的逻辑(#47094)
使用withoutVite时,清除已解决的Vite实例 (#47091)
移除旧版Guzzle的变通方法 (#47084)


转:

https://laravel-news.com/laravel-10-11-0

相关文章