Update EmailMessage to leverage Django's mail header handling.
Review Request #11680 — Created June 25, 2021 and submitted — Latest diff uploaded
Our
EmailMessage
class maintains its own list of headers to add during
message building. We were usingadd_header()
to do this, which
technically works, but bypasses Django's custom logic for handling
various encoding and address-related header situations.This change switches to the preferred method,
msg[header] = ...
, and
adds several new unit tests to check headers when Unicode characters are
involved.
Unit tests pass on Python 2 and 3.