From: Emmanuel Arias Date: Tue, 10 Sep 2019 11:46:12 +0000 (-0300) Subject: bpo-36373: Deprecate explicit loop parameter in all public asyncio APIs [queue] ... X-Git-Tag: v3.9.0a1~607 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9008be303a89bfab8c3314c6a42330b5523adc8b;p=thirdparty%2FPython%2Fcpython.git bpo-36373: Deprecate explicit loop parameter in all public asyncio APIs [queue] (GH-13950) This PR deprecate explicit loop parameters in all public asyncio APIs This issues is split to be easier to review. fourth step: queue.py https://bugs.python.org/issue36373 --- diff --git a/Doc/library/asyncio-queue.rst b/Doc/library/asyncio-queue.rst index 7be1023c80cc..e7775da54f58 100644 --- a/Doc/library/asyncio-queue.rst +++ b/Doc/library/asyncio-queue.rst @@ -32,6 +32,10 @@ Queue the queue is always known and can be returned by calling the :meth:`qsize` method. + .. deprecated-removed:: 3.8 3.10 + The *loop* parameter. + + This class is :ref:`not thread safe `. .. attribute:: maxsize diff --git a/Lib/asyncio/queues.py b/Lib/asyncio/queues.py index 2a8d3e760441..c96b4a0c1ba3 100644 --- a/Lib/asyncio/queues.py +++ b/Lib/asyncio/queues.py @@ -2,6 +2,7 @@ __all__ = ('Queue', 'PriorityQueue', 'LifoQueue', 'QueueFull', 'QueueEmpty') import collections import heapq +import warnings from . import events from . import locks @@ -34,6 +35,9 @@ class Queue: self._loop = events.get_event_loop() else: self._loop = loop + warnings.warn("The loop argument is deprecated since Python 3.8, " + "and scheduled for removal in Python 3.10.", + DeprecationWarning, stacklevel=2) self._maxsize = maxsize # Futures.