Add CHANGELOG entry for #6986
Use instance_accessor: false instead of instance_writer.
Merge pull request #7000 from kennyj/fix_6697-3

Use instance_accessor: false instead of instance_writer.
Fix documentation mistakes
Merge pull request #7406 from janko-m/documentation_fixes

Fixed some documentation mistakes
Rename to test_mysql_strict_mode_disabled_dont_override_global_sql_mode

Reason since MySQL 5.6.6-m9 the `sql_mode` default value is
`NO_ENGINE_SUBSTITUTION`.
This default parameter change is out of control from Rails.

This test verifies Rails not overriding the default `@@GLOBAL.sql_mode` value
by checking if `@@GLOBAL.sql_mode` is the same as `@@SESSION.sql_mode`.
Merge pull request #7408 from yahonda/sqlmode_mysql

Change mysql tests for strict mode disabled to work with new sql_mode default in MySQL 5.6.6-m9.

Since this MySQL version, the sql_mode default value is `NO_ENGINE_SUBSTITUTION`.
Refactor AR::Result or inherits. Because we have redundant codes about
Merge pull request #7409 from kennyj/refactor_activerecord_result

Refactor AR::Result or inherits. Because we have redundant codes about column_types.
option_tags coerced to "" instead of nil
Merge pull request #7410 from sandeepravi/default_options_helper_value

option_tags coerced to "" instead of nil

Closes #7404
Add CHANGELOG entry for #7410
reset_counters() was crashing when there were multiple belongs_to associations with the same foreign key.

This closes #5200.
Merge pull request #5210 from Pliny/masteri

Fix for #5200
Allow users to choose when to eager_load the application or not.

Previously, the eager load behavior was mostly coupled to
config.cache_classes, however this was suboptimal since in
some environments a developer may want to cache classes but
not necessarily load them all on boot (for example, test env).

This pull request also promotes the use of config.eager_load
set to true by default in production. In the majority of the
cases, this is the behavior you want since it will copy most
of your app into memory on boot (which was also the previous
behavior).

Finally, this fix a long standing Rails bug where it was
impossible to access a model in a rake task when Rails was
set as thread safe.
Remove allow_concurrency as a flag

The flag was mainly used to add a Rack::Lock middleware to
the stack, but the only scenario the lock is desired is in
development.

If you are deploying on a not-threaded server, the Rack::Lock
does not provide any benefit since you don't have concurrent
accesses. On the other hand, if you are on a threaded server,
you don't want the lock, since it defeats the purpose of using
a threaded server.

If there is someone out there, running on a thread server
and does want a lock, it can be added to your environment
as easy as: `use Rack::Lock`
Make ActiveSupport::Autoload local

Previously, ActiveSupport::Autoload was global and reserved
for usage inside Rails. This pull request makes it local,
fixes its test (they were not being run because its file
was named wrongly) and make it part of Rails public API.
Get rid of config.preload_frameworks in favor of config.eager_load_namespaces

The new option allows any Ruby namespace to be registered and set
up for eager load. We are effectively exposing the structure existing
in Rails since v3.0 for all developers in order to make their applications
thread-safe and CoW friendly.
Deprecate config.threadsafe!
add Rack::Lock for webrick