summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYury Selivanov <yury@magic.io>2016-10-05 22:29:04 (GMT)
committerYury Selivanov <yury@magic.io>2016-10-05 22:29:04 (GMT)
commitd2c5fab7c618b8c94b42ff4ae8c1875cc521f09d (patch)
tree8028fc4f0ca275b347d6f977c32a5a6f2330de2a
parent139914a0589154aaf0f47ad6725f71e8baf2a6cf (diff)
parent0de3de6cbfe034654dc03f3808de0c25e28a0c38 (diff)
downloadcpython-d2c5fab7c618b8c94b42ff4ae8c1875cc521f09d.zip
cpython-d2c5fab7c618b8c94b42ff4ae8c1875cc521f09d.tar.gz
cpython-d2c5fab7c618b8c94b42ff4ae8c1875cc521f09d.tar.bz2
Merge 3.5 (issue #28371)
-rw-r--r--Lib/asyncio/base_events.py3
-rw-r--r--Lib/test/test_asyncio/test_base_events.py9
-rw-r--r--Misc/NEWS2
3 files changed, 11 insertions, 3 deletions
diff --git a/Lib/asyncio/base_events.py b/Lib/asyncio/base_events.py
index 86b4291..5b5fcde 100644
--- a/Lib/asyncio/base_events.py
+++ b/Lib/asyncio/base_events.py
@@ -606,6 +606,9 @@ class BaseEventLoop(events.AbstractEventLoop):
if isinstance(func, events.Handle):
assert not args
assert not isinstance(func, events.TimerHandle)
+ warnings.warn(
+ "Passing Handle to loop.run_in_executor() is deprecated",
+ DeprecationWarning)
if func._cancelled:
f = self.create_future()
f.set_result(None)
diff --git a/Lib/test/test_asyncio/test_base_events.py b/Lib/test/test_asyncio/test_base_events.py
index 362ab06..a9aba0f 100644
--- a/Lib/test/test_asyncio/test_base_events.py
+++ b/Lib/test/test_asyncio/test_base_events.py
@@ -358,7 +358,8 @@ class BaseEventLoopTests(test_utils.TestCase):
h = asyncio.Handle(cb, (), self.loop)
h.cancel()
- f = self.loop.run_in_executor(None, h)
+ with self.assertWarnsRegex(DeprecationWarning, "Passing Handle"):
+ f = self.loop.run_in_executor(None, h)
self.assertIsInstance(f, asyncio.Future)
self.assertTrue(f.done())
self.assertIsNone(f.result())
@@ -373,12 +374,14 @@ class BaseEventLoopTests(test_utils.TestCase):
self.loop.set_default_executor(executor)
- res = self.loop.run_in_executor(None, h)
+ with self.assertWarnsRegex(DeprecationWarning, "Passing Handle"):
+ res = self.loop.run_in_executor(None, h)
self.assertIs(f, res)
executor = mock.Mock()
executor.submit.return_value = f
- res = self.loop.run_in_executor(executor, h)
+ with self.assertWarnsRegex(DeprecationWarning, "Passing Handle"):
+ res = self.loop.run_in_executor(executor, h)
self.assertIs(f, res)
self.assertTrue(executor.submit.called)
diff --git a/Misc/NEWS b/Misc/NEWS
index 8c44c32..3b54a7f 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -173,6 +173,8 @@ Library
- Issue #28370: Speedup asyncio.StreamReader.readexactly.
Patch by Коренберг Марк.
+- Issue #28371: Deprecate passing asyncio.Handles to run_in_executor.
+
Windows
-------