$ the-wire · showcase
SOLID_CABLE GETS REAL MESSAGES THROUGH BROADCAST_BATCH
By RepoJournal · Filed · About Rails
Rails' own action cable backbone just got a fix that makes broadcast_batch carry the actual payload instead of a hollow pointer.
Solid Cable is finally passing the actual message through broadcast_batch, a fix from Nick Pezza that closes a data-integrity gap in the realtime layer [1]. That same PR, built atop the earlier change to "pass around the actual message" [2], means subscribers no longer receive a stale placeholder when multiple messages hit the wire at once. Meanwhile, Mission Control Jobs is tightening its belt: a new fix ensures config.active_job.default_page_size is applied reliably by reordering initializers [3], and a pair of PRs address duration calculations when scheduled_at is absent [4] plus verbatim Ruby warnings on splat arguments [5]. Over in Rails core, Ryuta Kamizono strips out no-op marshalling format_version test handling now that 7.1 is the only supported format [6], and Jean Boussier keeps shaving microseconds off url_for by avoiding needless hash operations [7]. All quiet on the security front, but this is the kind of cleanup that keeps the framework humming.
Action items
- → Review solid_cable broadcast_batch changes if you rely on realtime payload integrity rails/solid_cable [plan]
- → Install the mission_control-jobs default_page_size fix if you use config.active_job.default_page_size rails/mission_control-jobs [plan]
- → Keep an eye on Rails core url_for optimizations for potential perf wins in routing-heavy apps rails/rails [monitor]
References
- [1] Pass the actual messages to broadcast_batch rails/solid_cable
- [2] pass around the actual message rails/solid_cable
- [3] Fix config.active_job.default_page_size not being applied rails/mission_control-jobs
- [4] Fix #duration when #scheduled_at is not set rails/mission_control-jobs
- [5] Parenthesize splat arguments to avoid ambiguity warnings rails/mission_control-jobs
- [6] Remove no-op `Marshalling.format_version` handling from tests rails/rails
- [7] url_for: avoid deleting Hash keys just to add them back rails/rails