Add class level case operator support for error dispatching in Rescuable
Add test for `:skip_after_callbacks_if_terminated`

`define_callbacks` from `ActiveSupport::Callbacks` accepts the
`:skip_after_callbacks_if_terminated` option since #4866 but the option
is not tested anywhere.

This commit adds tests and fixes documentation for the option, making it clear
that halting a callback chain only stops following `before_` and `around_`
callbacks by default.
Add AM test for after_validation returning false

This stems from https://github.com/rails/rails/pull/17227#discussion_r21641358

It's simply a clarification of the current behavior by which if an
`after_validation` ActiveModel callback returns +false+, then further
`after_` callbacks **are not halted**.
Add AM test: after/around callback returning false

This stems from https://github.com/rails/rails/pull/17227#discussion_r21641358

It's simply a clarification of the current behavior by which if an
`after_` or `around_` ActiveModel callback returns +false+, then the callback
chain **is not halted**.

The callback chain in ActiveModel is only halted when a `before_`
callback returns `false`.
Remove misleading test: around_action return false

When an `around_action` does not `yield`, then the corresponding action is
*never* executed and the `after_` actions are *never* invoked.

The value returned by the `around_action` does not have any impact on this:
an `around_action` can "return" `true`, `false`, or `"pizza"`, but as long
as `yield` is not invoked, the corresponding action and after callbacks are
not executed.

The test suite for `ActionController::Callbacks` currently includes separate
tests to distinguish the cases in which a non-yielding `around_actions` returns
`true` or `false`.

In my opinion, having such tests is misleading, giving the impression that the
returned value might have some sort of impact, while it does not. At least
that's the impression I got when I read those tests.

For completeness, the tests were introduced 7 years ago by @NZKoz in e80fabb.
syncs the autoloading guide and undoes some merged changes [ci skip]
missing preposition [ci skip]
undoes a recent merged edit [ci skip]

I think "What" is was fine, "The purpose of" assumes the reader knows such thing exists.
"What is" is fine, and also matches the following "What is require_dependency".
[ci skip] :scissors: blank lines between list items.
decribe deprecation cycle from `timestamps null: false` to `null: true`.

[ci skip]

/cc @sgrif @zzak

Conflicts:
	activerecord/CHANGELOG.md
Merge pull request #18047 from JuanitoFatas/patch/constant_autoloading_and_reloading-list-items

[ci skip] :scissors: blank lines between list items.
docs, synchronize CHANGELOG across branches. [ci skip]
Constant autoload grammar fix

[skip ci]
Add a code checking about file or not to the rails db command
Improve section in constant autoload guide

[skip ci]
Merge pull request #18048 from jonatack/patch-8

Constant autoload grammar fix
allow reseting of request variants

The current implementation of `variants=` don't allow a resetting to nil, wich is the default value.

This results in the following code smell:
```ruby
case request.user_agent
when /iPhone/
  request.variants = :phone
when /iPad/
  request.variants = :ipad
end
```

With the ability to reset variants to nil, it could be:
```ruby
request.variants = case request.user_agent
when /iPhone/
  :phone
when /iPad/
  :ipad
end
```
Improve grammar

[skip ci]
Merge pull request #18051 from jonatack/patch-14

Improve grammar
English fix [ci skip]