なるようになるブログ

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

rails commit log流し読み(2017/08/17)

2017/08/17分のコミットです。

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


Add space

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

transactionメソッドのdoc内、Data Definition Language(DDL)Data Definition Language (DDL)に修正((の前にスペースを追加)しています。


Test with released thor

Gemfileの修正です。

thorのmasterブランチを使用していたのを、リリース済みのthorを使用するよう修正しています。thor 0.20.0がリリースされた為。

しかしよく見ると、blade gemの依存関係の都合上、まだ0.20.0は使われてないもよう。


Merge pull request #30260 from kamipo/remove_unused_action_arg

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

ControllerGenerator#generate_routing_codeメソッドから使用していないaction引数を削除しています。


Pass missing name attribute to execute_hook

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

ActiveSupport::LazyLoadHooks#on_loadメソッドに処理を一度だけ行いたい時ようのrun_onceオプションを追加した、Merge pull request #30045 from albertoalmagro/fix-raise-unpermitted-parameters-regression の対応で、LazyLoadHooks#execute_hookメソッドにname引数(hook名)を渡すのが漏れていたのを修正しています。ようは正しく動いて無かった。


Merge pull request #30048 from yahonda/regexp_aware_schema_dumper_prefix_suffix

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

table_name_prefixtable_name_suffixオプションに$マークが使用出来るよう修正しています。

MySQL 5.7、PostgreSQL 9.6ではtable名に$マークが使用出来る為。へー。

参考: MySQL :: MySQL 5.7 Reference Manual :: 9.2 Schema Object Names PostgreSQL: Documentation: 9.6: Lexical Structure


Use ActiveJob::Base.queue_adapter_name to get adapter name

activejob/test/support/integration/test_case_helpers.rbの修正です。

テストでadapter名を取得するのに独自ロジックで行っていたのを、ActiveJob::Base.queue_adapter_nameを使用するよう修正しています。


Bump thor and blade

Gemfile.lockの修正です。

blade及びthorのバージョンを更新しています。

Test with released thorの対応ではbladethorのバージョンロックが入っている為thorのバージョン更新が出来なかったのですが、thorのバージョンロックが解除されたbladeがリリースされた為、その最新のblade及び改めて最新のthorを使うようにしています。


Encrypt the IRC notification setting, so it’s not used on forks

.travis.ymlの修正です。

IRC notification settingを暗号化するようにしています。

     channels:
 -      - "irc.freenode.org#rails-contrib"
 +      # "irc.freenode.org#rails-contrib"
 +      - secure: "QFKSOK7xQiWWqTzYfYm0XWoW7idzuxT57MBW9i9EASyRLEPuDwZEubKRP40Y7wPx7ylQd9lp6kJheeLnrDvvTjFbW3sWv9GDRl4WlOU8sG/Kv7MXAASXlDqzyJxxXTtzLeXz2iwY296kOBuKxKxl923eTvEGeocwH02QGo14LpQ="

forkしたブランチで使用されないようにする為、との事です。


Temporarily point to a fork of SDoc

Gemfileの修正です。

forkしたsdoc gemを使用するよう修正しています。

テーマの改善、SEO用のタグの追加、検索結果から不要なHTMLタグを削除、等が行われており、それらを使用する為。

参考:


Move common tests from AppGeneratorTest and PluginGeneratorTest to SharedGeneratorTests

railtiesのテストの修正です。

AppGeneratorTestPluginGeneratorTest両方で行うテストについて、SharedGeneratorTests moduleに移動しています。


Use nil Logger for tests

activestorage/test/test_helper.rbの修正です。

テストで使うLoggerの出力先にnilを指定しています。不要なdebugログを表示しないようにする為。


Move test_index_is_created_for_both_timestamps to TimestampsWithoutTransactionTest

test_index_is_created_for_both_timestampsの修正です。

test_index_is_created_for_both_timestampsTimestampsWithoutTransactionTestクラス配下に移動しています。

元々はtransactionの中でテストが行われておりテスト終了後にロールバックされる事を期待していたようなのですが、テストの中でcreate_tableを行っており、MySQLOracleのようなトランザクション内でDDLを実行するとコミットが実行されるRDBMSでは、正しく値がロールバックされていませんでした。

テスト内で作ったテーブルはテストの後処理で削除しているので問題無かったのですが、テストの前処理で違うテーブルのupdated_atを強制的に更新しており、その値の変更が違うテストに影響を出してしまっていた為、影響を出さないよう、TimestampsWithoutTransactionTest配下に移動したようです。


Remove obsolete explanation

rails guideのActive Record Validationsの修正です。

Conditional Validationの項、:if:unlessオプションに渡せる値の一覧に、deprecatedになっていたStringが含まれていたのを削除しています。


Capitalize Redis

actioncable/lib/action_cable/subscription_adapter/redis.rbのdocの修正です。

redis -> Redisに修正しています。