大家好,周五快乐!
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 功能损坏,因为我们开始在迁移之前加载 schema。这阻止了迁移运行。此补丁在迁移之前清空 schema,确保迁移按预期运行。
改进 ActionController::TestCase 以公开二进制编码的 request.body
此更改改进了 ActionController::TestCase,使其能够公开二进制编码的 request.body。Rack 规范明确指出:
输入流是一个类似 IO 的对象,其中包含原始 HTTP POST 数据。如果适用,其外部编码必须为“ASCII-8BIT”,并且必须以二进制模式打开。
到目前为止,其编码通常是 UTF-8,这不能准确反映生产行为。
修复 7.1 格式中未保存关联记录的编组
在此更改之前,7.1 格式仅在关联已加载时编组关联记录。但仅包含未保存记录的关联将被跳过。
将 Trix 版本更新至 2.1.7
此更改将 vendored Trix 版本更新至 2.1.7,其中包括对即将发布的 #51729 安全修复的支持以及 增强的表单支持(ElementInternals 和 HTML5 验证)。
在 Rails 中执行更多参数解析,而不是在 Rack 中
Rack 正在考虑对查询字符串的解析方式进行一些小的更改。为了在处理各种场景时更独立于这些上游更改,此 Pull Request 引入了各种改进,以便在 Rails 端进行更多解析。
重构 Action Mailer 指南
此 Pull Request 更新并改进了“Action Mailer Basics”Rails 指南文档。如果您熟悉这方面的内容,请查看并提出改进建议。
支持 Prism 用于 ActionView::Template.spot
此更改为 Rails 中的 ErrorHighlight 添加了对 Prism 解析器的支持。
修复测试中 content type 设置为 nil 时的 NoMethodError
此 Pull Request 更改了 ActionController::TestCase 的 content type 检查,以处理 nil content type,这样 Rails 就可以抛出一个更具描述性的 Unknown Content-Type 错误,而不是一个稍微晦涩的 NoMethodError。
您可以在 此处 查看所有更改列表。 上周,有 34 位贡献者 为 Rails 代码库做出了贡献!
下次再见!
订阅以通过邮件获取这些更新。