Rails Daily: Cache Controls and Documentation Updates
Seven pull requests merged including new cache control options for `http_cache_forever` and a major update to the Rails on Rack guide. Additional fixes for Active Storage STI support and phone number formatting.
Duration: PT1M51S
Transcript
Good morning, this is Rails Daily for May 19th, 2026.
Jean Boussier merged an enhancement to `http_cache_forever`, adding an optional `last_modified` keyword parameter that defaults to January 1st, 2011, but can now be customized with relevant timestamps. This change also updates Active Storage's ProxyController to use the new option.
Ayush Newatia merged a comprehensive update to the Rails on Rack guide, adding 385 lines of improved documentation including new sections on custom middleware and advanced Rack API usage within Rails controllers.
fatkodima merged a fix for Active Storage that preserves attachment changes when converting records between classes using Single Table Inheritance, addressing issue 45778.
tahsin352 fixed a false-positive bug in the phone number helper where `start_with_delimiter?` incorrectly triggered when numbers coincidentally began with delimiter strings.
Joshua Young merged a Ruby 3.4 compatibility fix, adding proper block parameter handling to `ReflectionProxy#all_includes` to address strict unused block warnings.
Nikita Fedyashev added regression tests for Active Record Migration's `say` and `say_with_time` methods, improving test coverage for these commonly used migration utilities.
Byroot also merged performance improvements using Ruby's triple-dot syntax and anonymous splats in Active Support's string output safety methods.
What's next: The cache control enhancements provide more flexible HTTP caching options, while the documentation updates make Rails-Rack integration clearer for developers. The STI fix resolves a significant Active Storage limitation.
That's your Rails update for today. Back tomorrow with more changes from the Rails core team.