Rails 6.0.1 发布,改进新增功能以及 Bugfix
Rails 6.0.1 稳定版已发布,这也是 6.0 系列的首个维护版本。其中 Rails 6.0 值得关注的更新包括:用于处理电子邮件的 Action Mailbox、提供富本文编辑功能的 Action Text、对多数据库的支持、对并行测试的支持、默认使用 Webpacker 作为 JavaScript 打包器,以及默认使用 Zeitwerk 作为 Ruby 代码加载器。
根据项目在 GitHub 上更新的版本说明,Rails 6.0.1 的更新内容主要是对 6.0 新增的功能进行改进,以及修复部分问题。
Active Support
-
ActiveSupport::SafeBuffer支持Enumerator方法 -
当服务器返回“已达到最大客户端数”错误时,Redis 缓存存储会失败
-
修复了更改由内存缓存存储返回的值会意外更改缓存的值的问题
-
zeitwerk模式支持下的默认转换器(inflector)支持重载:# config/initializers/zeitwerk.rb Rails.autoloaders.each do |autoloader| autoloader.inflector.inflect( "html_parser" => "HTMLParser", "ssl_error" => "SSLError" ) end如此一来,我们便可以调整每个 basename 的转换方式,而无需触及全局的 Active Support 转换规则。这些转换器会 fallback 至
String#camelize,因此对于未重载的 basename,仍会考虑现有的转换规则。如果不想完全依靠
String#camelize,请查看自动加载指南中的zeitwerk模式 -
改进
Range#===,Range#include?和Range#cover? -
不在 Solaris 上使用
Process#clock_gettime(CLOCK_PROCESS_CPUTIME_ID)
此外,该版本针对 Active Record、Action View、Action Pack、Active Storage 和 Railties 等功能也进行了改进或 Bugfix。