From: Gregory P. Smith Date: Sat, 29 Sep 2012 18:53:08 +0000 (-0700) Subject: Fixes issue #15756: subprocess.poll() now properly handles errno.ECHILD X-Git-Tag: v3.4.0a1~2470^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=02dee1acd8d905a2348e5ed4d9f97cb490e5e255;p=thirdparty%2FPython%2Fcpython.git Fixes issue #15756: subprocess.poll() now properly handles errno.ECHILD to return a returncode of 0 when the child has already exited or cannot be waited on. --- 02dee1acd8d905a2348e5ed4d9f97cb490e5e255 diff --cc Misc/NEWS index f385ede64b28,7347f502e415..245cf1a677e0 --- a/Misc/NEWS +++ b/Misc/NEWS @@@ -10,171 -10,161 +10,175 @@@ What's New in Python 3.3.1 Core and Builtins ----------------- -- Issue #15379: Fix passing of non-BMP characters as integers for the charmap - decoder (already working as unicode strings). Patch by Serhiy Storchaka. +Library +------- -- Issue #13992: The trashcan mechanism is now thread-safe. This eliminates - sporadic crashes in multi-thread programs when several long deallocator - chains ran concurrently and involved subclasses of built-in container - types. ++- Issue #15756: subprocess.poll() now properly handles errno.ECHILD to ++ return a returncode of 0 when the child has already exited or cannot ++ be waited on. + -- Issue #15846: Fix SystemError which happened when using ast.parse in an - exception handler on code with syntax errors. -- Issue #15761: Fix crash when PYTHONEXECUTABLE is set on Mac OS X. +What's New in Python 3.3.0? +=========================== -- Issue #15801: Make sure mappings passed to '%' formatting are actually - subscriptable. +*Release date: 29-Sep-2012* -- Issue #15726: Fix incorrect bounds checking in PyState_FindModule. - Patch by Robin Schreiber. +Core and Builtins +----------------- -- Issue #15604: Update uses of PyObject_IsTrue() to check for and handle - errors correctly. Patch by Serhiy Storchaka. +- Issue #16046: Fix loading sourceless legacy .pyo files. -- Issue #13119: sys.stdout and sys.stderr are now using "\r\n" newline on - Windows, as Python 2. +- Issue #16060: Fix refcounting bug when __trunc__ returns an object + whose __int__ gives a non-integer. Patch by Serhiy Storchaka. -- Issue #14579: Fix CVE-2012-2135: vulnerability in the utf-16 decoder after - error handling. Patch by Serhiy Storchaka. +Extension Modules +----------------- -- Issue #15404: Refleak in PyMethodObject repr. +- Issue #16012: Fix a regression in pyexpat. The parser's UseForeignDTD() + method doesn't require an argument again. -- Issue #15394: An issue in PyModule_Create that caused references to - be leaked on some error paths has been fixed. Patch by Julia Lawall. -- Issue #15368: An issue that caused bytecode generation to be - non-deterministic when using randomized hashing (-R) has been fixed. +What's New in Python 3.3.0 Release Candidate 3? +=============================================== -- Issue #15020: The program name used to search for Python's path is now - "python3" under Unix, not "python". +*Release date: 23-Sep-2012* -- Issue #15033: Fix the exit status bug when modules invoked using -m swith, - return the proper failure return value (1). Patch contributed by Jeff Knupp. +Core and Builtins +----------------- -- Issue #12268: File readline, readlines and read() or readall() methods - no longer lose data when an underlying read system call is interrupted. - IOError is no longer raised due to a read system call returning EINTR - from within these methods. +- Issue #15900: Fix reference leak in PyUnicode_TranslateCharmap(). -- Issue #15142: Fix reference leak when deallocating instances of types - created using PyType_FromSpec(). +- Issue #15926: Fix crash after multiple reinitializations of the interpreter. -- Issue #10053: Don't close FDs when FileIO.__init__ fails. Loosely based on - the work by Hirokazu Yamamoto. +- Issue #15895: Fix FILE pointer leak in one error branch of + PyRun_SimpleFileExFlags() when filename points to a pyc/pyo file, closeit + is false an and set_main_loader() fails. -- Issue #14775: Fix a potential quadratic dict build-up due to the garbage - collector repeatedly trying to untrack dicts. +- Fixes for a few crash and memory leak regressions found by Coverity. -- Issue #14494: Fix __future__.py and its documentation to note that - absolute imports are the default behavior in 3.0 instead of 2.7. - Patch by Sven Marnach. +Library +------- -- Issue #14761: Fix potential leak on an error case in the import machinery. +- Issue #15882: Change _decimal to accept any coefficient tuple when + constructing infinities. This is done for backwards compatibility + with decimal.py: Infinity coefficients are undefined in _decimal + (in accordance with the specification). -- Issue #14699: Fix calling the classmethod descriptor directly. +- Issue #15925: Fix a regression in email.util where the parsedate() and + parsedate_tz() functions did not return None anymore when the argument could + not be parsed. -- Issue #14433: Prevent msvcrt crash in interactive prompt when stdin - is closed. +Extension Modules +----------------- -- Issue #11603 (again): Setting __repr__ to __str__ now raises a RuntimeError - when repr() or str() is called on such an object. +- Issue #15973: Fix a segmentation fault when comparing datetime timezone + objects. -- Issue #14658: Fix binding a special method to a builtin implementation of a - special method with a different name. +- Issue #15977: Fix memory leak in Modules/_ssl.c when the function + _set_npn_protocols() is called multiple times, thanks to Daniel Sommermann. -- Issue #14630: Fix a memory access bug for instances of a subclass of int - with value 0. +- Issue #15969: faulthandler module: rename dump_tracebacks_later() to + dump_traceback_later() and cancel_dump_tracebacks_later() to + cancel_dump_traceback_later(). -- Issue #14612: Fix jumping around with blocks by setting f_lineno. +- _decimal module: use only C 89 style comments. -- Issue #14607: Fix keyword-only arguments which started with ``__``. -- Issue #13889: Check and (if necessary) set FPU control word before calling - any of the dtoa.c string <-> float conversion functions, on MSVC builds of - Python. This fixes issues when embedding Python in a Delphi app. +What's New in Python 3.3.0 Release Candidate 2? +=============================================== -- Issue #14474: Save and restore exception state in thread.start_new_thread() - while writing error message if the thread leaves a unhandled exception. +*Release date: 09-Sep-2012* -- Issue #13019: Fix potential reference leaks in bytearray.extend(). Patch - by Suman Saha. +Core and Builtins +----------------- -- Issue #14378: Fix compiling ast.ImportFrom nodes with a "__future__" string as - the module name that was not interned. +- Issue #13992: The trashcan mechanism is now thread-safe. This eliminates + sporadic crashes in multi-thread programs when several long deallocator + chains ran concurrently and involved subclasses of built-in container + types. -- Issue #14331: Use significantly less stack space when importing modules by - allocating path buffers on the heap instead of the stack. +- Issue #15784: Modify OSError.__str__() to better distinguish between + errno error numbers and Windows error numbers. -- Issue #14334: Prevent in a segfault in type.__getattribute__ when it was not - passed strings. +- Issue #15781: Fix two small race conditions in import's module locking. -- Issue #1469629: Allow cycles through an object's __dict__ slot to be - collected. (For example if ``x.__dict__ is x``). +Library +------- -- Issue #14172: Fix reference leak when marshalling a buffer-like object - (other than a bytes object). +- Issue #15847: Fix a regression in argparse, which did not accept tuples + as argument lists anymore. -- Issue #13521: dict.setdefault() now does only one lookup for the given key, - making it "atomic" for many purposes. Patch by Filip Gruszczyński. +- Issue #15828: Restore support for C extensions in imp.load_module(). -- Issue #14471: Fix a possible buffer overrun in the winreg module. +- Issue #15340: Fix importing the random module when /dev/urandom cannot + be opened. This was a regression caused by the hash randomization patch. -Library -------- +- Issue #10650: Deprecate the watchexp parameter of the Decimal.quantize() + method. -- Issue #15756: subprocess.poll() now properly handles errno.ECHILD to - return a returncode of 0 when the child has already exited or cannot - be waited on. +- Issue #15785: Modify window.get_wch() API of the curses module: return + a character for most keys, and an integer for special keys, instead of + always returning an integer. So it is now possible to distinguish special + keys like keypad keys. + +- Issue #14223: Fix window.addch() of the curses module for special characters + like curses.ACS_HLINE: the Python function addch(int) and addch(bytes) is now + calling the C function waddch()/mvwaddch() (as it was done in Python 3.2), + instead of wadd_wch()/mvwadd_wch(). The Python function addch(str) is still + calling the C function wadd_wch()/mvwadd_wch() if the Python curses is linked + to libncursesw. -- Issue #12376: Pass on parameters in TextTestResult.__init__ super call +Build +----- -- Issue #15222: Insert blank line after each message in mbox mailboxes +- Issue #15822: Really ensure 2to3 grammar pickles are properly installed + (replaces fixes for Issue #15645). -- Issue #16013: Fix CSV Reader parsing issue with ending quote characters. - Patch by Serhiy Storchaka. +Documentation +------------- -- Issue #15421: fix an OverflowError in Calendar.itermonthdates() after - datetime.MAXYEAR. Patch by Cédric Krier. +- Issue #15814: The memoryview enhancements in 3.3.0 accidentally permitted + the hashing of multi-dimensional memorviews and memoryviews with multi-byte + item formats. The intended restrictions have now been documented - they + will be correctly enforced in 3.3.1 -- Issue #15970: xml.etree.ElementTree now serializes correctly the empty HTML - elements 'meta' and 'param'. -- Issue #15842: the SocketIO.{readable,writable,seekable} methods now - raise ValueError when the file-like object is closed. Patch by Alessandro - Moura. +What's New in Python 3.3.0 Release Candidate 1? +=============================================== -- Issue #15881: Fixed atexit hook in multiprocessing. Original patch - by Chris McDonough. +*Release date: 25-Aug-2012* -- Issue #15340: Fix importing the random module when /dev/urandom cannot - be opened. This was a regression caused by the hash randomization patch. +Core and Builtins +----------------- + +- Issue #15573: memoryview comparisons are now performed by value with full + support for any valid struct module format definition. + +- Issue #15316: When an item in the fromlist for __import__ doesn't exist, + don't raise an error, but if an exception is raised as part of an import do + let that propagate. + +- Issue #15778: ensure that str(ImportError(msg)) returns a str + even when msg isn't a str. + +- Issue #2051: Source file permission bits are once again correctly + copied to the cached bytecode file. (The migration to importlib + reintroduced this problem because these was no regression test. A test + has been added as part of this patch) + +- Issue #15761: Fix crash when PYTHONEXECUTABLE is set on Mac OS X. -- Issue #15841: The readable(), writable() and seekable() methods of BytesIO - and StringIO objects now raise ValueError when the object has been closed. - Patch by Alessandro Moura. +- Issue #15726: Fix incorrect bounds checking in PyState_FindModule. + Patch by Robin Schreiber. -- Issue #15509: webbrowser.UnixBrowser no longer passes empty arguments to - Popen when %action substitutions produce empty strings. +- Issue #15604: Update uses of PyObject_IsTrue() to check for and handle + errors correctly. Patch by Serhiy Storchaka. -- Issue #12776,#11839: call argparse type function (specified by add_argument) - only once. Before, the type function was called twice in the case where the - default was specified and the argument was given as well. This was - especially problematic for the FileType type, as a default file would always - be opened, even if a file argument was specified on the command line. +- Issue #14846: importlib.FileFinder now handles the case where the + directory being searched is removed after a previous import attempt -- Issue #15906: Fix a regression in argparse caused by the preceding change, - when action='append', type='str' and default=[]. +Library +------- - Issue #13370: Ensure that ctypes works on Mac OS X when Python is compiled using the clang compiler