なるようになるブログ

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

rails commit log流し読み(2017/05/29)

2017/05/29分のコミットです。

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

actionpack/CHANGELOG.md

activerecord/CHANGELOG.md


Merge pull request #28132 from mikeycgto/aead-encrypted-cookies

Action Pack、railtiesの修正です。

cookieの暗号化にAES-GCMを使用するよう修正しています。

元の暗号化されたcookie(HMAC AES-256-CBC)は、use_authenticated_cookie_encryptionが設定されていれば、自動で新しいschemaに更新されるようになっています。


Merge pull request #29074 from kamipo/remove_returning_true_in_internal_callbacks

Active Recordの修正です。

AR内部で定義しているcallbackで、callbackの最後に明示的にtrueを返していたのを削除しています。callbackがfalseを返すとcallback chainが終了してしまっていた時の対応の名残。


Merge pull request #29108 from inopinatus/ujs-sgjs-ie9-support

actionview/app/assets/javascripts/rails-ujs/utils/ajax.coffeeの修正です。

XHRのresponseをパースする際に、xhr.responseがnullの場合、xhr.responseTextを使用するよう修正しています。IE9で動作するようにする為との事です。


Merge pull request #29146 from y-yagi/fix_29138

railties/lib/rails/commands/server/server_command.rbの修正です。

rails server-pオプションを指定、かつ、オプションと値の間にスペースが無い場合(e.g. -p9000)に、指定したポートでpumaが起動しないバグがあったのを修正しています。


Remove a redundant test case of command_recorder_test

activerecord/test/cases/migration/command_recorder_test.rbの修正です。

重複してあったadd_indexメソッドのinverse処理に関するテストを削除しています。


Deprecate passing arguments and block at the same time to count and sum in ActiveRecord::Calculations

ActiveRecord::Calculations#count#sumメソッドにcolumn_nameとblockを同時に指定するのはdeprecateになりました。

ActiveRecord::Calculations#selectメソッドは既に同様の処理が出来ないようになっており、挙動を合わせる為、#count#sumについてもdeprecateにしたとの事です。


Merge pull request #29208 from kamipo/default_env_fall_back_to_default_env_when_rails_env_or_rack_env_is_empty_string

activerecord/lib/active_record/connection_handling.rbrailties/lib/rails/command.rbの修正です。

元々はRAILS_ENVまたはRACK_ENV環境変数が定義されていたら、値が空かどうかに関わらずその値を使用するようになっていたのを、値が空の場合は使用しないよう修正しています。

Rails env for empty string env varsのフォローアップ。


List assert{,no}changes in the testing guide

rails guideのA Guide to Testing Rails Applicationsの修正です。

Rails Specific Assertionsの一覧にassert_changesassert_no_changesを追加しています。


Remove a redundant test assertion

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

test_eager_loading_with_conditions_on_joined_table_preloadsから重複していたassetionを削除しています。


Ignore the encrypted secrets key file that is created by rails secrets:setup

railties/lib/rails/generators/rails/app/templates/gitignoreの修正です。

デフォルトのgitignoreファイルにconfig/secrets.yml.encを追加しています。

が、gitignoreへのファイルの追加はsecrets:setupコマンドで実行される為、後ほどrevetされています。あとignoreに追加するファイル間違えているような。


Merge pull request #29266 from ojiry/add-elm-option-to-generator-desc

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

webpackerに指定出来るオプションの一覧にelmを追加しています。


Doh. We are doing this on secrets:setup. Revert “Ignore the encrypted secrets key file that is created by rails secrets:setup”

Ignore the encrypted secrets key file that is created by rails secrets:setupをrevertしています。理由は先に書いたとおり。


Merge pull request #26628 from mjhoy/fix-number-to-human-25742

Active Supportの修正です。

number_to_human_converterメソッドのnumberに大きな値を指定した場合に、変換処理が正しく行われないバグがあったのを修正しています。

# before
helper.number_to_human(1_000_000, units: { unit: 'meter', thousand: 'kilometer' })
# => "1"

# after
helper.number_to_human(1_000_000, units: { unit: 'meter', thousand: 'kilometer' })
# => "1000 kilometer"