diff options
author | Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> | 2017-09-14 20:52:05 (GMT) |
---|---|---|
committer | Ćukasz Langa <lukasz@langa.pl> | 2017-09-14 20:52:05 (GMT) |
commit | 1658ec07577ef9696cea76fcf7fac2da18403ec5 (patch) | |
tree | fd39b962002c374c53b52f519a69abfde1700d6d /Misc | |
parent | f135f62cfd1529cbb9326e53728a22afd05b6bc3 (diff) | |
download | cpython-1658ec07577ef9696cea76fcf7fac2da18403ec5.zip cpython-1658ec07577ef9696cea76fcf7fac2da18403ec5.tar.gz cpython-1658ec07577ef9696cea76fcf7fac2da18403ec5.tar.bz2 |
[3.6] bpo-28556: typing.get_type_hints: better globalns for classes and modules (GH-3582) (#3583)
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.
(cherry picked from commit f350a268a7071ce7d7a5bb86a9b1229782d4963b)
Diffstat (limited to 'Misc')
-rw-r--r-- | Misc/NEWS.d/next/Library/2017-09-14-11-02-56.bpo-28556.EUOiYs.rst | 2 |
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). |