2022/09/10分のコミットです。
CHANGELOGにのったコミットは以下の通りです。
- Allow
QueryMethods#in_order_of
to order by a string column name. - Deprecate quoting
ActiveSupport::Duration
as an integer
- Added
exclude?
method toActionController::Parameters
. - Add
HTTP_REFERER
when following redirects on integration tests - Rescue
JSON::ParserError
in Cookies json deserializer to discards marshal dumps
actionmailer/CHANGELOG.md
Default prepared_statements to false for mysql2 adapter
activerecord/lib/active_record/connection_adapters/abstract_adapter.rb
、
activerecord/lib/active_record/connection_adapters/mysql2_adapter.rb
の修正です。
MySQL adapterでprepared_statements
のデフォルトが誤ってtrueになってしまっていたのを、falseに戻しています。なお、Rails 7.2からはデフォルトtrueになる予定。
railties/lib/rails/generators/rails/app/USAGE
の修正です。
app generatorのdocについて、フォーマットの修正、exampleコードの追加等を行っています。
Merge pull request #45964 from jhawthorn/server_timing_safety
actionpack/lib/action_dispatch/middleware/server_timing.rb
の修正です。
ActionDispatch::ServerTiming
middlewareがマルチスレッド環境だと正しく結果が取得出来ないバグがあったのを修正しています。
railties/lib/rails/generators/rails/app/templates/config/environments/test.rb.tt
の修正です。
config.eager_load
について説明している箇所のグラマーの修正を行っています。
improve "in_order_of" to allow string column name
activerecord/lib/active_record/relation/query_methods.rb
の修正です。
QueryMethods#in_order_of
でstring columnの値でもorder処理が出来るよう修正しています。
Extract annotations using a parser for Ruby files
railties/lib/rails/source_annotation_extractor.rb
の修正です。
Rubyファイルのannotationsの取得処理に、ripper
を使用するよう修正しています。実際のコードが無いコメントだけのannotationを除外出来るようにする為。
Recommend mandatory STARTTLS for Google (#43594)
actionmailer/lib/action_mailer/base.rb
のdoc、及び、rails guideのAction Mailer Basics
の修正です。
config.action_mailer.smtp_settings
のexampleで、enable_starttls_auto
ではなくenable_starttls
を使用するよう修正しています。STARTTLSの方がセキュアな為。
Merge pull request #41517 from brunoarueira/fix/issue-38080-encoding-uploaded-file-headers
actionpack/lib/action_dispatch/http/upload.rb
の修正です。
ActionDispatch::Http::UploadedFile
のheaderのencodeがUTF-8
になるよう修正しています。元はASCII-8BIT
だったのですが、ASCII-8BIT
だと値をjsonに変換するような場合(instrumentで取得した値をそのままJSONに変換したい場合など)にエラーになってしまう為。
Add more instructions to RELEASING_RAILS
RELEASING_RAILS.md
の修正です。
リリース前の各パッケージサイトのログイン確認や、リリース処理後のリリースアナウンスの記事のフォーマットの追加などを行っています。
Merge pull request #45887 from ianneub/add-exclude-to-action_controller-parameters
actionpack/lib/action_controller/metal/strong_parameters.rb
の修正です。
ActionController::Parameters
に指定されたkeyが存在しない場合にtrueを返すexclude?
メソッドを追加しています。
Merge pull request #44131 from frenkel/explicit-negative-currency-format
activesupport/lib/active_support/locale/en.yml
の修正です。
currencyのnegative値のデフォルトフォーマット(negative_format
)を追加しています。値は-%u%n
。NumberHelper
でnegative_format
を使用している箇所がある為。
Merge pull request #40051 from fsateler/feature/redirect-referer
actionpack/lib/action_dispatch/testing/integration.rb
の修正です。
follow_redirect!
メソッドでHTTP_REFERER
headerを設定するよう修正しています。実際のブラウザの挙動と合わせる為。
actionpack/CHANGELOG.md
の修正です。
先のfollow_redirect!
の対応のエントリーをファイルの先頭に移動しています。
activerecord/lib/active_record/connection_adapters/abstract/quoting.rb
、
activerecord/lib/active_record/connection_adapters/mysql/quoting.rb
の修正です。
ActiveSupport::Duration
をSQLのbind parameterとして渡した場合に、自動でinteger値に変換する、という挙動がdeprecateになりました。今後は、明示的に呼び出す側で変換する必要があります。
# 秒のinteger値が必要な場合 Record.where("duration = ?", 1.hour.to_i) # ISO 8601 stringが必要な場合 Record.where("duration = ?", 1.hour.iso8601)
Require used model to fix isolated tests
activerecord/test/cases/relation/field_ordered_values_test.rb
の修正です。
不足していたmodelのrequireを追加しています。
Merge pull request #45829 from ghiculescu/nested-attribute-docs-improvements
activerecord/lib/active_record/nested_attributes.rb
のdocの修正です。
nested attributesを使用したformの作り方の説明、及び、そのformのデータをテストでエミュレートした場合のexampleをdocに追加しています。
Merge pull request #45987 from igorkasyanchuk/main
Action Mailer、railtiesの修正です。
email preview pageでメールをEMLファイルとしてダウンロードが出来るよう修正しています。
actionpack/lib/action_dispatch/middleware/cookies.rb
の修正です。
encrypted cookieのparse処理で、JSON::ParserError
をrescueするよう修正しています。cookie serializerにJSONを指定している場合にJSON::ParserError
が発生する可能性がある、かつ、エラーがそのままraiseされてしまうと、サーバ側でcookieが削除出来ず、ユーザがブラウザでcookieを削除しないといけなくなってしまう為。
railties/lib/rails/generators/rails/app/app_generator.rb
の修正です。
app generatorのcss
オプションのdescriptionを修正しています。
Remove unnecessary gitignore entry
.gitignore
の修正です。
先のコミットで誤って不要なignoreの設定が追加されてしまったのを削除しています。
Use devcontainer features to install github CLI (#45990)
devcontainerの修正です。
devcontainerでgithub-cliをインストールするよう修正しています。また、github-cliにより不要になった各処理用のスクリプトを削除しています。
Remove CHANGELOG entry for change only existing in main
activerecord/CHANGELOG.md
の修正です。
Default prepared_statements to false for mysql2 adapterで追加されたエントリーを削除しています。prepared_statements
のデフォルトが誤ってtrueになっていたのはmainブランチのみで、リリースされたgemに影響が無くCHANGELOGの記載が不要な為。
Merge pull request #45974 from gmcgibbon/improve_plugin_generator_docs
railties/lib/rails/generators/rails/plugin/USAGE
の修正です。
plugin
generatorのUSAGAにより詳細なpluginについての説明を追加しています。
Add italic and underline support to ActiveSupport::LogSubscriber#color
activesupport/lib/active_support/log_subscriber.rb
の修正です。
ActiveSupport::LogSubscriber#color
メソッドで、ログ出力の際にitalic及びunderlineを指定出来るよう修正しています。合わせて、メソッドの第二引数で指定出来るようになっていたboldの指定をキーワード引数に変更しています。
info color("Hello world!", :red, bold: true, underline: true)
Merge pull request #45885 from iainbeeston/patch-1 [skip ci]
rails guideのActive Storage Overview
の修正です。
image processingに指定出来るオプションについての詳細な説明を追加しています。
Ruby 3.2 FileUtils.rm_f
raises Errno::EISDIR
to remove directories
railties/test/application/test_runner_test.rb
の修正です。
ディレクトリを削除するのにFileUtils.rm_f
を使用していたのを、FileUtils.rm_r
を使用するよう修正しています。Ruby 3.2だとFileUtils.rm_f
でディレクトリを削除しようとするとエラーになる為。