Merge pull request #11347 from ankit8898/refactoring-sp

Refactored strong parameters usage and updated Gemfile.lock with Rails 4
Fix "Stack Level Too Deep" error when rendering recursive partials

When rendering recursive partial Action View is trying to generate the
view digest infinitly causing a stack level error.

Fixes #11340
Backport #11348 to fix `link_to` with url hashes and block
Merge pull request #11363 from dpdawson/master

Fix 2 grammatical errors/typos in Active Record Basics guide. [ci skip]
Merge pull request #11370 from dpdawson/master

Fix a grammatical error/typo in Active Record Migrations guide. [ci skip]
Merge pull request #11353 from jetthoughts/revert_to_raw_post

Use Request#raw_post instead Request#body in ParamsParser#parse_formatted_parameters
Conflicts:
	actionpack/CHANGELOG.md
Merge pull request #11143 from robin850/upgrading-rails

Add few information about missing steps [ci skip]
Retain offset and fraction when using Time.at_with_coercion

The standard Ruby behavior for Time.at is to return the same type of
time when passing an instance of Time as a single argument. Since the
an ActiveSupport::TimeWithZone instance may be a different timezone than
the system timezone and DateTime just understands offsets the best we
can do is to return an instance of Time with the correct offset.

It also maintains the correct fractional second value as well.

Fixes #11350.

Backports:
484253515c0e05760541dc48946361185c9e6904
1b3873730b96035a238dbff7627bd5942e6dc4e7
Return local time for backwards compatibility
Make sure that a joins Relation can be merged with has_many :through + association proxy
flatten merged join_values before building the joins

fixes #10669

While joining_values special treatment is given to string values.
By flattening the array it ensures that string values are detected
as strings and not arrays.
Remove unopened closing brace.
Add failing test for #9562

Rails 4.0.0 fails when trying to encode an ActiveSupport::TimeWithZone
that wraps a DateTime instance. This is fixed on master so add a test
to prevent regression.
Keep sub-second resolution when wrapping a DateTime value

Add `DateTime#usec` and `DateTime#nsec` so that `ActiveSupport::TimeWithZone`
keeps sub-second resolution when wrapping a `DateTime` value.

Fixes #10855
(cherry picked from commit 17f5d8e062909f1fcae25351834d8e89967b645e)

Conflicts:
	activesupport/CHANGELOG.md
Add missing require so that DateTime has the right superclass

If the DateTime core extensions were loaded before the Date core extensions
then you would get a superclass mismatch as DateTime hasn't been defined
yet so it gets set to Object by the acts_like core extension.

Fixes #11206

(cherry picked from commit 78f7d5b652000dbb1a11d34fe370c3fa82de840c)
Merge pull request #11387 from zzak/backport_714bb17

Backport 714bb17
Merge pull request #11389 from jetthoughts/11381_fix_hit_database_on_precompile

 Closes #11381: Ignore config.eager_load=true for rake
Documment config.log_formatter added on 51aeae91

[ci skip]