add include_hidden option to collection_check_boxes helper
Save has_one associations only if record has changes

Prevents save related callbacks such as `after_commit` being
triggered when `has_one` objects are already persisted and have no
changes.
Only use BINARY for mysql case sensitive uniqueness check when column has a case insensitive collation.
typos fixes
Tweak Configuring Guide language

the fact that Rails is multi-thread by default is not very relevant. see https://github.com/rails/rails/pull/13998 [ci skip]
:scissors:

This commit also addresses rails/docrails#169 and rails/rails#14159
Avoid namespacing routes inside engines

Since #11544, invoking the controller generator, any generated route is
namespaced according to the class_path method. Since a mountable plugin
is namespaced, creating a controller inside would generate a namespaced
route based on the engine's name.

The controller generator now relies on regular_class_path which does not
contain the class hierarchy but the given path.

Fixes #14079.
Improve guide for Hash#transform_keys and related methods.

[skip ci]
Fix code alignment in duplicable? guide.

[skip ci]
Improve collision explanation for Hash#transform_keys.

Based on comments at
https://github.com/rails/docrails/commit/42417b0013819e573be9ffc5402e179003156e8e#commitcomment-5527251

[skip ci]
Remove unnecessary db call when replacing.

When replacing a has_many association with the same one, there is no
need to do a round-trip to the db to create/and drop a new transaction.

[fixes #14220]
live controllers should have live responses

detect the type of controller we're testing and return the right type of
response based on that controller.  This allows us to stop doing the
weird sleep thing.
use built-in exception handling in live controllers

when an exception happens in an action before the response has been
committed, then we should re-raise the exception in the main thread.
This lets us reuse the existing exception handling.
Merge pull request #14195 from robin850/issue-14079

Avoid namespacing routes inside engines
make sure we wait for the threads to shut down before asserting closure
Replace map.flatten(1) with flat_map
Merge pull request #14240 from sferik/flat_map

Replace map.flatten(1) with flat_map
Merge pull request #14234 from arthurnn/fix_trans_on_replace

Remove unnecessary db call when replacing.
Refactor tests from BaseRackTest into BaseRequestTest
Fix warnings due to:
- unused variable in PG Adapter.
- Ambiguous argument warning from range_test for use - to + Infinity range without brackets.