Fix bug, when ':dependent => :destroy' option violates foreign key constraints, issue #12380
Detect in-place modifications on Strings
Add rails:update to the upgrading guides

[ci skip]
Add warning for `rescue_from Exception` and `rescue_from StandardError`

[ci skip]
Replace x.sort_by!.select! with x.select!.sort_by!

The latter has the same speed as the former in the worst case
and faster in general, because it is always better to sort less items.

Unfortunately, `routes.select!{...}.sort_by!{...}` is not possible here
because `select!` returns `nil`, so select! and sort! must be done
in two steps.
Make the isolated tests run on JRuby

As there is no forking on JRuby, we need to spawn sub-processes to make
the tests run in isolation.

Previously, we were defining globally env variables and running the test
file through backticks and delete these variables once the test ran.

Now, we simply rely on IO.popen as this is cross-platform and the env
variables are available during the child-process execution only so there
are no race conditions.

[Ben Browning & Robin Dupret]
Move `attributes_before_type_cast` to `AttributeSet`
`only_integer` of `NumericalityValidator` now allows procs and symbols
Encapsulate knowledge of type objects on `ActiveRecord::Result`

Attempting to reduce the number of places that care about the details of
how type casting occurs. We remove the type casting of the primary key
in `JoinDependecy`, rather than encapsulating it. It was originally
added for consistency with
https://github.com/rails/rails/commit/40898c8c19fa04442fc5f8fb5daf3a8bdb9a1e03#diff-06059df8d3dee3101718fb2c01151ad0R211,
but that conditional was later removed in
https://github.com/rails/rails/commit/d7ddaa530fd1b94e22d745cbaf2e8a5a34ee9734.

What is important is that the same row twice will have the same value
for the primary key, which it will.
Delegate #model_name method to self.class
Add AR::Base#validate! method

Acts same as valid? but raises AR::RecordInvalid exception
if validation fails
remove unnecessary require for json serialization test cases
Merge pull request #15882 from aditya-kapoor/remove-unnecessary-require

remove unnecessary require from json serialization test cases
Remove unused param 'klass' from AttributeAssignment#read_other
Remove unused param 'conn' from ConnectionPool#release
Disable autolink in example code blocks in guides.

/cc @chancancode @robin850

configuration reference: http://alexgorbatchev.com/SyntaxHighlighter/manual/configuration/

Related issues:

* https://github.com/vmg/redcarpet/issues/334

* https://github.com/docrails-tw/guides/issues/62
Merge pull request #15886 from JuanitoFatas/disable-autolink

Disable autolink in example code blocks in guides. [ci skip]
Merge pull request #15881 from mmozuras/remove_unused_params

Remove unused params
Merge pull request #15810 from maurogeorge/guides-rails-update

Add rails:update to the upgrading guides
add missing `:nodoc:` for recent refactorings. [ci skip]

Adding `# :nodoc:` to the parent `class` / `module` is not going
to ignore nested classes or modules.

There is a modifier `# :nodoc: all` but sadly the containing class
or module will continue to be in the docs.

/cc @sgrif