Fixed #19746 -- Allow deserialization of pk-less data
Fixed #19839 -- Isolated auth tests from customized TEMPLATE_LOADERS

Thanks limscoder for the report.
Removed an unecessary function.

It was introduced by the refactoring in 5a4e63e6 and made redundant by
the refactoring in 18934677.
Avoided firing the request_finished signal in tests.

* Avoided calling BaseHttpResponse.close(). The test client take care of
  that since acc5396e.
* Disconnected the request_finished signal when this method must be
  called. The test client has a similar implementation since bacb097a.
Fixed #19717 - Removed mentions of "root QuerySet" in docs.

Thanks julien.aubert.mail@ for the report and James Pic for the patch.
Factored out common code in database backends.
Simplified MySQL version checking.

Django used to check the version of MySQL before handling the first
request, which required:
- opening a connection
- closing it, to avoid holding it idle until the first request.

This code isn't necessary any longer since Django dropped support for
some versions of MySQL, and other database backends don't implement a
similar dance. For consistency and maintenability, remove it.

Reverts 4423757c0c50afbe2470434778c8d5e5b4a70925.

Closes #18135.
Fixed #15119 -- Stopped pinging the MySQL server.
Removed duplicate caching of mysql_version.

The manual caching in self.server_version and the cached_property
decorator are redundant.
Implemented PostgreSQL version as a cached property.
Added required methods in BaseDatabaseWrapper.

I should have included this in 29628e0b6e5b1c6324e0c06cc56a49a5aa0747e0.
Fixed #19837 -- Refactored split_exclude() join generation

The refactoring mainly concentrates on making sure the inner and outer
query agree about the split position. The split position is where the
multijoin happens, and thus the split position also determines the
columns used in the "WHERE col1 IN (SELECT col2 from ...)" condition.

This commit fixes a regression caused by #10790 and commit
69597e5bcc89aadafd1b76abf7efab30ee0b8b1a. The regression was caused
by wrong cols in the split position.
Fixed #10870 -- Added aggreation + generic reverse relation test
Removed accidentally committed file
Avoided related_name conflicts in tests
Update docs/topics/class-based-views/generic-display.txt

simple typo in "Making friendly template contexts"
Implemented Oracle version as a cached property.
Ensured a connection is established when checking the database version.

Fixed a test broken by 21765c0a. Refs #18135.
Fixed #18789 - Fixed some text wrap issues with methods in the docs.

Thanks neixetis@ for the report.
Updated a couple admonitions to use the warning directive.