Terry Jan Reedy [Tue, 1 Jul 2014 03:52:20 +0000 (23:52 -0400)]
Issue #18592: Refactor 2 SearchDialogBase.create_(option/other)_buttons methods
to remove duplication and return info for tests. Rewrite corresponding tests.
Test_create_option_buttons was not testing anything because of buggy
comparisons. Use Python subscripting to get widget options.
Victor Stinner [Mon, 30 Jun 2014 12:51:24 +0000 (14:51 +0200)]
(Merge 3.4) Issue #21163: BaseEventLoop.run_until_complete() and
test_utils.run_briefly() don't log the "destroy pending task" message anymore.
The log is redundant for run_until_complete() and useless in run_briefly().
Victor Stinner [Mon, 30 Jun 2014 12:51:04 +0000 (14:51 +0200)]
Issue #21163: BaseEventLoop.run_until_complete() and test_utils.run_briefly()
don't log the "destroy pending task" message anymore. The log is redundant for
run_until_complete() and useless in run_briefly().
Victor Stinner [Mon, 30 Jun 2014 12:39:47 +0000 (14:39 +0200)]
asyncio: sync with Tulip
- Sort imports
- Simplify/optimize iscoroutine(). Inline inspect.isgenerator(obj): replace it
with isinstance(obj, types.GeneratorType)
- CoroWrapper: check at runtime if Python has the yield-from bug #21209. If
Python has the bug, check if CoroWrapper.send() was called by yield-from to
decide if parameters must be unpacked or not.
- Fix "Task was destroyed but it is pending!" warning in
test_task_source_traceback()
Victor Stinner [Mon, 30 Jun 2014 12:39:11 +0000 (14:39 +0200)]
asyncio: sync with Tulip
- Sort imports
- Simplify/optimize iscoroutine(). Inline inspect.isgenerator(obj): replace it
with isinstance(obj, types.GeneratorType)
- CoroWrapper: check at runtime if Python has the yield-from bug #21209. If
Python has the bug, check if CoroWrapper.send() was called by yield-from to
decide if parameters must be unpacked or not.
- Fix "Task was destroyed but it is pending!" warning in
test_task_source_traceback()
Victor Stinner [Fri, 27 Jun 2014 21:57:19 +0000 (23:57 +0200)]
(Merge 3.4) Issue #11453: asyncore: emit a ResourceWarning when an unclosed
file_wrapper object is destroyed. The destructor now closes the file if needed.
The close() method can now be called twice: the second call does nothing.
Victor Stinner [Fri, 27 Jun 2014 21:52:03 +0000 (23:52 +0200)]
Issue #11453: asyncore: emit a ResourceWarning when an unclosed file_wrapper
object is destroyed. The destructor now closes the file if needed. The close()
method can now be called twice: the second call does nothing.
Victor Stinner [Fri, 27 Jun 2014 11:55:28 +0000 (13:55 +0200)]
(Merge 3.4) asyncio, Tulip issue 137: In debug mode, save traceback where
Future, Task and Handle objects are created. Pass the traceback to
call_exception_handler() in the 'source_traceback' key.
The traceback is truncated to hide internal calls in asyncio, show only the
traceback from user code.
Add tests for the new source_traceback, and a test for the 'Future/Task
exception was never retrieved' log.
Victor Stinner [Fri, 27 Jun 2014 11:52:20 +0000 (13:52 +0200)]
asyncio, Tulip issue 137: In debug mode, save traceback where Future, Task and
Handle objects are created. Pass the traceback to call_exception_handler() in
the 'source_traceback' key.
The traceback is truncated to hide internal calls in asyncio, show only the
traceback from user code.
Add tests for the new source_traceback, and a test for the 'Future/Task
exception was never retrieved' log.
Victor Stinner [Fri, 27 Jun 2014 10:29:30 +0000 (12:29 +0200)]
(Merge 3.4) asyncio, Tulip issue 137: In debug mode, add the traceback where
the coroutine object was created to the "coroutine ... was never yield from"
log
Victor Stinner [Wed, 25 Jun 2014 21:33:02 +0000 (23:33 +0200)]
(Merge 3.4) asyncio: sync with Tulip
- Python issue 21163: Fix more "Task was destroyed but it is pending!" logs in
tests
- Add test to check that run_until_complete() checks the loop of the future
Victor Stinner [Wed, 25 Jun 2014 21:32:25 +0000 (23:32 +0200)]
asyncio: sync with Tulip
- Python issue 21163: Fix more "Task was destroyed but it is pending!" logs in
tests
- Add test to check that run_until_complete() checks the loop of the future