なるようになるブログ

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

rails commit log流し読み(2018/01/01)

2018/01/01分のコミットです。

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


Append extension to tempfile name

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

Active Storageでアップロードされたファイルを保存する為の一時ファイルを作成する際に、ファイル名に元のファイルと同じ拡張子を指定するよう修正しています。

ImageMagickがファイルの変換処理を行う際、中身からtypeが判別できない際に拡張子からtypeを判別する事があり、ファイル名からもtypeを推測出来るようにする為、との事。


Merge pull request #31310 from kinnrot/duration-modulo

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

partsを指定せずにActiveSupport::Durationのオブジェクトを生成した際に、secondsのデフォルトを0として扱うよう修正しています。


Merge pull request #31575 from bogdan/bugfix-has-many-reattachment

activerecord/lib/active_record/associations/belongs_to_association.rbactiverecord/lib/active_record/associations/belongs_to_polymorphic_association.rbの修正です。

inverse associationを使用している場合に、associationを一度指定後に、再度別の新規に作成したオブジェクトを指定した場合に、foreign_keyに先に指定した値が保持されたままになっていたのを、新しいassociationの値で置き換えるよう修正しています。


Suppress noise from drawing command invocations

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

ActiveStorage::Previewer#captureメソッドでコマンド実行時にstderrを破棄(出力先にFile::NULL)するよう修正しています。


Expose ActiveStorage::Previewer#logger in API docs [ci skip]

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

ActiveStorage::Previewer#loggerメソッドをpublic API(:doc:を指定)にしています。

独自のpreview機能を作成する際にloggerメソッドは使用するだろう、との事でpublicにしています。


Expose ActiveStorage::Analyzer#logger in API docs [ci skip]

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

ActiveStorage::Analyzer#loggerメソッドをpublic API(:doc:を指定)にしています。

独自のanalyzerを作成する際にloggerメソッドは使用するだろう、との事でpublicにしています。


Refactor delegating join_primary_key instead of join_keys and association_primary_key in TableMetadata

Active Recordの修正です。

ActiveRecord::TableMetadataクラスでassociation_primary_keyメソッド及びjoin_keysメソッドをrelationにdelegateしていたのをやめて、代わりにjoin_primary_keyメソッドをdelegateするよう修正しています。

join_primary_keyjoin_keysから呼ばれて、association_primary_keyを呼び出すことを抽象化するためのメソッドの為。


Added Railties deprecations in 5.2 release notes [ci skip]

rails guideのRuby on Rails 5.2 Release Notesの修正です。

Railtiesの項にDeprecationsになった機能への説明及びPRへのリンクを追加しています。


Remove association_primary_key_type from AssociationReflection and ThroughReflection

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

AssociationReflection及びThroughReflectionクラスから不要なassociation_primary_key_typeメソッドを削除しています。


Add test case for collection_singular_ids with symbol primary keys

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

primary keyにSymbolを指定した場合にcollection_singular_idsが正しい値を取得出来る事を確認するテストを追加しています。


Refactor to Array(options[:on]) only once in defining validations

activemodel/lib/active_model/validations.rbactivemodel/lib/active_model/validations/callbacks.rbの修正です。

validationsを定義する際に、options[:on]のArrayへの変換が一度だけ行われるようリファクタリングしています。


Active Record: Bump license years for 2018 [ci skip]

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

Copyrightを2017から2018に更新しています。