ActiveSupport::Notifications::Instrumenter#instrument should yield
its payload the same way that ActiveSupport::Notifications does.
Fix spelling in test name.
Use ActionView::OutputBuffer#safe_append= from templates
avoid extra method calls for appending newlines

before:

        ');@output_buffer.append= ( content_icon row[:content] );@output_buffer.safe_concat('
');@output_buffer.safe_concat('        ');@output_buffer.append= ( spinner_img );@output_buffer.safe_concat('
');@output_buffer.safe_concat('      </td>
      <td class="content">
        ');@output_buffer.append= ( content_link row[:content] );@output_buffer.safe_concat('
');@output_buffer.safe_concat('      </td>
      <td class="message">
');

after:

        ';@output_buffer.append=( content_icon row[:content] );@output_buffer.safe_append='
        ';@output_buffer.append=( spinner_img );@output_buffer.safe_append='
      </td>
      <td class="content">
        ';@output_buffer.append=( content_link row[:content] );@output_buffer.safe_append='
      </td>
      <td class="message">
';
I think "uniq" is more Rails-y than select("distinct(categories.id)")
Minor copy editing
update README since email-service isn't a word
Uniq cannot be used directly on an ActiveRecord model. 'DISTINCT field' is the only pluck query that translates into the aforementioned SQL
Cast number to string in Postgres

fixes #9170
Document nested attributes as hash of hashes

Document the possibility to use a hash of hashes for nested attributes for a one-to-many association (in addition to the documented possibility to use an array of hashes).
Align indentation in comments
Fix my typo
Fix missing closing <tt> tag
clarify verbiage
absence validator doc
fix absence validator doc for boolean field
fix missing to
do some typo fixing
+ Add test for auto timestamps update of both old & new parent records
Modifies belong_to touch callback to touch old associations also #9091
use the method so we do not depend on internal ivars