なるようになるブログ

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

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

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

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

activerecord/CHANGELOG.md

actiontext/CHANGELOG.md


Add changelog entry for #40961

activemodel/CHANGELOG.mdの修正です。

ActiveModel::Name#initializeの引数にlocaleを追加した、add locale argument to ActiveModel::Name initializeの対応についてCHANGELOGにエントリーを追加しています。


Merge pull request #40768 from kivikakk/only

Active Recordの修正です。

FinderMethodsに、1レコードを取得、かつ、レコードが1つじゃない場合にexceptionをraiseする、solefind_sole_byメソッドを追加しています。

Product.where(["price = %?", price]).sole
# => ActiveRecord::RecordNotFound      (指定されたpriceのProductが見つからなかった場合)
# => #<Product ...>                    (指定されたpriceのProductが1つだけあった場合)
# => ActiveRecord::SoleRecordExceeded  (指定されたpriceのProductが複数あった場合)

user.api_keys.find_by_sole(key: key)

Merge pull request #40306 from cindysx89/ensure_db_dir

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

dump_schemaメソッドでschema作成する前に、dbディレクトリを作成するよう修正しています。


Deprecate unused method

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

使用していないschema_fileメソッドをdeprecateにしています。


Add test coverage for dump_filename

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

dump_filenameメソッドについてのテストを追加しています。


Make sure db:prepare works even the schema file doesn't exist

activerecord/lib/active_record/railties/databases.rakeの修正です。

db:previewableでdatabaseが無い、かつ、schemaファイルが無い場合にエラーになっていたのを、db:migrateを実行するよう修正しています。


Extract method to the DatabaseTasks class

activerecord/lib/active_record/railties/databases.rakeactiverecord/lib/active_record/tasks/database_tasks.rbの修正です。

db:prepare taskの処理をDatabaseTasksクラスのメソッドに切り出しています。


Extract method to get all configs for AtiveRecord::Base

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

configsの取得処理をメソッドに切り出しています。


Call method locally inside the class

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

同じクラス内のメソッドを呼び出す際に、不要なクラスの指定を削除しています。


Merge pull request #40946 from kylekeesling/master

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

form_withがデフォルトでnon-remoteなformを生成するようになった(Change form_with to generate non remote forms by default)のに合わせて、form_withform_forメソッドのdocの説明を修正しています。


Merge pull request #38733 from roramirez/remove-gemlist-entry

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

使用されていない(アプリケーションから使う事が出来なかった)add_gem_entry_filterメソッドを削除しています。


Merge pull request #39567 from jonathanhefner/credentials-diff-disenroll

railtiesの修正です。

rails credentials:diff --enrollで登録した設定を解除する為のrails credentials:diff --disenrollオプションを追加しています。


Merge pull request #40919 from ghiculescu/patch-2

rails guideのCaching with Rails: An Overviewの修正です。

config.action_controller.perform_cachingを有効化する方法についての説明している箇所に、rails dev:cacheコマンドについての説明を追加しています。


[docs] Mention previewable? and variable? in Activestorage guide

rails guideのActive Storage Overviewの修正です。

preview / variant について説明する前に、representation処理について説明を行うよう修正しています。


Merge pull request #27978 from kamipo/add_blob_short_hand_method

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

binaryのaliasとしてblobメソッドを追加しています。


Use if/else instead of case without argument

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

case / whenif / elseに修正しています。


Improve ActionText extensiblibility

Action Textの修正です。

rich contentをrenderする際に、contentのスタイリング処理をユーザが独自にカスタマイズ出来るよう修正しています。

デフォルトでは今まで通りTrixが使われるようになっています。独自にカスタマイズしたい場合、app/views/layouts/action_text/contents/_content.html.erbがrenderの際にlayoutファイルとして使用されるようになっているので、そのファイルでstyleを定義すればOKです。


Add the author name for #40782 in the CHANGELOG [ci skip]

activerecord/CHANGELOG.mdの修正です。

author nameの記載が漏れているエントリーがあったのを修正しています。


Fix odd indentation [ci skip]

rails guideのGetting Started with Railsの修正です。

Using Concernsの項にあるexampleコードのインデントを修正しています。


Fix the method signature for transaction helper in CollectionAssociation

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

CollectionAssociation#transactionメソッドの引数指定が誤っていたのを修正、及び、このtransactionメソッドとは関係無いドキュメントが記載されていたのを削除しています。