Added method `#eql?` to `ActiveSupport::Duration`, in addition to `#==`.

Currently, the following returns `false`, contrary to expectation:

    1.minute.eql?(1.minute)

Adding method `#eql?` will make this behave like expected. Method `#eql?` is
just a bit stricter than `#==`, as it checks whether the argument is also a
uration. Their parts may be different though.

    1.minute.eql?(60.seconds)  # => true
    1.minute.eql?(60)          # => false
SQLite3Adapter now checks for views in table_exists? fixes: 14041
Propagate test messages through assert_routing helper, Fixes #14908

assert_routing was not raising the message passed into the assertion
violation that it raised. This change propagates messages through
the on_fail error.

This fixes this error:
https://github.com/rails/rails/issues/14908

A test case for this issue is located here.
https://github.com/estsauver/test14908

To see that test case fail in the example app, just run
ruby -Itest test/controllers/guests_controller_test.rb
Update RecordNotFound exception cases to include a message with the
Model that the Record was not found in.
reset_column_infomation shouldn't be part of the assertion.
Updating Associations::Preloader docs

Much of the previous documentation introduced features new in 2011. This
commit refreshes it to provide clearer code examples and spends more
time describing the normal case (preloaded associations) and less time
describing the fallback.

[ci skip]
Preparing for 4.2.0.beta1 release
provide a builder for form labels to customize wrapping around I18n content
add I18n support for `:placeholder` HTML option is passed to form fields
just use the placeholder tag value if it is passed as a String
Roll back open transactions when the running thread is killed.
Cache the value of `changed_attributes` when calling `changes_applied`

`changes_applied` calles `changes`, which will call `changed_attributes`
multiple times in a loop. This method actually performs work now, so we
should cache the results while looping over it when we know it cannot
change.
Use system /tmp when testing actionpack

https://github.com/rails/rails/commit/c64bff2c87ebf363703c63ecd4a96d56a1a78364
added support and enabled parallel execution of the actionpack tests.

However it introduced https://github.com/rails/rails/commit/c64bff2c87ebf363703c63ecd4a96d56a1a78364
since one cannot connect to a socket file that's inside a Vagrant synced folder
due to security restrictions, and DRb tries to.

Also rename the temporary files to make it obvious that they're rails-related,
since now they're placed outside the project's directory.

Fixes https://github.com/rails/rails/commit/c64bff2c87ebf363703c63ecd4a96d56a1a78364
Update documentation to match change in #5942 [ci skip]
recount files quantity
[ci skip ]Document transform_values && transform_values!
[ci skip] document truncate_words
Don't trim excess whitespace in pg #columns_for_distinct

Fixes #16623 introduced by https://github.com/rails/rails/commit/3d5a2019bcccc6fb01bee4811ca669f4383edb51
Fix guide anchor generation logic.

This could use in any translation because it's not limited to `[^a-z0-9]`.

Verify after this change, all guides still have same anchors.

[Robin Dupret & Juanito Fatas]
Merge pull request #16649 from Agis-/pg-columns-for-distinct

Fix postgresql adapter #columns_for_distinct trimming whitespace it shouldn't