Commit graph

35318 commits

Author SHA1 Message Date
Zachary Ware
baddc840d5 Merge with 3.4 2014-07-23 14:40:27 -05:00
Zachary Ware
88b2b45154 Issue #19493: Fix two uses of ctypes.test.requires (it's not a decorator)
and skip test_win32.FunctionCallTestCase.test_SEH when Python was compiled
in debug configuration or by a non-MSC compiler.
2014-07-23 14:39:50 -05:00
Serhiy Storchaka
e6d9805ec4 Issue #4350: Removed a number of out-of-dated and non-working for a long time
Tkinter methods.
2014-07-23 22:33:50 +03:00
Serhiy Storchaka
4d9e903f7e Merge heads 2014-07-23 22:13:09 +03:00
Serhiy Storchaka
efa9c805b1 Merge heads 2014-07-23 22:12:53 +03:00
Serhiy Storchaka
1ce2289342 Issue #6167: Backported tests for Scrollbar.activate() and Scrollbar.set()
from 6ae34a948cb4.
2014-07-23 22:08:45 +03:00
Terry Jan Reedy
22084fc8ba Merge with 3.4 2014-07-23 15:01:29 -04:00
Terry Jan Reedy
b03f0422c5 Issue #21597: Turtledemo text pane can now be widened to view or copy complete
lines or narrowed for small screens.
Issie #19132: Turtledemo buttons no longer disappear when window is shrun.
Patch mostly by Lita Cho (21597) using idea from patch by Jan Kanis (18132).
2014-07-23 15:01:12 -04:00
Serhiy Storchaka
320f339131 Issue #6167: Scrollbar.activate() now returns the name of active element if
the argument is not specified.  Scrollbar.set() now always accepts only 2
arguments.  Added tests for Scrollbar.activate() and Scrollbar.set().
2014-07-23 22:00:44 +03:00
Charles-François Natali
6e20460dc6 Issue #21566: Make use of socket.listen() default backlog. 2014-07-23 19:28:13 +01:00
Serhiy Storchaka
8518b79a8d Issue #15275: Clean up and speed up the ntpath module. 2014-07-23 20:43:13 +03:00
Zachary Ware
f886697659 Closes #22002: Merge with 3.4 2014-07-23 12:06:47 -05:00
Zachary Ware
f012ba42fe Issue #22002: Make full use of test discovery in test sub-packages.
Adds `load_package_tests` function to test.support, uses it in test_asyncio,
test_email, test_json, test_tools, test_importlib and all test_importlib
sub-packages to implement test discovery.
2014-07-23 12:00:29 -05:00
Victor Stinner
b848944d72 (Merge 3.4) asyncio: sync with Tulip
* Tulip issue 194: Don't use sys.getrefcount() in unit tests
* signal.set_wakeup_fd() can now raise an OSError on Python 3.5
2014-07-23 18:24:12 +02:00
Victor Stinner
c4c464911a asyncio: sync with Tulip
* Tulip issue 194: Don't use sys.getrefcount() in unit tests
* signal.set_wakeup_fd() can now raise an OSError on Python 3.5
2014-07-23 18:21:45 +02:00
Serhiy Storchaka
37f50e0c6b Issue #21888: plistlib's load() and loads() now work if the fmt parameter is
specified.
2014-07-23 18:50:19 +03:00
Serhiy Storchaka
8966759b03 Issue #21888: plistlib's load() and loads() now work if the fmt parameter is
specified.
2014-07-23 18:49:31 +03:00
Charles-François Natali
9d8118e5c5 Issue #21901: Cap the maximum number of file descriptors to use for the test. 2014-07-22 21:29:52 +01:00
Charles-François Natali
889d6463b3 Issue #21901: Cap the maximum number of file descriptors to use for the test. 2014-07-22 21:25:03 +01:00
Serhiy Storchaka
521e5860a5 Issue #22032: __qualname__ instead of __name__ is now always used to format
fully qualified class names of Python implemented classes.
2014-07-22 15:00:37 +03:00
Victor Stinner
c09e9752c6 (Merge 3.4) asyncio, tulip issue 193: Convert StreamWriter.drain() to a classic
coroutine

Replace also _make_drain_waiter() function with a classic _drain_helper()
coroutine.
2014-07-22 12:03:54 +02:00
Victor Stinner
31e7bfa6ba asyncio, tulip issue 193: Convert StreamWriter.drain() to a classic coroutine
Replace also _make_drain_waiter() function with a classic _drain_helper()
coroutine.
2014-07-22 12:03:40 +02:00
Serhiy Storchaka
0c937b3ed6 Issue #22031: Reprs now always use hexadecimal format with the "0x" prefix
when contain an id in form " at 0x...".
2014-07-22 12:14:52 +03:00
Serhiy Storchaka
fbc877b794 Fixed bugs in reprs of CookieJar and multiprocessing.dummy.Value. 2014-07-22 11:10:37 +03:00
Serhiy Storchaka
1392df96ef Fixed bugs in reprs of CookieJar and multiprocessing.dummy.Value. 2014-07-22 11:09:36 +03:00
Senthil Kumaran
284a4a1bb0 Merge 3.4
Fix localhost checking in FileHandler. Raised in #21970.
2014-07-22 00:16:18 -07:00
Senthil Kumaran
bc07ac5180 Fix localhost checking in FileHandler. Raised in #21970. 2014-07-22 00:15:20 -07:00
Antoine Pitrou
26408df88f Issue #21976: Fix test_ssl to accept LibreSSL version strings.
Thanks to William Orr.
2014-07-21 18:37:36 -04:00
Antoine Pitrou
dfab935c74 Issue #21976: Fix test_ssl to accept LibreSSL version strings.
Thanks to William Orr.
2014-07-21 18:35:01 -04:00
Victor Stinner
41323e7483 (Merge 3.4) Issue #19629: Add missing "import stat"
Sort also imports in support/__init__.py
2014-07-21 21:40:55 +02:00
Victor Stinner
47ae763d28 Issue #19629: Add missing "import stat"
Sort also imports in support/__init__.py
2014-07-21 21:40:19 +02:00
Victor Stinner
963b4bab52 Merge Python 3.4
* Issue #19811, #22022: test_pathlib uses support.rmtree() instead of
  shutil.rmtree() to remove the temporary directory.

* Issue #19629: Fix support.rmtree(), use os.lstat() to check if the file is a
  directory, not os.path.isdir()
2014-07-21 19:20:06 +02:00
Victor Stinner
ec86469ca3 Issue #19811, #22022: test_pathlib uses support.rmtree() instead of
shutil.rmtree() to remove the temporary directory.
2014-07-21 19:19:05 +02:00
Victor Stinner
67f8706521 Issue #19629: Fix support.rmtree(), use os.lstat() to check if the file is a
directory, not os.path.isdir()
2014-07-21 19:18:12 +02:00
Victor Stinner
a7d03d98c9 Issue #22018: Hum, set_wakeup_fd() still raises ValueError on Windows 2014-07-21 17:17:28 +02:00
Victor Stinner
0bffc94d57 Issue #22018: signal.set_wakeup_fd() now raises an OSError instead of a
ValueError on fstat() failure.
2014-07-21 16:28:54 +02:00
Victor Stinner
38d773bd10 (Merge 3.4) asyncio: Fix test_stdin_broken_pipe(), drain() is not a coroutine 2014-07-21 16:23:51 +02:00
Victor Stinner
0dee8ad579 asyncio: Fix test_stdin_broken_pipe(), drain() is not a coroutine 2014-07-21 16:23:33 +02:00
Victor Stinner
56e8c29a4e Issue #22018: Add _testcapi.raise_signal()
- Use _testcapi.raise_signal() in test_signal
- close also os.pipe() file descriptors in some test_signal tests where they
  were not closed properly
- Remove faulthandler._sigill() and faulthandler._sigbus(): reuse
  _testcapi.raise_signal() in test_faulthandler
2014-07-21 12:30:22 +02:00
Raymond Hettinger
569a7fa13a merge 2014-07-20 21:31:35 -07:00
Raymond Hettinger
854e76effa Issue #21868: Prevent turtle crash due to invalid undo buffer size. 2014-07-20 21:30:32 -07:00
Victor Stinner
457b9a689b (Merge 3.4) Fix asyncio.__all__: export also unix_events and windows_events
symbols

For example, on Windows, it was not possible to get ProactorEventLoop or
DefaultEventLoopPolicy using "from asyncio import *".
2014-07-18 12:47:14 +02:00
Victor Stinner
be0a2d767c Fix asyncio.__all__: export also unix_events and windows_events symbols
For example, on Windows, it was not possible to get ProactorEventLoop or
DefaultEventLoopPolicy using "from asyncio import *".
2014-07-18 12:44:25 +02:00
Victor Stinner
75dada6af3 (Merge 3.4) Issue #21247: Fix a race condition in test_send_signal() of asyncio
Add a basic synchronization mechanism to wait until the child process is ready
before sending it a signal.
2014-07-17 23:49:40 +02:00
Victor Stinner
98fa332e33 Issue #21247: Fix a race condition in test_send_signal() of asyncio
Add a basic synchronization mechanism to wait until the child process is ready
before sending it a signal.
2014-07-17 23:49:11 +02:00
Victor Stinner
2fa2c3dfc5 (Merge 3.4) Python issue #21645, Tulip issue 192: Rewrite signal handling
Since Python 3.3, the C signal handler writes the signal number into the wakeup
file descriptor and then schedules the Python call using Py_AddPendingCall().

asyncio uses the wakeup file descriptor to wake up the event loop, and relies
on Py_AddPendingCall() to schedule the final callback with call_soon().

If the C signal handler is called in a thread different than the thread of the
event loop, the loop is awaken but Py_AddPendingCall() was not called yet. In
this case, the event loop has nothing to do and go to sleep again.
Py_AddPendingCall() is called while the event loop is sleeping again and so the
final callback is not scheduled immediatly.

This patch changes how asyncio handles signals. Instead of relying on
Py_AddPendingCall() and the wakeup file descriptor, asyncio now only relies on
the wakeup file descriptor. asyncio reads signal numbers from the wakeup file
descriptor to call its signal handler.
2014-07-17 22:45:42 +02:00
Victor Stinner
fe5649c7b7 Python issue #21645, Tulip issue 192: Rewrite signal handling
Since Python 3.3, the C signal handler writes the signal number into the wakeup
file descriptor and then schedules the Python call using Py_AddPendingCall().

asyncio uses the wakeup file descriptor to wake up the event loop, and relies
on Py_AddPendingCall() to schedule the final callback with call_soon().

If the C signal handler is called in a thread different than the thread of the
event loop, the loop is awaken but Py_AddPendingCall() was not called yet. In
this case, the event loop has nothing to do and go to sleep again.
Py_AddPendingCall() is called while the event loop is sleeping again and so the
final callback is not scheduled immediatly.

This patch changes how asyncio handles signals. Instead of relying on
Py_AddPendingCall() and the wakeup file descriptor, asyncio now only relies on
the wakeup file descriptor. asyncio reads signal numbers from the wakeup file
descriptor to call its signal handler.
2014-07-17 22:43:40 +02:00
Victor Stinner
dc2539f957 (Merge 3.4) asyncio: Fix test_stdin_broken_pipe(), drain() can also raise
ConnectionResetError
2014-07-17 14:01:39 +02:00
Victor Stinner
ddc8c8db1c asyncio: Fix test_stdin_broken_pipe(), drain() can also raise
ConnectionResetError
2014-07-17 14:01:14 +02:00
Victor Stinner
edfdf54790 (Merge 3.4) asyncio, tulip issue 190: Process.communicate() now ignores
ConnectionResetError too
2014-07-17 13:12:20 +02:00