Remove duplicated HashWithIndifferentAccess#with_indifferent_access.
implement ActiveRecord::Base#pretty_print + changelog
Test `except!` in other cases too
File.exist? instead of File.exists? in bin/setup

File.exists? is deprecated in Ruby 2.1+

https://github.com/ruby/ruby/blob/v2_1_2/file.c#L1413
Add missing colon to internal
Remove unused `initialize_attributes` method

This was previously a hook for a special case related to `serialize`,
which has since been removed.
Merge pull request #15473 from sgrif/sg-missing-colon

Add missing colon to internal [ci skip]
Merge pull request #15474 from unixmonkey/master

File.exist? instead of File.exists? in bin/setup
Fix typo in ActionController Overview

* Should say "sensitive" instead of "sensible"
Merge pull request #15477 from aripollak/actioncontroller-overview-typo

Fix typo in ActionController Overview
concat is a hotspot (via AV#append=), so just directly define the methods
Merge pull request #15475 from sgrif/sg-initialize-attributes

Remove unused `initialize_attributes` method
reduce AS::SafeBuffer allocations

html_escape_interpolated_argument is only used in mutation methods:

  https://github.com/rails/rails/blob/c07d09559ec171e1904b55c7ad7e8c7d586ca51b/activesupport/lib/active_support/core_ext/string/output_safety.rb#L174
  https://github.com/rails/rails/blob/c07d09559ec171e1904b55c7ad7e8c7d586ca51b/activesupport/lib/active_support/core_ext/string/output_safety.rb#L179

The return value doesn't need to be converted to an AS::SafeBuffer since
we know that the current object is an AS::SafeBuffer and will be
mutated, and the return value from html_escape_interpolated_argument
will be thrown away
drastically reduce object allocations

before this change, we were allocating AS::SafeBuffer objects that were
being interpolated in to a string, so the safe buffer object was being
thrown away.  This change only allocates a string (vs a string *and* a
safebuffer) and interpolates the string.

On my test application, this reduced the AS::SafeBuffer objects from
1527k per request to about 500 per request.
call `capture` fewer times from `form_for`
fix polymorphic? method and reuse it

Fix polymorphic to check for `options[:polymorphic]` instead of
`options.key? :polymorphic` and then reuse the method `polymorphic?`
method instead of constantly checking the same `options[:polymorphic]`.
Merge pull request #15483 from eileencodes/reuse-available-reflection-polymorphic-methods

fix polymorphic? method and reuse it
pg test, examples for default values and schema dumping of point types.

/cc @sgrif
pg, preserve point type when schema dumping.
test pg, we don't care about the internal state of `column#default`.

That data is internal to Active Record. What we care about is that
new records have the right default value.