Add rake test description

No behavior change
cache_key consults updated_on timestamp if present

- Extract max timestamp retrieval for cache_key
- Update changelog for cache_key changes
Allow use of assert_template with the :file option.
This worked in Rails 3.2, but was a regression in 4.0.0.beta1
More helpful error message when instantiating an abstract class

Calling a literal ActiveRecord::Base.new raises NoMethodError,
since it ends up calling Class.abstract_class? which does not exist.
Similarly, instantiating an actual abstract class hits the database,
when conventionally it should immediately throw NotImplementedError.

ActiveRecord::Base can't be made abstract without breaking many,
many things, so check for it separately.
`validates_confirmation_of` does not override writer methods.
`has_secure_password` is not invalid when assigning empty Strings.

Closes #9535.

With 692b3b6 the `password=` setter does no longer set blank passwords.
This triggered validation errors when assigning empty Strings to `password`
and `password_confirmation`.

This patch only sets the confirmation if it is not `blank?`.
transactional migration test-case was broken.

The cleanup commit a85625d broke the test-case.
The schema was no longer modified so there was no
way to check that the rollback actually happened.
transactions can be turned off per Migration.

Closes #9483.

There are SQL Queries that can't run inside a transaction. Since
the Migrator used to wrap all Migrations inside a transaction there
was no way to run these queries within a migration.

This patch adds `self.disable_ddl_transaction!` to the migration to
turn transactions off when necessary.
Remove unused return value, because collecting_queries_for_explain isn't public API.
Use gsub intead of tr when the to_str is longer than the from_str
Merge pull request #9573 from robertomiranda/useless_gsub

Use gsub intead of tr when the to_str is longer than the from_str
Merge pull request #9565 from kennyj/remove_unused_return_value

Remove unused return value, because collecting_queries_for_explain isn't public API.
Add DebugHelperTest
Merge pull request #9574 from robertomiranda/debug_helper_test

Add DebugHelperTest
Add missing require to debug helper test
CHANGELOG entry for improved singularizing of singulars.

Closes #9559.

The actual patch was added with #4719
Fix ActiveRecord `subclass_from_attrs` when eager_load is false.
It cannot find subclass because all classes are loaded automatically
when it needs.
Merge pull request #9581 from senny/9559_changelog_singularizing_singular

CHANGELOG entry for improved singularizing of singulars.
Typo in comment to ActionView::Resolver#find_all
Merge pull request #9585 from RKushnir/patch-1

Typo in comment to ActionView::Resolver#find_all