- 23 Jan, 2015 1 commit
-
-
Gregory P. Smith authored
mode. Explicitly remove the PYTHONFAULTHANDLER environment variable before launching a child interpreter when its presence would impact the test (the reason -E was being used in the first place). This enables running the test in an environment where other Python environment variables must be set in order for things to run (such as using PYTHONHOME to tell an embedded interpreter where it should think it lives).
-
- 22 Jan, 2015 6 commits
-
-
Victor Stinner authored
Overlapped.ConnectNamedPipe() now returns a boolean: True if the pipe is connected (if ConnectNamedPipe() failed with ERROR_PIPE_CONNECTED), False if the connection is in progress. This change removes multiple hacks in IocpProactor.
-
Gregory P. Smith authored
-
Victor Stinner authored
Add _overlapped.ConnectPipe() which tries to connect to the pipe for asynchronous I/O (overlapped): call CreateFile() in a loop until it doesn't fail with ERROR_PIPE_BUSY. Use an increasing delay between 1 ms and 100 ms. Remove Overlapped.WaitNamedPipeAndConnect() which is no more used.
-
Victor Stinner authored
cancelled
-
Victor Stinner authored
-
Victor Stinner authored
-
- 21 Jan, 2015 6 commits
-
-
Victor Stinner authored
_WaitCancelFuture futures
-
Victor Stinner authored
only Exception
-
Victor Stinner authored
This change fixes a race conditon related to _WaitHandleFuture.cancel() leading to Python crash or "GetQueuedCompletionStatus() returned an unexpected event" logs. Before, the overlapped object was destroyed too early, it was possible that the wait completed whereas the overlapped object was already destroyed. Sometimes, a different overlapped was allocated at the same address, leading to unexpected completition. _WaitHandleFuture.cancel() now waits until the wait is cancelled to clear its reference to the overlapped object. To wait until the cancellation is done, UnregisterWaitEx() is used with an event instead of UnregisterWait(). To wait for this event, a new _WaitCancelFuture class was added. It's a simplified version of _WaitCancelFuture. For example, its cancel() method calls UnregisterWait(), not UnregisterWaitEx(). _WaitCancelFuture should not be cancelled. The overlapped object is kept alive in _WaitHandleFuture until the wait is unregistered. Other changes: * Add _overlapped.UnregisterWaitEx() * Remove fast-path in IocpProactor.wait_for_handle() to immediatly set the result if the wait already completed. I'm not sure that it's safe to call immediatly UnregisterWaitEx() before the completion was signaled. * Add IocpProactor._unregistered() to forget an overlapped which may never be signaled, but may be signaled for the next loop iteration. It avoids to block forever IocpProactor.close() if a wait was cancelled, and it may also avoid some "... unexpected event ..." warnings.
-
Victor Stinner authored
tests: Remove unused function; inline another function
-
Victor Stinner authored
* Handle correctly CancelledError: just exit * On error, log the exception and exit Don't try to close the event loop, it is probably running and so it cannot be closed.
-
Gregory P. Smith authored
Python subprocess failure assertion error messages for easier debugging. Adds a unittest for test.script_helper to confirm that this code works as it is otherwise uncovered by an already passing test suite that uses it. :)
-
- 20 Jan, 2015 2 commits
-
-
Zachary Ware authored
-
Berker Peksag authored
Patch by Mike Short.
-
- 18 Jan, 2015 6 commits
-
-
Antoine Pitrou authored
-
Serhiy Storchaka authored
-
Serhiy Storchaka authored
-
Ned Deily authored
Patch by Al Sweigart.
-
Ned Deily authored
-
Ned Deily authored
getaddrinfo("localhost") can fail depending on the name server configuration, use "127.0.0.0" instead.
-
- 17 Jan, 2015 2 commits
-
-
Zachary Ware authored
Only happened with oddly capitalized debug executables on Windows. Patch by Claudiu Popa.
-
Benjamin Peterson authored
Patch by Jon Dufresne.
-
- 15 Jan, 2015 17 commits
-
-
Victor Stinner authored
Override the connect_read_pipe() method of the loop to mock immediatly pause_reading() and resume_reading() methods. The test failed randomly on FreeBSD 9 buildbot and on Windows using trollius.
-
Victor Stinner authored
StreamWriter: close() now clears the reference to the transport StreamWriter now raises an exception if it is closed: write(), writelines(), write_eof(), can_write_eof(), get_extra_info(), drain().
-
Steve Dower authored
Closes #23160: Respect the environment variable SVNROOT in external-common.bat (patch by anselm.kruis)
-
Victor Stinner authored
-
Victor Stinner authored
* Use test_utils.run_briefly() to execute pending calls to really close transports * sslproto: mock also _SSLPipe.shutdown(), it's need to close the transport * pipe test: the test doesn't close explicitly the PipeHandle, so ignore the warning instead * test_popen: use the context manager ("with p:") to explicitly close pipes
-
Victor Stinner authored
-
Victor Stinner authored
Set the _read_fut attribute to None after cancelling it. This change should fix a race condition with _ProactorWritePipeTransport._pipe_closed().
-
Victor Stinner authored
Check if the _sock attribute is None to check if the transport is closed.
-
Victor Stinner authored
-
Victor Stinner authored
-
Victor Stinner authored
Do nothing if the transport is already closed. Before it was not possible to close the transport twice.
-
Victor Stinner authored
-
Victor Stinner authored
transport at subprocess exit. Clear also its reference to the transport.
-
Victor Stinner authored
-
Victor Stinner authored
Don't call immediatly self._process_write_backlog() but schedule the call using call_soon(). _on_handshake_complete() can be called indirectly from _process_write_backlog(), and _process_write_backlog() is not reentrant.
-
Victor Stinner authored
StreamWriter now raises an exception if it is closed: write(), writelines(), write_eof(), can_write_eof(), get_extra_info(), drain().
-
Georg Brandl authored
-