@@ -558,6 +558,23 @@ Removed
558
558
the :mod: `collections ` module.
559
559
(Contributed by Victor Stinner in :issue: `37324 `.)
560
560
561
+ * The ``loop `` parameter has been removed from most of :mod: `asyncio `\ 's
562
+ :doc: `high-level API <../library/asyncio-api-index >` following deprecation
563
+ in Python 3.8. The motivation behind this change is multifold:
564
+
565
+ 1. This simplifies the high-level API.
566
+ 2. The functions in the high-level API have been implicitly getting the
567
+ current thread's running event loop since Python 3.7. There isn't a need to
568
+ pass the event loop to the API in most normal use cases.
569
+ 3. Event loop passing is error-prone especially when dealing with loops
570
+ running in different threads.
571
+
572
+ Note that the low-level API will still accept ``loop ``.
573
+ See `Changes in the Python API `_ for examples of how to replace existing code.
574
+
575
+ (Contributed by Yurii Karabas, Andrew Svetlov, Yury Selivanov and Kyle Stanley
576
+ in :issue: `42392 `.)
577
+
561
578
562
579
Porting to Python 3.10
563
580
======================
@@ -596,6 +613,26 @@ Changes in the Python API
596
613
a 16-bit unsigned integer.
597
614
(Contributed by Erlend E. Aasland in :issue: `42393 `.)
598
615
616
+ * The ``loop `` parameter has been removed from most of :mod: `asyncio `\ 's
617
+ :doc: `high-level API <../library/asyncio-api-index >` following deprecation
618
+ in Python 3.8.
619
+
620
+ A coroutine that currently look like this::
621
+
622
+ async def foo(loop):
623
+ await asyncio.sleep(1, loop=loop)
624
+
625
+ Should be replaced with this::
626
+
627
+ async def foo():
628
+ await asyncio.sleep(1)
629
+
630
+ If ``foo() `` was specifically designed *not * to run in the current thread's
631
+ running event loop (e.g. running in another thread's event loop), consider
632
+ using :func: `asyncio.run_coroutine_threadsafe ` instead.
633
+
634
+ (Contributed by Yurii Karabas, Andrew Svetlov, Yury Selivanov and Kyle Stanley
635
+ in :issue: `42392 `.)
599
636
600
637
CPython bytecode changes
601
638
========================
0 commit comments