Fixed an instance of 'an' before a word beginning with a consonant.
Fixed #23452 -- Prevented infinite migrations for empty unique/index_together.

Thanks fwkroon for the report.
Fixed #23417 -- Completed locale formats for zh_CN, zh_Hans, zh_Hant and zh_TW.
Corrected grammar in migrations error message.
Fixed #20743 -- Added support for keyfile/certfile in SMTP connections.

Thanks jwmayfield, serg.partizan, and Wojciech Banaś for work on the patch.
Fixed typo in topics/forms/formsets.txt
Corrected indentation in a contrib.humanize test; refs #23340.

Thanks Zach Borboa for the report.
Avoided using deprecated version of importlib; refs #23418.
Added some items to the 1.7.1 release notes.
Added ordering to prevent non-deterministic test failure; refs #23099.
Added link to LogRecord attributes in logging.txt
Fixed #23403 -- Fixed crash in contrib.sitemaps if lastmod returned a date rather than datetime.

Thanks igorcc for the report.
Fixed #19139 -- Made OpenLayersWidget follow GeoModelAdmin's modifiable attribute

Thanks Tim Graham for the review.
Prevented Attribute error in GDAL objects deletion
Fixed #13843 -- Prevented AttributeError during geometry objects deletion
Fixed #17101 -- Integrated django-secure and added check --deploy option

Thanks Carl Meyer for django-secure and for reviewing.

Thanks also to Zach Borboa, Erik Romijn, Collin Anderson, and
Jorge Carleitao for reviews.
Added ops team to roles.txt.
Fixed #23483 -- Prevented ImproperlyConfigured with dotted app names

Made sure the app labels stay unique for the AppConfigStubs, so
migrations wouldn't fail if two dotted app names has the same last part
(e.g. django.contrib.auth and vendor.auth)
Fixed #23484 -- Add comment in AppConfigStub clarifying app name vs app label.
Added 1.7.1 release notes for refs #23483.