嗨,我是 zzak,这是2024年第一期“本周 Rails”资讯。
今年伊始,我们收到了大量的贡献,近170个提交,很抱歉我们无法将所有内容都放在一期通讯中。
Rails UJS 自 Rails 7 起已弃用,是时候说再见了
虽然官方包 @rails/ujs 仍发布在 NPM 上,并且为资产管道提供的最终编译目标也仍然存在,但所有的源文件、测试和内部打包任务都已被移除。
添加默认的 PWA manifest 和 service worker 文件
新生成的 Rails 应用现在包含 manifest 和 service worker 文件,可以成为完整的渐进式 Web 应用。
为新的 Rails 应用添加 rubocop-rails-omakase
这为使用 rubocop-rails-omakase gem 的新 Rails 应用设置了基本的 RuboCop 配置。
默认在新应用中添加 Brakeman
新生成的 Rails 应用现在也包含 Brakeman,用于增强安全性漏洞检查。
默认创建 GitHub CI 文件
随着 RuboCop 和 Brakeman 被添加到新应用中,我们也添加了默认的 GitHub CI 工作流文件。
添加 allow_browser 以设置应用程序的最低版本要求
现在您可以轻松指定您支持哪些浏览器来允许访问您的应用程序。
将所需的 Ruby 版本提升到 3.1.0
团队正努力保持领先,由于 Ruby 3.0 将于3月结束支持,现在似乎是提高该要求的合适时机。
通过 Kredis limiter 类型为 Action Controller 添加速率限制
最后,但并非最不重要的一点是,我们在 Action Controller 中内置了一个新的速率限制 API,它依赖于 Kredis limiter 类型。
class SessionsController < ApplicationController
rate_limit to: 10, within: 3.minutes, only: :create
end
class SignupsController < ApplicationController
rate_limit to: 1000, within: 10.seconds,
by: -> { request.domain }, with: -> { redirect_to busy_controller_url, alert: "Too many signups!" }, only: :new
end
您可以在 这里 查看所有更改列表。 上周有 40 位贡献者 为 Rails 代码库做出了贡献!
下次再见!
订阅以通过邮件获取这些更新。