Commit graph

435 commits

Author SHA1 Message Date
Yury Selivanov
d6c6771fc9 Issue #28176: Fix callbacks race in asyncio.SelectorLoop.sock_connect. 2016-09-15 17:56:36 -04:00
Yury Selivanov
4c5bf3bc52 Issue #26909: Fix slow pipes IO in asyncio.
Patch by INADA Naoki.
2016-09-15 16:51:48 -04:00
Yury Selivanov
45dccdad93 Issue #26654: Inspect functools.partial in asyncio.Handle.__repr__.
Patch by iceboy.
2016-09-15 15:58:15 -04:00
Yury Selivanov
5587d7c071 Issue #28174: Handle when SO_REUSEPORT isn't properly supported (asyncio)
Patch by Seth Michael Larson.
2016-09-15 15:45:07 -04:00
Yury Selivanov
a1b0e7db73 Issue #27906: Fix socket accept exhaustion during high TCP traffic.
Patch by Kevin Conway.
2016-09-15 14:13:15 -04:00
Yury Selivanov
4357cf6202 Another asyncio sync. 2016-09-15 13:49:08 -04:00
Yury Selivanov
f6d991d885 asyncio: Sync with the upstream 2016-09-15 13:10:51 -04:00
Yury Selivanov
44c19eccf9 Issue #27456: asyncio: Set TCP_NODELAY by default. 2016-09-11 21:39:31 -04:00
Yury Selivanov
a05a6ef1ca asyncio: Add set_protocol / get_protocol methods to Transports 2016-09-11 21:11:02 -04:00
Guido van Rossum
7b3b3dc85d Merge asyncio upstream. 2016-09-09 14:26:31 -07:00
Guido van Rossum
1140a03426 Rename Future._blocking to _asyncio_future_blocking.
This is now an official "protected" API that can be used to write
classes that are duck-type-compatible with Future without subclassing
it.  (For that purpose I also changed isinstance(result, Future) to
check for this attribute instead.)

Hopefully Amber Brown can use this to make Twisted.Deferred compatible
with asyncio.Future.

Tests and docs are TBD.
2016-09-09 12:54:54 -07:00
Martin Panter
0be894b2f6 Issue #27895: Spelling fixes (Contributed by Ville Skyttä). 2016-09-07 12:03:06 +00:00
Guido van Rossum
4786787c07 Fix ordering issues in UNIX read/write pipe transport constructors.
Upstream https://github.com/python/asyncio/pull/408 by Ron Frederick.
2016-08-31 09:42:38 -07:00
Guido van Rossum
8b7918a7e2 Don't select for read on character devices in _UnixWritePipeTransport.
Upstream https://github.com/python/asyncio/pull/374 by Ron Frederick.
2016-08-31 09:40:18 -07:00
Guido van Rossum
83f5a3846c In asyncio.locks.Lock.acquire(): Avoid deadlock when a cancelled future is in self._waiters. 2016-08-23 09:39:03 -07:00
Yury Selivanov
252e9ed974 Issue #27392: Add loop.connect_accepted_socket().
Patch by Jim Fulton.
2016-07-12 18:23:10 -04:00
Yury Selivanov
63bf487688 asyncio: Use socket specs for getaddrinfo() in sock_connect()
Patch by Martin Richard.  GH PR #365.
2016-06-28 11:00:22 -04:00
Yury Selivanov
77bc04a3bc asyncio: Fix NameError in sslproto _fatal_error()
Patch by Richard Walker.
2016-06-28 10:55:36 -04:00
Yury Selivanov
c92bf83a82 Issue #22970: asyncio: Fix inconsistency cancelling Condition.wait.
Patch by David Coles.
2016-06-11 12:00:07 -04:00
Yury Selivanov
ca2e0a48cf Issue #27223: aio: Fix _read_ready and _write_ready to respect _conn_lost.
Patch by Łukasz Langa.
2016-06-11 11:19:47 -04:00
Yury Selivanov
a6f6edbda8 Issue #27243: Fix __aiter__ protocol 2016-06-09 15:08:31 -04:00
Yury Selivanov
c1cf296de6 asyncio: Remove asyncio.timeout() context manager.
It will probably be added back in Python 3.6, once its compatibility
issues are resolved; see [1] for more details.

[1] https://mail.python.org/pipermail/async-sig/2016-June/000045.html
2016-06-08 13:57:03 -04:00
Yury Selivanov
f1c6fa9866 Issue #27136: Fix DNS static resolution; don't use it in getaddrinfo
Patch by A. Jesse Jiryu Davis
2016-06-08 12:33:31 -04:00
Martin Panter
3ee6270262 Fix typos in code comment and documentation 2016-06-04 04:57:19 +00:00
Yury Selivanov
a714616d36 asyncio: Fix getaddrinfo to accept service names (for port)
Patch by A. Jesse Jiryu Davis
2016-06-02 16:51:07 -04:00
Yury Selivanov
a8f895f051 asyncio: Support host=b'' for getaddrinfo 2016-06-02 16:43:52 -04:00
Martin Panter
46f50726a0 Issue #27076: Doc, comment and tests spelling fixes
Most fixes to Doc/ and Lib/ directories by Ville Skyttä.
2016-05-26 05:35:26 +00:00
Yury Selivanov
f0200e06f0 asyncio: Fix BytesWarning (use typed=True in lru_cache for _ipaddr_info) 2016-05-21 16:50:16 -04:00
Yury Selivanov
eaaaee8c56 asyncio: Fix getaddrinfo to accept None/str/bytes for 'port' arg
Patch by A. Jesse Jiryu Davis.
2016-05-20 17:44:19 -04:00
Yury Selivanov
3dc5129d4f asyncio: Fix an SSL warning in StreamReaderProtocol.eof_received 2016-05-20 11:31:40 -04:00
Victor Stinner
b0d43ce890 asyncio: fix ResourceWarning related to subprocesses
Issue #26741: asyncio: BaseSubprocessTransport._process_exited() now copies the
return code from the child watched to the returncode attribute of the Popen
object. On Python 3.6, it is required to avoid a ResourceWarning.
2016-05-20 13:05:48 +02:00
Yury Selivanov
b461791b91 asyncio/streams: Fix code style; delete LimitOverrunError.message attr 2016-05-16 16:32:38 -04:00
Yury Selivanov
7661db6228 Issue #27041: asyncio: Add loop.create_future method 2016-05-16 15:38:39 -04:00
Yury Selivanov
7ed7ce6ee7 Issue #27040: Add loop.get_exception_handler method 2016-05-16 15:20:38 -04:00
Yury Selivanov
5dc093336f asyncio: Fix unix pipe transport 'repr' methods
Patch by Vincent Michel.
See also https://github.com/python/asyncio/pull/326
2016-05-13 16:04:43 -04:00
Yury Selivanov
32dae3d50f asyncio: Break reference cycle in StreamReaderProtocol.connection_lost 2016-05-13 15:58:00 -04:00
Yury Selivanov
7657f6ba21 Issue #26848: Fix asyncio/subprocess.communicate() to handle empty input. 2016-05-13 15:35:28 -04:00
Serhiy Storchaka
6a7b3a77b4 Issue #26778: Fixed "a/an/and" typos in code comment and documentation. 2016-04-17 08:32:47 +03:00
Martin Panter
6245cb3c01 Correct “an” → “a” with “Unicode”, “user”, “UTF”, etc
This affects documentation, code comments, and a debugging messages.
2016-04-15 02:14:19 +00:00
Victor Stinner
c94a93aecb asyncio: Don't log ConnectionAbortedError
Issue #26509: In fatal error handlers, don't log ConnectionAbortedError which
occur on Windows.
2016-04-01 21:43:39 +02:00
Victor Stinner
2ba8ece5be asyncio: allow None as wait timeout
Fix GH#325: Allow to pass None as a timeout value to disable timeout logic.

Change written by Andrew Svetlov and merged by Guido van Rossum.
2016-04-01 21:39:09 +02:00
Yury Selivanov
e076ffb068 asyncio: Remove duplicate bind addresses in create_server.
Patch by Sebastien Bourdeauducq (issue #26338)
2016-03-02 11:17:01 -05:00
Yury Selivanov
1bd030788d asyncio: Prevent StopIteration from being thrown into a Future
Patch by Chris Angelico (issue #26221)
2016-03-02 11:03:28 -05:00
Yury Selivanov
dce63234c5 asyncio: Fix @coroutine to recognize CoroWrapper (issue #25647)
Patch by Vladimir Rutsky.
2016-03-02 10:49:16 -05:00
Martin Panter
c04fb56e36 Issue #26304: Change "allows to <verb>" to "allows <verb>ing" or similar
The original form is incorrect grammar and feels awkward, even though the
meaning is clear.
2016-02-10 05:44:01 +00:00
Victor Stinner
3e7230904e Fix error message in asyncio.selector_events.
Patch written by Carlo Beccarini <hackdiablo.cb@gmail.com>.
2016-02-01 12:46:38 +01:00
Yury Selivanov
d9d0e864b9 Issue #26050: Add asyncio.StreamReader.readuntil() method.
Patch by Марк Коренберг.
2016-01-11 12:28:19 -05:00
Andrew Svetlov
9d976fa75f Sync with asyncio 2016-01-11 12:25:23 +02:00
Andrew Svetlov
c07b16b40f Sync with asyncio repo 2016-01-11 08:42:49 +02:00
Yury Selivanov
d5c2a62100 asyncio: Skip getaddrinfo if host is already resolved.
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.
2015-12-16 19:31:17 -05:00