From 9cba0868fef725f843708ef99fba8a1943d3796c Mon Sep 17 00:00:00 2001 From: Semyon Moroz Date: Sat, 24 May 2025 12:33:31 +0000 Subject: [PATCH] Bump `enum` to 3.14 (#14021) --- stdlib/@tests/stubtest_allowlists/py314.txt | 3 --- stdlib/enum.pyi | 6 +++++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/stdlib/@tests/stubtest_allowlists/py314.txt b/stdlib/@tests/stubtest_allowlists/py314.txt index 6484bbcda..9dce72092 100644 --- a/stdlib/@tests/stubtest_allowlists/py314.txt +++ b/stdlib/@tests/stubtest_allowlists/py314.txt @@ -38,9 +38,6 @@ ctypes.wintypes.HDROP ctypes.wintypes.HFILE ctypes.wintypes.HRESULT ctypes.wintypes.HSZ -enum.Enum.__signature__ -enum.EnumMeta.__signature__ -enum.EnumType.__signature__ faulthandler.dump_c_stack fractions.Fraction.__pow__ fractions.Fraction.__rpow__ diff --git a/stdlib/enum.pyi b/stdlib/enum.pyi index 26f198867..327b13545 100644 --- a/stdlib/enum.pyi +++ b/stdlib/enum.pyi @@ -53,6 +53,7 @@ _EnumerationT = TypeVar("_EnumerationT", bound=type[Enum]) # >>> Enum('Foo', names={'RED': 1, 'YELLOW': 2}) # _EnumNames: TypeAlias = str | Iterable[str] | Iterable[Iterable[str | Any]] | Mapping[str, Any] +_Signature: TypeAlias = Any # TODO: Unable to import Signature from inspect module if sys.version_info >= (3, 11): class nonmember(Generic[_EnumMemberT]): @@ -166,6 +167,9 @@ class EnumMeta(type): if sys.version_info >= (3, 12): @overload def __call__(cls: type[_EnumMemberT], value: Any, *values: Any) -> _EnumMemberT: ... + if sys.version_info >= (3, 14): + @property + def __signature__(cls) -> _Signature: ... _member_names_: list[str] # undocumented _member_map_: dict[str, Enum] # undocumented @@ -212,7 +216,7 @@ class Enum(metaclass=EnumMeta): if sys.version_info >= (3, 11): def __copy__(self) -> Self: ... def __deepcopy__(self, memo: Any) -> Self: ... - if sys.version_info >= (3, 12): + if sys.version_info >= (3, 12) and sys.version_info < (3, 14): @classmethod def __signature__(cls) -> str: ...