なるようになるブログ

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

rails commit log流し読み(2018/10/30)

2018/10/30分のコミットです。

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

activerecord/CHANGELOG.md


Missing require "active_support/concern"

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

不足していたactive_support/concernのrequireを追加しています。


Missing require "core_ext/module/attribute_accessors"

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

不足していたactive_support/core_ext/module/attribute_accessorsのrequireを追加しています。


Missing require "active_support/executor"

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

不足していたactive_support/executorのrequireを追加しています。


We don't want these internal methods as public methods in our controllers

actionpack/lib/action_controller/metal/live.rbの修正です。

内部用のメソッドの可視性をprivateに変更しています。


Exercise HABTM fixtures with foreign key constraints

activerecord/test/models/parrot.rbactiverecord/test/schema/schema.rbの修正です。

HABTM association用のテーブルに対して外部キー制約を追加し、外部キー制約がある状態でHABTM associationのfixtureに関する処理が正しく動作する事を確認するようにしています。


Restore encoding: utf8mb4 in database.yml

railties/lib/rails/generators/rails/app/templates/config/databases/mysql.yml.ttの修正です。

rails newで生成するMySQL用のdatabase.ymlで、encoding: utf8mb4を再度指定するよう修正しています。

MySQL 5.1のサポートを行わない事になり、値を指定しても問題無いバージョンしかサポートしない為。


Merge pull request #34196 from gmcgibbon/connection_switch_string_name

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

ActiveRecord::Base.connected_todatabaseオプションに、URL、及び、Hashを指定出来るよう修正しています。

User.connected_to(database: { writing: "postgres://foo" }) do
  User.create!(name: "Gannon")
end

config = { "adapter" => "sqlite3", "database" => "db/readonly.sqlite3" }
User.connected_to(database: { reading: config }) do
  User.count
end

Merge pull request #19388 from yakara-ltd/fix-habtm-fixture-order

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

HABTM associations用のfixutreをロードする際に、先に親tableをロードするよう修正しています。親tableを先にロードしておかないと、referential integrityの無効化処理でエラーになってしまう為。