From b9d8a1af26d251f6fad287231f05da3b31348658 Mon Sep 17 00:00:00 2001 From: Apus Berliozi Date: Thu, 21 May 2026 14:25:55 +0700 Subject: [PATCH] fix: [15809] Made typed_subpart_iterator generic over Message --- stdlib/email/iterators.pyi | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/stdlib/email/iterators.pyi b/stdlib/email/iterators.pyi index d964d6843833..b9a8de835401 100644 --- a/stdlib/email/iterators.pyi +++ b/stdlib/email/iterators.pyi @@ -1,11 +1,14 @@ from _typeshed import SupportsWrite from collections.abc import Iterator from email.message import Message +from typing import TypeVar + +_T = TypeVar("_T", bound=Message) __all__ = ["body_line_iterator", "typed_subpart_iterator", "walk"] def body_line_iterator(msg: Message, decode: bool = False) -> Iterator[str]: ... -def typed_subpart_iterator(msg: Message, maintype: str = "text", subtype: str | None = None) -> Iterator[str]: ... +def typed_subpart_iterator(msg: _T, maintype: str = "text", subtype: str | None = None) -> Iterator[_T]: ... def walk(self: Message) -> Iterator[Message]: ... # We include the seemingly private function because it is documented in the stdlib documentation.