Revert "speed up the collection proxy reader method, but slow down the constructor"

This reverts commit f9e4c3c7c0c4152b62fe9202a9d12262884bb118.

[fixes #14116]
Add regression test for collection proxy reader

[related #14116]
[skip ci] Fix the javascript path in guide for asset modules
Merge pull request #14124 from arthurnn/fix_14116

Fix collection proxy exists? regression
Merge pull request #14086 from jingweno/master

Fix the javascript path in guide for asset modules [skip ci]
Check if the `request` variable isn't nil when calling render_to_string

closes #14125
Merge pull request #14129 from joankaradimov/fix-render-to-string

Fix `render_to_string` when called via manually instantiated controllers
Revert "context in validation goes through has many relationship"

This reverts commit 5e3d466d52fa4e9a42c3a1f8773a7c31da875e48.
adding a test for #14106
[ci skip] update guides to new version of rails 3.2.x
Merge pull request #14131 from kuldeepaggarwal/upgrade-rails-version

update guides to new version of rails 3.2.x, i.e. 3.2.17 [skip ci]
releasing Rails no longer needs triggering docs generation by hand [ci skip]

GitHub is now able to notify tag creation, I have configured the webhook
for the docs server to receive that event. Therefore, we no longer need
to trigger docs generation manually when releasing.
Prevent foreign_key_for? from type casting all attributes
Revert "Only lookup `config.log_level` for stdlib `::Logger`. Closes #11665."

This reverts commit e0a521cfcd13e4d1f0ae8ab96004289e1c020f71.

Conflicts:
	railties/CHANGELOG.md

We expect loggers to quack like stdlib logger. If log4r needs different
level= assignment, using a Logger-quacking wrapper is the way to do it.

Fixes #14114.
Merge pull request #14140 from WojtekKruszewski/optimize_foreign_key_for

Prevent foreign_key_for? from evaluating all attributes
Handle missing environment from non empty config

If using a `DATABASE_URL` and a `database.yml`. The connection information in `DATABASE_URL` should be merged into whatever environment we are in. As released in 4.1.0rc1 if someone has a database.yml but is missing a key like production:

```yml
development:
  host: localhost

```

Then the check for blank config will return false so the information from the `DATABASE_URL` will not be used when attempting to connect to the `production` database and the connection will incorrectly fail.

This commit fixes this problem and adds a test for the behavior.

In addition the ability to specify a connection url in a `database.yml` like this:

```
production: postgres://localhost/foo
```

Was introduced in 4.1.0rc1 though should not be used, instead using a url sub key

```
production:
  url: postgres://localhost/foo
```

This url sub key was also introduced in 4.1.0rc1 though the `production: postgres://localhost/foo` was not removed. As a result we should not test this behavior.
Distinguish ConnectionNotEstablished messages: no conn pool for the class, or no conn available from the pool
Fixed typo in comment about MAX_ID.
Merge pull request #14164 from vajrasky/fix_typo_max_id

Fixed typo in comment about MAX_ID.
Add warning when user tried to create model with pluralize name.
  1. Generate model with correct_name.
  2. It will help new users to avoid mistakes when tried to create model with wrong name.