Rails raises exception when config.active_storage.service is not explicitly set

Developers are no longer presented vague errors when config.active_storage.service is not set. Instead a clear exception is raised.

Rails now supports infinite range options in LengthValidators

Models that need to be validated for length can use infinite ranges in :in / :within options

Rails no longer produces false-positive query cache hits when querying with mutable bound parameters

ActiveRecord now dups and freezes complex types when making query attributes which prevents false-positive query cache hits.

Rails now allows EML files to be downloaded from the email preview

An option to download .eml files directly from the browser when using the email preview feature will now be available in Rails 7.0.

Rails improves the "in_order_of" querying method

The query that previously only used to allow symbolic column names, now handles string values.

How to enable Rails CSRF Protection?

Let’s find out what cross-site request forgery (CSRF) is, how it works in Rails, and understand how we can prevent CSRF vulnerabilities.

Rails now uses error_highlight to locate the columns where an error is present

With the help of Ruby 3.1's error_highlight functionality, Rails can now pinpoint the exact column where an error is present.

Rails 7 adds default value support for binary columns for SQLite

Binary columns now behave like other column types with default values in SQLite.

Rails 7 updates through_reflection to distribute transactions across database connections

Models that use multiple databases now perform writes within a single transaction.

ActiveRecord::QueryMethods#select adds support for hash values in Rails 7.1

ActiveRecord::QueryMethods#select adds support for hash values in Rails 7.1