bpo-34075: Deprecate non-ThreadPoolExecutor in loop.set_default_executor() (GH-8533)
Various asyncio internals expect that the default executor is a
`ThreadPoolExecutor`, so deprecate passing anything else to
`loop.set_default_executor()`.
diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst
index 3f51535..bab1e06 100644
--- a/Doc/whatsnew/3.8.rst
+++ b/Doc/whatsnew/3.8.rst
@@ -164,6 +164,12 @@
They will be removed in Python 3.9.
(Contributed by Serhiy Storchaka in :issue:`29209`.)
+* Passing an object that is not an instance of
+ :class:`concurrent.futures.ThreadPoolExecutor` to
+ :meth:`asyncio.AbstractEventLoop.set_default_executor()` is
+ deprecated and will be prohibited in Python 3.9.
+ (Contributed by Elvis Pranskevichus in :issue:`34075`.)
+
Removed
=======