Zachary Ware [Thu, 5 Jun 2014 16:44:22 +0000 (11:44 -0500)]
Clean up Tcl/Tk building in the Windows buildbot scripts.
- Nix the 'noxp' option, it was for Win2k compatibility (which was dropped
with Python 3.3) and made default ttk ugly on post-Win2k systems (#21665)
- Use 'OPTS=symbols' instead of 'DEBUG=1'; symbols is the official method
- Use core, shell, dlls, install-binaries, and install-libraries targets
instead of all and install to avoid trying to 1) build packages that don't
work with MSVC 10+ and 2) install unnecessary bits and pieces.
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() now raises a RuntimeError('Event loop is
closed') exception if the event loop was closed.
BaseProactorEventLoop.close() now also cancels "accept futures".
Victor Stinner [Tue, 3 Jun 2014 22:13:31 +0000 (00:13 +0200)]
Merge 3.4: Issue #21119, fix ResourceWarning in asyncio
* Make sure that socketpair() close sockets on error. Close the listening
socket if sock.bind() raises an exception.
* 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.
Victor Stinner [Tue, 3 Jun 2014 22:11:52 +0000 (00:11 +0200)]
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.
Victor Stinner [Mon, 2 Jun 2014 19:57:10 +0000 (21:57 +0200)]
Issue #21233: Rename the C structure "PyMemAllocator" to "PyMemAllocatorEx" to
make sure that the code using it will be adapted for the new "calloc" field
(instead of crashing).
Victor Stinner [Mon, 2 Jun 2014 19:40:22 +0000 (21:40 +0200)]
Issue #21639: Fix a division by zero in tracemalloc on calloc(0, 0). The
regression was introduced recently with the introduction of the new "calloc"
functions (PyMem_RawCalloc, PyMem_Calloc, PyObject_Calloc).
Add also a unit test to check for the non-regression.
Victor Stinner [Mon, 2 Jun 2014 12:18:15 +0000 (14:18 +0200)]
(Merge 3.4) Issue #21634: Fix pystone micro-benchmark: use floor division
instead of true division to benchmark integers instead of floating point
numbers. Set pystone version to 1.2. Patch written by Lennart Regebro.
Victor Stinner [Mon, 2 Jun 2014 12:16:44 +0000 (14:16 +0200)]
Issue #21634: Fix pystone micro-benchmark: use floor division instead of true
division to benchmark integers instead of floating point numbers. Set pystone
version to 1.2. Patch written by Lennart Regebro.
Attempt to fix the "too many open files" errors on several of the
buildbots that the new test_close_fds_when_max_fd_is_lowered test causes.
It now leaves 10 more low fd's available.
Attempt to fix the "too many open files" errors on several of the
buildbots that the new test_close_fds_when_max_fd_is_lowered test causes.
It now leaves 10 more low fd's available.
Don't restrict ourselves to a "max" fd when closing fds before exec()
when we have a way to get an actual list of all open fds from the OS.
Fixes issue #21618: The subprocess module would ignore fds that were
inherited by the calling process and already higher than POSIX resource
limits would otherwise allow. On systems with a functioning /proc/self/fd
or /dev/fd interface the max is now ignored and all fds are closed.
Don't restrict ourselves to a "max" fd when closing fds before exec()
when we have a way to get an actual list of all open fds from the OS.
Fixes issue #21618: The subprocess module would ignore fds that were
inherited by the calling process and already higher than POSIX resource
limits would otherwise allow. On systems with a functioning /proc/self/fd
or /dev/fd interface the max is now ignored and all fds are closed.
Remove the obsolete MAXFD constant and Popen._close_fds() method.
They should have been removed years ago when removing the old pure
Python implementation from the file.