127 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-08-05
stories 35

© 2026 RepoJournal Home Showcase Explore How it works Privacy

$ the-wire · showcase

RAILS HARDENS FILE STORAGE, UNIFIES FOREIGN KEY HANDLING ACROSS 22 COMMITS

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

Rails killed a filesystem vulnerability while Propshaft eliminates globbing from production asset lookups in coordinated pushes toward Ractor compatibility.

The null character, invalid in most filesystems, now joins Rails' sanitization list [1], closing a hole where untrusted filenames could slip through. Simultaneously, the framework unified single and composite foreign key handling through `ActiveRecord::Key` [2], reducing branching logic and improving maintainability. Rails also made MIME types ractor-shareable by freezing the registry on eager load [3], with registration deprecated post-freeze. Propshaft followed suit by replacing filesystem globbing with resolver-based lookups [4], removing a production bottleneck where it previously had to walk every asset path. The asset layer now uses precompiled manifests in production while falling back to dynamic resolution in development [5] [6], and Propshaft's manifest schema expanded to include an "app" key for Static resolution [7]. Proc layouts moved toward shareability [8], and attribute type access inside ractors was fixed [9]. The effort is clear: Rails and Propshaft are systematically removing production filesystem dependencies and freezing mutable state to unlock Ractor support.

Action items

References

  1. [1] Add NUL (\0) to the list of unsafe characters for storage rails/rails ↗
  2. [2] Use `ActiveRecord::Key` to unify single / composite FK handling in `BelongsToAssociation` ↗ rails/rails
  3. [3] Make Mime types ractor-shareable ↗ rails/rails
  4. [4] Look up :app stylesheets through the resolver ↗ rails/propshaft
  5. [5] Look up :all stylesheets through the resolver ↗ rails/propshaft
  6. [6] Look up :app stylesheets through the resolver ↗ rails/propshaft
  7. [7] Add "app" key to maninfest for Static resolution ↗ rails/propshaft
  8. [8] Make Proc layouts shareable ↗ rails/rails
  9. [9] Merge pull request #58352 from Shopify/ec-attribute-type-fix rails/rails ↗

Quick answers

What shipped in Rails on August 5, 2026?
Rails killed a filesystem vulnerability while Propshaft eliminates globbing from production asset lookups in coordinated pushes toward Ractor compatibility. In total, 22 commits and 13 pull requests landed.
Who contributed to Rails on August 5, 2026?
6 developers shipped this update, including Rosa Gutierrez, kamipo, etiennebarrie, Gannon McGibbon, hmcguire-shopify, and Hartley McGuire.
What were the notable Rails updates?
Add NUL (\0) to the list of unsafe characters for storage, Use `ActiveRecord::Key` to unify single / composite FK handling in `BelongsToAssociation`, and Make Mime types ractor-shareable.