Update djblets.mail for typing, enums, and deprecations.

Review Request #13154 — Created July 19, 2023 and submitted — Latest diff uploaded

Information

Djblets
release-4.x

Reviewers

This updates EmailMessage, DMARC code, and utilities to provide Python
type hints for all arguments and results, helping ensure consistency in
usage and behavior. This actually caught a couple of issues with None
values being fed into EmailMessage at points.

Positional arguments to EmailMessage and the enable_smart_spoofing
argument are deprecated, scheduled for removal in Djblets 6.

This all prepares for some upcoming work on this module.

Unit tests pass in Djblets and Review Board.

Commits

Files