|
| 1 | +--- |
| 2 | +layout: post |
| 3 | +title: "Continuous integration at your fingertips" |
| 4 | +categories: news |
| 5 | +author: claudiob |
| 6 | +og_image: assets/images/this-week-in-rails.png |
| 7 | +published: true |
| 8 | +date: 2025-03-14 |
| 9 | +--- |
| 10 | + |
| 11 | + |
| 12 | +Hi, it's [Claudio Baccigalupo](https://github.com/claudiob). Let's explore this week's changes in the Rails codebase. |
| 13 | + |
| 14 | +[Structured CI with bin/ci](https://github.com/rails/rails/pull/54693) |
| 15 | +Introduce `bin/ci` to standardize CI workflows based on a new DSL for declaring workflow steps in `config/ci.rb`. |
| 16 | +`bin/ci` runs your all tests, linters, and security scanners. And it optionally signs off on your work by giving your PR a green status. |
| 17 | + |
| 18 | +[Don’t always append primary keys to ORDER conditions](https://github.com/rails/rails/pull/54679) |
| 19 | +If `nil` is the last element of an array passed to `implicit_order_column`, do not append the primary key or the query constraints. |
| 20 | + |
| 21 | +[Raise `DoubleRenderError` on `head` after rendering](https://github.com/rails/rails/pull/54655) |
| 22 | +Previously, calling `head` to set the response code would silently remove a previously set response body. |
| 23 | + |
| 24 | +[Make importmap changes invalidate HTML etags](https://github.com/rails/rails/pull/54021) |
| 25 | +Previously you needed to manually add an etag to the `ApplicationController` to ensure any changes would invalidate the HTML response etag. |
| 26 | + |
| 27 | +[Generate session controller tests for auth generator](https://github.com/rails/rails/pull/53726) |
| 28 | +This PR ensures that that authentication generated controllers include functional tests. |
| 29 | + |
| 30 | +[Fix regression in ActiveRecord::Result#column_types](https://github.com/rails/rails/pull/54743) |
| 31 | +When a column type is `nil` in the original `column_types` array, the previous implementation was returning `nil` instead of falling back to the default type. |
| 32 | + |
| 33 | +[Fix SQLite3 adapter to quote Infinity and NaN](https://github.com/rails/rails/pull/54735) |
| 34 | +When SQL strings are built by the sqlite3 adapter (for example when using `upsert`), the values "Infinity", "-Infinity", and "NaN" should be quoted. |
| 35 | + |
| 36 | +[Add respond_to_missing? in ActiveRecord::Migration](https://github.com/rails/rails/pull/54725) |
| 37 | +This complements the existing `method_missing` method. |
| 38 | + |
| 39 | +[Add inspect to ActiveStorage::Service, Registry, and Configurator](https://github.com/rails/rails/pull/53153) |
| 40 | +Previously, pretty-printing `ActiveStorage::Blob.services` could leak the entire configuration, including secrets. |
| 41 | + |
| 42 | +[Fixed race condition in PostgreSQL type_map initialization](https://github.com/rails/rails/issues/51780) |
| 43 | +The issue has been fixed in two consecutive [Pull](https://github.com/rails/rails/pull/54711) [Requests](https://github.com/rails/rails/pull/54738). |
| 44 | + |
| 45 | +_You can view the whole list of changes [here](https://github.com/rails/rails/compare/@%7B2025-03-07%7D...main@%7B2025-03-14%7D)._ |
| 46 | +_We had [31 contributors](https://contributors.rubyonrails.org/contributors/in-time-window/20250307-20250314) to the Rails codebase this past week!_ |
| 47 | + |
| 48 | +Until next time! |
| 49 | + |
| 50 | +_[Subscribe](https://world.hey.com/this.week.in.rails) to get these updates mailed to you._ |
0 commit comments