2023/02/24分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
Serialized attribute should be able to be defined in abstract classes
activerecord/lib/active_record/attribute_methods/serialization.rb
、
activerecord/lib/active_record/type/serialized.rb
の修正です。
serialize
メソッドで対象のDBカラムにデフォルト値が設定されている場合にそのデフォルト値の設定が出来ないバグがあったのを修正した、Respect Column default in Type::SerializedをRevertしています。アプリ起動中にまだアクセス出来ないcolumnの情報を参照するような変更になっており、実際のアプリケーションでは正しく動作しない為。
Create an ActionView::PathRegistry module
Action Viewの修正です。
ActionView::ViewPaths::Registry
moduleをActonView::PathRegistry
moduleにリネームしています。アプリケーションにRegistry
という名前のclass/moduleがあった場合に名前がコンフリしてしまい予期せぬ挙動になってしまう為、もう少しコンフリしなそうな名前に変更しています。
Merge pull request #47484 from skipkayhil/suppress-mail-warnings-in-ci
mail
gem起因のwarningが表示されないよう修正しています。
Stop serializing columns as YAML by default
railties/lib/rails/application/configuration.rb
の修正です。
columnのserializeに使われるserializerのデフォルトをYAML serializerから設定無しに変更しています。YAMLは性能とセキュリティ両方に問題がある為デフォルトとしてはよくないと思われる、しかし代替えとなるような処理が現状無い(JSONが現実的だが現在Railsで使用しているJSONのパーサはJSONとして不正なデータを生成するケースがある為不適切と判断されたとのこと)為、7.1からは設定無しをデフォルトとする事にしたとの事です。json
gemにJSON native typeにマップ出来ない値を拒否するstrict
optionを提案しており、それがマージされればその機能を使うのが良いのでは、という事です。
参考: Add a strict option to Generator
Add missing CHANGELOG entries for #47463 and #47422
activerecord/CHANGELOG.md
の修正です。
columnのserializeに使われるserializerを変更出来るようにしたAllow to define the default column serializer、及び、先のserializerのデフォルトを指定無しに変更した対応のエントリーを追加しています。
Fix a typo in activerecord/CHANGELOG
activerecord/CHANGELOG.md
の修正です。
libraries
をlibaries
にタイポしていたのを修正しています。
Small tweaks on AR changelog [ci skip]
activerecord/CHANGELOG.md
の修正です。
各エントリーのフォーマット及びグラマーの修正を行っています。
Add changelog entry for #47316 [ci skip]
activesupport/CHANGELOG.md
の修正です。
Object#in?
でopen date rangeをサポートするよう修正した、Add Object#in? support for open rangesの対応のエントリーを追加しています。