なるようになるブログ

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

rails commit log流し読み(2017/07/26)

2017/07/26分のコミットです。

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

activerecord/CHANGELOG.md


Require alpha arel

activerecord/activerecord.gemspecの修正です。

Arelのバージョンを9.0.0.alphaに更新しています。

-  s.add_dependency "arel", "~> 8.0"
+  s.add_dependency "arel", "9.0.0.alpha"

~> だとalphaバージョンをインストールしてくれない為、のようです。


Update Gemfile.lock to reflect arel 9.0.0.alpha

Gemfile.lockの修正です。

先のgemspecの修正でGemfile.lockの更新が漏れていたのを対応しています。


Remove single element array preprocess

activerecord/lib/active_record/associations/preloader/association.rbactiverecord/lib/active_record/relation/predicate_builder/polymorphic_array_value.rbの修正です。

Refactor Active Record to let Arel manage bind paramsの対応により不要になった、idsの要素が一つだった場合の前処理を削除しています。


Allow Relation#or to accept a relation with different references

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

referencesの値だけが異なるrelationに対して、Relation#orメソッドが正常に動作するよう修正しています。

joined = User.joins(:posts).references(:posts)
joined.where(posts: { name: 'example' }).or(joined.where(name: 'example'))

上記のようなケース。


Clarify add_column limit documentation

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

add_columnメソッドのlimitオプションについて説明している箇所に、幾つかのDBではこのオプションは無視される旨注記を追加しています。具体的にはPostgreSQLでは無視されます。


Allow bin/rails test task to take absolute paths as arguments

railties/lib/rails/test_unit/runner.rbの修正です。

test runnerにテストを行うファイルを絶対パスで渡した場合に正常に動作しないバグがあったのを修正しています。


Require arel master in the benchmark template

guides/bug_report_templates/benchmark.rbの修正です。

使用するgemにarelを追加しています。今のRailsのmasterブランチを動作させるにはarelのmasterを参照する必要がある為。


Use exact Rails version when verifying.

tasks/release.rbの修正です。

release後のverify taskで、直前にreleaseしたバージョンのRailsでアプリを作成するよう修正しています。