Victor Stinner
54c4b8e5c1
Closes #21595 : asyncio.BaseSelectorEventLoop._read_from_self() now reads all
...
available bytes from the "self pipe", not only a single byte. This change
reduces the risk of having the pipe full and so getting the innocuous
"BlockingIOError: [Errno 11] Resource temporarily unavailable" message.
2014-06-19 12:59:15 +02:00
Victor Stinner
c73701de72
asyncio: Refactor tests: add a base TestCase class
2014-06-18 01:36:32 +02:00
Victor Stinner
8d3e02ef5a
asyncio: Set __qualname__ attribute of CoroWrapper in @coroutine decorator on
...
Python 3.5
- Drop __slots__ optimization of CoroWrapper to be able to set the __qualname__
attribute.
- Add tests on __name__, __qualname__ and __module__ of a coroutine function
and coroutine object.
- Fix test_tasks when run in debug mode (PYTHONASYNCIODEBUG env var set) on
Python 3.3 or 3.4
2014-06-18 01:14:59 +02:00
Victor Stinner
66dc6b0f53
Issue #21723 : asyncio.Queue: support any type of number (ex: float) for the
...
maximum size. Patch written by Vajrasky Kok.
2014-06-17 23:36:21 +02:00
Victor Stinner
bc434e2052
asyncio: Task.__repr__() now also handles CoroWrapper
2014-06-17 00:26:36 +02:00
Victor Stinner
307bccc6ff
asyncio: Tulip issue 173: Enhance repr(Handle) and repr(Task)
...
repr(Handle) is shorter for function: "foo" instead of "<function foo at
0x...>". It now also includes the source of the callback, filename and line
number where it was defined, if available.
repr(Task) now also includes the current position in the code, filename and
line number, if available. If the coroutine (generator) is done, the line
number is omitted and "done" is added.
2014-06-12 18:39:26 +02:00
Victor Stinner
db74d982d4
Issue #21596 : asyncio.wait(): mention that the sequence of futures must not
...
be empty.
2014-06-10 11:16:05 +02:00
Victor Stinner
bb2fc5b2a5
Issue #21326 : Add a new is_closed() method to asyncio.BaseEventLoop
...
Add BaseEventLoop._closed attribute and use it to check if the event loop was
closed or not, instead of checking different attributes in each subclass of
BaseEventLoop.
run_forever() and run_until_complete() methods now raise a RuntimeError('Event loop is
closed') exception if the event loop was closed.
BaseProactorEventLoop.close() now also cancels "accept futures".
2014-06-10 10:23:10 +02:00
Victor Stinner
f9e49dd346
Tulip issue 83, Python issue #21252 : Fill some XXX docstrings in asyncio
2014-06-05 12:06:44 +02:00
Victor Stinner
a9fa2664ab
Issue #21119 : asyncio: Make sure that socketpair() close sockets on error
...
Close the listening socket if sock.bind() raises an exception.
2014-06-04 00:12:28 +02:00
Victor Stinner
223a624158
Issue #21119 : asyncio now closes sockets on errors
...
Fix ResourceWarning: create_connection(), create_datagram_endpoint() and
create_unix_server() methods of event loop now close the newly created socket
on error.
2014-06-04 00:11:52 +02:00
Victor Stinner
8d21357fb5
Issue #21601 : Document asyncio.Task.cancel(). Initial patch written by Vajrasky
...
Kok.
2014-06-02 23:06:46 +02:00
Victor Stinner
a5b257af22
Issue #21454 : Fix asyncio.BaseEventLoop.connect_read_pipe doc
...
The function sets the the pipe to non-blocking mode.
2014-05-29 00:14:03 +02:00
Andrew Svetlov
3207a03035
Fix for raising exception not derived from BaseException in _SelectorSslTransport.resume_reading
2014-05-27 21:24:43 +03:00
Guido van Rossum
bf88ffba5e
asyncio: Fix upstream issue 168: StreamReader.read(-1) from pipe may hang if data exceeds buffer limit.
2014-05-12 10:04:37 -07:00
Guido van Rossum
3d1bc608a8
asyncio: Upstream issue #167 : remove dead code, by Marc Schlaich.
2014-05-10 15:47:15 -07:00
Guido van Rossum
3d139d8ed6
asyncio: Fix the second half of issue #21447 : race in _write_to_self().
2014-05-06 14:42:40 -07:00
Guido van Rossum
94ba146d11
asyncio: Add __weakref__ slots to Handle and CoroWrapper. Upstream issue #166 .
2014-04-27 10:44:22 -07:00
Guido van Rossum
83c1ddda46
asyncio: Be careful accessing instance variables in __del__ ( closes #21340 ).
2014-04-27 10:33:58 -07:00
Guido van Rossum
0cbc76880f
asyncio: Add gi_{frame,running,code} properties to CoroWrapper (upstream #163 ).
2014-04-15 12:06:34 -07:00
Yury Selivanov
09cc169a03
asyncio.tasks: Make sure CoroWrapper.send proxies one argument correctly
...
Issue #21209 .
2014-04-15 12:01:16 -04:00
Yury Selivanov
f15f7484bb
asyncio.tasks: Fix CoroWrapper to workaround yield-from bug in CPython < 3.4.1
...
Closes issue #21209 .
2014-04-14 22:21:52 -04:00
Victor Stinner
1fd03a4a22
Issue #21155 : asyncio.EventLoop.create_unix_server() now raises a ValueError if
...
path and sock are specified at the same time.
2014-04-07 11:18:54 +02:00
Victor Stinner
4bd652a276
asyncio: Document Task.cancel() properly.
2014-04-07 11:18:06 +02:00
Victor Stinner
93569c2b3d
asyncio: Ensure call_soon(), call_later() and call_at() are invoked on current
...
loop in debug mode. Raise a RuntimeError if the event loop of the current
thread is different. The check should help to debug thread-safetly issue.
Patch written by David Foster.
2014-03-21 10:00:52 +01:00
Victor Stinner
e6a537976e
asyncio, Tulip issue 157: Improve test_events.py, avoid run_briefly() which is
...
not reliable
2014-03-06 01:00:36 +01:00
Victor Stinner
eeeebcd816
asyncio: Synchronize with Tulip
...
* Issue #159 : Fix windows_utils.socketpair()
- Use "127.0.0.1" (IPv4) or "::1" (IPv6) host instead of "localhost", because
"localhost" may be a different IP address
- Reject also invalid arguments: only AF_INET/AF_INET6 with SOCK_STREAM (and
proto=0) are supported
* Reject add/remove reader/writer when event loop is closed.
* Fix ResourceWarning warnings
2014-03-06 00:52:53 +01:00
Victor Stinner
d74ac82df9
asyncio, Tulip issue 158: Task._step() now also sets self to None if an
...
exception is raised. self is set to None to break a reference cycle.
2014-03-04 23:07:08 +01:00
Victor Stinner
c89c8a7be9
asyncio/windows_events.py: use more revelant names to overlapped callbacks
...
For example: "finish_recv", not just "finish".
2014-02-26 17:35:30 +01:00
Victor Stinner
f5e37037cc
asyncio: Fix pyflakes warnings: remove unused variables and imports
2014-02-26 11:07:42 +01:00
Victor Stinner
24ba203504
asyncio: Replace "unittest.mock" with "mock" in unit tests
...
Use "from unittest import mock". It should simplify my work to merge new tests
in Trollius, because Trollius uses "mock" backport for Python 2.
2014-02-26 10:25:02 +01:00
Victor Stinner
a90e8edaea
asyncio: _check_resolved_address() must also accept IPv6 without flow_info and
...
scope_id: (host, port).
2014-02-20 21:59:38 +01:00
Victor Stinner
013dece44d
asyncio: Fix _check_resolved_address() for IPv6 address
2014-02-20 16:43:09 +01:00
Victor Stinner
da492a8c39
asyncio: remove unused imports and unused variables noticed by pyflakes
2014-02-20 10:37:27 +01:00
Victor Stinner
2c7203c6f5
asyncio: Fix _ProactorWritePipeTransport._pipe_closed()
...
The "exc" variable was not defined, pass a BrokenPipeError exception instead.
2014-02-20 10:33:01 +01:00
Victor Stinner
cdb476bd43
asyncio.subprocess: Fix a race condition in communicate()
...
Use self._loop instead of self._transport._loop, because transport._loop is set
to None at process exit.
2014-02-20 10:12:59 +01:00
Victor Stinner
7ef60cd8c2
asyncio, Tulip issue #136 : Add get/set_debug() methods to BaseEventLoopTests.
...
Add also a PYTHONASYNCIODEBUG environment variable to debug coroutines since
Python startup, to be able to debug coroutines defined directly in the asyncio
module.
2014-02-19 23:15:02 +01:00
Yury Selivanov
2d01c0a080
asyncio: WriteTransport.set_write_buffer_size to call _maybe_pause_protocol
2014-02-19 11:10:52 -05:00
Yury Selivanov
b41a42e316
asyncio: pep8-ify the code.
2014-02-18 22:56:15 -05:00
Yury Selivanov
b0b0e628ee
asyncio: Fix spelling and typos.
...
Thanks to Vajrasky Kok for discovering some of them.
2014-02-18 22:27:48 -05:00
Victor Stinner
884e40b982
asyncio, Tulip issue 143: UNIX domain methods, fix ResourceWarning and
...
DeprecationWarning warnings. create_unix_server() closes the socket on any
error, not only on OSError.
2014-02-19 01:45:59 +01:00
Victor Stinner
065ca25aae
asyncio, Tulip issue 139: Improve error messages on "fatal errors"
...
Mention if the error was caused by a read or a write, and be more specific on
the object (ex: "pipe transport" instead of "transport").
2014-02-19 01:40:41 +01:00
Yury Selivanov
c098241342
asyncio.transports: Make _ProactorBasePipeTransport use _FlowControlMixin
2014-02-18 18:41:13 -05:00
Yury Selivanov
ff827f08ac
asyncio: New error handling API. Issue #20681 .
2014-02-18 18:02:19 -05:00
Guido van Rossum
59a5533028
asyncio: Make tests pass on Windows.
2014-02-18 10:24:30 -08:00
Yury Selivanov
88a5bf0b2e
asyncio: Add support for UNIX Domain Sockets.
2014-02-18 12:15:06 -05:00
Victor Stinner
28773465e6
ayncio, Tulip issue 129: BaseEventLoop.sock_connect() now raises an error if
...
the address is not resolved (hostname instead of an IP address) for AF_INET and
AF_INET6 address families.
2014-02-13 09:24:37 +01:00
Guido van Rossum
b58f053e48
asyncio: Change as_completed() to use a Queue, to avoid O(N**2) behavior. Fixes issue #20566 .
2014-02-12 17:58:19 -08:00
Yury Selivanov
ee6dc425c8
asyncio.events: Use __slots__ in Handle and TimerHandle
2014-02-12 17:01:52 -05:00
Victor Stinner
2371e25517
Issue #20505 : Remove debug code
2014-02-11 17:53:47 +01:00