From a758344b9eef745318befae5a12b76836fad01c3 Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Thu, 22 Apr 2021 22:33:53 -0500 Subject: [PATCH 1/4] bpo-43918: document signature and default argument of `anext` builtin --- Python/bltinmodule.c | 7 +++++-- Python/clinic/bltinmodule.c.h | 7 +++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c index 3b0e59a6d18c36..621ad57b9991d4 100644 --- a/Python/bltinmodule.c +++ b/Python/bltinmodule.c @@ -1635,13 +1635,16 @@ anext as builtin_anext default: object = NULL / -Return the next item from the async iterator. +anext(aiterator[, default]) + +Return the next item from the async iterator. If default is given and the async +iterator is exhausted, it is returned instead of raising StopAsyncIteration. [clinic start generated code]*/ static PyObject * builtin_anext_impl(PyObject *module, PyObject *aiterator, PyObject *default_value) -/*[clinic end generated code: output=f02c060c163a81fa input=699d11f4e38eca24]*/ +/*[clinic end generated code: output=f02c060c163a81fa input=27c03b6bb55945f3]*/ { PyTypeObject *t; PyObject *awaitable; diff --git a/Python/clinic/bltinmodule.c.h b/Python/clinic/bltinmodule.c.h index 545f5b53f6e549..9f7ba39d3516ff 100644 --- a/Python/clinic/bltinmodule.c.h +++ b/Python/clinic/bltinmodule.c.h @@ -543,7 +543,10 @@ PyDoc_STRVAR(builtin_anext__doc__, "anext($module, aiterator, default=, /)\n" "--\n" "\n" -"Return the next item from the async iterator."); +"anext(aiterator[, default])\n" +"\n" +"Return the next item from the async iterator. If default is given and the async\n" +"iterator is exhausted, it is returned instead of raising StopAsyncIteration."); #define BUILTIN_ANEXT_METHODDEF \ {"anext", (PyCFunction)(void(*)(void))builtin_anext, METH_FASTCALL, builtin_anext__doc__}, @@ -874,4 +877,4 @@ builtin_issubclass(PyObject *module, PyObject *const *args, Py_ssize_t nargs) exit: return return_value; } -/*[clinic end generated code: output=da9ae459e9233259 input=a9049054013a1b77]*/ +/*[clinic end generated code: output=286dfde3414e2f1d input=a9049054013a1b77]*/ From 110535c3160e63e0f55afd2bbf6396edf82702e6 Mon Sep 17 00:00:00 2001 From: "blurb-it[bot]" <43283697+blurb-it[bot]@users.noreply.github.com> Date: Fri, 23 Apr 2021 03:46:46 +0000 Subject: [PATCH 2/4] =?UTF-8?q?=F0=9F=93=9C=F0=9F=A4=96=20Added=20by=20blu?= =?UTF-8?q?rb=5Fit.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Core and Builtins/2021-04-23-03-46-45.bpo-43918.nNDY3S.rst | 1 + 1 file changed, 1 insertion(+) create mode 100644 Misc/NEWS.d/next/Core and Builtins/2021-04-23-03-46-45.bpo-43918.nNDY3S.rst diff --git a/Misc/NEWS.d/next/Core and Builtins/2021-04-23-03-46-45.bpo-43918.nNDY3S.rst b/Misc/NEWS.d/next/Core and Builtins/2021-04-23-03-46-45.bpo-43918.nNDY3S.rst new file mode 100644 index 00000000000000..f2f33f02abbd99 --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2021-04-23-03-46-45.bpo-43918.nNDY3S.rst @@ -0,0 +1 @@ +Document the signature and ``default`` argument in the docstring of the new ``anext`` builtin. \ No newline at end of file From 5a1a324ac40d51d43894a66f3865645c90b77f0b Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Tue, 27 Apr 2021 13:37:12 -0500 Subject: [PATCH 3/4] bpo-43918: add `async` to signature text of `anext` Co-authored-by: Dennis Sweeney <36520290+sweeneyde@users.noreply.github.com> --- Python/bltinmodule.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c index 621ad57b9991d4..ae6c3fb3c2e564 100644 --- a/Python/bltinmodule.c +++ b/Python/bltinmodule.c @@ -1635,7 +1635,7 @@ anext as builtin_anext default: object = NULL / -anext(aiterator[, default]) +async anext(aiterator[, default]) Return the next item from the async iterator. If default is given and the async iterator is exhausted, it is returned instead of raising StopAsyncIteration. From 4e6e486123b5d2c017a8b1076123602e5a294016 Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Tue, 27 Apr 2021 13:38:43 -0500 Subject: [PATCH 4/4] bpo-43918: rerun argument clinic for changes to `anext` --- Python/bltinmodule.c | 2 +- Python/clinic/bltinmodule.c.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c index ae6c3fb3c2e564..791cced4f35085 100644 --- a/Python/bltinmodule.c +++ b/Python/bltinmodule.c @@ -1644,7 +1644,7 @@ iterator is exhausted, it is returned instead of raising StopAsyncIteration. static PyObject * builtin_anext_impl(PyObject *module, PyObject *aiterator, PyObject *default_value) -/*[clinic end generated code: output=f02c060c163a81fa input=27c03b6bb55945f3]*/ +/*[clinic end generated code: output=f02c060c163a81fa input=8f63f4f78590bb4c]*/ { PyTypeObject *t; PyObject *awaitable; diff --git a/Python/clinic/bltinmodule.c.h b/Python/clinic/bltinmodule.c.h index 9f7ba39d3516ff..4ea58761cf9628 100644 --- a/Python/clinic/bltinmodule.c.h +++ b/Python/clinic/bltinmodule.c.h @@ -543,7 +543,7 @@ PyDoc_STRVAR(builtin_anext__doc__, "anext($module, aiterator, default=, /)\n" "--\n" "\n" -"anext(aiterator[, default])\n" +"async anext(aiterator[, default])\n" "\n" "Return the next item from the async iterator. If default is given and the async\n" "iterator is exhausted, it is returned instead of raising StopAsyncIteration."); @@ -877,4 +877,4 @@ builtin_issubclass(PyObject *module, PyObject *const *args, Py_ssize_t nargs) exit: return return_value; } -/*[clinic end generated code: output=286dfde3414e2f1d input=a9049054013a1b77]*/ +/*[clinic end generated code: output=e1d8057298b5de61 input=a9049054013a1b77]*/