summaryrefslogtreecommitdiffstats
path: root/Misc
diff options
context:
space:
mode:
authorƁukasz Langa <lukasz@langa.pl>2017-09-14 18:33:00 (GMT)
committerGitHub <noreply@github.com>2017-09-14 18:33:00 (GMT)
commitf350a268a7071ce7d7a5bb86a9b1229782d4963b (patch)
tree04b38394dea9be76bea00f41b488c3e3a223dd34 /Misc
parentd393c1b227f22fb9af66040b2b367c99a4d1fa9a (diff)
downloadcpython-f350a268a7071ce7d7a5bb86a9b1229782d4963b.zip
cpython-f350a268a7071ce7d7a5bb86a9b1229782d4963b.tar.gz
cpython-f350a268a7071ce7d7a5bb86a9b1229782d4963b.tar.bz2
bpo-28556: typing.get_type_hints: better globalns for classes and modules (#3582)
This makes the default behavior (without specifying `globalns` manually) more predictable for users, finds the right globalns automatically. Implementation for classes assumes has a `__module__` attribute and that module is present in `sys.modules`. It does this recursively for all bases in the MRO. For modules, the implementation just uses their `__dict__` directly. This is backwards compatible, will just raise fewer exceptions in naive user code. Originally implemented and reviewed at https://github.com/python/typing/pull/470.
Diffstat (limited to 'Misc')
-rw-r--r--Misc/NEWS.d/next/Library/2017-09-14-11-02-56.bpo-28556.EUOiYs.rst2
1 files changed, 2 insertions, 0 deletions
diff --git a/Misc/NEWS.d/next/Library/2017-09-14-11-02-56.bpo-28556.EUOiYs.rst b/Misc/NEWS.d/next/Library/2017-09-14-11-02-56.bpo-28556.EUOiYs.rst
new file mode 100644
index 0000000..8464d59
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2017-09-14-11-02-56.bpo-28556.EUOiYs.rst
@@ -0,0 +1,2 @@
+typing.get_type_hints now finds the right globalns for classes and modules
+by default (when no ``globalns`` was specified by the caller).