Propagate EmailMessage generics (#15639)

This commit is contained in:
Tamir Duberstein
2026-04-15 12:37:59 -07:00
committed by GitHub
parent c03c2b9264
commit bd18cc640c
2 changed files with 15 additions and 5 deletions
@@ -1,5 +1,5 @@
from email.headerregistry import Address
from email.message import EmailMessage
from email.headerregistry import Address, BaseHeader
from email.message import EmailMessage, MIMEPart
from typing_extensions import assert_type
msg = EmailMessage()
@@ -8,3 +8,11 @@ msg["From"] = Address("Sender Name", "sender", "example.com")
for a in msg.iter_attachments():
assert_type(a, EmailMessage)
generic_msg: EmailMessage[BaseHeader, str] = EmailMessage()
assert_type(generic_msg.get("To"), BaseHeader | None)
assert_type(generic_msg.get_body(), MIMEPart[BaseHeader, str] | None)
for a in generic_msg.iter_attachments():
assert_type(a, EmailMessage[BaseHeader, str])
for p in generic_msg.iter_parts():
assert_type(p, MIMEPart[BaseHeader, str])