なるようになるブログ

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

rails commit log流し読み(2020/01/05)

2020/01/05分のコミットです。

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


Fix adding non-null column to existing SQLite3 table

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

SQLite3 adapterで、nullじゃないカラムを追加しようとするとエラーになってしまうバグがあったのを修正しています。


Fix keyword arguments warnings on try

activesupport/lib/active_support/core_ext/object/try.rbの修正です。

trytry!メソッドでキーワード引数に関するwarningが表示されないよう対応しています。


ActiveSupport::EncryptedFile#initialize takes keyword arguments

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

ActiveSupport::EncryptedFile#initializeへの引数をHashとして渡していたのを、ActiveSupport::EncryptedFile#initializeシグネチャ通りキーワード引数で渡すよう修正しています。


Merge pull request #37299 from kobsy/specify-pk-as-conflict-target

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

insert_allメソッドのunique_byオプションにprimary keyが指定されている場合、conflict targetにprimary keyを含めるよう修正しています。

PostgreSQLON CONFLICTの動作を決定する場合、primary keyが考慮されるようにする為。

rails commit log流し読み(2020/01/04)

2020/01/04分のコミットです。

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

actionpack/CHANGELOG.md


Fix regression where AJ#perform_now doesn't return the job's value:

activejob/lib/active_job/callbacks.rbactivejob/lib/active_job/execution.rbの修正です。

perform_nowの戻り値がRails 6.0と6.1で異なってしまっていた(6.0ではperformの実行結果をそのまま返していたが、performの実行結果をbooleanで返していた)のを、6.0までと同じ戻り値を返すよう修正しています。


Fix wrong logging message in AJ in case a job returns a falsey value:

activejob/lib/active_job/instrumentation.rbの修正です。

job実行時の戻り値がfalseと見なされる値の場合に、jobがhaltしたという誤ったログが出力されてしまうバグがあったのを修正しています。


Merge pull request #38150 from kbrock/all_trusted_ips

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

X-Forwarded-Forに含まれる値がすべてtrustedな値だった場合、ActionDispatch::Request.remote_ipがデフォルト値(127.0.0.1)を返すようになっていたのを、X-Forwarded-For内の一番最初の値を使用するよう修正しています。


Pass env_name as a string in test databases

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

Don't allow mutations on configuration_hashRails.envを使用していた箇所をActiveRecord::ConnectionHandling::DEFAULT_ENV.call.to_symを使用する変更したのですが、それによりtest database作成時にenv nameが正しく指定されてなくなっていたのを修正しています。


Update "The Hard Way" setup for Arch Linux

rails guideのDevelopment Dependencies Installの修正です。

Install Additional Tools and Servicesの項のArch Linuxについて説明している箇所に、MariaDBの初期化処理、memcachedの起動処理についての説明を追加しています。


Avoid assigning duplicate values in QueryMethods

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

query methodsで同じ値を割当ないよう修正しています。

例えば、Post.joins(:author).joins(:author)とした場合、元々はauthorを2つ保持するようになっていたのですが、これだとorを使用する際に、構成は同じなので保持している値が違う為エラーになる、という問題があった為、同じ値は保持しないよう修正しています。


Allow or in case of from clause with same value

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

同じ値を持つfromメソッドを、orに指定出来るよう修正しています。


Fix typo s/prefered/preferred/ [ci skip]

rails guideのUsing Rails for API-only Applicationsの修正です。

preferredpreferedにタイポしていたのを修正しています。

rails commit log流し読み(2020/01/03)

2020/01/03分のコミットです。

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

activerecord/CHANGELOG.md


Mime::Mimes#symbols should return a always up to date reference:

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

Mime::Mimes#symbolsが必ず最新の@mimesのデータを返すよう修正しています。

ActionView::Base.default_formatsMime::Mimes#symbolsの参照を保持しており、Mime::Mimes#symbolsが返す値が最新の結果でないと、ActionView::Base.default_formats経由で正しい値を取得出来ない為。


Add to the log format "/" if using a not found format:

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

action実行時のログで、formatがnilの場合、*/*をformatとして表示するよう修正しています。


Merge pull request #38133 from onk/insert_all_sql

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

insert_allで実行するSQLで、テーブル名とカラム名の間にスペースを入れるよう修正しています。createで生成するSQLだとスペースが入っており、フォーマットを合わせる為。


Merge pull request #38140 from bogdanvlviv/HostAuthorization-to-Configuring-Middleware-guide

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

ActionDispatch::HostAuthorizationについての説明を追加しています。


Enforce fresh ETag header after collection changes

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

Active RecordのcollectionをkeyにETag headerの値を生成しているときに、collectionの内容が変化しても同じETag headerの値が生成されてしまうバグがあったのを修正しています。


Fix test failure if prepared_statements is flipped

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

connectionのprepared_statementsがfalseだった場合に、prepared_statement + threadのテストがfailしてしまっていたのを修正しています。

rails commit log流し読み(2020/01/02)

2020/01/02分のコミットです。

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


Merge pull request #38135 from yahonda/remove_travis_files

もう使われてないTravis CIに関するファイル、設定を削除しています。


Merge pull request #38136 from simi/fix-date-dependent-test

actionview/test/template/date_helper_test.rbの修正です。

select_year + yearにnilを指定したテストが、2019年にテストを実行した場合を前提としたテストになっており、2020年になったらfailするようになってしまった為、travel_toで日付を固定するよう修正しています。


Merge pull request #38132

各ファイルのlicense yearsを2020に更新しています。

rails commit log流し読み(2019/12/31)

2019/12/31分のコミットです。

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

actioncable/CHANGELOG.md


Address StarStarMimeControllerTest#test_javascript_with_no_format_only_star_star failure

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

テストの先頭でActionView::Base.default_formatsに明示的に値を指定するよう修正しています。

Action Packのロード時にaction_view/baseをロードしないよう修正した、Don't require "action_view/base" in action pack:の影響で、ActionView::Base.default_formatsの初期化処理がテスト実行時に呼ばれない、かつ、ActionView::Base.default_formatsが指定されている事に依存しているテストがある為。


Add ActionCable subscription connection identificator to PostgreSQL adapter

Action Cableの修正です。

PostgresSQL adapterでsubscription connectionsのidを指定出来るよう修正しています。

idhostport同様、configファイル経由で指定出来るようになっています。configで指定されていない場合、Rails側でデフォルト値("ActionCable-PID-#{$$}")を指定するようになっており、値はapplication_nameとして設定されるようになっています。


Fix markup and improve Action Text guide a bit [ci skip]

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

各項について、exampleコードのハイライトが正しく表示されるよう修正、説明の言い回しを修正等を行っています。


Fix a couple typos and simplify Active Record changelog entry [ci skip]

activerecord/CHANGELOG.mdの修正です。

各エントリーのタイポ、及び、言い回しの修正を行っています。


Fix markup on API-only Applications guide [ci skip]

rails guideのUsing Rails for API-only Applicationsの修正です。

リストの及び見出しが正しく表示されていなかったのを修正しています。


Fix indent in Action Cable changelog entry [ci skip]

actioncable/CHANGELOG.mdの修正です。

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

rails commit log流し読み(2019/12/30)

2019/12/30分のコミットです。

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


Merge pull request #38113 from Edouard-chin/ec-deprecation-test-suite

activejob/test/helper.rbの修正です。

ActiveJob::Base.return_false_on_aborted_enqueueにtrueを指定して、テスト実行時にdeprecation warningが表示されないようにしています。


Fix broken markup [ci skip]

activesupport/CHANGELOG.mdの修正です。

CHANGELOGエントリー内のexampleコードた正しく表示されていなかったのを修正しています。