2025/09/24分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
actionmailer/CHANGELOG.md
- Add structured events for Action Pack and Action Dispatch
- Add engine route filtering and better formatting in
bin/rails routes.
activejob/CHANGELOG.md
activestorage/CHANGELOG.md
- Add
ActiveSupport::StructuredEventSubscriberfor consuming notifications and emitting structured event logs. - Introduce
ActiveSupport::Testing::EventReporterAssertions#with_debug_event_reportingto enable event reporter debug mode in tests.
Use released sdoc gem instead of GitHub version
Gemfileの修正です。
sdocを使用するのにGitHubのソースを指定していたのを、rubygemsにリリースされているgemを使用するよう修正しています。
Optionally skip bundler-audit.
railtiesの修正です。
bundle-auditを使用していないアプリケーションで、app:updateを実行した場合に、bundle-auditに関する設定ファイルを生成しないよう修正しています。
Merge pull request #55690 from Shopify/ac-structured-event-subscribers
ActiveSupport::Notificationsで発行されるeventをstructured eventsで出力する為のクラス(ActiveSupport::StructuredEventSubscriber)、及び、各コンポーネントで、そのクラスを使用してnotificationで発行していたeventをstructured eventsで出力出来るよう修正しています。このPRでは、structured eventsで出力する為の対応の準備まで行っており、実際のRailsのアプリケーションの挙動の変更については未対応で、別のPRで対応予定との事です。
Indent private methods with two spaces consistently and add a note about it
rails guideのGetting Started with Railsの修正です。
private methodを定義する際のインデントの数を、Railsの規約に合わせるよう修正しています。
Gemfileの修正です。
mysql2 gemのバージョンを0.5.6以下に固定しています。0.5.7だとprepared statementsを有効にしている場合にsegfaultしてしまう問題がある為。
Fix tests now that Propshaft::Server is a middleware
railtiesのテストの修正です。
最新のpropshaft gemの変更(Propshaft::ServerがRack middlewareになった)によりrailtiesのテストがfailしていたのを修正しています。
Merge pull request #55744 from Shopify/structured_event_subscriber_cleanup
structured eventを発行する際に、notification event1つ毎にstructured eventを1つ発行するよう修正しています。
Gemfileの修正です。
sdoc gemを最新バージョンに更新しています。
Merge pull request #55750 from Shopify/remove_subscriber_publish_event
Active Supportの修正です。
ActiveSupport::Subscriberのsubclassから、使用していないpublish_eventメソッドを削除しています。
Introduce with_debug_event_reporting to enable event reporter debug mode Active Supportの修正です。
指定したblockの範囲でのみevent reporterのdebug modeを有効にできる、ActiveSupport::Testing::EventReporterAssertions#with_debug_event_reportingメソッドを追加しています。
with_debug_event_reporting do service_that_reports_debug_events.perform end
Make engine routes filterable in bin/rails routes, improve engine formatting
actionpack/lib/action_dispatch/routing/inspector.rbの修正です。
bin/rails routesで、 engine routesをフィルタリング出来なかったのを、出来るよう修正、及び、routesを出力する際のフォーマットを調整しています。
$ bin/rails routes -e engine_only Routes for application: No routes were found for this grep pattern. For more information about routes, see the Rails guide: https://guides.rubyonrails.org/routing.html. Routes for Test::Engine: Prefix Verb URI Pattern Controller#Action engine GET /engine_only(.:format) a#b