177 wires and counting

$ follow Rails

Keep up with Rails in about 3 minutes: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.

Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.

$ status

wire 2026-10-28
stories 51

© 2026 RepoJournal Home Showcase How it works Privacy

$ the-wire · showcase

Action Cable orders a connection's commands, log filtering matches decoded param names

By RepoJournal · Filed · About Rails · Composed from the cited sources · methodology

Action Cable's socket now serializes all of a connection's work instead of racing it across the worker pool, and Rails stopped logging URL-encoded sensitive query parameter names in cleartext.

Process each Action Cable connection's commands in order rails/rails

by rubys

Server::Socket#receive used to hand each incoming WebSocket message to the worker pool as its own job, so with the default four threads two messages from one client could run concurrently and in either order (a page navigation's unsubscribe-then-subscribe pair is exactly that shape). Each connection's commands now execute in order.

Match URL-decoded query parameter names when filtering logs rails/rails

by bastidotnet

filtered_path and filtered redirect locations compared the raw query parameter name against filter_parameters, so a name sent as %70assword or access+token slipped past :password and "access token" and landed in the log while params was filtered. Names are now decoded once with URI.decode_www_form_component before matching, and the filtered URL keeps its original encoding and parameter order.

Serialize perform_work with a connection's commands rails/rails

by Sam Ruby

Stream callbacks and periodic timers went through Socket#perform_work straight to the worker pool and could observe a channel half torn down alongside its own subscribe, unsubscribe or close. They now route through the socket's serial executor, completing the ordering work begun in the receive path; the SerializedExecutionDelegator is built in Socket rather than as Worker#serial_executor.

Remove Markdown directives in Action Mailbox rails/rails

by Xavier Noria

Xavier Noria stripped Markdown directives out of the Action Mailbox docs, with the matching Action Pack cleanup following in the same pass. Documentation only: no runtime behavior changes.

Harden against rogue agents (safe git + jail cleanup + more verifier checks) rails/lemans

by ardecvz

lemans hardened its agent harness: trials keep git state outside the app dir, --jail cleanup runs even when miniswen is killed, and the verifier now scores recorded failures and never-run tests as 0.0 and rejects results when Minitest's core methods are redefined outside its gems, so a run cannot pass by skipping or stubbing the suite.

Quick answers

What shipped in Rails on October 28, 2026?
Action Cable's socket now serializes all of a connection's work instead of racing it across the worker pool, and Rails stopped logging URL-encoded sensitive query parameter names in cleartext. In total, 39 commits and 12 pull requests landed.
Who contributed to Rails on October 28, 2026?
4 developers shipped this update, including Xavier Noria, rubys, bastidotnet, and ardecvz.
What were the notable Rails updates?
Process each Action Cable connection's commands in order, Match URL-decoded query parameter names when filtering logs, and Serialize perform_work with a connection's commands.