Fix typing.Union checks with Python 3.7

This commit is contained in:
Florian Bruhin 2018-02-10 17:22:21 +01:00
parent 80ee43beca
commit 63766c1711
2 changed files with 2 additions and 3 deletions

View File

@ -76,6 +76,7 @@ Fixed
- QtWebEngine: Qt download objects are now cleaned up properly when a download
is removed.
- Suspended pages now should always load the correct page when being un-suspended.
- Compatibility with Python 3.7
Removed
~~~~~~~

View File

@ -394,10 +394,8 @@ class Command:
if isinstance(typ, tuple):
raise TypeError("{}: Legacy tuple type annotation!".format(
self.name))
elif type(typ) is type(typing.Union): # noqa: E721
elif getattr(typ, '__origin__', None) is typing.Union:
# this is... slightly evil, I know
# We also can't use isinstance here because typing.Union doesn't
# support that.
# pylint: disable=no-member,useless-suppression
try:
types = list(typ.__args__)