なるようになるブログ

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

rails commit log流し読み(2018/05/14)

2018/05/14分のコミットです。

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

railties/CHANGELOG.md


Merge pull request #32837 from ttanimichi/app-update-skip-spring

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

app:updateタスクで、Springを使用していない場合にconfig/spring.rbを生成しないよう修正しています。

rails commit log流し読み(2018/05/13)

2018/05/13分のコミットです。

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


Remove ActiveRecord::Transactions#rollback_active_record_state!

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

ActiveRecord::Transactions#rollback_active_record_state!メソッドを削除しています。

元々はsaveメソッドでwith_transaction_returning_statusでexceptionが発生した際の為の使われていたメソッドだったのですが、Add after_commit and after_rollback callbacks to ActiveRecord that ar…でrollback時の処理はtransaction stackで行われるようになり、save側で行う必要は無くなっていたため、削除しています。


Merge pull request #32862 from eugeneius/callback_rollback

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

callback処理等で明示的にrollbackした(ActiveRecord::Rollbackをraise)した際に、transaction stateをclearしないよう修正しています。

ここでstateをclearしてしまうと、元の状態への復元が正しく行えないため。


Fix CustomCops/AssertNot to allow it to have failure message

CustomCops/AssertNot copが、assertionにfailure messageを指定している場合に正しくチェックが出来ていなかったのを修正、及び、各ファイルにcopを再度適用しています。


Add available transformations to docs [ci skip]

activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rbのdocの修正です。

ActiveRecord::ConnectionAdapters::Table classのdoc内のmigrationで使用出来るメソッドの一覧にforeign_keyjsonvirtualを追加しています。

rails commit log流し読み(2018/05/12)

2018/05/12分のコミットです。

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

activejob/CHANGELOG.md


Remove reference to old :text rendering option

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

RenderingHelper#renderメソッドのdocから既に存在しない:textオプションについての説明を削除しています。


Merge pull request #32843 from ttanimichi/remove_unused_remove_file

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

config_when_updatingメソッドでapiオプションが指定されている場合に、config/initializers/assets.rbを削除する処理があったのを、処理を削除しています。

apiオプションが指定されていた場合、ここに至るまでの処理でconfig/initializers/assets.rbは削除済みの為。


Pass the error instance as the second parameter of block executed by discard_on

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

discard_onメソッドにblockを指定した場合の、blockに渡される引数の第二引数をException classから実際に発生したerrorのインスタンスに変更しています。

discard_onにblockを渡せるようにした対応のPRを見る限り、errorのインスタンスを渡すのが本来の想定だったと思われる為。

rails commit log流し読み(2018/05/11)

2018/05/11分のコミットです。

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


Added a lot of Oxford commas

各docのカンマのフォーマットをOxford comma フォーマットに修正しています。


becomes should clear the mutation tracker which is created in after_initialize

activerecord/lib/active_record/attribute_methods/dirty.rbactiverecord/lib/active_record/persistence.rbの修正です。

becomesメソッドで、receiver側でmutation trackerがまだ定義されていない場合に、mutation trackerのclearが正しく行われないバグがあったのを修正しています。

rails commit log流し読み(2018/05/10)

2018/05/10分のコミットです。

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


[ci skip] fix typo in active_support_instrumentation.md guide

rails guideのActive Support Instrumentationの修正です。

send_data.action_controller hookについて説明している箇所でaddhadにタイポしていたのを修正しています。

rails commit log流し読み(2018/05/09)

2018/05/09分のコミットです。

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

activestorage/CHANGELOG.md


Add option to ActiveStorage::Blob to set extract_content_type_from_io

activestorage/app/models/active_storage/blob.rbの修正です。

ActiveStorage::Attached::{One,Many}#attachメソッドにcontent typeの取得処理を行うかどうか指定する為のidentifyオプションを追加しています。

identifyオプションにfalseを指定、かつ、content_typeオプションが指定されていた場合、ファイルからcontent typeの取得処理が行われず、オプションに指定されたcontent typeが使用されます。


Merge pull request #32835 from trezona-lecomte/ar_dirty_doc_fix

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

ActiveRecord::AttributeMethods::Dirty moduleの各メソッドのに詳細なdocを追加、説明を現在の挙動に合わせて修正等を行っています。

rails commit log流し読み(2018/05/08)

2018/05/08分のコミットです。

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


Remove leftover requires

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

不要なrequireを削除しています。


Fix named route parameter example [ci skip]

rails guideのRails Routing from the Outside Inの修正です。

Overriding Named Route Parametersの項にあるexampleコードで、routesのprefixが実際に生成される値と異なっていたのを修正しています。