cache_key consults updated_on timestamp if present

- Extract max timestamp retrieval for cache_key
- Update changelog for cache_key changes
change log4r link to most recent, updated location
fix broken links to README docs in intro
Clarified need to remove existing code in welcome index.

Signed-off-by: Chelsea Macaluso <c.macaluso@modcloth.com>
Clarified removal of public/index.html file

Signed-off-by: Trent Michaels <t.michaels@modcloth.com>
Fixed grammatical error and simplified paragraph concerning controllers.

Signed-off-by: Chelsea Macaluso <c.macaluso@modcloth.com>
Reverting commit regarding public/index.html (no longer in Rails 4.)

This reverts commit f8461f73c77c186ad0aa735fe9877990bffe1990.
Add explanation of :dependent => :restrict

Based on information here: http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-has_many
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.
Small Typo
`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?`.
Fix WhereChain docs to mention only not
Remove reference to BugMash. Link hasn't been updated in 4 years.
Fix typo
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.
Merge branch 'master' of github.com:lifo/docrails
Use gsub intead of tr when the to_str is longer than the from_str