Store FlashHashes in the session as plain hashes rather than custom objects with unstable class names and instance variables.

Refactor FlashHash to take values for its ivars in the constructor, to pretty up FlashHash.from_session_value.

Remove stale comment on FlashHash: it is no longer Marshaled in the session so we can change its implementation.

Remove blank lines I introduced in controller/test_case.rb.

Unit tests for FlashHash#to_session_value.

Put in a compatibility layer to accept FlashHash serializations from Rails 3.0+.

Test that Rails 3.2 session flashes are correctly converted to the new format.

Remove code path for processing Rails 3.0 FlashHashes since they can no longer deserialize.

Fix session['flash'] deletion condition: it will never be empty?, it will either be nil or a hash with 'discard' and 'flashes' keys.
AR::Base.becomes should not change the STI type

If you want to change the STI type too, use AR::Base.becomes! instead
Fix broken link in Active Record Query Interface guide
cleanup, remove whitspace from railties CHANGELOG
require bundler groups to include rake-tasks in engines

If you generate a full engine, this will include rake tasks from
your gem under the `app` namespace. For example if you have a dependency
on `rspec-rails` in your engine's `gemspec`. You will get the task `app:spec`

Closes #8229
Merge pull request #3023 from Tho85/preserve_sti_type

AR::Base.becomes should not change the STI type

Conflicts:
	activerecord/CHANGELOG.md
displaying error message(p tag was missing) and adding output as comment 
Fix rails db command with sqlite3 database

When using sqlite3 it was attempting to find the database file based on
Rails.root, the problem is that Rails.root is not always present because
we try to first manually load "config/database.yml" instead of loading
the entire app, to make "rails db" faster.

This means that when we're in the root path of the app, calling "rails db"
won't allow us to use Rails.root, making the command fail for sqlite3
with the error:

    ./rails/commands/dbconsole.rb:62:in `start':
      undefined method `root' for Rails:Module (NoMethodError)

The fix is to simply not pass any dir string to File.expand_path, which
will make it use the current directory of the process as base, or the
root path of the app, which is what we want.

When we are in any other subdirectory, calling "rails db" should work
just fine, because "config/database.yml" won't be found, thus "rails db"
will fallback to loading the app, making Rails.root available.

Closes #8257.
Refactor config abort message a bit for dbconsole

Remove not used variable.
Remove config attr_reader causing warning.
Fix indent in runner file.
Merge pull request #8256 from nalwayaabhishek/master

Displaying error message if validation fail in examples (p tag was missing)
Merge pull request #8262 from senny/8229_correct_bundler_require_in_engines

require bundler groups to include rake-tasks in engines
Initialize accessors to remove some warnings in Ruby 2.0
Remove not needed begin..end from AR#save
Fix UpgradeSignatureToEncryptionCookieStore doc
Add UpgradeSignatureToEncryptionCookieStore to upgrading_ruby_on_rails guide
Explicit multipart messages respect :parts_order

As issue #7978, the order in which ActionMailer
sends multipart messages could be unintentionally
overwritten if a block is passed to the mail
method. This changes the mail method such that
:parts_order is always respected, regardless of
whether a block is passed to mail.
Merge pull request #8044 from nateberkopec/block_does_not_set_parts_order

Explicit multipart messages respect :parts_order
render every partial with a new `PartialRenderer`.

This resolves issues when rendering nested partials.
Previously the `PartialRenderer` was reused which led to
situations where the state of the renderer was reset.

Closes #8197
Merge pull request #8212 from senny/8197_make_render_in_spacer_template_work

render every partial with a new `PartialRenderer`.
Be a bit less conservative with mysql in adapter