Tech Racho エンジニアの「?」を「!」に。
  • Ruby / Rails関連

Rails 7.0.2がリリースされました

Ruby on Rails 7.0.2がリリースされました。

英語版Changelogをまとめて見るにはGItHubのリリースタグ↓が便利です。v7.0.2タグの日付は日本時間の2022年2月9日8:17でした。

詳しくは以下のコミットリストをご覧ください。

🔗 更新の概要

リリースノートには主要な変更として以下が記載されています。

🔗 Changelogに更新が記載されている機能

以下の機能はリリースノートの記載順です。

本記事では、GitHubリリースタグに掲載されているChangelogに対応するプルリクやコミットへのリンクを取り急ぎ貼りました。

🔗 Active Suport

ActiveSupport::EncryptedConfigurationをPsych 4互換になるよう修正
Stephen Sugden

File.atomic_writeのエラーハンドリングを改善
Daniel Pepper

🔗 Active Model

現在のモデルは、メソッド名が同じでも属性のbodyが異なることがあるため競合の原因になっていた。:active_model_proxy名前空間を新たに追加することでこの問題を修正。
Chris Salzberg

🔗 Active Record

Ruby 2.7以降でPG.connectキーワード引数のdeprecation warningが出ないよう修正
Nikita Vasilevsky

暗号化済みパラメータがオートフィルタから除外されていなかったのを修正
Mark Gangl

datetimeprecisionが新しいデフォルト値6でダンプされるよう修正
Rafael Mendonça França

on_encrypted_attribute_declaredで暗号化済み属性が2回フィルタされないようを修正
Nikita Vasilevsky

データベーススキーマのダンプに現在のRailsバージョンを含めるようにした

#42297以降、datetimeカラムのデフォルトのprecisionを6で生成するようになった。
このため、Rails 6.1から7.0にアップグレードするときにデータベーススキーマを読み込むと新しいprecision値が適用されてproductionのスキーマと一致しなくなる。
これを避けるために、スキーマダンプで新しいフォーマットを生成するときに以下のようにRailsのバージョンを含めるようにした。

ActiveRecord::Schema[7.0].define

Rails 6.1 -> 7.0アップグレードでrails app:updateタスクを実行すると、スキーマバージョンが6.1に設定されるようになる。
Rafael Mendonça França

PostgreSQLのgenerated columnの式の解析方法を修正
fatkodima

max_allowed_packetの値を超えるとフィクスチャのバルクinsertでMysql2::Error: Commands out of sync; you can't run this command nowエラーが発生する問題を修正
Nikita Vasilevsky

recordという名前のリレーションを持つ関連付けを保存するとエラーになる問題を修正
Dorian Marié

datetimeカラムのprecision値のMySQL::SchemaDumperの振る舞いを修正
y0t4

リフレクションのない関連付けでのエラーを改善
Nikolai

change_tableからcheck_constraintにオプションを渡せるよう修正
Frederick Cheung

🔗 Action View

preload_link_tagでJavaScriptモジュールが正しくプリロードするよう修正
Máximo Mussini

オブジェクトのresponseメソッドでstylesheet_link_tagなどのヘルパーを利用できなかった問題を修正
dark-panda

🔗 Active Storage

7.0.0で導入された、DirectUploadsControllerservice_nameを渡せる機能を元に戻す

導入された変更によってRailsアプリケーションのアップグレードで多くの問題が発生したため、現在作業中の後方互換性の実装を進める間はこの機能を削除することにした。
Gannon McGibbon

Active StorageのJavaScriptアセットのプリコンパイルをオプトアウトできるようにした
jlestavel

🔗 Changelogに更新の記載がない機能

以下はChangelogには更新の記載がありません。


TechRachoではRubyやRailsの最新情報などの記事を平日に公開しています。TechRacho記事をいち早くお読みになりたい方はTwitterにて@techrachoのフォローをお願いします。また、タグやカテゴリごとにRSSフィードを購読することもできます(例:週刊Railsウォッチタグ)

関連記事

Rails 7.0.1がリリースされました

Rails 7.0.0がリリースされました


CONTACT

TechRachoでは、パートナーシップをご検討いただける方からの
ご連絡をお待ちしております。ぜひお気軽にご意見・ご相談ください。