[Python-checkins] Fix and improve `asyncio.run()` docs (GH-16403) (GH-16504)

Yury Selivanov webhook-mailer at python.org
Mon Sep 30 21:46:48 EDT 2019


https://github.com/python/cpython/commit/2f644c0dc951868181e380f3d1cb4854e3a3152e
commit: 2f644c0dc951868181e380f3d1cb4854e3a3152e
branch: 3.8
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: Yury Selivanov <yury at magic.io>
date: 2019-09-30T18:46:43-07:00
summary:

Fix and improve `asyncio.run()` docs (GH-16403) (GH-16504)

(cherry picked from commit e407013089259e4c0b271703e1975bbcd578a2d5)

Co-authored-by: Kyle Stanley <aeros167 at gmail.com>

files:
M Doc/glossary.rst
M Doc/library/asyncio-task.rst
M Lib/asyncio/runners.py

diff --git a/Doc/glossary.rst b/Doc/glossary.rst
index e601e8b36984..9ce0357f1cb4 100644
--- a/Doc/glossary.rst
+++ b/Doc/glossary.rst
@@ -247,7 +247,7 @@ Glossary
       Fortran contiguous arrays, the first index varies the fastest.
 
    coroutine
-      Coroutines is a more generalized form of subroutines. Subroutines are
+      Coroutines are a more generalized form of subroutines. Subroutines are
       entered at one point and exited at another point.  Coroutines can be
       entered, exited, and resumed at many different points.  They can be
       implemented with the :keyword:`async def` statement.  See also
diff --git a/Doc/library/asyncio-task.rst b/Doc/library/asyncio-task.rst
index 321b4f457659..682923379391 100644
--- a/Doc/library/asyncio-task.rst
+++ b/Doc/library/asyncio-task.rst
@@ -212,6 +212,8 @@ Running an asyncio Program
 
 .. function:: run(coro, \*, debug=False)
 
+    Execute the :term:`coroutine` *coro* and return the result.
+
     This function runs the passed coroutine, taking care of
     managing the asyncio event loop and *finalizing asynchronous
     generators*.
@@ -225,10 +227,6 @@ Running an asyncio Program
     the end.  It should be used as a main entry point for asyncio
     programs, and should ideally only be called once.
 
-    Return a result of *coro* execution, or raise a :exc:`RuntimeError`
-    if ``asyncio.run()`` is called from a running event loop, or a
-    :exc:`ValueError` if *coro* is not a courutine.
-
     Example::
 
         async def main():
diff --git a/Lib/asyncio/runners.py b/Lib/asyncio/runners.py
index df686386b8fd..2e37e18b45fc 100644
--- a/Lib/asyncio/runners.py
+++ b/Lib/asyncio/runners.py
@@ -6,7 +6,7 @@
 
 
 def run(main, *, debug=False):
-    """Run a coroutine.
+    """Execute the coroutine and return the result.
 
     This function runs the passed coroutine, taking care of
     managing the asyncio event loop and finalizing asynchronous
@@ -21,10 +21,6 @@ def run(main, *, debug=False):
     It should be used as a main entry point for asyncio programs, and should
     ideally only be called once.
 
-    Return a result of *coro* execution, or raise a RuntimeError
-    if `asyncio.run()`is called from a running event loop, or a ValueError
-    if `main` is not a courutine.
-
     Example:
 
         async def main():



More information about the Python-checkins mailing list