Tech Racho エンジニアの「?」を「!」に。
  • Ruby / Rails関連

Rails 7.2 Beta 1がリリースされました

Ruby on Rails 7.2 Beta 1がリリースされました。

参考までに、7-2-stableブランチは少し前に作成されています↓。

詳しくは以下のコミット差分をご覧ください。

🔗 7.2 Beta 1の概要

詳しくは上記リリース情報を参照してください。

他に気づいた点として、非推奨化コードが多数削除されています↓が、アップグレードガイドに記されている対応項目は今のところ1個にとどまっています。

参考: Remove all deprecated code by rafaelfranca · Pull Request #49624 · rails/rails
参考: 3 Upgrading from Rails 7.1 to Rails 7.2 -- Upgrading Ruby on Rails — Ruby on Rails Guides

1: production向けのデフォルト設定値を改善

  • YJITがデフォルトで有効になる(Ruby 3.3以降を利用する場合)
  • Pumaのデフォルトスレッド数が5から3に変更
  • Dockerfileでjemallocがデフォルトで有効になる

2: devcontainerでの開発をサポート

devcontainer(development containerの略)を用いてフル機能の開発環境をサポートします。

具体的には、新規Railsアプリで.devcontainer/フォルダの中にDockerfile、docker-compose.yml、devcontainer.jsonファイルが生成されます。

3: Rails Guidesのデザインが変更される

Ruby on Rails Guidesのデザインが変更されます。新デザインは以下のEdgeGuidesで見られます。

参考: Ruby on Rails Guides -- https://edgeguides.rubyonrails.org/

また、Rails Guidesのいくつかのコンテンツが大きく書き直されています。

4: その他

詳しくはRuby on Rails 7.2 Release Notes — Ruby on Rails Guidesを参照してください。

  • デフォルトでブラウザのバージョン制限が適用される
  • Ruby 3.1が最小のRubyバージョンとなる
  • PWAファイルがデフォルトで生成される
  • 新規アプリケーションで以下がデフォルトで有効になる
  • ジョブがトランザクション内でスケジューリングされるのを防止
  • コミットやロールバックのコールバックをトランザクションごとに設定可能
  • bin/setuppuma-devの設定を提案

参考: Rails 7.2 Beta 1をローカルインストールする

Macbook Pro M1 2021環境と、Ruby 3.3.1でrails newしてみました。

$ ruby -v
ruby 3.3.1 (2024-04-23 revision c56cd86388) +YJIT [arm64-darwin23]

プロジェクトディレクトリを適当に作成(ここではrails72beta1)してディレクトリに移動し、bundle initでGemfileを生成し、内容を以下に変更します。

$ mkdir rails72beta1
$ cd rails72beta1
$ bundle init
Writing new Gemfile to /Users/hachi8833/deve/rails/rails72beta1/Gemfile

Gemfileを以下のように変更します。

# Gemfile
# frozen_string_literal: true

source "https://rubygems.org"

-gem "rails"
+gem "rails", github: "rails/rails", tag: "v7.2.0.beta1"

以下を実行してRailsアプリを生成します。

$ bundle exec rails new .

これで以下を実行すればRails 7.2 Beta 1アプリが起動します。

$ rails s

関連記事

Rails 7.1 Beta 1がリリースされました


CONTACT

TechRachoでは、パートナーシップをご検討いただける方からの
ご連絡をお待ちしております。ぜひお気軽にご意見・ご相談ください。