Laravel 9.24版本发布

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

Laravel 团队发布了 9.24,其中包含新的 Arsitan 命令 db、新的内置验证规则、在没有任何事件的情况下恢复软删除的模型等等:

本周的 Laravel 9.24 版本包括几个由 @jbrooksuk 和 @_joedixon 贡献的新db命令
在此处了解它们:t.co/0oPmI1j4f8
— 泰勒・奥特威尔(@taylorotwell) 2022 年 8 月 9 日

新的 Arsitan 命令 db

James Brooks 为数据库贡献了三个新的 Artisan 命令:

db:show、db:table 和 db:monitor。

首先,db:show 为你提供数据库的概览。它包括数据库类型、版本、用户名等。

接下来,db:table 命令可让你查看有关表的详细信息,包括行数、列详细信息、索引等。

最后,db:monitor 命令可让你查看数据库连接数等信息。

ps:

Pull Request #43367,其中包含有关这些命令的所有详细信息。


不以字符串结尾(doesnt_end_with)的验证规则#

@kichetof 提供了一个 doesnt_end_with 验证规则来检查字符串是否以给定的子字符串结尾。这是拉取请求测试的示例:

// 验证通过
$v = new Validator(
  $trans,
  ['x' => 'hello world'],
  ['x' => 'doesnt_end_with:hello']
);
$this->assertTrue($v->passes());
// 验证失败
$v = new Validator(
  $trans,
  ['x' => 'hello world'],
  ['x' => 'doesnt_end_with:world']
);
$this->assertFalse($v->passes());


不引发任何事件的恢复软删除模型

Venelin Iliev 贡献了一个 restoreQuietly() 方法,可以在不引发任何事件的情况下恢复软删除的模型。

$deletedModel->restoreQuietly();


使配置存储 macroable

Chris Kankiewicz 有助于将 macroable 特性添加到 Config 存储,以便用户可以在他们的应用程序中扩展它:

config()->macro('sayHello', function () {
    return 'Hello, world';
});
config()->sayHello(); // Hello, world


发行说明

你可以在下面查看新功能和更新的完整列表并 在 GitHub 上查看 9.23.0 和 9.24.0 之间的差异。

以下发行说明直接来自 changelog:

https://github.com/laravel/framework/compare/v9.23.0...v9.24.0
https://github.com/laravel/framework/blob/9.x/CHANGELOG.md#v9240---2022-08-09


v9.24.0

新增

新的 db:show、db:table 和 db:monitor 命令 (#43367)
添加了验证 doesnt_end_with 规则 (#43518)
添加了 Illuminate/Database/Eloquent/SoftDeletes::restoreQuietly() (#43550)
向资源 ConditionallyLoadsAttributes trait 添加了 mergeUnless (#43567)
添加了 Illuminate/Support/Testing/Fakes/NotificationFake::sentNotifications() (#43558)
在 Illuminate/Database/Eloquent/Builder.php 中的 Passthru 中添加了 implode (#43574 )
使 Config 存储 macroable (#43598)
将 whenNull 添加到 ConditionallyLoadsAtrribute trait (#43600)
将子路由模型关系名称提取到方法中 (#43597)

恢复

将 whereIn 添加到 Illuminate/Routing/RouteRegistrar::allowedAttributes (#43523)

修复

修复广播事件的唯一锁定 (#43516)
修复 windows 上运行 docs 命令的问题 (#43566, #43585)
修复了在迁移命令中运行 db:seed 或 using --seed 时的输出(#43593)

变更

当无法在系统上为 artisan docs 命令找到预期的二进制文件时,优雅地失败 (#43521)
改进一些 Artisan 命令的输出 (#43547)
Postgres DSN 中的备用数据库名称,允许 pgbouncer 别名数据库继续在 9.x 上工作 (#43542)
允许组件标签使用 @class() (#43140)
属性投射性能改进 (#43554)
队列工作者守护进程也应该监听 SIGQUIT (#43607)
使用带有排序操作数组的 Collection->sortBy() 时保留原始键 (#43609)


转:

https://laravel-news.com/laravel-9-24-0

相关文章