Ginza.rb は初参加でした。
Rails 7.2 リリースのメジャーフィーチャーは前回やっており、今回はマイナーフィーチャーについて参加者全員で眺めながら会話をして理解を深めていく会でした。
はじまるよー #ginzarb pic.twitter.com/SfPIwmF0Te
— Koji NAKAMURA (@kozy4324) 2024年8月30日
会場(めっちゃ綺麗)と飲食のスポンサーはメドピアさんでした。ありがとうございました!
当日の資料
Rails7.2のマイナーフィーチャーで気になったところ · GitHub
以下、会話で記憶に残っているものや個人的に気になったアイテムについてのメモ。
rails bootコマンドの追加
これ嬉しいのか?というツッコミがあり、Rails 本体の開発者は嬉しいかもねという雰囲気を感じた。
rails cしたときのプロンプトのデフォルトが変更された
どの環境で Rails コンソールしているのかパッと分かるのすごく良いという声が多かった。 そもそもで本番サーバーに Rails コンソールする是非はどうなんだ?という話があるけど、会社ごとに運用は多々あるからねぇ...とお茶を濁しておく。
ErrorReporterにメッセージを送るためのメソッドが生えた
コミットで追加されたサンプルコードがめちゃくちゃユースケースが伝わって最高!という話で盛り上がった。 https://github.com/rails/rails/pull/49951/files#diff-2bf9f348945534785fefa2d491085e108aa71faa52f2e3dd140eade408b06bf3
ログから、特定のアクションでクエリが何回実行されたかすぐ確認できるようになった
ログに有益な情報増えるのはめっちゃ良い。
部分テンプレートで自動でアサインされるローカル変数を、strict locals時に無視するようになった
ローカル変数をマジックコメントで宣言化か〜、という声多数。マジックコメントだと静的解析できない(しづらい?)という点はデメリット大きいのではという感じ。
IPアドレスによるアクセス制限をかける機能の追加
コントローラーで宣言的に書ける I/F が DHH らしくて良いという話で盛り上がった。
モデルのinspectの結果が変わる
Shopify の本番であるオブジェクトを inspect したら 9秒かかってしまってできた変更だとか。 Shopify の DB 設計がそもそもおかしいのでは?という身も蓋もないツッコミが出てきて面白かった。
ARのexplainメソッドの適用範囲が広がった
多くの Rails エンジニアが待ち望んでいた機能では?と盛り上がった。たしかに自分でも count の生 SQL を探して explain
をわざわざ付けて実行&確認とかやっていたので、これは便利。
クエリの実行回数を簡単にテストでチェックできるテストヘルパが追加された
便利。さっそく自分のプロジェクトでもテスト追加してみようって思った。
参加しての感想
リリースノートの各アイテムについて、自分以外のエンジニアからの「これは良い!」とか「これ微妙じゃない?」みたいな温度感を感じ取りながら詳細について理解を深められたのがとても勉強になりました。事前にまとめられた情報の精度というか読み解きがあっての進行もあると思って、勉強会の進行という観点でもめちゃくちゃ参考になりました!また参加するぞ!!