diff options
author | Batuhan Taskaya <batuhanosmantaskaya@gmail.com> | 2020-10-06 20:03:02 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-06 20:03:02 (GMT) |
commit | 044a1048ca93d466965afc027b91a5a9eb9ce23c (patch) | |
tree | 94ef2bca072693d83448edef4009dc840c58a3e2 /Lib/test/test_pydoc.py | |
parent | bef7d299eb911086ea5a7ccf7a9da337e38a8491 (diff) | |
download | cpython-044a1048ca93d466965afc027b91a5a9eb9ce23c.zip cpython-044a1048ca93d466965afc027b91a5a9eb9ce23c.tar.gz cpython-044a1048ca93d466965afc027b91a5a9eb9ce23c.tar.bz2 |
bpo-38605: Make 'from __future__ import annotations' the default (GH-20434)
The hard part was making all the tests pass; there are some subtle issues here, because apparently the future import wasn't tested very thoroughly in previous Python versions.
For example, `inspect.signature()` returned type objects normally (except for forward references), but strings with the future import. We changed it to try and return type objects by calling `typing.get_type_hints()`, but fall back on returning strings if that function fails (which it may do if there are future references in the annotations that require passing in a specific namespace to resolve).
Diffstat (limited to 'Lib/test/test_pydoc.py')
-rw-r--r-- | Lib/test/test_pydoc.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Lib/test/test_pydoc.py b/Lib/test/test_pydoc.py index 76d2af8..2f50262 100644 --- a/Lib/test/test_pydoc.py +++ b/Lib/test/test_pydoc.py @@ -81,7 +81,7 @@ CLASSES |\x20\x20 | NO_MEANING = 'eggs' |\x20\x20 - | __annotations__ = {'NO_MEANING': <class 'str'>} + | __annotations__ = {'NO_MEANING': 'str'} \x20\x20\x20\x20 class C(builtins.object) | Methods defined here: @@ -194,7 +194,7 @@ Data descriptors defined here:<br> Data and other attributes defined here:<br> <dl><dt><strong>NO_MEANING</strong> = 'eggs'</dl> -<dl><dt><strong>__annotations__</strong> = {'NO_MEANING': <class 'str'>}</dl> +<dl><dt><strong>__annotations__</strong> = {'NO_MEANING': 'str'}</dl> </td></tr></table> <p> <table width="100%%" cellspacing=0 cellpadding=2 border=0 summary="section"> |