Remove cache in iscoroutinefunction to avoid holding on to refs
@@ -1124,21 +1124,8 @@ def color_of(x, palette=palette):
return palette[n % len(palette)]
-def _iscoroutinefunction(f):
- return inspect.iscoroutinefunction(f) or gen.is_coroutine_function(f)
-
-
-@functools.lru_cache(None)
-def _iscoroutinefunction_cached(f):
- return _iscoroutinefunction(f)
-
-
def iscoroutinefunction(f):
- # Attempt to use lru_cache version and fall back to non-cached version if needed
- try:
- return _iscoroutinefunction_cached(f)
- except TypeError: # unhashable type
- return _iscoroutinefunction(f)
+ return inspect.iscoroutinefunction(f) or gen.is_coroutine_function(f)
@contextmanager
