This Week in Rails

Your weekly inside scoop of interesting commits, pull requests and more from Rails.
October 18, 2024

New Maintenance policy, CVE releases, Rails World talks and more!

Hey everyone, Happy Friday! Vipul here with the latest updates for This Week in Rails. Let’s dive in! Rails World talks are out! Check out the recap of these talks in this blog post, or head over to Rails’ YouTube for the full playlist. New Rails maintenance policy and end of maintenance announcements These changes are designed to prov...
Read more
October 11, 2024

Lazy i18n watcher on boot and more

Hi, Wojtek here still feeling the good vibe of the Rails World. Cheers to all the attendees and see you in Amsterdam! Fireside Chat with DHH, Matz and Tobi The video from the Rails World is now ready to watch, followed by the Eileen keynote. All the videos will be available soon! Don’t execute i18n watcher on boot It shouldn’t catch an...
Read more
October 4, 2024

Make Float distinguish between float4 and float8 in PostgreSQL and more

Hi, it’s Greg, bringing to you the latest changes from Rails, while recovering from an amazing Rails World experience. Make ActionController::AllowBrowser::BrowserBlocker private To reduce the API surface area of the allow_browser feature, this commit marks the class as private API. Change ActiveSupport::HashWithIndifferentAccess#strin...
Read more
September 27, 2024

Rails 8 beta, DHH keynote, fresh error pages, and more!

Hi, it's zzak. Let's jump into This Week in Rails! Rails 8.0 beta 1 has been released! The first beta of Rails 8 is out! While the release notes are getting ready, have a look at the changes and give it a go. DHH keynote from Rails World The first talk recording from Rails World is up, and David goes over everything that went into Rail...
Read more
September 20, 2024

Kamal 2, Bye-bye Sprockets, and so much more!

Hi, it’s zzak. Let’s explore this week’s changes in the Rails codebase. Rails World 2024 is next week Safe travels to everyone heading to Toronto! All sessions will be recorded and published on the Rails YouTube channel, so subscribe to get notified. [RF Guides] Active Record Validations The Foundation is still hard at work on updating...
Read more
September 13, 2024

Solid Cable as default, 2 new Guides PRs, and much more!

Hey everyone, Happy Friday the 13 🎃 Vipul here with the latest updates for This Week in Rails, from the very awesome EuRuKo this week! Let’s dive in. New Guides Pull Request for review Two new Guides Pull Requests are up for community review this week. If you are well versed in Action Mailer, or Error Reporting, please review and submi...
Read more
September 6, 2024

Solid Cache and Queue as default backends and more

Hi, Wojtek here. Let’s explore this week’s changes in the Rails codebase. Add Solid Cache Solid Cache will be the new default caching backend for production deployments out of the box in Rails 8. Add Solid Queue Configure Solid Queue as the default Active Job backend alongside Solid Cache. Both can be skipped with "--skip-solid". Allow...
Read more
August 30, 2024

Last call for Luminary nominations, SQLite3 full-text search and more!

Hi, it’s Greg. Let’s explore this week’s changes in the Rails codebase. Last call for Rails Luminary nominations If you know someone who has contributed to the Rails ecosystem and community with exceptional code, documentation, enthusiasm, or assistance, submit your nomination by September 2nd. Fix Devcontainer generator with –dev opti...
Read more
August 25, 2024

ActionText store_if_blank, SQLite non-GVL-blocking busy handler, and more!

Hi, it's zzak. Let's explore this week's changes in the Rails codebase. In case you missed it, Rails 7.2.1 and 7.1.4 were released this week! Allow use of alternative database interfaces Prior to this PR, rails dbconsole was hardcoded to use the default interface for the given database. This command can now be configured via the config...
Read more
August 16, 2024

Deferred routes drawing, connect route helper and more

Hi, Wojtek from this side. Let’s explore this week’s changes in the Rails codebase. Defer route drawing This change triggers the initial reload of routes either through middleware or when a url_helpers method is used. Previously, this was executed unconditionally on boot, which could slow down boot time unnecessarily for larger apps wi...
Read more
August 12, 2024

Rails 7.2 released, Thruster by default for Rails 8, new Guides PRs, and much more!

Hey everyone, Happy Monday! Vipul here with the latest updates for This Week in Rails (from last week 😅). Let’s dive in. Rails 7.2 has been released Rails 7.2 has been released! Head over to the release post for more details, but in short, it ships with better production defaults, Dev containers, new Guides design, and much much more! ...
Read more
August 3, 2024

This Week in Rails: Rails Luminary nominations open, new maintenance policy and more!

Hi, it is Greg, bringing you the latest changes in Rails. The framework turned 20 years old this past week. Happy Birthday Ruby on Rails! Let’s explore this week’s changes in the Rails codebase. Nominations open for the 2024 Rails Luminary Awards Last year the Rails Foundation started the Rails Luminary Awards acknowledging people who’...
Read more
July 27, 2024

Model Missing Attributes, SQLite Immediate Transactions, and CVV/CVC Parameter Filtering by default

Hi, it’s zzak. This is a short week, but let’s jump in. Drop Hash#except core extension Rails 8.0 will be Ruby 3.1 or greater only except natively got added in Ruby 3.0 so this is dead code now. Introduce ActiveModel::AttributeAssignment#attribute_writer_missing Provide instances with an opportunity to gracefully handle assigning to an...
Read more
July 19, 2024

Add non-null modifier for migrations, default script folder and generator, sessions generator and much more!

Hey everyone, Happy Friday! Vipul here with the latest updates for This Week in Rails. Let’s dive in. Add a basic sessions generator This change adds a new sessions generator to give a basic start to an authentication system using database-tracked sessions. # Generate with... bin/rails generate session# Generated files app/models/curre...
Read more
July 12, 2024

New Rails beta release, immutable option in http_cache_forever and more

Hi, Wojtek here again. See another short list of changes from this past week. Rails 7.2.0.beta3 have been released With 91 commits since the last beta 2 version. Make http_cache_forever use immutable option The immutable: true option was added to expires_in in last week. This change sets immutable: true option for http_cache_forever wh...
Read more
July 5, 2024

Configurable compressor for encryption, Rack 3 streaming and more

Hi, Wojtek here. See the short list of changes from this past week. Add compressor option to Active Record encryption ActiveRecord::Encryption::Encryptor now supports a :compressor option to customize the compression algorithm used. The default compressor is Zlib (as it was before). Utilize Rack 3 streaming Rack 3 introduced several fe...
Read more
June 28, 2024

Immutable Rails Cache Header, Local Assigns in Strict Local Templates, Threaded Active Storage Mirror Service

Hi, it's zzak. Let's explore this week's changes in the Rails codebase. Support "immutable" directive in Cache-Control This PR adds a new option to the expires_in method to support the immutable directive for the "Cache-Control" header. Also pass "local_assigns" to strict locals templates When using Strict Locals in a partial, `local_a...
Read more
June 21, 2024

New database sharding methods, improved Active Record Migration Docs, caching improvements for ActiveStorage and more!

Hey everyone, Happy Friday! Vipul here with the latest updates for This Week in Rails. Let’s dive in. Improved Active Record Migration Documentation The Rails Foundation documentation team continues to improve different areas of the Guides. This Pull Request updates the Active Record Migration Documentation to receive various additions...
Read more
June 14, 2024

New transaction event, bugfixes and more!

Hi, it’s Greg. Let’s explore this week’s changes in the Rails codebase. Only sanitize content attribute when present in attachments A recent security fix introduced sanitizing the content attribute of ActionText::Attachable::ContentAttachment. As a side effect it always sets the attribute, even when it’s missing, causing Trix to not sh...
Read more
June 7, 2024

Global strict loading mode setting, route draw deferring and more

Hi, Wojtek here. Let’s explore this week’s changes in the Rails codebase. Rails security releases Rails Versions 6.1.7.8, 7.0.8.4, 7.1.3.4, and 7.2.0.beta2 have been released with a security issue fix. The CFP for RubyConf is open Submissions on all Ruby Web Frameworks, including Rails, will be considered, so get your Rails related sub...
Read more
May 31, 2024

Propshaft default for Rails 8, Guides updates, transaction.active_record events, and more!

Hi, it’s zzak. Let’s explore this week’s changes in the Rails codebase. Rails World 2024 speaker lineup announced! As well as another small run of tickets going live on June 4 at 2pm ET! The Rails Foundation documentation team has also submitted two Rails guides for community review. If you have feedback, please submit it here: Action ...
Read more
May 24, 2024

Better error message, opt-in devcontainers and more!

Hi, it’s Greg. Let’s explore this week’s changes in the Rails codebase. Raise a descriptive error when a Store column is misconfigured This pull request improves ActiveRecord::Store to raise a descriptive exception if the column is not either structured (e.g., PostgreSQL hstore/json, or MySQL json) or declared serializable via ActiveRe...
Read more
May 17, 2024

Start of Rails 8 development, 7.0.8.2 & 7.1.3.3 released, Kamal by default, and lots more!

Hey everyone, Happy Friday! Vipul here with the latest updates for This Week in Rails. Let’s dive in. Development of Rails 8.0 starts now 🎉 This week marks the official start of Rails 8.0 development. Stay tuned for more updates on Rails 8.0 features and changes ahead 🎉. Rails 8 will target Ruby 3.3+ only for new apps Add Kamal by defa...
Read more
May 10, 2024

Rails community survey, improved association validation errors and more

Hi, Wojtek here. Let’s explore this week’s changes in the Rails. The bi-annual Rails community survey is live! Your input is invaluable and will help the team at Planet Argon gather insight on the current state of the Rails community. Fill in the survey here. (And feel free to share with your teams). The survey will remain open until A...
Read more
May 3, 2024

Rails console improvements, assertionless tests reporting and more!

Hi, it’s Greg. Let’s explore this week’s changes in the Rails codebase. Build Rails console on top of IRB’s latest official APIs The Rails console is built on top of IRB, but due to the lack of an extension API, it was extending it with monkey patches. Since IRB received a lot of improvements and an extension API recently, this pull re...
Read more
April 26, 2024

Rails World 2024 tickets on April 30, legacy index name format for Rails 7.0, etc

Emmanuel Hayford here, writing from Toruń, Poland. We'll keep this one short. Tickets for this year's Rails World will be available for purchase on Tuesday, April 30, 2024, at 1 PM EDT from the official Rails World site. The Foundation has more information on tickets here. On to your weekly dose of Rails updates: Pre-7.1 Rails migratio...
Read more
April 19, 2024

ActiveRecord::Base#pluck accepts hash values, devcontainers improvements and more!

Hey everyone, Happy Friday! I hope you get some time to unwind and relax going into the weekend 😎 Vipul here with the latest updates for This Week in Rails. Let’s dive in. Allow ActiveRecord::Base#pluck to accept hash values This change adds support for ActiveRecord::Base#pluck to accept hash values. # Before Post.joins(:comments).pluc...
Read more
April 12, 2024

A week of fixes

Hi, it’s Greg. Let’s explore this week’s changes in the Rails codebase. Fix union select parentheses When building UNION or UNION ALL queries involving LIMIT or ORDER BY, Arel generated invalid SQL previously. This pull request changes Arel::Visitors::ToSql so that SELECT statements in Union and UnionAll nodes are enclosed in parenthes...
Read more
April 5, 2024

Defering jobs enqueuening to after the transaction commit, queries count in rendering logs and more

Hi, Wojtek here exploring this week’s changes. Rails World 2024 edition website is now live With tickets going on sale in April. Allow to register transaction callbacks outside of a record ActiveRecord::Base.transaction now yields an ActiveRecord::Transaction object, which allows to register callbacks on it. Article.transaction do |tra...
Read more
March 29, 2024

Retry known idempotent SELECT queries, New Active Record configuration option, and more!

Greetings! I'm Emmanuel Hayford, here to bring you your weekly instalment of "This Week In Rails". Let's dive straight into it. Two new guides are now open for community review. If you are well versed in Action View, partials, and helpers, please review and submit your feedback here: • Action View Overview PR • Action View Helpers PR A...
Read more

See more posts »