2013 年 11 月 1 日,星期五

[公告] Rails 4.0.1 已发布!

作者: rafaelfranca

各位好,

我很高兴地宣布 Rails 4.0.1 已发布。这是一个错误修复版本,包含超过 460 次提交。

此版本具有关于活动记录如何处理后续 order 调用的重要更改。在 Rails 4.0.0 中,当您执行类似以下操作时

User.order("name asc").order("created_at desc")

后续调用 order 将预先添加到 ORDER BY 子句中,从而形成以下 SQL

SELECT * FROM users ORDER BY created_at desc, name asc

在 Rails 4.0.1 中,已恢复 Rails 3 的行为,生成的 ORDER BY 子句类似于以下内容

SELECT * FROM users ORDER BY name asc, created_at desc

我们选择恢复该行为,因为添加了一个主要的后向不兼容性,这使得在不大幅度更改应用程序代码的情况下更难升级。此外,我们认为较旧的行为是一个错误,因为它与都链接到一起的所有其他作用域方法的行为不同。因此,我们采取了最保守的恢复它的途径,以与顺畅升级到 Rails 4 的概念保持一致。

对于想要旧行为的人,您可以使用 .reorder.unscope 删除 ORDER BY 子句并生成另一个。

此外,此版本增加了一些性能改进,以使 Rails 4 运行得更快。

自 4.0.0 以来发生的变更

若要查看每个 gem 的变更,请阅读 GitHub 上的变更日志

完整列表

要查看完整的变更列表,请在 GitHub 上查看所有提交

SHA-1

如果您想验证您的 gem 是否与我上传的 gem 相同,请使用以下 SHA-1 哈希值

  • 6f2e4d74b34904b61a47187dd879dca3b26fc2d8 actionmailer-4.0.1.gem
  • 063f16cfcf62f766a893fe09e35241bdae7cd70e actionpack-4.0.1.gem
  • b50a071bd924fb27e4c41bb40c9cb483457bc21c activemodel-4.0.1.gem
  • 1a8b173da2d8e2ae27edfeb99164c2574a1d7ddd activerecord-4.0.1.gem
  • 9a58bc3c086628ef8028716eeb7c0cb0f8c7e39a activesupport-4.0.1.gem
  • 4663f4d0607ff59cf0ae5a55b268d27d658fdcc8 rails-4.0.1.gem
  • 22e23959dc14101697eb2bb8acc00a81cc6c3884 railties-4.0.1.gem

我想感谢所有为此次发布提供帮助的贡献者。