惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

MongoDB | Blog
MongoDB | Blog
V
V2EX
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
有赞技术团队
有赞技术团队
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
罗磊的独立博客
月光博客
月光博客
爱范儿
爱范儿
D
Docker
U
Unit 42
P
Proofpoint News Feed
I
InfoQ
腾讯CDC
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
L
LangChain Blog
V
Visual Studio Blog
IT之家
IT之家
Vercel News
Vercel News
G
Google Developers Blog
M
MIT News - Artificial intelligence
美团技术团队
The GitHub Blog
The GitHub Blog
阮一峰的网络日志
阮一峰的网络日志
MyScale Blog
MyScale Blog

Ruby on Rails: Compress the complexity of modern web apps

Safer to_i coercion, custom to_fs formats, and more! This Week in Rails: May 16, 2026 This Week in Rails: May 8, 2026 This Week in Rails: May 1, 2026 Active Record gets better every week Great big Rails World 2026 update: CFP, Corporate Support tickets, workshops Query command for database queries and more Explicit query: and body: kwargs for integration tests and more! Speedup ActiveRecord::LogSubscriber#sql_color and more! This Week in Rails: March 27, 2026 Rails Versions 8.0.5 and 8.1.3 have been released! Rails Versions 7.2.3.1, 8.0.4.1, and 8.1.2.1 have been released! This Week in Rails: March 20, 2026 Validate URI scheme in Action Text and more This Week in Rails: March 6, 2026 Planning Center is the newest Rails Foundation Contributing member Action Text gets Markdown conversion, editor links in devcontainers, and more! BARRA seeks Rails developer Joe Agliozzo is looking for a Rails developer The rise of lighttpd as the alternative web server When longer is better and more is more Snowdevil: First e-tailer on Rails Natural selection for frameworks in Ruby vs Java Address book tutorial in Portuguese Becoming a better programmer with Rails 10 Things Every Java Programmer Should Know About Ruby Really Getting Started in Rails Off the Treadmill, Onto the Rails Rails 0.9.5: A world of fixes and tweaks Rich clients with Rails and XUL
Kamal 2, Bye-bye Sprockets, and so much more!
David Heinemeier Hansson · 2024-09-20 · via Ruby on Rails: Compress the complexity of modern web apps

Friday, September 20, 2024
Posted by zzak

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 the guides, this time they have made a pass through the Active Record Validations guide. Give it a look and help them spot any issues!

Add ability to use multiple rate limits per controller
With this PR, you can now add multiple rate_limit definitions in your controller.

Remove Sucker Punch Active Job adapter
Sucker Punch existed before ActiveJob, but ultimately uses similar code to the async adapter under the covers. This adapter will be removed in a future release of Rails.

Do not include redis by default in dev container
In Rails 8, newly generated apps will use the Solid gems by default, which do not depend on Redis.

Add if_not_exists option to add_enum_value
This PR adds support to use the PostgreSQL option IF NOT EXISTS when adding enum values via add_enum_value.

Include options when instrumenting ActiveSupport::Cache::Store delete
Now cache_delete.active_support and cache_delete_multi.active_support events will include the options passed to the delete method.

No new apps should be started with sprockets
The --asset-pipeline flag will no longer take an argument for “propshaft” or “sprockets”, when generating a new Rails application.

Kamal 2 compatible configuration
Kamal 2 is bringing auto-SSL and multi-app deploys to the party. Along with other updates like simpler builders, aliases, and secrets.

Set “config.active_record.attributes_for_inspect” to “:all” in the console
In Rails 7.2, ActiveRecord::Core#inspect was made configurable but people noticed that the console in production was not showing any attributes. This PR sets the default to the previous behavior that was expected.

Support dropping multiple tables at once
This PR enables you to pass multiple names to the drop_table method.

Use thread pool for ActionController::Live
Exactly what it says on the tin, a thread pool is now used to reuse threads across requests.

Add Parameters#expect to safely filter and require params
This PR adds a new way to handle params giving more control over what you expect to receive in your controller actions.

# Before
params.require(:table).permit(:attr)

# After
params.expect(table: [ :attr ])

You can view the whole list of changes here. We had 37 contributors to the Rails codebase this past week!

Until next time!

Subscribe to get these updates mailed to you.