なるようになるブログ

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

rails commit log流し読み(2018/07/30)

2018/07/30分のコミットです。

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


Extract Relation#update_counters for internal use

Active Recordの修正です。

共通で使用出来るようにする為に、counter cacheの更新処理をRelation#update_countersメソッドに切り出しています。


Update ActiveStorage::Previewer docs

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

ActiveStorage::PreviewerクラスのdocでPDF preview用のクラス名を誤っていたのを修正しています。


Extract Relation#bind_attribute for internal use

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

boundable predicateの生成処理をRelation#bind_attributeメソッドに切り出しています。


ActiveModel::Naming delegate match? in the same manner as =~ and != (#33466)

activemodel/lib/active_model/naming.rbの修正です。

ActiveModel::Namingnamedelegateするメソッドにmatch?を追加しています。

=~!=delegateするようになっており、それらと合わせる為。


Chomp will work without checking for end of the string

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

require_or_loadloadable_constants_for_pathメソッドでファイル名から.rbを取り除く際に、ファイル名が.rbで終了しているかどうかチェックしてから取り除いたのを、チェック処理を行わないよう修正しています。


Only use CLOCK_PROCESS_CPUTIME_ID if it's defined

activesupport/lib/active_support/notifications/instrumenter.rbの修正です。

Process::CLOCK_PROCESS_CPUTIME_IDを使用する前に定義されているかチェックするよ修正しています。

JRubyだとProcess::CLOCK_PROCESS_CPUTIME_IDは使えない為。


MySQL: Raise ActiveRecord::InvalidForeignKey for foreign-key constraint violations on delete

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

MySQL adapterで外部キー制約でレコードの削除に失敗した場合(エラー番号が1451の場合)にActiveRecord::InvalidForeignKeyをraiseするよう修正しています。