Ruby on Rails: The Ractor Safety Sweep

A coordinated push from the Shopify team froze and hardened core Rails internals—MIME types, attribute types, primary keys, and view helpers—to make them safe for use inside Ractors, while separate fixes addressed attribute type coercion and association query bugs.

Duration: PT2M22S

Episode overview

This episode is a short developer briefing from Ruby on Rails.

It explains recent repository work in plain language.

  • Show: Ruby on Rails
  • Published: 2026-08-05T13:15:55Z
  • Audio duration: PT2M22S

Transcript excerpt

This excerpt keeps the crawler page concise. Listen to the episode or use the RSS feed for the full update.

Good morning. It's August 5th, 2026, and this is Ruby on Rails.

The dominant story in the codebase this week is Ractor safety. Roughly a third of today's activity traces back to one goal: making Rails internals shareable across Ractors by freezing objects that used to be mutable.

Etienne Barrie led several of these efforts—making Mime types ractor-shareable in PR 57994, freezing Proc layouts in PR 58363, and making date-time selector readers shareable in PR 58357. Edouard-chin contributed the Active Record side: freezing attribute type objects in PR 58352 and making primary keys ractor-safe…

Second theme: subtle correctness bugs in Active Record's attribute and association layers. PR 58381 fixes a case where overriding a column's type with a boolean default raises a "to i" error—a regression traced back to how column defaults get deserialized. PR 58372, merged by Ryuta Kamizono, fixes an association bug…

One more to flag: PR 58375 from Rosa adds the null byte to Active Storage's unsafe filename characters, closing off a real crash vector when null bytes sneak into uploaded filenames.

What's next: watch for the deprecation path on Mime registry mutation, and for store_accessor's…

Nearby episodes from Ruby on Rails

  1. Composite Keys and Concurrency Fixes Converge
  2. Attribute Aliases and Ractor Safety Come Home to Roost
  3. Weekly Recap - Ractor Readiness and Database Layer Cleanup
  4. Schema Building and Ractor Safety Cleanup
  5. Anonymous Classes Break Things
  6. Cleaning Up Active Record's Bind Parameter Plumbing
  7. Ractor Safety and the Great Insert Refactor
  8. Ractor Safety and the Great Insert Cleanup