Skip to content

Commit 8da2686

Browse files
authored
This week in Rails (Friday, July 18, 2025) (#527)
<img width="1142" height="1912" alt="Scan 2025-07-18 at 7 15 39 AM" src="https://github.com/user-attachments/assets/1a81eaf7-9539-425b-a9e4-7006c153019e" />
1 parent b68f1af commit 8da2686

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
---
2+
layout: post
3+
title: A new touch option, accessing the editor from the error page and better migration logs
4+
categories: news
5+
author: claudiob
6+
og_image: assets/images/this-week-in-rails.png
7+
published: true
8+
date: 2025-07-18
9+
---
10+
11+
12+
Hi, it's [Claudio Baccigalupo](https://github.com/claudiob). So many great changes to the Rails codebase this week. Let’s check them out.
13+
14+
15+
[Add touch option to update_column(s)](https://github.com/rails/rails/pull/51455)
16+
Particularly useful for ETL processes that rely on the `updated_at` timestamps instead of copying the whole table. Previously, to keep timestamps current, the `touch` method had to be called after using `update_column`.
17+
18+
[Add support to open files in the code editor from the crash page](https://github.com/rails/rails/pull/55295)
19+
All the [most common editors](https://github.com/rails/rails/blob/b22fd5a519f92e5c51c62e3b74b4407e492b89e2/activesupport/lib/active_support/editor.rb#L56-L68) are supported, from Atom to Zed.
20+
21+
[Fix errors when query string keys have invalid encoding](https://github.com/rails/rails/pull/55319)
22+
Bots hitting your Rails app with malformed requests could generate noisy 500 Server Errors. After this PR the requests won’t be reported as an app exception.
23+
24+
[Fix log message for down migrations](https://github.com/rails/rails/pull/52749)
25+
When reverting a migration, the message in the log will stop saying “Migrating to [version]” and will instead say “Reverting [version]”.
26+
27+
[Raise an error in finder methods when the model has no ORDER columns](https://github.com/rails/rails/pull/54608)
28+
Adds a new `ActiveRecord::MissingRequiredOrderError` which gets raised in methods like `last` and `find_nth` when there are no order columns to use for the default order.
29+
30+
[Return a 500 on MissingController errors](https://github.com/rails/rails/pull/53964)
31+
A controller not existing isn't a routing error that should result in a 404, but a programming error that should result in a 500 and be reported.
32+
33+
[Optimize Active Record batching further when using ranges](https://github.com/rails/rails/pull/51243)
34+
Improves the efficiency of the `in_batches` method by using `OFFSET` in the SQL query when the `use_ranges: true` option is provided.
35+
36+
[Optimize ActiveSupport::SafeBuffer](https://github.com/rails/rails/pull/55352)
37+
Saves allocating unnecessary memory based on the assumption that the overwhelming majority of SafeBuffer instances are never mutated.
38+
39+
[Ensure RequestForgeryProtection#normalize_action_path is private](https://github.com/rails/rails/pull/55317)
40+
The method added in [033acf8](https://github.com/rails/rails/pull/55317) was not intended to be public.
41+
42+
[Add tsort as a runtime dependency to railties](https://github.com/rails/rails/pull/55322)
43+
`tsort` has been [extracted from the Ruby standard library](https://bugs.ruby-lang.org/issues/21442) and is now included as a gem.
44+
45+
[Propshaft upgraded to 1.2.0](https://github.com/rails/rails/pull/55343)
46+
See [what has changed](https://github.com/rails/propshaft/releases/tag/v1.2.0) in the latest release of the library.
47+
48+
49+
50+
_You can view the whole list of changes [here](https://github.com/rails/rails/compare/@%7B2025-07-11%7D...main@%7B2025-07-18%7D)._
51+
_We had [16 contributors](https://contributors.rubyonrails.org/contributors/in-time-window/20250711-20250718) to the Rails codebase this past week!_
52+
53+
Until next time!
54+
55+
_[Subscribe](https://world.hey.com/this.week.in.rails) to get these updates mailed to you._

0 commit comments

Comments
 (0)