Rails 7.2 新特性与改进

August 08, 2024 · 1 min read

Rails 7.2 正在接近它的最终发布,以下是 Rails 7.2 中的一些新特性和改进总结概览

更好的生产环境默认设置

  • YJIT:在 Ruby 3.3 或更新版本中默认启用,可以提供15-25%的延迟改善。
  • Puma线程数量:默认线程数从5减少到3,提高请求响应时间。
  • 默认 Dockerfile:包含jemalloc,用于优化内存分配。

开发容器配置

  • 生成开发容器配置,包括 .devcontainer 目录、Dockerfile、docker-compose.yml 和 devcontainer.json 文件。
  • 默认包含以下容器:
    • Redis (用于 Kredis, Action Cable 等)
    • 数据库 (SQLite, Postgres, MySQL 或 MariaDB)
    • 无头 Chrome (用于系统测试)
    • 已配置的 Active Storage 使用本地磁盘和预览功能
  • 创建新应用:rails new myapp --devcontainer
  • 现有应用:rails devcontainer

Rails 指南的新设计

  • 新设计特点:
    • 更整洁、更简单的设计
    • 与主页更一致的字体、配色方案和标志
    • 更新的图标
    • 简化的导航
    • 滚动时固定的“章节”导航栏

其他改进

  • 默认添加浏览器版本保护。
  • Ruby 3.1 成为新最低版本要求。
  • 默认添加渐进式 Web 应用(PWA)文件。
  • 默认添加 Omakase RuboCop 规则。
  • 默认添加 GitHub CI 工作流到新的应用程序。
  • 默认添加 Brakeman 到新的应用程序。
  • 阻止在事务中调度任务。
  • 每个事务的提交和回滚回调。
  • 在 bin/setup 中建议配置 puma-dev。

更多详情:请查看 Rails 7.2 发布注释