您好,我是 Greg。让我们一起看看本周 Rails 代码库的更改。
修复 UNION SELECT 语句的括号问题
在构建涉及 LIMIT 或 ORDER BY 的 UNION 或 UNION ALL 查询时,Arel 之前生成的 SQL 是无效的。此拉取请求更改了 Arel::Visitors::ToSql,以便 Union 和 UnionAll 节点中的 SELECT 语句被包含在括号中,以避免语法错误。
修复 SQLite3 中修改表时复制虚拟列的问题
当 Rails 修改 SQLite 表时,它会创建一个新表,并将旧表中的结构和数据复制过来。
问题在于虚拟列被错误地复制(被复制为普通列)。此拉取请求修复了此问题。
修复 ActiveJob::EnqueueAfterTransactionCommit API
perform_later 应该在成功时返回 Job 实例,在出错时返回 false。当作业的入队被自动延迟时,当然无法预测实际入队是否会成功,但为了向后兼容,最好假设它会成功。
如有必要,您可以保留作业实例,并在事务完成后检查 #successfully_enqueued?。
您可以在 这里查看所有更改列表。
上周,我们有 31 位贡献者为 Rails 代码库做出了贡献!
下次再见!
订阅以通过邮件获取这些更新。