aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/Lib/asyncio/selector_events.py
Commit message (Collapse)AuthorAge
...
* bpo-32356: idempotent pause_/resume_reading; new is_reading method. (#4914)Yury Selivanov2017-12-18
|
* bpo-27456: Ensure TCP_NODELAY is set on linux (#4231)Yury Selivanov2017-12-15
|
* bpo-32327: Convert asyncio functions documented as coroutines to coroutines. ↵Yury Selivanov2017-12-14
| | | | (#4872)
* bpo-32262: Fix codestyle; use f-strings formatting where necessary. (#4775)Yury Selivanov2017-12-10
|
* bpo-32193: Convert asyncio to async/await usage (#4753)Andrew Svetlov2017-12-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Convert asyncio/tasks.py to async/await * Convert asyncio/queues.py to async/await * Convert asyncio/test_utils.py to async/await * Convert asyncio/base_subprocess.py to async/await * Convert asyncio/subprocess.py to async/await * Convert asyncio/streams.py to async/await * Fix comments * Convert asyncio/locks.py to async/await * Convert asyncio.sleep to async def * Add a comment * Add missing news * Convert stubs from AbstrctEventLoop to async functions * Convert subprocess_shell/subprocess_exec * Convert connect_read_pipe/connect_write_pip to async/await syntax * Convert create_datagram_endpoint * Convert create_unix_server/create_unix_connection * Get rid of old style coroutines in unix_events.py * Convert selector_events.py to async/await * Convert wait_closed and create_connection * Drop redundant line * Convert base_events.py * Code cleanup * Drop redundant comments * Fix indentation * Add explicit tests for compatibility between old and new coroutines * Convert windows event loop to use async/await * Fix double awaiting of async function * Convert asyncio/locks.py * Improve docstring * Convert tests to async/await * Convert more tests * Convert more tests * Convert more tests * Convert tests * Improve test
* bpo-32154: Remove asyncio.selectors (#4605)Victor Stinner2017-11-28
| | | | | | | | | | | | * Remove asyncio.selectors and asyncio._overlapped symbols from the namespace of the asyncio module * Replace "from asyncio import selectors" with "import selectors" * Replace "from asyncio import _overlapped" with "import _overlapped" asyncio.selectors was added to support Python 3.3, which doesn't have selectors in its standard library, and Python 3.4 in the same code base. Same rationale for asyncio._overlapped. Python 3.3 reached its end of life, and asyncio is no more maintained as a third party module on PyPI.
* asyncio: use directly socket.socketpair() (#4597)Victor Stinner2017-11-28
| | | | | Since Python 3.5, socket.socketpair() is also available on Windows, and so can be used directly, rather than using asyncio.windows_utils.socketpair().
* bpo-32069: Drop legacy SSL transport (#4451)Andrew Svetlov2017-11-18
| | | | | | | | | | * Drop legacy SSL transport * Drop unused import * Fix Windows tests * Drop never executed on Python 3.4+ code
* bpo-32015: Asyncio looping during simultaneously socket read/write an… (#4386)Andrey Egorov2017-11-14
| | | | | | | | | | | | * bpo-32015: Asyncio cycling during simultaneously socket read/write and reconnection * Tests fix * Tests fix * News add * Add new unit tests
* bpo-28369: Enhance transport socket check in add_reader/writer (#4365)Yury Selivanov2017-11-13
|
* bpo-31819: Add AbstractEventLoop.sock_recv_into() (#4051)Antoine Pitrou2017-10-19
| | | | | | | | * bpo-31819: Add AbstractEventLoop.sock_recv_into() * Add NEWS * Add doc
* bpo-29617: Remove Python 3.3 support from asyncio (GH-232)INADA Naoki2017-04-25
|
* Merge 3.5 (issue #28369)Yury Selivanov2016-10-05
|\
| * Issue #28369: Raise an error when transport's FD is used with add_readerYury Selivanov2016-10-05
| |
* | Merge 3.5 (issue #28176)Yury Selivanov2016-09-15
|\|
| * Issue #28176: Fix callbacks race in asyncio.SelectorLoop.sock_connect.Yury Selivanov2016-09-15
| |
* | Merge 3.5 (issue #27906)Yury Selivanov2016-09-15
|\|
| * Issue #27906: Fix socket accept exhaustion during high TCP traffic.Yury Selivanov2016-09-15
| | | | | | | | Patch by Kevin Conway.
* | Merge 3.5 (issue #27456)Yury Selivanov2016-09-11
|\|
| * Issue #27456: asyncio: Set TCP_NODELAY by default.Yury Selivanov2016-09-11
| |
* | Merge 3.5 (asyncio)Yury Selivanov2016-09-11
|\|
| * asyncio: Add set_protocol / get_protocol methods to TransportsYury Selivanov2016-09-11
| |
* | Merge 3.5 (asyncio)Yury Selivanov2016-06-28
|\|
| * asyncio: Use socket specs for getaddrinfo() in sock_connect()Yury Selivanov2016-06-28
| | | | | | | | Patch by Martin Richard. GH PR #365.
* | Merge 3.5 (issue #27223)Yury Selivanov2016-06-11
|\|
| * Issue #27223: aio: Fix _read_ready and _write_ready to respect _conn_lost.Yury Selivanov2016-06-11
| | | | | | | | Patch by Łukasz Langa.
* | Merge 3.5 (issue #27136, asyncio)Yury Selivanov2016-06-08
|\|
| * Issue #27136: Fix DNS static resolution; don't use it in getaddrinfoYury Selivanov2016-06-08
| | | | | | | | Patch by A. Jesse Jiryu Davis
* | Merge 3.5 (Issue #27041)Yury Selivanov2016-05-16
|\|
| * Issue #27041: asyncio: Add loop.create_future methodYury Selivanov2016-05-16
| |
* | Issue #26778: Fixed "a/an/and" typos in code comment, documentation and errorSerhiy Storchaka2016-04-17
|\| | | | | | | messages.
| * Issue #26778: Fixed "a/an/and" typos in code comment and documentation.Serhiy Storchaka2016-04-17
| |
* | Merge 3.5 (asyncio)Victor Stinner2016-04-01
|\|
| * asyncio: Don't log ConnectionAbortedErrorVictor Stinner2016-04-01
| | | | | | | | | | Issue #26509: In fatal error handlers, don't log ConnectionAbortedError which occur on Windows.
* | Add a source parameter to warnings.warn()Victor Stinner2016-03-23
|/ | | | | | | | Issue #26604: * Add a new optional source parameter to _warnings.warn() and warnings.warn() * Modify asyncore, asyncio and _pyio modules to set the source parameter when logging a ResourceWarning warning
* Fix error message in asyncio.selector_events.Victor Stinner2016-02-01
| | | | Patch written by Carlo Beccarini <hackdiablo.cb@gmail.com>.
* asyncio: Skip getaddrinfo if host is already resolved.Yury Selivanov2015-12-16
| | | | | | | | | | | | | getaddrinfo takes an exclusive lock on some platforms, causing clients to queue up waiting for the lock if many names are being resolved concurrently. Users may want to handle name resolution in their own code, for the sake of caching, using an alternate resolver, or to measure DNS duration separately from connection duration. Skip getaddrinfo if the "host" passed into create_connection is already resolved. See https://github.com/python/asyncio/pull/302 for details. Patch by A. Jesse Jiryu Davis.
* asyncio: Cleanup Future APIYury Selivanov2015-11-17
| | | | See https://github.com/python/asyncio/pull/292 for details.
* asyncio: Add Transport.is_closing()Yury Selivanov2015-11-16
| | | | See https://github.com/python/asyncio/pull/291 for details.
* Issue #25114, asyncio: add ssl_object extra info to SSL transportsVictor Stinner2015-09-21
| | | | | | This info is required on Python 3.5 and newer to get specific information on the SSL object, like getting the binary peer certificate (instead of getting it as text).
* asyncio: Sync with upstream (compat module)Yury Selivanov2015-08-04
|
* Issue #23879, asyncio: SelectorEventLoop.sock_connect() must not call connect()Victor Stinner2015-04-07
| | | | | | | | again if the first call to connect() raises an InterruptedError. When the C function connect() fails with EINTR, the connection runs in background. We have to wait until the socket becomes writable to be notified when the connection succeed or fails.
* asyncio: Fix _SelectorTransport.__repr__() if the event loop is closedVictor Stinner2015-03-27
|
* asyncio: Only call _check_resolved_address() in debug modeVictor Stinner2015-02-04
| | | | | | | | | | | | | | | | * _check_resolved_address() is implemented with getaddrinfo() which is slow * If available, use socket.inet_pton() instead of socket.getaddrinfo(), because it is much faster Microbenchmark (timeit) on Fedora 21 (Python 3.4, Linux 3.17, glibc 2.20) to validate the IPV4 address "127.0.0.1" or the IPv6 address "::1": * getaddrinfo() 10.4 usec per loop * inet_pton(): 0.285 usec per loop On glibc older than 2.14, getaddrinfo() always requests the list of all local IP addresses to the kernel (using a NETLINK socket). getaddrinfo() has other known issues, it's better to avoid it when it is possible.
* asyncio: BaseSelectorEventLoop uses directly the private _debug attributeVictor Stinner2015-02-04
| | | | | Just try to be consistent: _debug was already used in some places, and always used in BaseProactorEventLoop.
* Issue #23243, asyncio: Emit a ResourceWarning when an event loop or a transportVictor Stinner2015-01-29
| | | | is not explicitly closed. Close also explicitly transports in test_sslproto.
* asyncio: sync with TulipVictor Stinner2015-01-29
| | | | | | | | | * Cleanup gather(): use cancelled() method instead of using private Future attribute * Fix _UnixReadPipeTransport and _UnixWritePipeTransport. Only start reading when connection_made() has been called. * Issue #23333: Fix BaseSelectorEventLoop._accept_connection(). Close the transport on error. In debug mode, log errors using call_exception_handler()
* asyncio: sync with TulipVictor Stinner2015-01-29
| | | | | | | | | | * _SelectorTransport constructor: extra parameter is now optional * Fix _SelectorDatagramTransport constructor. Only start reading after connection_made() has been called. * Fix _SelectorSslTransport.close(). Don't call protocol.connection_lost() if protocol.connection_made() was not called yet: if the SSL handshake failed or is still in progress. The close() method can be called if the creation of the connection is cancelled, by a timeout for example.
* asyncio: Fix _SelectorSocketTransport constructorVictor Stinner2015-01-29
| | | | | Only start reading when connection_made() has been called: protocol.data_received() must not be called before protocol.connection_made().
* asyncio: SSL transports now clear their reference to the waiterVictor Stinner2015-01-29
| | | | | | | * Rephrase also the comment explaining why the waiter is not awaken immediatly. * SSLProtocol.eof_received() doesn't instanciate ConnectionResetError exception directly, it will be done by Future.set_exception(). The exception is not used if the waiter was cancelled or if there is no waiter.