Ginza.rb 第83回 に初参加してきました

Ginza.rb は初参加でした。

ginzarb.connpass.com

Rails 7.2 リリースのメジャーフィーチャーは前回やっており、今回はマイナーフィーチャーについて参加者全員で眺めながら会話をして理解を深めていく会でした。

会場(めっちゃ綺麗)と飲食のスポンサーはメドピアさんでした。ありがとうございました!

当日の資料

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 をわざわざ付けて実行&確認とかやっていたので、これは便利。

クエリの実行回数を簡単にテストでチェックできるテストヘルパが追加された

便利。さっそく自分のプロジェクトでもテスト追加してみようって思った。

参加しての感想

リリースノートの各アイテムについて、自分以外のエンジニアからの「これは良い!」とか「これ微妙じゃない?」みたいな温度感を感じ取りながら詳細について理解を深められたのがとても勉強になりました。事前にまとめられた情報の精度というか読み解きがあっての進行もあると思って、勉強会の進行という観点でもめちゃくちゃ参考になりました!また参加するぞ!!