Fixed #22073 - Ensure CreateTable operation handles backwards migration correctly when M2M fields are present
Reworked ErrorDict.as_json() to prevent unnecessary serialization/deserialization step.

Thanks @apollo13 for the suggestion. Refs #17413.
Fixed #22183: Don't make a table for M2Ms with through=
Revert "Fixed #22183: Don't make a table for M2Ms with through="

This reverts commit 1562b9896f8f614ef40fd032b1ec777280b377c1.
Fixed #22204: Bad circular-dep-breaking if more than one per run
Don't allow really long migration names
Fixed #22070 -- Changed verbose_name for apps in django.contrib to use title case

Thanks bendavis78 for the report.
Fixed typo in docs/ref/checks.txt
Fixed #22141 -- Added a spelling checker for documentation.
Fixed #21863 -- supplemented get_lookup() with get_transform()

Also fixed #22124 -- Expanded explanation of exactly what is going on in
as_sql() methods.
Fixed #22034 -- Added a specific set of relation checks for GenericInlineModelAdmin.

Thanks to jwa for the report.
Fixed #21188 -- Introduced subclasses for to-be-removed-in-django-XX warnings

Thanks Anssi Kääriäinen for the idea and Simon Charette for the
review.
Avoided changing raw DeprecationWarning filter behavior

Refs #21188. Now pure Python DeprecationWarning visibility should
be back to Python defaults.
Added test about error filterwarnings

Refs #20083.
Avoided modifying current environment in admin_scripts tests
Fixed #21092 -- Ensured admin_scripts tests are run with warnings off
Improved compatibility in admin_scripts tests

Environment keys/values need to use native strings on some
plateforms. Thanks anubhav joshi for detecting the issue and
helping shaping the patch.
Fix bad conflict detection during makemigrations
Fixed #22199: Bad max_length deconstruction for FileField
Merge pull request #2315 from bendavis78/issues/22073

Fixed #22073 - Ensure CreateTable operation handles backwards migration correctly when M2M fields are present