From 8b849ea0f3482ad834e7989ff474dd5db2f295c8 Mon Sep 17 00:00:00 2001 From: Sebastian Rittau Date: Tue, 6 Jul 2021 17:01:15 +0200 Subject: bpo-38291: Fix a spurious warning when using help(object) (#27039) help(object) via pydoc.TextDoc.docclass(object) iterates over the subclasses of object, which includes typing.io and typing.re if typing is imported. It tries to access cls.__module__ for each of those sub-classes. This change suppresses warnings when accessing cls.__module__. --- Lib/typing.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Lib/typing.py b/Lib/typing.py index 2287f05..ca05fb5 100644 --- a/Lib/typing.py +++ b/Lib/typing.py @@ -2512,7 +2512,7 @@ class TextIO(IO[str]): class _DeprecatedType(type): def __getattribute__(cls, name): - if name != "__dict__" and name in cls.__dict__: + if name not in ("__dict__", "__module__") and name in cls.__dict__: warnings.warn( f"{cls.__name__} is deprecated, import directly " f"from typing instead. {cls.__name__} will be removed " -- cgit v0.12