Laravel 6.14.0 发布
Laravel 团队本周发布了 v6.14.0
版本,包括了新的方法 dispatchAfterResponse()
,在分发器(dispatcher)中支持宏(macroable),以及
NoMigrations
事件。
响应后的分发
Mohamed Said 贡献一个新的方法,用于在响应发送给客户端之后执行任务。RP 关于此方法的描述:
该方法使任务在发送响应之后和关闭连接之前运行。它只是简单的在应用程序完成请求之前注册一个应用程序可运行的终止回调。
与将任务发送到队列相比,该方法对于分发一些简单的、非耗时的短任务而言可能很有用。
这是一个伪代码示例
SomethingDispatchable::dispatchAfterResponse();
断言空的任务链
Gergő D. Nagy 贡献了QueueFake
类的新方法 assertPushedWithoutChain
,用于测试一个空的任务链:
Queue::fake();
Queue::assertPushedWithEmptyChain(ExampleJob::class);
没有待处理的迁移事件
Wouter Rutgers 贡献的代码会在 up
或 down
函数不包含任何迁移语句时触发 NoMigrations
迁移事件。一般情况下你用不到它,以下是 up
函数不包含任何迁移语句时的触发的事件:
$this->fireMigrationEvent(new NoMigrations('up'));
6.13.0 与 6.14.0 的所有不同可在 GitHub 上查看,新特性和更新内容请查看下方列表。Laravel 6.0 的完整发布日志请见 GitHub v6 修改日志:
v6.14.0 升级说明
新增
- 新增
Illuminate\Bus\Dispatcher::dispatchAfterResponse()
方法(#31300、8a3cdb0) - 新增
Illuminate\Support\Testing\Fakes\QueueFake::assertPushedWithoutChain
方法(#31332、7fcc6b5) -
Illuminate\Events\Dispatcher
类添加了Macroable
trait(#31317) - 新增
NoPendingMigrations
事件(#31289、739fcea)
修复
- 使用当前 DB 创建 Doctrine 连接(#31278)
- 在
vendor:publish
命令中发布标签时移除重复的显示结果(#31333) - 修复
pluck
方法传入的列名包含空格的问题(#31299) - 修复事件调度器中通配符缓存的问题(#31313)
- 修复
RedisStore
中的无限值问题(#31348) - 修复 SqlServer 中删除包含默认值的列的问题(#31341)
修改
- 在 mysql 8.1 和 pgsql 9.5 的队列工作者中使用 SKIP LOCKED(#31287)
-
Illuminate\Bus\Queueable::middleware()
中不合并来自于方法和属性的中间件(#31301) - 从
Illuminate\Console\Command
中分离specifyParameter()
方法到HasParameters
trait(#31254) - 确保将数据库字段更改为 JSON 格式不包含字符集(#31343)
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。