なるようになるブログ

読書感想文かrailsについてかrubyについてか

rails commit log流し読み(2018/04/25)

2018/04/25分のコミットです。

CHANGELOGへの追加はありませんでした。


Update schema.rb documentation [CI SKIP]

rails guideのActive Record Migrationsの修正、及び、activerecord/lib/active_record/schema_dumper.rbのdocの修正です。

railsがサポートしてる二つのスキーマフォーマットについての詳細な説明、及びそれらのpros / consにいての説明を加筆修正しています。


Fix typo in migrations guide [ci skip]

rails guideのActive Record Migrationsの修正です。

先のdocの修正で、db/structure.sqldb/strcuture.sqlにタイポしていたのを修正しています。


Fix test method name

railties/test/generators/app_generator_test.rbの修正です。

デフォルトで生成されるGemfileに、Active Storageに関するgemが生成される事、及び、skipオプションを指定した場合は生成されないことを確認するテストのテスト名にmini_magickが含まれていたのを修正しています。

Use ImageProcessing gem for ActiveStorage variantsmini_magickは直接使用する事は無くなった為。


Merge pull request #32097 from matthewd/arel

rails/arelで管理していたArelのコードを、Active Record配下に移動しています。rails/arelにはgemspec、README等だけ残っている状態。

Arelを使っているのは基本的にRails(Active Record)だけなのに、gemが別な事によりリリース(Railsをリリースする前にArelをリリースする必要がある等)やコードの調整の手間が増えている、という問題がありました。

で、ならいっそコードベース一緒にしちゃって良いのでは、という話しになり、Active Record配下にまるまる格納される事になりました。Railsを使うユーザ側への影響は特に無し。


Address NameError: uninitialized constant Arel::Collectors::Bind

activerecord/test/cases/arel/collectors/bind_test.rbの修正です。

arel/collectors/bindのrequireが不足していたのを修正しています。


Merge pull request #32715 from vaidehijoshi/refactor-scanner-test

actionpack/test/journey/route/definition/scanner_test.rbの修正です。

TestScannerクラスで、tokenについてのテストを一つのテストメソッドで行っていたのを、token毎にテストメソッドを分けるよう修正しています。エラーの際にどのtokenでエラーになったのかをわかりやすくするため。


Merge pull request #32713 from utilum/max_ffi_version

Gemfileの修正です。

ffi gemのバージョンを1.9.21以下に固定しています。

Use ImageProcessing gem for ActiveStorage variantsffi 1.9.23を使用するようになっていたのですが、1.9.23だと時折セグフォが発生するという問題があった為、バージョン固定を追加しています。


Add a helper method to check that gem does not exist in Gemfile

railties/test/generators/app_generator_test.rbの修正です。

Gemfileに指定されたgemが無いことを確認するヘルパーメソッドを追加、及び、そのヘルパーメソッドを使用するよう修正しています。


Merge pull request #32702 from bogdanvlviv/fix-description-for-31685

rails guideのAction Controller Overviewの修正です。

The Flashの項にある、ログアウト処理のexampleコードで、sessionからuser idを削除してなかった(nilを入れいただけ)のを、明示的にuser idを削除するようコードを修正しています。

合わせて、Accessing the Sessionの項で、ログアウト処理でsessionnilを指定する旨説明をしていたのを、sessionを削除する旨説明を修正しています。


get_value needs to be a public method

activerecord/lib/active_record/relation/query_methods.rbの修正です。

QueryMethods#get_valueメソッドの可視性をprotectedからpublicに変更しています。

QueryMethods#get_valueメソッドは、Relation::Merger should not fill values with empty valuesで可視性をprotectedに変更したのですが、protectedに変えた事によりvaluesが正しく取得できなくなり、Relation::Mergerの動作に影響が出てしまい、 結果、同じ条件のassociationに対するorメソッドが動作しない、というバグが出てしまっていました。

で、その対応として、可視性をpublicに戻しています。


Unminify activestorage.js

Active StorageのJSの修正です。

activestorage.jsをminifyしていたのを、minifyしないよう修正しています。gitのlogで変更内容を把握しやすいようにする為。

合わせて、モジュールのバンドルにWebpackを使用していたのを、rollupを使用するよう修正しています。こちらはrollupの方が高速かつ生成されるファイルが小さい為。

rails commit log流し読み(2018/04/24)

2018/04/24分のコミットです。

CHANGELOGにのったコミットは以下の通りです。

activestorage/CHANGELOG.md


Merge pull request #31881 from yewton/rails-ujs-with-yarn-autoclean

actionview/app/assets/javascripts/README.mdの修正です。

yarn autocleanコマンドを実行した後に、.yarncleanassetsディレクトリを含まないよう注記を追加しています。


Remove key from session by using session.delete (#31685)

rails guideのAction Controller Overviewの修正です。

Accessing the Sessionの項にある、ログアウト処理のexampleコードで、sessionからuser idを削除してなかった(nilを入れいただけ)のを、明示的にuser idを削除するようコードを修正しています。


Merge pull request #32703 from janko-m/halve-memory-allocation-in-s3-download

activestorage/lib/active_storage/service/s3_service.rbの修正です。

S3Service#downloadメソッドでbodyを取得するのにreadメソッドを使用していたのを、stringメソッド使用するよう修正しています。

-          object_for(key).get.body.read.force_encoding(Encoding::BINARY)
+          object_for(key).get.body.string.force_encoding(Encoding::BINARY)

Aws::S3::Object#getStringIOオブジェクトを返す、かつ、StringIO#readは値をコピーした新しいオブジェクトを返します。そのため、不要なオブジェクトの生成を避けるよう、値をそのまま取得出来るstringメソッドを使用するようにしています。


Save a hash allocation in MySQL statement pool

activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rbactiverecord/lib/active_record/connection_adapters/mysql/database_statements.rbの修正です。

statement poolを保持する際に、明示的にHashを生成していたのを、生成しないよう修正しています。古いMySQL adapterの為のコードだったとのことです。


Merge pull request #32471 from janko-m/use-image_processing-gem

Active Storageの修正です。

ファイルの変換処理にImageMagick(mini_magick gem)を直接使用していたのを、image_processing gemを使用するよ修正しています。

image_processingはGraphicsMagickもサポートしているので、ファイルの変換処理にlibvips(ruby-vips gem)も使用出来るようになります。vipsを使用したい場合は、config.active_storage.variant_processorvipsを指定すればOKです。

この対応により、mini_magick gemを直接使用するのはdepecateになりました。合わせて、変換処理でImageMagickのオペレーションを直接指定していたのを、image_processingが提供するメソッド(resize_to_fitresize_to_fill等々)を使用する必要があります。

ちなみにimage_processing gemの作者はshrine: File Attachment toolkit for Ruby applicationsの作者のjanko-m氏。


Flush tempfile after populating it

activestorage/lib/active_storage/downloading.rbの修正です。

Downloading#download_blob_toメソッドでblobデータをファイルに書き込んだ後、バッファを出力する為にflushメソッドを呼び出すよう修正しています。


Use strict_encode64 instead of gsub newline for ScreenshotHelper

actionpack/lib/action_dispatch/system_testing/test_helpers/screenshot_helper.rbの修正です。

ScreenshotHelper#inline_base64メソッドでpathをencode64メソッドでBase64エンコードした後に改行コードを削除してたのを、strict_encode64メソッドを使ってそもそも改行コードが含まれないようにしています。


columns is cached in the statement

activerecord/lib/active_record/connection_adapters/sqlite3_adapter.rbの修正です。

columnsをクラス内でHashにキャッシュしていたのですが、そもそもStatement classでcolumnsをキャッシュしていたので、そちらを使用するよう修正しています。

rails commit log流し読み(2018/04/23)

2018/04/23分のコミットです。

CHANGELOGへの追加はありませんでした。


Merge pull request #32678 from yhirano55/use-vanilla-js-in-rails-guides

rails guideの修正です。

guideのJSをjQueryを使わないようリファクタリングしています。


Update results of command in Testing guides [ci skip]

rails guideのTesting Rails Applicationsの修正です。

guide内の各コマンドの実行結果を最新の内容に更新しています。


Refactor guides javascripts

guides/assets/javascripts/guides.jsguides/assets/javascripts/responsive-tables.jsの修正です。

変数名に$プレフィックスを使っていたのを使わないよう修正(もうjQueryは使ってない為)、古いブラウザのサポートの為にforEachを独自に定義、等の修正を行っています。


Use the same tag as other views to display the error message

actionpack/lib/action_dispatch/middleware/templates/rescues/missing_exact_template.html.erbの修正です。

renderするテンプレートが無い場合に表示するエラーテンプレートで、エラーメッセージを表示するのにh3タグを使っていたのを、h2タグを使うよう修正しています。他のエラーテンプレートと合わせる為。

rails commit log流し読み(2018/04/22)

2018/04/22分のコミットです。

CHANGELOGへの追加はありませんでした。


Merge pull request #32514 from samdec/multiple-has-one-through-associations-build-bug

activerecord/lib/active_record/associations/has_one_through_association.rbの修正です。

has_one through associationが複数定義されている、かつ、そのassociationの中間オブジェクトが同じオブジェクトだった場合に、それらのassociationをそれぞれbuildした際、後にbuildしたの中間オブジェクトがbuildではなくsaveされてしまうバグがあったのを修正しています。


Using existing models for building multiple has_one through tests

Active Recordのテストの修正です。

先のhas_one throughのバグの修正で、テスト用のmodelを新規に作成していたのを、既存のmodelを使用するよう修正しています。


Merge pull request #32673 from eugeneius/raw_post_multiple_requests

actionpack/lib/action_controller/test_case.rbの修正です。

ActionController::TestRequestクラスでrequest毎にRAW_POST_DATAをリセットするよう修正しています。


Fix typo in constant name [ci skip]

activesupport/CHANGELOG.mdの修正です。

定数名をタイポしている箇所があったのを修正しています。


Fix duplicated suffix for JobGenerator

activejob/lib/rails/generators/job/job_generator.rbrailties/lib/rails/generators/test_unit/job/job_generator.rbの修正です。

job generatorでjobを生成する際に、job名に_jobという接尾語がついていた場合、生成されるファイルに_jobが重複して指定されていまっていたのを、重複して指定されないよう修正しています。


Add test case to ChannelGeneratorTest

railties/test/generators/channel_generator_test.rbの修正です。

channel generatorでchannelを生成する際に、channel名に_channelという接尾語がついていた場合のテストを追加しています。


Merge pull request #32681 from bdewater/rubocop-0-54

rubocopのバージョンを0.54.0に更新しています。


Strip duplicated suffixes more strictly

各generatorで接尾語の重複を削除(job generatorなら_job)をする正規表現に、文字列の末尾指定(\z)を追加しています。元の正規表現だと文字列の途中に削除対象の文字があった場合にも削除してしまっていた為。


Merge pull request #31554 from fatkodima/controller_generator_suffix

railties/lib/rails/generators/rails/controller/controller_generator.rbの修正です。

controller generatorでcontrollerを生成する際に、controller名に_controllerという接尾語がついていた場合、生成されるファイルに_controllerが重複して指定されていまっていたのを、重複して指定されてないよう修正しています。


Fix indentation manually

railties/test/generators/app_generator_test.rbの修正です。

インデントがずれている箇所があったのを修正しています。

rails commit log流し読み(2018/04/21)

2018/04/21分のコミットです。

CHANGELOGにのったコミットは以下の通りです。

actionpack/CHANGELOG.md

activerecord/CHANGELOG.md


Merge pull request #23868 from gsamokovarov/debug-exceptions-interceptors

actionpack/lib/action_dispatch/middleware/debug_exceptions.rbの修正です。

ActionDispatch::DebugExceptionsにinterceptorを登録出来るようにしています。

interceptorはregister_interceptorメソッドを使用して登録出来るようになっており、登録されたinterceptorはException発生時に実行されます。

ActionDispatch::DebugExceptions.register_interceptor do |request, exception|
  HypoteticalPlugin.capture_exception(request, exception)
end

[ci skip] Improve #find_in documentation.

railties/lib/rails/source_annotation_extractor.rbのdocの修正です。

SourceAnnotationExtractor#find_inメソッドのdocで、アノテーションの対象となるファイルの拡張子をベタで記載していたのを、Rails::SourceAnnotationExtractor::Annotation.extensionsで取得出来る値が対象である旨説明を修正しています。

元々記載されいたのではRailsがデフォルトで対応している拡張子だけだったのですが、実際は各gemによりもっと異なる拡張子が登録されており、誤解を招くだろうということで修正されています。


[ci skip] Prefix class name with Rails:: in docs

railties/lib/rails/source_annotation_extractor.rbのdocの修正です。

各メソッドのdoc内のexampleコードで、deprecateになった古いクラスSourceAnnotationExtractorが使用されていたのを、新しいクラス(Rails::SourceAnnotationExtractor)を使用するよう修正しています。


Don't include bootsnap by default in apps generated under JRuby

railties/lib/rails/generators/app_base.rbの修正です。

JRubyを使用している場合に、rails newで生成されるGemfileにbootsnapを含まないよう修正しています。

bootsnapJRubyをサポートしていない為。


Merge pull request #32572 from nao0515ki/add_optional_true_to_self_joins_section

rails guideのActive Record Associationsの修正です。

Self Joinsの項にあるexampleコード内のbelongs_toを使用している箇所に、optionalオプションの指定が不足していたのを修正しています。


Merge pull request #29286 from vinistock/create_missing_exact_template_exception

Action Packの修正です。

ブラウザからのアクセス、かつ、renderするテンプレートが内場合にraiseするエラークラスをActionController::UnknownFormatからActionController::MissingExactTemplateに変更しています。

また、デフォルトのエラーテンプレートにActionController::MissingExactTemplate用のテンプレートを追加し、ActionController::MissingExactTemplateが発生した場合に適切なエラーページを表示するよう修正しています。


Merge pull request #31513 from fatkodima/relation-touch_all

activerecord/lib/active_record/relation.rbactiverecord/lib/active_record/timestamp.rbの修正です。

ActiveRecord::Relationtouch_allメソッドを追加しています。

例。

Person.where(name: "David").touch_all(time: Time.current)

Can preload associations through polymorphic associations

activerecord/lib/active_record/associations/preloader.rbの修正です。

polymorphic association経由でassociationをpreloadする場合、対象となるassociationが存在しなくてもエラーにならないよう修正しています。

例。

class Review < ActiveRecord::Base
  has_many :media, polymorphic: true
end

class Movie < ActiveRecord::Base
  has_one :director
end

class Book < ActiveRecord::Base
  has_one :author
end

上記のようなクラス構成で、mediaMovie、または、Bookのどちらかになる場合に、media+ その先のassociationをまとめてpreloadしようとすると(Review.includes(media: [:author, :director]))エラー(ActiveRecord::AssociationNotFoundError`)になっていました。で、これをエラーとせず、まとめてpreload出来るよう修正しています。


Relax assertions in connection config tests

activerecord/test/cases/connection_adapters/connection_handler_test.rbの修正です。

connection configのテストがbin/testツールを使うとエラーになっていたのを、エラーにならないよう修正しています。

rake testを実行した場合は問題無かったのですが、bin/testを使うとRails.rootが定義されてしまい、その影響で結果が異なるようになってしまっていました。


Fix typo in the touch_all doc [ci skip]

activerecord/lib/active_record/relation.rbのdocの修正です。

Relation#touch_allメソッドのdoc内のexampleコードでtouchメソッドを使用していたのを、touch_allメソッドを使用するよう修正しています。


Add test case for collection.size with dirty target

activerecord/test/cases/associations/has_many_associations_test.rbの修正です。

dirty targetを含むcollectionに対するsizeメソッドのテストを追加しています。


target in CollectionAssociation is always an array

activerecord/lib/active_record/associations/collection_association.rbの修正です。

CollectionAssociation#sizeメソッドでtargetArrayかどうかチェックしていたのを、チェックしないよう修正しています。CollectionAssociationではtargetは必ずArrayの為。

rails commit log流し読み(2018/04/20)

2018/04/20分のコミットです。

CHANGELOGにのったコミットは以下の通りです。

activesupport/CHANGELOG.md

actionview/CHANGELOG.md


Add exculude condition in rubocop.yml

.rubocop.ymlの修正です。

railtiesのテストで生成されるfixtureをrubocopの対象にしないよう修正しています。


Navigate edgeguide from .github template [ci skip]

.github/issue_template.md.github/pull_request_template.mdの修正です。

githubのtemplateファイルに記載しているguides.rubyonrails.orgへのリンクをedgeguides.rubyonrails.orgに変更しています。

最新の情報が記載されているのはedgeguides.rubyonrails.orgな為。


Merge pull request #32626 from ftovaro/master

README.mdrailties/RDOC_MAIN.rdocの修正です。

スタイルの修正や、各コンポーネントへのリンクの追加等を行っています。


[ci skip] Remove style of the word Rails at the top

README.mdの修正です。

What's Railsの項のスタイルの修正を行っています。


Merge pull request #32605 from composerinteralia/assert-not

assert !を使った場合に、assert_notを使用するよう指摘するcustom Copを追加しています。


Merge pull request #32593 from sdhull/fix-strong-params-permit-bang

actionpack/lib/action_controller/metal/strong_parameters.rbの修正です。

ネストしたArray(e.g. [[{ x: 2, y: 3 }, { x: 21, y: 42 }]])に対してpermit!が使用した場合に、パラメータがpermitされないバグがあったのを修正しています。


[ci skip] Restore of links in RDOC_MAIN after an update of the file (#32644)

railties/RDOC_MAIN.rdocの修正です。

コンポーネントへのリンクがAPI doc上で壊れていたのを修正しています。


Merge pull request #32401 from yhirano55/improve_css_in_guide

guides/assets/stylesheets/main.cssguides/assets/stylesheets/print.cssの修正です。

使用されていないスタイルや、不要なコメントの削除等を行っています。


Merge pull request #32168 from christianblais/activesupport-ordinalize-i18n

Active Supportの修正です。

ActiveSupport::Inflector#ordinal(及びordinalを使用しているActiveSupport::Inflector#ordinalizeも)の値がメソッドの中で固定になっていたのを、I18n.translateメソッドを使用して値を取得するよう修正しています。

これにより、i18nの設定ファイルでordinals及びordinalizedを定義した場合、そちらの値が使用されるようなっています。

例。

# locale/fr.rb
{
  fr: {
    number: {
      nth: {
        ordinals: lambda do |_key, number:, **_options|
          if number.to_i.abs == 1
            'er'
          else
            'e'
          end
        end,

        ordinalized: lambda do |_key, number:, **_options|
          "#{number}#{ActiveSupport::Inflector.ordinal(number)}"
        end
      }
    }
  }
}

Allow rubocop check more files

custom copの対象となるファイルのパターンを**/*_test.rbから**/test/**/*に修正しています。

_test.rbで終わっていないファイルがある(異なるテスト間で共通で使用するテスト用module等)為。


Create a .ruby-version compatible with MRI/JRuby by default

railties/lib/rails/generators/rails/app/templates/ruby-version.ttの修正です。

rails newで生成する.ruby-versionファイルにRUBY_VERSIONだけを記載していたのを、RUBY_ENGINEも記載するよう修正しています。

-<%= RUBY_VERSION -%>
+<%= "#{RUBY_ENGINE}-#{RUBY_ENGINE_VERSION}" -%>

RUBY_ENGINEの指定が無いとrvmがCRubyと判定してしまい、JRubyを使う場合に問題になる為。


Merge pull request #32645 from maneframe/skip_query_cache_merge

activerecord/lib/active_record/relation/query_methods.rbの修正です。

relationのmerge処理で skip query cacheの設定が正しくmergeされない(強制的にtrueになる)バグがあったのを修正しています。


Return back "/" to the end of RAILS_GEM_ROOT

activerecord/lib/active_record/log_subscriber.rbactivesupport/lib/active_support/deprecation/reporting.rbの修正です。

RAILS_GEM_ROOT定数の末尾に/を追加しています。

元々は/があったのが、Define path with dirの対応の際に誤って削除されてしまっていました。ぜ、末尾の/がないと、正しくgemが判定出来ない(railsで始まっているgemを誤検知してしまう)為、/を戻しています。


Add missing changelog entry

actionpack/CHANGELOG.mdの修正です。

ネストしたArrayに対してpermit!が使用した場合にパラメータがpermitされないバグがあったのを修正した、Merge pull request #32593 from sdhull/fix-strong-params-permit-bangについてCHANGELOGにエントリーを追加しています。

が、これは後ほどrevertされています。上記対応は5-2-stableにバックポート済みで、バックポートされた対応のエントリーはmasterには不要の為。


Use assert_no_match for test_order_to_unscope_reordering

activerecord/test/cases/scoping/default_scoping_test.rbの修正です。

assert_not + match?を使っていたテストを、assert_no_matchを使うよう修正、及び、Rubyのwarning(warning: ambiguous first argument)が出ていたので、引数を指定するのに中括弧を追加しています。


Don't expose Relation#preload_associations in the doc

activerecord/lib/active_record/relation.rbのdocの修正です。

内部用のAPIであるRelation#preload_associationsメソッドに:nodoc:の指定を追加しています。


Revert "Merge pull request #32652 from bogdanvlviv/add-missing-changelog-for-32593"

actionpack/CHANGELOG.mdの修正した、Add missing changelog entryをrevertしています。理由は上記参照。


Merge pull request #32574 from DmytroVasin/rails-ujs-stoppable-events

rails-ujs、及び、rails guideのWorking with JavaScript in Railsの修正です。

guideのStoppable eventsの項に、eventをキャンセルしたい場合、callbackでe.preventDefault()を呼び出す必要がある旨説明を追加、及び、テストでイベントをキャンセルするのにfalseを返していただけだったのを、preventDefault()を使うよう修正しています。


Merge pull request #32575 from ybakos/guides/testing/pluralize_class_names

rails guideのTesting Rails Applicationsの修正です。

controllerとhelperのクラス名に単数形が使われてしまっている箇所があったのを、複数形を使用するよう修正しています。


Make JS views rendered work with content security policy

actionview/app/assets/javascripts/rails-ujs/utils/ajax.coffeeの修正です。

Content Security Policyを使用している場合に、JavaScript viewのrender処理が正しく動作しないバグがあったのを修正しています。


Merge pull request #32642 from bogdanvlviv/fix-name-test-added-by-32613

activesupport/test/time_zone_test.rbの修正です。

テストメソッド名でグラマーが誤っている箇所があったのを修正しています。


warning: ambiguous first argument; put parentheses or a space even after `/' operator

actionpack/test/controller/action_pack_assertions_test.rbの修正です。

assert_not + matchを使っていたテストを、assert_no_matchを使うよう修正、及び、Rubyのwarning(warning: ambiguous first argument)が出ていたので、引数を指定するのに中括弧を追加しています。


[ci skip] Fix doc typos ActionDispatch::Http::FilterParameters

actionpack/lib/action_dispatch/http/filter_parameters.rbのdocの修正です。

ActionDispatch::Http::FilterParameters moduleのdoc内のタイポを修正しています。


Fix typo on method name

railties/test/application/configuration_test.rbの修正です。

テストメソッド名でグラマーが誤っている箇所があったのを修正しています。


Allow primary_key argument to empty_insert_statement_value

Active Recordの修正です。

empty_insert_statement_valueメソッドにprimary_keyを渡せるよう修正しています。

Oracle adapterでidentity data typeをサポートするのにあたって、empty_insert_statement_valueメソッドでprimary keyを含むSQLを生成する必要がある為とのことです。

rails commit log流し読み(2018/04/19)

2018/04/19分のコミットです。

CHANGELOGにのったコミットは以下の通りです。

actionview/CHANGELOG.md

activesupport/CHANGELOG.md

railties/CHANGELOG.md


Merge pull request #32326 from q-centrix/perf-improvement-translation-helper-default-array

actionview/lib/action_view/helpers/translation_helper.rbの修正です。

translateメソッドでdefaultオプションが指定されていない場合に不要なArrayを生成しないよう修正しています。


Merge pull request #32607 from yaroslav/feature/nonce-for-javascript_include_tag

actionview/lib/action_view/helpers/asset_tag_helper.rbの修正です。

javascript_include_tagメソッドにnonceオプションを追加しています。挙動はjavascript_tagと同じで、指定するとContent Security Policy用のnonceが生成されます。


Redis cache store: avoid blocking the server in #delete_matched

activesupport/lib/active_support/cache/redis_cache_store.rbの修正です。

Redis cache storeのdelete_matchedメソッドのの実装を、Luaスクリプトでやっていたのを、SCAN + DELコマンドで行うよう修正しています。

Luaスクリプトの実行はRedisの他の処理をブロックしてしまい、他のクライアントからのコマンドが実行出来ない(一部を除き)という問題があった為。

参考:EVAL – Redis


Merge pull request #32613 from dsander/fix-as-timezone-all

activesupport/lib/active_support/values/time_zone.rbの修正です。

ActiveSupport::TimeZone::MAPPINGに定義されたtimezoneがTZInfoに存在しない場合に、ActiveSupport::Timezone.allを実行するとエラーになってしまうバグがあったのを修正しています。

TZInfoのデータが古い場合にこの問題がおきていたとのことです(最新のTZInfoを使っていれば、ActiveSupport::TimeZone::MAPPINGに定義されていて、かつ、TZInfoに定義されていないtimezoneはないので問題無い)。


Fix reference to fixed issue in actionpack/CHANGELOG.md

actionpack/CHANGELOG.mdの修正です。

Content Security Policyのnonceヘッダーがリクエストの度に増えてしまうバグを修正した対応のエントリーで、issueの番号が誤っていたのを修正しています。


Make the master.key readable only by the owner

railties/lib/rails/generators/rails/encryption_key_file/encryption_key_file_generator.rbの修正です。

デフォルトで生成されるmaster.keyファイルの権限が0644になっていたのを、0600に変更し、オーナーからしか読み込めないようにしています。


Merge pull request #32625 from stephendolan/master

rails guideのTesting Rails Applicationsの修正です。

System Testingの項のグラマーの修正を行っています。


Update CoC to change a history of updates URL [ci skip]

CODE_OF_CONDUCT.mdの修正です。

Code of ConductについてのURLが古いURLのままになっていたのを修正しています。


Improve redundancy in line tasks

actionpack/Rakefileactionview/Rakefileの修正です。

各タスクから不要な処理を削除しています。