Hi, it’s Greg. Let’s explore this week’s changes in the Rails codebase.
Rails World 2025 Call for Papers
The CFP for Rails World 2025 is now live! Submit your talk until April 10th: https://rubyonrails.org/2025/3/7/apply-to-speak-at-rails-world-2025.
Add a default bin/bundle-audit configuration
This pull request adds bin/bundler-audit
and config/bundler-audit.yml
for discovering and managing known security problems with app gems.
Permit modern Ruby syntax in new apps
This pull requests changes RuboCop to target the Ruby version you’re using rather than the 2.7 default.
Stop generating bundler binstub:
Rails no longer generates a bin/bundle
binstub when creating new applications.
The bin/bundle
binstub used to help activate the right version of bundler, but
this is no longer necessary as this mechanism is now part of Rubygem itself.
Add except_on:
option for validation callbacks
The except_on:
option was added to validations (e.g. validates) in the past and this pull request adds the same option to before_validation
and after_validation
callbacks to maintain options consistency.
Support hash options for YJIT configuration
This pull request enhances config.yjit
to accept a hash, allowing users to specify YJIT options.
For instance:
config.yjit = true # Enable YJIT with default settings
config.yjit = { stats: true } # Enable YJIT with custom options (newly supported)
config.yjit = false # Disable YJIT
Add a config for automatically including nonce
in javascript_tag
, javascript_include_tag
and stylesheet_link_tag
This pull requests adds a new configuration, content_security_policy_nonce_auto
for automatically adding a nonce to the tags affected by the directives specified by the content_security_policy_nonce_directives
configuration option.
Allow per-database schema format
This change allows applications with multiple databases to set a schema_format
independently for each one:
primary:
schema_format: ruby
You can view the whole list of changes here. We had 30 contributors to the Rails codebase this past week!
Until next time!
Subscribe to get these updates mailed to you.