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.
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]
Merge pull request #18053 from georgemillo/patch-2

English fix [ci skip]
Merge pull request #18036 from claudiob/remove-redundant-tests-about-around-actions-returning-false

Remove misleading test: around_action return false
Merge pull request #18050 from jonatack/patch-13

Improve section in constant autoload guide
Test to ensure content_tag works when fixing #17661

After c2fe093, which was reverted yesterday, there will likely be
future PRs to address #17661.

The test `actionview/test/template/capture_helper_test.rb
#test_capture_returns_nil_if_the_returned_value_is_not_a_string` should
have errored with c2fe093, but it was rewritten in the PR to not raise.
My guess is that it may have seemed irrelevant to the content_tag tests
or already covered by them.

This test provides additional protection by being in the content_tag
test suite to explicitly raise a red flag in future cases. It foregoes
some redundancy for safety — at least until #17661 is closed.
Merge pull request #18031 from claudiob/better-tests-for-callbacks-terminator

Add test for `:skip_after_callbacks_if_terminated`
Merge pull request #18054 from jonatack/add_content_tag_test

Test to ensure content_tag works when fixing #17661