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

推荐订阅源

博客园 - 叶小钗
MyScale Blog
MyScale Blog
博客园 - 【当耐特】
I
InfoQ
腾讯CDC
aimingoo的专栏
aimingoo的专栏
L
LangChain Blog
人人都是产品经理
人人都是产品经理
D
DataBreaches.Net
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Engineering at Meta
Engineering at Meta
A
About on SuperTechFans
Google DeepMind News
Google DeepMind News
Vercel News
Vercel News
C
Check Point Blog
B
Blog RSS Feed
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
美团技术团队
Stack Overflow Blog
Stack Overflow Blog
Y
Y Combinator Blog
D
Docker
MongoDB | Blog
MongoDB | 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
Rails 7.0.2, schema versioning based on the Rails version...
David Heinemeier Hansson · 2022-02-11 · via Ruby on Rails: Compress the complexity of modern web apps

Friday, February 11, 2022
Posted by p8

Hi, this is Petrik, bringing you the latest news from the Rails world.

Rails 7.0.2 has been released
While this looks like a regular patch release there are a few notable changes.
First, one feature that was introduced in 7.0.0 was removed: the ability to pass a service_name param to DirectUploadsController. This feature was causing significant issues when upgrading from Rails 6.1, so the Rails team decided to remove it while they work on a backward compatible change. They don’t take this decision lightly, and usually don’t remove features after they are released without a proper deprecation cycle, but at this time they decided to prioritize making it easier for people to upgrade.

Finally, with the same goal in mind, Rails 7.0.2 introduced a new feature, the ability to version the database schema based on the Rails version. This new feature will allow existing applications to still load their database schemas generated in Rails 6.1, with the same behavior as before, keeping it matching the production database schema.

Fiber-save ConnectionPool
When ActiveSupport::IsolatedExecutionState.isolation_level is set to :fiber, the connection pool now supports multiple Fibers from the same Thread checking out connections from the pool.

Make #to_fs the default replacement for #to_s(:format)
#to_s(:format) was recently deprecated in favor of #to_formatted_s, as Ruby 3.1. has optimized interpolation. #to_formatted_s is a pretty long name for a frequently used method. This change makes #to_fs the default in Rails internals and the documentation. #to_formatted_s is still an alias to #to_fs.

Default the ActiveSupport::MessageEncryptor serializer to JSON
Using JSON offers a more secure alternative to the current Marshal serializer.
Existing apps are provided with an upgrade path to migrate to JSON as described in the upgrading guides.

Dump the precision for datetime columns following the new defaults
Since Rails 7.0 the datetime column precision is 6 by default. That means that t.datetime calls without setting the :precision option would have its precision set to 6. This affected PostgreSQL and SQLite3. Now the dumper will generate the precision as 0 for columns without precision and omit it when the precision is 6.

Add job_id and exception message to ActiveJob retry/discard logging
In log messages for performed jobs, the Job ID and exception message were already included. But log messages related to retry/discard behavior from ActiveJob::Exceptions did not include the Job ID or exception message. We now include them, in a consistent format with other existing messages.

Reverse the order of INSERT statements in structure.sql dumps
This should decrease the likelihood of merge conflicts. New migrations will now be added at the top of the list.
For existing apps, there will be a large diff the next time structure.sql is generated.

Since last time, 25 people contributed to Rails. As usual, there’s too much changes to cover them but you can check out all of these here. Until next time!