| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Add BaseEventLoop.wait_executor_on_close attribute: true by default.
loop.close() now waits for the default executor to finish by default.
Set loop.wait_executor_on_close attribute to False to not wait for
the executor.
|
| |
|
|
|
|
| |
non-main thread (#13630)
|
|
|
| |
https://bugs.python.org/issue36999
|
|
|
|
|
|
|
|
|
| |
Drop isinstance checks from create_subprocess_exec function and let
subprocess module do them.
https://bugs.python.org/issue35246
https://bugs.python.org/issue35246
|
|
|
|
|
|
| |
Follow-up for #1067
https://bugs.python.org/issue29883
|
|
|
|
|
| |
loop.subprocess_exec (GH-13586)
https://bugs.python.org/issue36686
|
|
|
| |
https://bugs.python.org/issue36889
|
|
|
|
|
|
|
|
|
|
| |
(GH-13530)
Return a safe to use proxy socket object from `transport.get_extra_info('socket')`
https://bugs.python.org/issue37027
|
|
|
| |
https://bugs.python.org/issue37035
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This will address the common mistake many asyncio users make:
an "except Exception" clause breaking Tasks cancellation.
In addition to this change, we stop inheriting asyncio.TimeoutError
and asyncio.InvalidStateError from their concurrent.futures.*
counterparts. There's no point for these exceptions to share the
inheritance chain.
In 3.9 we'll focus on implementing supervisors and cancel scopes,
which should allow better handling of all exceptions, including
SystemExit and KeyboardInterrupt
|
|
|
|
|
| |
This makes it easy to play with asyncio APIs with simply
using async/await in the REPL.
|
|
|
|
|
|
|
|
| |
.. And update some deprecation warnings with version numbers.
https://bugs.python.org/issue36932
|
|
|
|
|
|
|
|
| |
(GH-11553)
This slightly expands an existing test case `test_popen_error` to trigger a `ResourceWarning` and fixes it.
https://bugs.python.org/issue35721
|
|
|
|
|
|
|
|
| |
This PR proposes a solution to [bpo-35545](https://bugs.python.org/issue35545) by adding an optional `flowinfo` and `scopeid` to `asyncio.base_events._ipaddr_info` to carry the full address information into `_ipaddr_info` and avoid discarding IPv6 specific information.
Changelog entry & regression tests to come.
https://bugs.python.org/issue35545
|
|
|
|
|
|
| |
The second attempt. Now deprecate `@coroutine` only, keep `yield from fut` as is.
https://bugs.python.org/issue36921
|
|
|
|
|
|
| |
No NEWs is needed since the problem was introduced on master only and never released.
https://bugs.python.org/issue35589
|
| |
|
| |
|
|
|
|
| |
instead (#13099)
|
|
|
|
|
| |
(GH-13098)
https://bugs.python.org/issue36801
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(GH-10340)
When the future returned by shield is cancelled, its completion callback of the
inner future is not removed. This makes the callback list of inner inner future
grow each time a shield is created and cancelled.
This change unregisters the callback from the inner future when the outer
future is cancelled.
https://bugs.python.org/issue35125
|
|
|
|
|
|
|
|
|
|
|
|
| |
*Moved from python/asyncio#493.*
This PR fixes issue python/asyncio#480, as explained in [this comment](https://github.com/python/asyncio/issues/480#issuecomment-278703828).
The `_SelectorDatagramTransport.sendto` method has to be modified ~~so `_sock.sendto` is used in all cases (because it is tricky to reliably tell if the socket is connected or not). Could that be an issue for connected sockets?~~ *EDIT* ... so `_sock.send` is used only if `_sock` is connected.
It also protects `socket.getsockname` against `OSError` in `_SelectorTransport`. This might happen on Windows if the socket is not connected (e.g. for UDP broadcasting).
https://bugs.python.org/issue31922
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Added two keyword arguments, `delay` and `interleave`, to
`BaseEventLoop.create_connection`. Happy eyeballs is activated if
`delay` is specified.
We now have documentation for the new arguments. `staggered_race()` is in its own module, but not exported to the main asyncio package.
https://bugs.python.org/issue33530
|
| |
|
|
|
|
|
|
| |
Call remove_done_callback() in finally block.
https://bugs.python.org/issue36613
|
|
|
| |
https://bugs.python.org/issue34139
|
|
|
| |
`Task.current_task()` and `Task.all_tasks()` will be removed in 3.9.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix handshake timeout leak in asyncio/sslproto
Refs MagicStack/uvloop#222
* Break circular ref _SSLPipe <-> SSLProtocol
* bpo-34745: Fix asyncio ssl memory leak
* Break circular ref SSLProtocol <-> UserProtocol
* Add NEWS entry
|
| |
|
|
|
|
|
|
| |
asyncio.ProactorEventLoop now catchs and logs send errors when the
self-pipe is full: BaseProactorEventLoop._write_to_self() now catchs
and logs OSError exceptions, as done by
BaseSelectorEventLoop._write_to_self().
|
|
|
|
| |
Add repr(self) to the log to display the number of pending overlapped
in the log.
|
|
|
|
|
| |
IocpProactor.close() now uses time to decide when to log: wait 1
second before the first log, then log every second. Log also the
number of seconds since close() was called.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* asyncio: __del__() keep reference to warnings.warn
The __del__() methods of asyncio classes now keep a strong reference
to the warnings.warn() to be able to display the ResourceWarning
warning in more cases. Ensure that the function remains available if
instances are destroyed late during Python shutdown (while module
symbols are cleared).
* Rename warn parameter to _warn
"_warn" name is a hint that it's not the regular warnings.warn()
function.
|
|
|
|
|
|
| |
* _wait_for_handle(), _register() and _unregister() methods of
IocpProactor now raise an exception if closed
* Add "closed" to IocpProactor.__repr__()
* Simplify IocpProactor.close()
|
|
|
|
|
|
|
| |
bpo-32622, bpo-35682: Fix asyncio.ProactorEventLoop.sendfile(): don't
attempt to set the result of an internal future if it's already done.
Fix asyncio _ProactorBasePipeTransport._force_close(): don't set the
result of _empty_waiter if it's already done.
|
| |
|
| |
|
|
|
|
|
|
| |
* bpo-35394: Add empty slots to abstract asyncio protocols
* Add missing test file
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The call to `_untrack_reader` is performed too soon, causing the protocol
to forget about the reader before `connection_lost` can run and feed the
EOF to the reader. See bpo-35065.
|
|
|
| |
https://bugs.python.org/issue34970
|
| |
|
|
|
|
|
|
|
|
|
|
| |
(GH-9641)
The waiting is pretty normal for any asyncio program, logging its time just adds
a noise to logs without any useful information provided.
https://bugs.python.org/issue34849
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Insert the warn in the asyncio.sleep when the loop argument is used
* Insert the warn in the asyncio.wait and asyncio.wait_for when the loop argument is used
* Better format of the code
* Add news file
* change calls for get_event_loop() to calls for get_running_loop()
* Change message to be more clear in News
* Improve the comments in test_tasks
|