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

推荐订阅源

WordPress大学
WordPress大学
J
Java Code Geeks
Martin Fowler
Martin Fowler
Microsoft Azure Blog
Microsoft Azure Blog
月光博客
月光博客
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
人人都是产品经理
人人都是产品经理
有赞技术团队
有赞技术团队
爱范儿
爱范儿
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI
博客园 - 【当耐特】
Y
Y Combinator Blog
Last Week in AI
Last Week in AI
MongoDB | Blog
MongoDB | Blog
G
Google Developers Blog
博客园 - 三生石上(FineUI控件)
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
大猫的无限游戏
大猫的无限游戏
罗磊的独立博客
The Cloudflare Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
V
V2EX
博客园 - 司徒正美

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
PostgreSQL 18 warnings, secure password improvements and ...
David Heinemeier Hansson · 2025-07-25 · via Ruby on Rails: Compress the complexity of modern web apps

Hi, it’s Vipul. Let’s explore this week’s changes in the Rails codebase.

Avoid dynamic encrypting in generated fixtures
Fixtures for passwords now generate a static hash. Previously, fixtures with password digest attributes regenerated the hash on each test run.

Don’t add bundler platforms for JRuby
Fixes Rails Apps on JRuby by not adding extra platforms that cause problems when installing gems.

Make ActiveSupport::Gzip.compress deterministic
ActiveSupport::Gzip.compress now produces consistent output by always setting the gzip timestamp to zero, which eliminates flaky tests while comparing compressed data.

Fix HashWithIndifferentAccess#transform_keys! to avoid collisions
Fixes a bug where changing keys in a hash could accidentally lose some keys if they clashed.

Emit a warning when pg gem < 1.6.0 is used with PostgreSQL 18+
Adds a warning if a Rails project uses PostgreSQL 18+ with an outdated pg gem(< 1.6.0) to prevent compatibility issues of PG::Connection#cancel.

Fix Action Cable compatibility with redis-rb 5.4.1
Makes Action Cable compatible with redis-rb 5.4.1, as an incompatibility bug in redis-rb is now resolved.

Remove unnecessary calls to the GCP metadata server
Cuts out redundant calls to GCP’s metadata server within auth logic, reducing potential latency and server load.

Add load-hooks for Active Model autoloaded constants referenced in initializers
This change added load hooks for active_model_error and active_model_secure_password, making it easier for initializers to reference Active Model constants that should be autoloaded.

has_secure_password: fix password validation.
Ensures password confirmation is validated even if the original password contains only whitespace, making has_secure_password behavior more consistent.

Add render json to health
Enables Rails health controller to respond in JSON, improving support for API-only applications.

Add ActiveRecord::Tasks::AbstractTasks for subclassing per adapter behavior
Introduces a base class that allows database adapters to customize task behavior, thereby improving adapter-specific handling.

Avoid purging the test database when loading a schema
Prevents purging of the test database while loading a database schema, improving test suite reliability.

gitignore all key files in config/credentials
Configures .gitignore to exclude all files in config/credentials, protecting key files from accidental commits.

Make nonce: false remove the nonce attribute for javascript_tag, javascript_include_tag and stylesheet_link_tag
Setting nonce: false now removes the nonce attribute for javascript_tag, javascript_include_tag, and stylesheet_link_tag.

Allow custom domain extractor class on ActionDispatch::Http::URL
Allows the use of a custom class for domain and subdomain extraction. If no custom extractor is set, a new default extractor, ActionDispatch::Http::URL::DomainExtractor, processes domains.

Read ActionText::Attachment.tag_name in Action Text Fixtures
Updates Action Text fixture to use the right tag name for Action Text attachments if config.action_text.attachment_tag_name is set.

Action View: Reduce public API of tag helper
Cleans up the public API surface of the tag helper for maintainability and clarity.


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

Until next time!

Subscribe to get these updates mailed to you.