なるようになるブログ

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

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

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

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

actionpack/CHANGELOG.md


Use new ... syntax in Module#delegate if it's available

activesupport/lib/active_support/core_ext/module/delegation.rbの修正です。

Module#delegateで引数をdelegateする際に、Ruby 2.7以上の場合...シンタックスを使用するよう修正しています。

キーワード引数周りの警告を気にせず引数を渡せる為。

参考: Feature #16253: Shorthand "forward everything" syntax


Merge pull request #25214 from maclover7/jm-av-tests

actionview/test/abstract_unit.rbactionview/test/template/url_helper_test.rbの修正です。

特定のテストでだけ使われるクラスをそのテストで定義するよう修正、不要なI18nの指定を削除、等を行っています。


Merge pull request #36147 from pustomytnyk/patch-1

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

select_yearyearnilが指定された場合にエラーになってしまうバグがあったのを修正しています。


Merge pull request #34027 from grosser/grosser/test

railsのテストをrubyコミットで実行出来るよう修正しています。


Merge pull request #24169 from rubys/config_ac_per_env

railties/lib/rails/generators/rails/app/templates/config/environments/development.rb.ttの修正です。

rails newで生成されるdevelopment.rbconfig.action_cable.disable_request_forgery_protectionの設定を追加しています。developmentでlocalhost以外の環境と通信する際に必要な為。


Merge pull request #25512 from MOZGIII/patch-1

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

ConnectionAdapters::PostgreSQLAdapter#execute_and_clearメソッドでblock実行時にexceptionがraiseされてもclearが実行されるようにするために、block実行処理をbegin / ensureで囲むよう修正しています。


Update tests to assert something

activerecord/test/cases/adapters/mysql2/mysql2_adapter_test.rbの修正です。

while_preventing_writes block内でDESCRIBE / DESCが実行出来る事を確認するテストいnassertionを追加しています。


Merge pull request #38020 from jackkinsella/patch-1

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

Installationセクションに、action_text:installで行われるJS / css関係の変更の詳細についての説明を追加しています。


Documents another gotcha of classic autoloading [skip ci]

rails guideのDefining vs Reopening Namespacesの修正です。

table_name_prefixを実際に定義されているmodelと別のファイルで指定するような場合に、table_name_prefixを指定しているファイルがmodelより先にロードされるようにするためにmodelでrequire_dependencyを使用してそのファイルを明示的にロードする必要がある旨説明を追加しています。


Fix possible information leak / session hijacking vulnerability.

Action Packの修正です。

Rackに情報漏洩 / セッションハイジャック脆弱性が発生して&Action Packのsession storeでもこの影響を受けており、この脆弱性に対応したRackの新しく追加されたセッション用のクラスを使用するよう修正しています。

コミットログにも説明があるのですが、ActionDispatch::Session::MemcacheStoreについてはまだ問題があり、これはdalli gem側での対応になっています。

参考: Possible Information Leak / Session Hijack Vulnerability · CVE-2019-16782 · GitHub Advisory Database


Fix cop violations

actionpack/test/dispatch/session/cache_store_test.rbの修正です。

rubocopの設定に違反している箇所があったのを修正しています


Add missing $ prompt for bash command examples [ci skip]

rails guideの修正です。

bash commandを実行しているexampleの先頭に$を追加しています。


Update sqlite3 to avoid Ruby 2.7 warnings

Gemfile.lockの修正です。

SQLite3のバージョンを1.4.2に更新しています。Ruby 2.7でwarningが表示されるのを避ける為。