Move to_param to to_query, also Improve tests
remove unneeded test model for ActiveModel test cases.
Add link to minitest rdoc & github
[ci skip] Use appropriate mailer syntax.

Reference: https://github.com/rails/rails/commit/f7e4362011ceb1317fd401125d48d7ccb9a1079c
[ci skip] Remove duplicated last! section.

Reference: https://github.com/rails/rails/commit/d4fd0bd17709735ac91e434c94fe99429f078c6e

cc @schneems
Performed Returns true if redirect/render has happened
[ci skip] Normalize all localhost linking.
Remove finishing? method from transaction.

The finishing variable on the transaction object was a work-around for
the savepoint name, so after a rollback/commit the savepoint could be
released with the previous name.

related:
9296e6939bcc786149a07dac334267c4035b623a
60c88e64e26682a954f7c8cd6669d409ffffcc8b
Extract iterator method in AR::SchemaDumper

Gems which wish to tie into ActiveRecord::SchemaDumper need to
duplicate this logic currently. [Foreigner] is one such example, as is a
library I'm currently working on but which hasn't been released yet:

    def tables_with_foreign_keys(stream)
      tables_without_foreign_keys(stream)
      @connection.tables.sort.each do |table|
        next if ['schema_migrations', ignore_tables].flatten.any? do |ignored|
          case ignored
          when String; table == ignored
          when Regexp; table =~ ignored
          else
            raise StandardError, 'ActiveRecord::SchemaDumper.ignore_tables accepts an array of String and / or Regexp values.'
          end
        end
        foreign_keys(table, stream)
      end
    end

[Foreigner]: https://github.com/matthuhiggins/foreigner/blob/master/lib/foreigner/schema_dumper.rb#L36-L43

Extract the skip logic to a method, making it much simpler to follow
this same behavior in gems that are tying into the migration flow and
let them dump only tables that aren't skipped without copying this block
of code. The above code could then be simplified to:

    def tables_with_foreign_keys(stream)
      tables_without_foreign_keys(stream)
      @connection.tables.sort.each do |table|
        foreign_keys(table, stream) unless ignored?(table)
      end
    end

It also, in my opinion, simplifies the logic on ActiveRecord's side, and
clarifies the intent of the skip logic.
add comment to the empty each method for not removing it in future
[ci skip] Mention the change in nil handling for serialized attributes
in "Upgrading from Rails 3.2 to Rails 4.0"
[ci skip] Clarify the "Serialized Attributes" section

Mention that the change in nil handling for serialized attributes
affects custom coders.
Fix protect_from_forgery docs
Merge pull request #16282 from davidbalbert/patch-1

Fix protect_from_forgery docs [ci-skip]
No verbose backtrace by db:drop when database does not exist.
[ci skip] Fix documentation for @macro and reflection types

Since `@macro` doesn't exist anymore and these reflections are no
longer AssociationReflections but their own types of reflections
based on macro I updated the documentation to match the changes I
made in #16089 and #16198. An `AssociationReflection` that had a
`@macro` of `:has_many` now is a `HasManyReflection`
Merge pull request #16315 from eileencodes/fix-documentation-that-mentions-macro-instance-var

Fix documentation for `@macro` and reflection types
Fix example code of `EachValidator` [ci skip]

We have to specify the `:title` option to really use the
`TitleValidator` defined above.
Merge pull request #16319 from Domon/fix-each-validator-example

Fix example code of EachValidator [ci skip]
Add where condition so select_one returns the correct record.