2021年11月26日 星期五

可组合的 blobs、改进的 upsert 以及更多!

由 morgoth85 发布

Wojtek 在此,带来 Rails 的最新更新。今天所有更新都免费提供给您。
感谢 所有贡献者 为 Rails 所做出的贡献。从一次性贡献者到日常提交者。

为 Active Storage Blob 添加 compose 方法
现在可以连接多个 Blob 了。

在 Active Storage 上支持自定义元数据
Blob 上的自定义元数据现在将持久化到远程存储。

允许配置 upsert_all 中要更新的列列表
之前,您只能通过 `:on_duplicate` 自定义更新 SQL 语句。现在新增了一个 `:update_only` 选项,允许您在发生冲突时提供要更新的列列表。

公开池/连接的角色/分片
了解连接或池的角色和分片可能很有用。以前,除了询问 `connected_to?` 之外,没有其他方法可以找到角色或分片。

允许从 Rails.error.handle 返回备用值
如果 `handle` 块内的代码引发错误,则会返回传递的备用值。
改进了 `later`,使其备用选项成为一个可调用对象。

为 Pathname 添加 existence 方法
代码的简写,例如

Rails.root.join('file').exist? && Rails.root.join('file').read

Rails.root.join('file').existence&.read

将默认 X-XSS-Protection 标头更改为 '0'

此标头已被弃用,并且其触发的 XSS 审计器已从所有主要现代浏览器(以内容安全策略为优先)中移除,而这些浏览器最初实现了此标头。

弃用 PerThreadRegistry
此模块已软弃用很长时间,但由于它是在内部使用的,因此没有发出弃用警告。现在有了。应用程序应改用 `Module#thread_mattr_accessor`。

自上次以来,有 26 人 为 Rails 贡献了代码。所有更改可以在 此处 查看。下周再见!