2016 年 7 月 15 日星期五

Rails 本周要闻:Y U 还没有升级到 Rails 5?!

发布者 chancancode

来自 Claudio 的问候。

本周看到一些较小的修复应用到 Rails 5 中。没有主要内容。没有内容会阻碍将所有应用从 Rails 4.2 升级到 Rails 5。所以赶快加入吧!您可以做到的!

Rails 4.2.7 和 4.1.16 已发布!

查看博文,获取所有变更日志的链接。正如 Rails 5 已发布,这可能是 Rails 4.1 的最后一个版本。请花一些时间将您的应用升级到 Rails 4.2 或 Rails 5。

本周的 Rails 贡献者

本周共有 32 人为 Rails 做出贡献,其中包括 6 名首次参与者。恭喜!请随时查看本周与 master 合并的所有变更。 

新增内容

增加对批量处理中限制的支持

ActiveRecord 的批量处理方法现支持 limit,因此您可以编写如 Post.limit(10_000).find_each { ​|post| … }​ 的语句。

修复内容

修复 AR::to_param 以最大化内容

文档指出 AR::to_param 应使用单词截取超过 20 个字符的值。此提交强制执行此行为,使用尽可能多的字符以最大化 URL 中包含的信息。

AS::Duration 可正确序列化空值

ActiveSupport::Duration::ISO8601Serializer 在被要求序列化零长度持续时间(例如,ActiveSupport::Duration.parse(0.minutes.iso8601))时不会失败。

AS::TimeZone#strptime 可引发正确的错误

试图解析无效日期,例如 strptime('1999-12-31', '%Y/%m/%d'),现在将引发 ArgumentError,而不是令人困惑的 NoMethodError: undefined method empty?

当在 env 中设置时,检查 request.path_parameters 编码

路径参数的编码现已在分发过程中更早地进行检查,因此直接转至 Rack 应用或跳过控制器实例化的路由不必对非 UTF8 字符进行防御。

改进内容

加快 RDoc 生成速度

对 rails/master 的每次提交都会自动更新 Rails 文档。通过仅包含自上次生成以来包含变更的文件,RDoc 生成的速度已加快。

总结

跟我念:“下周,我将把我的所有项目升级到 Rails 5。”

💬 “下周我将升级所有项目到 Rails 5” 💬

希望您能做到!最后,如果您恰巧于今年夏季旅行到阳光明媚的加州,请到洛杉矶 Ruby 聚会来打个招呼。🌇😎🏄

–Claudio