This Week in Rails

Your weekly inside scoop of interesting commits, pull requests and more from Rails.
January 2, 2026

This Week in Rails: January 2, 2026

Hi, it’s zzak. Hope everyone had a great holiday season and a happy new year! 🎊 Let’s explore this week’s changes in the Rails codebase. Add Rails.app.revision Add Rails.app.revision to provide a version identifier for error reporting, monitoring, cache keys, etc. Add ActionDispatch::Request#bearer_token Add ActionDispatch::Request#bea...
Read more
December 26, 2025

This Year in Rails

Happy Holidays, this is Claudio, Emmanuel, Greg, Vipul, Wojciech, and Zzak, bringing you the summary of what happened with Rails in the past year. It was a busy year with close to 2700 commits from 430 contributors and 14 releases, including Rails 8.1! The Rails Foundation also released a wrap up of 2025, and here are the most notewort...
Read more
December 19, 2025

Rails Luminary, modern approach to CSRF and more

Hi, Wojtek here. The Rails Community is not slowing down giving us another week of great news and features. Marco Roth as 2025 Rails Luminary If you attended any Ruby/Rails conference this year, there are high chances you met Marco in person sharing his passion and if you didn’t try his excellent herb gem yet, then install it and run i...
Read more
December 13, 2025

'Tis the season for contributing to Rails

Hi, it’s Claudio Baccigalupo. So many improvements to the Rails codebase this week! If you are also looking to contribute, there are several documentation PRs open for community review. Oh and we also have some Rails World 2026 updates! And now, let’s get to the PR-esents 🎁 ActiveStorage immediate variants Attachment variants gain the ...
Read more
December 5, 2025

Schema-Enforced JSON Access, Postgres Type Decoding, and more!

Hey! Emmanuel Hayford here. Here’s a look at the highlights from this week’s updates to the Rails codebase. Add schematized json for has_json Provides a schema-enforced access object for a JSON attribute. This allows you to assign values directly from the UI as strings, and still have them set with the correct JSON type in the database...
Read more
November 28, 2025

Active Support Instrumentation Documentation, QueryIntent#execute! and more!

Hi, it’s Vipul. Let’s explore this week’s changes in the Rails codebase. Active Support Instrumentation Documentation This Pull Request updates the Active Support Instrumentation documentation to receive various additions, improvements and more. It is now open for review and feedback from the community! Ensure TimeWithZone#as_json alwa...
Read more
November 21, 2025

This Week In Rails: November 21, 2025

Hi, it's zzak. Let's explore this week's changes in the Rails codebase. Add support for per-adapter migration strategy You can now set migration_strategy on individual adapter classes, overriding the global ActiveRecord.migration_strategy. This allows individual databases to customize migration execution logic: class CustomPostgresStra...
Read more
November 14, 2025

Rails Luminary 2025, dynamic rate-limiting options, performance optimizations and more!

Happy Friday! This is Greg, bringing you the latest changes from the Rails codebase. The 2025 Rails Luminary nominations are open. If you know of someone who has consistently gone above and beyond to contribute to the framework, triaging bugs, improving performance, adding helpful features or documentation, creating or maintaining gems...
Read more
November 7, 2025

Keep your passwords secure, one way or the other

Hi, it’s Claudio Baccigalupo. Let’s explore this week’s changes in the Rails codebase. Add :algorithm option to has_secure_password Active Model’s has_secure_password now supports different password hashing algorithms. Add built-in Argon2 support for has_secure_password Building on top of the previous PR, you can now add gem "argon2" a...
Read more
October 31, 2025

Summary report on CI run and more

Hi, Wojtek here. 🎃 Let’s see if there are any spooky changes in Rails. 🎃 New Rails Releases and End of Support Announcement Versions 7.0.10, 7.1.6, 7.2.3, 8.0.4, and 8.1.1 have been released. Rails 8.0 has received extended support. Add a summary report at the end of Continous Integration run The @results ivar is changed to hold the st...
Read more
October 24, 2025

Rails 8.1 released!

Hi, Emmanuel Hayford here. This one will be quick! Two days ago, Rails 8.1 was released! Rails 8.1 comes with a lot of rad features. Among them are Active Job Continuations, Structured Event Reporting, Local CI, Markdown Rendering, and a ton more! You can read details about this release or check the release notes. If you want to see th...
Read more
October 20, 2025

Bound SQL literals in CTEs, new tutorial and more!

Hi, it’s Vipul!. Let’s explore this week’s changes in the Rails codebase. Rails 8.1.0.rc1 was released! Rails 8.1.0 is right around the corner! Try out the latest release candidate and report any bugs you find! The newest add-on tutorial is now live on the Rails tutorials page! In this guide, you learn how to add Wishlist functionality...
Read more
October 10, 2025

RemoteIp trusts link-local IP ranges, and has_secure_token expiration gets config

Hi, it’s zzak. Let’s explore this week’s changes in the Rails codebase. New documentation PR is up for community review The Rails Initialization Guide covers how Rails boots up, including the internal method calls, file load order, and how to hook into the initialization process. If you want to help by reviewing, find the PR here: http...
Read more
October 3, 2025

Virtual columns, real bugfixes

Hi, it’s Claudio Baccigalupo. Let’s explore this week’s changes in the Rails codebase. Bump PostgreSQL client version to 18 The PostgreSQL client version in the devcontainer now points to the latest release of PostgreSQL, which is great because… Support virtual generated columns on PostgreSQL 18+ PostgreSQL 18 supports virtual (not per...
Read more
September 26, 2025

Redirect source location logging, filterable engine routes, and more!

Happy Friday! After three weeks of conferencing, this is Greg, bringing you the news about the latest changes in your favorite framework. It was a busy week with a lot of changes, let’s dive in. Rails Version 8.0.3 has been released! A new version of Rails has been released. Reaad the CHANGELOG for the list of changes. Deprecate usage ...
Read more
September 19, 2025

Improvements to routing, Active Storage configs, time tracking, and more

Hey, Emmanuel Hayford here with the latest from the Rails codebase. Let's get to it! Oh! In case you missed it, all the talks from #RailsWorld 2025 are now available online here. Fix SCRIPT_NAME handling for engines mounted at root When an engine is mounted at / and SCRIPT_NAME is in use, URL helpers were incorrectly dropping the scrip...
Read more
September 12, 2025

ActiveJob serialize array improvements, rails/info/routes additions and more!

Hi everyone, it’s Vipul. Let’s explore this week’s changes in the Rails codebase! Do not add seed step to config/ci if active record is skipped This PR ensures that in CI configuration templates, Rails does not add a db:seed step when Active Record is skipped. This prevents CI failures or unnecessary steps for applications that are dat...
Read more
September 5, 2025

Rendering Markdown is real, plus new database connection pool options

Hi, it’s zzak. Let’s explore this week’s changes in the Rails codebase. Rails 8.1 Beta 1 lands The first beta release was cut for Rails 8.1, see the post for full details. Rails World 2025 Opening Keynote Part of the newsletter team is enjoying Rails World in Amsterdam, say hi to them if you attend. If you (like me) couldn’t go, the fi...
Read more
August 29, 2025

Dark mode on welcome page and more

Hi, Wojtek here. Part of our newsletter team - Claudio, Greg, Vipul, and me will be at the Rails World next week. Greg and Claudio will also be MCing the Lightning Track. Come say hi and grab some stickers with newsletter logo! Now let’s take a look at this week’s changes. Dark mode support in the app welcome page Made by the first tim...
Read more
August 23, 2025

Updated Plugins Guide, current_page? with any HTTP method and more!

Hi, it’s Greg. Let’s explore this week’s changes in the Rails codebase. Rails Plugin documentation update As part of improving the documentation of the framework, The Rails Plugins Guide has been updated. Fix consistency of generated structure.sql for latest PostgreSQL versions which include \restrict This pull request fixes the remova...
Read more
August 15, 2025

Structured Event Reporting lands in Rails!

Hi! Emmanuel Hayford here with some Rails codebase updates for you! Add #assert_events_reported test helper Rails added a new test helper that lets you assert multiple events were reported within a block—order-agnostic, with support for payload and tag matching, and it ignores extra events. Handy for workflows that emit several instrum...
Read more
August 9, 2025

Support for rack.response_finished callbacks in executor

Hi, it’s zzak. Let’s explore this week’s changes in the Rails codebase. Add support for “rack.response_finished” callbacks in Action Dispatch’s Executor The executor middleware now supports deferring completion callbacks to later in the request lifecycle by utilizing Rack’s rack.response_finished mechanism, when available. This enables...
Read more
August 1, 2025

relative_time_in_words, current transaction's isolation level and more!

Hi, it’s Greg. Let’s explore this week’s changes in the Rails codebase. New written & video tutorials for beginners The Rails Foundation has launched a few more learning resources for beginners, in partnership with Chris Oliver and the team behind Typecraft - Chris Power and Robert Beene. Log when rescue_from handles an exception This ...
Read more
July 26, 2025

PostgreSQL 18 warnings, secure password improvements and more!

Hi, it’s Vipul. Let’s explore this week’s changes in the Rails codebase. Avoid dynamic encryption in generated fixtures Fixtures for passwords now generate a static hash. Previously, fixtures with password digest attributes regenerated the hash on each test run. Don’t add bundler platforms for JRuby Fixes Rails Apps on JRuby by not add...
Read more
July 18, 2025

A new touch option, accessing the editor from the error page and better migration logs

Hi, it’s Claudio Baccigalupo. So many great changes to the Rails codebase this week. Let’s check them out. Add touch option to update_column(s) Particularly useful for ETL processes that rely on the updated_at timestamps instead of copying the whole table. Previously, to keep timestamps current, the touch method had to be called after ...
Read more
July 11, 2025

Added rename_schema and more

Hi, Wojtek here. Let’s explore this week’s changes in the Rails codebase. Farewell RailsConf! 800 devs gathered in Philadelphia to share memories and say goodbye at the final RailsConf. Huge thanks to Ruby Central and all the speakers and attendees who made it such a memorable event over the past 19 years. Add rename_schema method for ...
Read more
July 4, 2025

Deprecating Associations, Cleaner Backtraces, and Smarter Defaults

Hi! Emmanuel Hayford here with some cool updates for you. 😎 Deprecated associations You can now mark associations as deprecated using: `has_many :posts, deprecated: true` Active Record will report any usage of the deprecated association. Three reporting modes are supported: `:warn (default)`, `:raise`, and `:notify`. You can also enabl...
Read more
June 27, 2025

BacktraceCleaner gets first_clean_frame and first_clean_location

Hi, it’s zzak. Let’s explore this week’s changes in the Rails codebase. The Rails Foundation launched a new podcast: ‘On Rails’ with host Robby Russell In each episode, Robby talks with Rails devs and explores the real-world decisions that go into building, maintaining, and scaling Ruby on Rails applications. Episode one is already up ...
Read more
June 14, 2025

New Rails Foundation Guides PR, fix affected_rows for SQLite adapter and more!

Hi, it’s Vipul. Happy Friday 🎃! Let’s explore this week’s changes in the Rails codebase. New Guides Pull Request for review A new guides Pull Request is up, which updates the Active Record Encryption Guide. If you are well-versed in these areas, please review and submit your feedback on the PR! We also have 2 other Guides PRs open wher...
Read more
June 6, 2025

Improving Rails 8 week after week

Hi, it’s Claudio Baccigalupo. Let’s explore this week’s changes in the Rails codebase. Move PostgreSQL Guide into the API guides A new documentation PR is up for community review: information from the PostgreSQL guide has been migrated into the API docs, and the Active Record guide has been updated to be more database agnostic. Follow ...
Read more

See more posts »