summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/inspect.py4
-rw-r--r--Misc/NEWS3
2 files changed, 5 insertions, 2 deletions
diff --git a/Lib/inspect.py b/Lib/inspect.py
index 0fd0382..e6dae1e 100644
--- a/Lib/inspect.py
+++ b/Lib/inspect.py
@@ -207,10 +207,10 @@ def iscoroutine(object):
return isinstance(object, types.CoroutineType)
def isawaitable(object):
- """Return true is object can be passed to an ``await`` expression."""
+ """Return true if object can be passed to an ``await`` expression."""
return (isinstance(object, types.CoroutineType) or
isinstance(object, types.GeneratorType) and
- object.gi_code.co_flags & CO_ITERABLE_COROUTINE or
+ bool(object.gi_code.co_flags & CO_ITERABLE_COROUTINE) or
isinstance(object, collections.abc.Awaitable))
def istraceback(object):
diff --git a/Misc/NEWS b/Misc/NEWS
index c66a521..7512e1a 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -450,6 +450,9 @@ Library
- Issue #28613: Fix get_event_loop() return the current loop if
called from coroutines/callbacks.
+- Issue #28639: Fix inspect.isawaitable to always return bool
+ Patch by Justin Mayfield.
+
IDLE
----