RepoJournal
Rails

@rails

Ruby on Rails - Shopify, Basecamp, GitHub all run on it

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

One email a day. Unsubscribe in one click.

Pick a date

Topics: Ruby Full archive →

The Wire · Showcase

RAILS FIXES PLUCK REGRESSION, BOOTSNAP DITCHES MARSHAL FOR MSGPACK

By RepoJournal · Filed · About Rails

Rails patched a critical regression in association plucking for new records that broke `ids` queries overnight, while bootsnap replaced Date marshalling with faster, more compact msgpack serialization.

The pluck regression [1] hit after Rails delegated `Relation#ids` to `pluck`, causing associations on unsaved records to return empty arrays instead of reading their in-memory target. A post with tags assigned but not yet persisted would now report zero IDs. The fix reads the target directly for new records, restoring the pre-regression behavior. In parallel, Rails shipped two critical Active Job fixes: cursor serialization [2] now routes through `ActiveJob::Arguments` to preserve non-primitive types like Date and TimeWithZone across interrupt-resume cycles, and prepared statement handling [4] no longer forces preparation when the caller didn't request it, fixing transaction-pooling proxy incompatibilities. Bootsnap's msgpack overhaul [5] replaces Date marshalling with a three-integer packer that's more compact and faster without touching Marshal, part of a broader shift away from serialization that creates security surface. Rails also shipped internal predicate-builder hooks [3] for Active Record types to customize how attributes appear in hash predicates.

One email a day. Unsubscribe in one click.

Action items

References

  1. [1] Pluck from the target when the owner is a new record rails/rails
  2. [2] Serialize continuation step cursors through Active Job arguments rails/rails
  3. [3] Add query predicate hooks for Active Record types ↗ rails/rails
  4. [4] Fixes #58371 rails/rails
  5. [5] Replace Date Marshalling with recursive msgpack ↗ rails/bootsnap

Quick answers

What shipped in Rails on August 6, 2026?
Rails patched a critical regression in association plucking for new records that broke `ids` queries overnight, while bootsnap replaced Date marshalling with faster, more compact msgpack serialization. In total, 26 commits and 14 pull requests landed.
Who contributed to Rails on August 6, 2026?
8 developers shipped this update, including Donal McBreen, Kenta Ishizaki, jsaubry, Cam Allen, skipkayhil, jeremy, Jean Boussier, and dependabot.
What were the notable Rails updates?
Pluck from the target when the owner is a new record, Serialize continuation step cursors through Active Job arguments, and Add query predicate hooks for Active Record types.

More from @rails

Daily updates, in your inbox

Follow Rails

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

or

One email a day. Unsubscribe in one click. Read a past issue →

Elsewhere on the wire

Want every project, not just this one?