- 29 Jul, 2014 6 commits
-
-
Victor Stinner authored
* _WaitHandleFuture.cancel() now notify IocpProactor through the overlapped object that the wait was cancelled. * Optimize IocpProactor.wait_for_handle() gets the result if the wait is signaled immediatly. * Enhance representation of Future and Future subclasses - Add "created at filename:lineno" in the representation - Add Future._repr_info() method which can be more easily overriden than Future.__repr__(). It should now be more easy to enhance Future representation without having to modify each subclass. For example, _OverlappedFuture and _WaitHandleFuture get the new "created at" information. - Use reprlib to format Future result, and function arguments when formatting a callback, to limit the length of the representation. * Fix repr(_WaitHandleFuture) * _WaitHandleFuture and _OverlappedFuture: hide frames of internal calls in the source traceback. * Cleanup ProactorIocp._poll(): set the timeout to 0 after the first call to GetQueuedCompletionStatus() * test_locks: close the temporary event loop and check the condition lock * Remove workaround in test_futures, no more needed
-
Victor Stinner authored
* _WaitHandleFuture.cancel() now notify IocpProactor through the overlapped object that the wait was cancelled. * Optimize IocpProactor.wait_for_handle() gets the result if the wait is signaled immediatly. * Enhance representation of Future and Future subclasses - Add "created at filename:lineno" in the representation - Add Future._repr_info() method which can be more easily overriden than Future.__repr__(). It should now be more easy to enhance Future representation without having to modify each subclass. For example, _OverlappedFuture and _WaitHandleFuture get the new "created at" information. - Use reprlib to format Future result, and function arguments when formatting a callback, to limit the length of the representation. * Fix repr(_WaitHandleFuture) * _WaitHandleFuture and _OverlappedFuture: hide frames of internal calls in the source traceback. * Cleanup ProactorIocp._poll(): set the timeout to 0 after the first call to GetQueuedCompletionStatus() * test_locks: close the temporary event loop and check the condition lock * Remove workaround in test_futures, no more needed
-
Terry Jan Reedy authored
-
Terry Jan Reedy authored
-
Terry Jan Reedy authored
-
Terry Jan Reedy authored
Make turtledemo start as active on Mac even when run with subprocess. Patch by Ramchandra Apt, Lita Cho, and Ned Daily.
-
- 28 Jul, 2014 10 commits
-
-
Victor Stinner authored
-
Victor Stinner authored
-
Victor Stinner authored
-
Victor Stinner authored
-
Victor Stinner authored
support.rmtree() instead of deltree().
-
Victor Stinner authored
deltree().
-
Richard Oudkerk authored
-
Victor Stinner authored
using pythonw.exe instead of python.exe
-
Richard Oudkerk authored
are not available. Patch by Arfrever Frehtes Taifersar Arahesis.
-
Victor Stinner authored
pythonw.exe instead of python.exe
-
- 27 Jul, 2014 10 commits
-
-
Victor Stinner authored
the overlapped in the _cache dictionary, even if we already got the result. We need to keep a reference to the overlapped object, otherwise the memory may be reused and GetQueuedCompletionStatus() may use random bytes and behaves badly. There is still a hack for ConnectNamedPipe(): the overlapped object is not register into _cache if the overlapped object completed directly. Log also an error in debug mode in ProactorIocp._loop() if we get an unexpected event. Add a protection in ProactorIocp.close() to avoid blocking, even if it should not happen. I still don't understand exactly why some the completion of some overlapped objects are not notified.
-
Victor Stinner authored
in the _cache dictionary, even if we already got the result. We need to keep a reference to the overlapped object, otherwise the memory may be reused and GetQueuedCompletionStatus() may use random bytes and behaves badly. There is still a hack for ConnectNamedPipe(): the overlapped object is not register into _cache if the overlapped object completed directly. Log also an error in debug mode in ProactorIocp._loop() if we get an unexpected event. Add a protection in ProactorIocp.close() to avoid blocking, even if it should not happen. I still don't understand exactly why some the completion of some overlapped objects are not notified.
-
Berker Peksag authored
Patch by Martin Matusiak.
-
Martin v. Löwis authored
-
Martin v. Löwis authored
Patch by Tal Einat.
-
Larry Hastings authored
that we are scanning for the output marker. If we don't find it, we will scan them again, so it sees them twice, and it can get confused (like thinking we're still in a comment).
-
Victor Stinner authored
-
Martin v. Löwis authored
Patch by Vajrasky Kok.
-
Terry Jan Reedy authored
-
Terry Jan Reedy authored
-
- 26 Jul, 2014 12 commits
-
-
Terry Jan Reedy authored
-
Terry Jan Reedy authored
2009-02-02 51562 (27c589f09a21) merged Mac support revisions into 3.0. 2009-03-04 52014 (dc3d24824b60) merged slightly improved version into 2.7. Change 3.4+ to match the later 2.7 patch. Buttons tested manually.
-
Andrew Svetlov authored
-
Andrew Svetlov authored
-
Antoine Pitrou authored
-
Antoine Pitrou authored
-
Andrew Svetlov authored
-
Andrew Svetlov authored
-
Martin v. Löwis authored
-
Martin v. Löwis authored
-
Victor Stinner authored
OverflowError on closed socket. repr(socket.socket) already works fine.
-
Victor Stinner authored
on closed socket. repr(socket.socket) already works fine.
-
- 25 Jul, 2014 2 commits
-
-
Victor Stinner authored
reference to the overlapped object. IocpProactor._poll() now also ignores false alarms: GetQueuedCompletionStatus() returns the overlapped but it is still pending.
-
Victor Stinner authored
overlapped object. IocpProactor._poll() now also ignores false alarms: GetQueuedCompletionStatus() returns the overlapped but it is still pending.
-