rails/rails — pull request #17709 by scambra (2014-11-22 01:56:26+00:00)
Title: Includes HABTM returns correct size now. Fixes #16032

Includes HABTM returns correct size now. It's caused by the join dependency only instantiates one HABTM object because the join table hasn't a primary key.
Updated commit and test fixed from @bigxiang commit dbaa837

Fixes #16032.

Examples:

before:

Project.first.salaried_developers.size # => 3
Project.includes(:salaried_developers).first.salaried_developers.size # => 1

after:

Project.first.salaried_developers.size # => 3
Project.includes(:salaried_developers).first.salaried_developers.size # => 3