2024 年 10 月 18 日星期五

新维护策略、CVE 发布、Rails World 演讲等等!

作者:vipulnsward

大家好,周五快乐!

Vipul 来给大家带来本周 Rails 的最新更新。让我们开始吧!

Rails World 演讲发布了!
您可以查看这篇文章中关于这些演讲的回顾:博客文章,或者访问Rails 的 YouTube 频道观看完整的播放列表。

新的 Rails 维护策略和维护结束公告
这些更改旨在明确支持时间线,并帮助您有效地规划 Rails 升级。新的策略的完整详细信息可以在Rails 网站上找到。

Rails 版本 6.1.7.9、7.0.8.5、7.1.4.1 和 7.2.1.1 已发布!
这些是针对 4 个可能的 ReDoS(正则表达式拒绝服务)攻击的安全补丁。所有这些仅影响低于 3.2 的 Ruby 版本,因此如果您正在使用这些旧的 Ruby,请尽快更新 Rails 版本。

修复 db:migrate:reset 任务
在修复之前,db:migrate:reset 会出现故障,因为我们在迁移之前开始加载模式。这会阻止迁移运行。此补丁在迁移之前清空模式,确保迁移按预期运行。

改进 ActionController::TestCase 以公开二进制编码的 request.body
此更改改进了 ActionController::TestCase,使其公开二进制编码的 request.body。rack 规范明确指出

输入流是一个类似 IO 的对象,它包含原始 HTTP POST 数据。如果适用,其外部编码必须为“ASCII-8BIT”,并且必须以二进制模式打开。

到目前为止,它的编码通常是 UTF-8,这不能准确地反映生产行为。

修复 7.1 格式中未保存的关联记录的序列化
在此更改之前,7.1 格式仅在加载关联时才会序列化关联记录。但只包含未保存记录的关联将被跳过。

将供应商 Trix 版本更新为 2.1.7
此更改将供应商 Trix 版本更新为2.1.7,其中包括对即将发布的#51729中的安全修复和增强的表单支持(ElementInternals 和 HTML5 验证)的支持。

在 Rails 而不是 Rack 上执行更多参数解析
Rack 正在考虑对他们如何解析查询字符串进行一些细微更改。为了在处理各种情况时更独立于这些上游更改,此拉取请求引入了各种改进,以在 Rails 端处理更多解析工作。

重新设计的 Action Mailer 指南
此拉取请求更新并改进了“Action Mailer 基础”Rails 指南文档。如果您熟悉这方面,请查看它并提出改进建议。

为 ActionView::Template.spot 支持 Prism
此更改为 Rails 中的 ErrorHighlight 添加了对 Prism 解析器的支持。

修复在测试中将内容类型设置为 nil 时的 NoMethodError
此拉取请求更改了 ActionController::TestCase 的内容类型检查以考虑 nil 内容类型,因此 Rails 可以引发更具描述性的 Unknown Content-Type 错误,而不是稍微模糊的 NoMethodError

您可以在此处查看所有更改。 过去一周,Rails 代码库有34 位贡献者

下次再见!

订阅以接收这些更新邮件。