Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix typo (#5049) | Andrew Svetlov | 2017-12-30 | 1 | -1/+1 |
| | |||||
* | bpo-31721: Allow Future._log_traceback to only be set to False (#5009) | Yury Selivanov | 2017-12-25 | 1 | -0/+5 |
| | |||||
* | bpo-32363: Disable Task.set_exception() and Task.set_result() (#4923) | Yury Selivanov | 2017-12-25 | 1 | -9/+42 |
| | |||||
* | bpo-32415: Fix "error is already set" (#4999) | Yury Selivanov | 2017-12-23 | 1 | -0/+1 |
| | |||||
* | bpo-32357: Use PySet_GET_SIZE macro in _is_coroutine() from _asynciomodule.c ↵ | Andrew Svetlov | 2017-12-23 | 1 | -1/+1 |
| | | | | (#4990) | ||||
* | bpo-32415: Add asyncio.Task.get_loop() and Future.get_loop() (#4992) | Yury Selivanov | 2017-12-23 | 1 | -29/+69 |
| | |||||
* | Fix GCC warning in _asynciomodule.c (#4928) | Zackery Spytz | 2017-12-19 | 1 | -1/+1 |
| | |||||
* | bpo-32357: Optimize asyncio.iscoroutine() for non-native coroutines (#4915) | Yury Selivanov | 2017-12-19 | 1 | -28/+85 |
| | |||||
* | bpo-32348: Optimize asyncio.Future schedule/add/remove callback. (#4907) | Yury Selivanov | 2017-12-18 | 1 | -75/+322 |
| | |||||
* | bpo-32250: Implement asyncio.current_task() and asyncio.all_tasks() (#4799) | Andrew Svetlov | 2017-12-16 | 1 | -110/+260 |
| | |||||
* | bpo-32311: Implement asyncio.create_task() shortcut (#4848) | Andrew Svetlov | 2017-12-15 | 1 | -1/+28 |
| | | | | | * Implement functionality * Add documentation | ||||
* | bpo-32296: Implement asyncio.get_event_loop and _get_running_loop in C. (#4827) | Yury Selivanov | 2017-12-13 | 1 | -7/+244 |
| | | | | | | | | asyncio.get_event_loop(), and, subsequently asyncio._get_running_loop() are one of the most frequently executed functions in asyncio. They also can't be sped up by third-party event loops like uvloop. When implemented in C they become 4x faster. | ||||
* | bpo-31185: Fixed miscellaneous errors in asyncio speedup module. (#3076) | Serhiy Storchaka | 2017-09-03 | 1 | -207/+206 |
| | |||||
* | bpo-31061: fix crash in asyncio speedup module (GH-2966) | Alexander Mohr | 2017-08-02 | 1 | -0/+4 |
| | |||||
* | bpo-30828: Fix out of bounds write in ↵ | Yury Selivanov | 2017-07-05 | 1 | -3/+10 |
| | | | | `asyncio.CFuture.remove_done_callback() (#2569) | ||||
* | bpo-30508: Don't log exceptions if Task/Future "cancel()" method called (#2050) | Yury Selivanov | 2017-06-11 | 1 | -1/+17 |
| | |||||
* | bpo-30048: asyncio: fix Task.cancel() was ignored. (GH-1097) | INADA Naoki | 2017-05-11 | 1 | -0/+12 |
| | | | | | | | | | | | | when there are no more `await` or `yield (from)` before return in coroutine, cancel was ignored. example: async def coro(): asyncio.Task.current_task().cancel() return 42 ... res = await coro() # should raise CancelledError | ||||
* | bpo-28963: Fix out of bound iteration in ↵ | Yury Selivanov | 2017-03-03 | 1 | -1/+1 |
| | | | | asyncio.Future.remove_done_callback/C (#408) | ||||
* | bpo-29271: Fix Task.current_task and Task.all_tasks to accept None. (#406) | Yury Selivanov | 2017-03-03 | 1 | -6/+6 |
| | |||||
* | Use _PyObject_CallMethodIdObjArgs() in _asyncio | Victor Stinner | 2016-12-09 | 1 | -17/+19 |
| | | | | | | | | | Issue #28915: Replace _PyObject_CallMethodId() with _PyObject_CallMethodIdObjArgs() when the format string was only made of "O" formats, PyObject* arguments. _PyObject_CallMethodIdObjArgs() avoids the creation of a temporary tuple and doesn't have to parse a format string. | ||||
* | Use _PyObject_CallNoArg() | Victor Stinner | 2016-12-06 | 1 | -1/+1 |
| | | | | | | | Replace: PyObject_CallFunctionObjArgs(callable, NULL) with: _PyObject_CallNoArg(callable) | ||||
* | Use _PyObject_CallNoArg() | Victor Stinner | 2016-12-06 | 1 | -6/+6 |
| | | | | | | | Replace: PyObject_CallObject(callable, NULL) with: _PyObject_CallNoArg(callable) | ||||
* | Issue #28858: Remove _PyObject_CallArg1() macro | Victor Stinner | 2016-12-05 | 1 | -3/+3 |
| | | | | | | | | | | | Replace _PyObject_CallArg1(func, arg) with PyObject_CallFunctionObjArgs(func, arg, NULL) Using the _PyObject_CallArg1() macro increases the usage of the C stack, which was unexpected and unwanted. PyObject_CallFunctionObjArgs() doesn't have this issue. | ||||
* | Backed out changeset b9c9691c72c5 | Victor Stinner | 2016-12-04 | 1 | -5/+7 |
| | | | | | | Issue #28858: The change b9c9691c72c5 introduced a regression. It seems like _PyObject_CallArg1() uses more stack memory than PyObject_CallFunctionObjArgs(). | ||||
* | Merge 3.6 (issue #28843) | Yury Selivanov | 2016-12-01 | 1 | -0/+5 |
| | |||||
* | Replace PyObject_CallFunctionObjArgs() with fastcall | Victor Stinner | 2016-12-01 | 1 | -7/+5 |
| | | | | | | | | | | | | | | * PyObject_CallFunctionObjArgs(func, NULL) => _PyObject_CallNoArg(func) * PyObject_CallFunctionObjArgs(func, arg, NULL) => _PyObject_CallArg1(func, arg) PyObject_CallFunctionObjArgs() allocates 40 bytes on the C stack and requires extra work to "parse" C arguments to build a C array of PyObject*. _PyObject_CallNoArg() and _PyObject_CallArg1() are simpler and don't allocate memory on the C stack. This change is part of the fastcall project. The change on listsort() is related to the issue #23507. | ||||
* | correctly emulate error semantics of gen.throw in FutureIter_throw | Benjamin Peterson | 2016-11-14 | 1 | -19/+34 |
| | |||||
* | Issue #26081: Fix refleak in _asyncio.Future.__iter__().throw. | Yury Selivanov | 2016-11-09 | 1 | -1/+3 |
| | |||||
* | Issue #23996: Added _PyGen_SetStopIterationValue for safe raising | Serhiy Storchaka | 2016-11-06 | 1 | -18/+4 |
| | | | | | StopIteration with value. More safely handle non-normalized exceptions in -_PyGen_FetchStopIterationValue. | ||||
* | Issue #28544: Fix inefficient call to _PyObject_CallMethodId() | Victor Stinner | 2016-10-29 | 1 | -1/+1 |
| | | | | | "()" format string creates an empty list of argument but requires extra work to parse the format string. | ||||
* | Issue #28544: Pass `PyObject*` to _PyDict_Pop, not `PyDictObject*` | Yury Selivanov | 2016-10-28 | 1 | -5/+5 |
| | |||||
* | Issue #28544: Fix _asynciomodule.c on Windows | Victor Stinner | 2016-10-28 | 1 | -5/+5 |
| | | | | | | PyType_Ready() sets the reference to &PyType_Type. &PyType_Type cannot be resolved at compilation time (not on Windows?). | ||||
* | Issue #28544: Implement asyncio.Task in C. | Yury Selivanov | 2016-10-28 | 1 | -277/+1699 |
| | | | | | | | | This implementation provides additional 10-20% speed boost for asyncio programs. The patch also fixes _asynciomodule.c to use Arguments Clinic, and makes '_schedule_callbacks' an overridable method (as it was in 3.5). | ||||
* | Issue #28430: Fix iterator of C implemented asyncio.Future doesn't | INADA Naoki | 2016-10-25 | 1 | -6/+4 |
| | | | | accept non-None value is passed to it.send(val). | ||||
* | Issue #28493: Fix typos in _asynciomodule.c | Yury Selivanov | 2016-10-20 | 1 | -2/+2 |
| | | | | Thanks to Stéphane Wirtel! | ||||
* | Issue #28492: Fix how StopIteration is raised in _asyncio.Future | Yury Selivanov | 2016-10-20 | 1 | -2/+19 |
| | |||||
* | Issue #28452: Remove _asyncio._init_module function | INADA Naoki | 2016-10-18 | 1 | -66/+55 |
| | |||||
* | Issue #28428: Rename _futures module to _asyncio. | INADA Naoki | 2016-10-15 | 1 | -0/+1034 |
It will have more speedup functions or classes other than asyncio.Future. |