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
change log4r link to most recent, updated location
fix broken links to README docs in intro
Allow use of assert_template with the :file option.
This worked in Rails 3.2, but was a regression in 4.0.0.beta1
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
ActiveSupport::Notifications::Instrumenter#instrument should yield
its payload the same way that ActiveSupport::Notifications does.
Fix spelling in test name.
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
Use ActionView::OutputBuffer#safe_append= from templates
avoid extra method calls for appending newlines

before:

        ');@output_buffer.append= ( content_icon row[:content] );@output_buffer.safe_concat('
');@output_buffer.safe_concat('        ');@output_buffer.append= ( spinner_img );@output_buffer.safe_concat('
');@output_buffer.safe_concat('      </td>
      <td class="content">
        ');@output_buffer.append= ( content_link row[:content] );@output_buffer.safe_concat('
');@output_buffer.safe_concat('      </td>
      <td class="message">
');

after:

        ';@output_buffer.append=( content_icon row[:content] );@output_buffer.safe_append='
        ';@output_buffer.append=( spinner_img );@output_buffer.safe_append='
      </td>
      <td class="content">
        ';@output_buffer.append=( content_link row[:content] );@output_buffer.safe_append='
      </td>
      <td class="message">
';
Remove reference to BugMash. Link hasn't been updated in 4 years.
change useless gsub to delete