Skip to content
Closed
Prev Previous commit
Next Next commit
Fix according to review comments
  • Loading branch information
eamanu committed Mar 13, 2020
commit 1bb46a873b763901a9b8d76be9efc622d693e78b
60 changes: 24 additions & 36 deletions Lib/asyncio/locks.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,17 +78,14 @@ def __init__(self, *, loop=None):
self._waiters = None
self._locked = False
if loop is None:
self._loop = events.get_event_loop()
self._loop = events._get_running_loop()
if self._loop is None:
warnings.warn("The creation of asyncio objects outside a running "
Comment thread
eamanu marked this conversation as resolved.
Outdated
"event loop is deprecated as of Python 3.9.",
DeprecationWarning, stacklevel=2)
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)
Comment on lines -84 to -86

@aeros aeros Mar 16, 2020 •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would be very confusing to users to add a deprecation warning in 3.8, and then remove the warning from certain asyncio objects entirely in 3.9. That doesn't make much sense to me.

(also applies to the other warning removals)


if not self._loop.is_running():
warnings.warn("The creation of asyncio objects without a running "
"event loop is deprecated as of Python 3.9.",
DeprecationWarning, stacklevel=2)

def __repr__(self):
res = super().__repr__()
Expand Down Expand Up @@ -179,17 +176,14 @@ def __init__(self, *, loop=None):
self._waiters = collections.deque()
self._value = False
if loop is None:
self._loop = events.get_event_loop()
self._loop = events._get_running_loop()
if self._loop is None:
warnings.warn("The creation of asyncio objects outside a running "
"event loop is deprecated as of Python 3.9.",
DeprecationWarning, stacklevel=2)
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)

if not self._loop.is_running():
warnings.warn("The creation of asyncio objects without a running "
"event loop is deprecated as of Python 3.9.",
DeprecationWarning, stacklevel=2)

def __repr__(self):
res = super().__repr__()
Expand Down Expand Up @@ -251,17 +245,14 @@ class Condition(_ContextManagerMixin):

def __init__(self, lock=None, *, loop=None):
if loop is None:
self._loop = events.get_event_loop()
self._loop = events._get_running_loop()
if self._loop is None:
warnings.warn("The creation of asyncio objects outside a running "
"event loop is deprecated as of Python 3.9.",
DeprecationWarning, stacklevel=2)
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)

if not self._loop.is_running():
warnings.warn("The creation of asyncio objects without a running "
"event loop is deprecated as of Python 3.9.",
DeprecationWarning, stacklevel=2)

if lock is None:
lock = Lock(loop=loop)
Expand Down Expand Up @@ -387,17 +378,14 @@ def __init__(self, value=1, *, loop=None):
self._value = value
self._waiters = collections.deque()
if loop is None:
self._loop = events.get_event_loop()
self._loop = events._get_running_loop()
if self._loop is None:
warnings.warn("The creation of asyncio objects outside a running "
"event loop is deprecated as of Python 3.9.",
DeprecationWarning, stacklevel=2)
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)

if not self._loop.is_running():
warnings.warn("The creation of asyncio objects without a running "
"event loop is deprecated as of Python 3.9.",
DeprecationWarning, stacklevel=2)

def __repr__(self):
res = super().__repr__()
Expand Down
16 changes: 7 additions & 9 deletions Lib/asyncio/queues.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,18 +32,16 @@ class Queue:

def __init__(self, maxsize=0, *, loop=None):
if loop is None:
self._loop = events.get_event_loop()
self._loop = events._get_running_loop()
if self._loop is None:
warnings.warn("The creation of asyncio objects outside a running "
"event loop is deprecated as of Python 3.9.",
DeprecationWarning, stacklevel=2)
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

if not self._loop.is_running():
warnings.warn("The creation of asyncio objects without a running "
"event loop is deprecated as of Python 3.9.",
DeprecationWarning, stacklevel=2)
self._maxsize = maxsize

# Futures.
self._getters = collections.deque()
Expand Down