Commit f2f1d4b2 authored by Benjamin Peterson's avatar Benjamin Peterson

make NEWS for 2.7.15rc1

parent bba2ba18
This diff is collapsed.
Fix implicit declaration of function _setmode. Patch by Masayuki Yamamoto
Update Windows build and OS X installers to use OpenSSL 1.0.2k.
Fix ``--enable-optimization`` configure option didn't work.
sys.version and the platform module python_build(), python_branch(), and
python_revision() functions now use git information rather than hg when
building from a repo.
Don't regenerate generated files based on file modification time anymore:
the action is now explicit. Replace ``make touch`` with ``make regen-all``.
Prevent unnecessary rebuilding of Python during ``make test``, ``make
install`` and some other make targets when configured with ``--enable-
optimizations``.
Fix -Wint-in-bool-context warnings in PyMem_MALLOC and PyMem_REALLOC macros
Abort the build when building out of a not clean source tree.
Fix segfault of the crypt module when libxcrypt is provided instead of
libcrypt at the system.
Disable computed gotos by default for clang < 5.0. It caused significant
performance regression.
When Python is built in debug mode, the memory debug hooks now fail with a
fatal error if realloc() fails to shrink a memory block, because the debug
hook just erased freed bytes without keeping a copy of them.
Fix PyGILState_Ensure(). When PyGILState_Ensure() is called in a non-Python
thread before PyEval_InitThreads(), only call PyEval_InitThreads() after
calling PyThreadState_New() to fix a crash.
Do not include <sys/random.h> if it does not exist.
Fix overflow checks in string, bytearray and unicode. Patch by jan matejek
and Xiang Zhang.
Fixed possible use-after-free bugs in the subscription of the buffer object
with custom index object.
Allow sys.exit to accept longs as well as ints. Patch by Gareth Rees.
Fixed possibly dereferencing undefined pointers when creating weakref
objects.
Fix incorrect handling of signed zeros in complex constructor for complex
subclasses and for inputs having a __complex__ method. Patch by Serhiy
Storchaka.
Support __rmod__ for subclasses of str being called before str.__mod__.
Patch by Martijn Pieters.
Fixed error messages in the index() method of tuple and list when pass
indices of wrong type.
Fixed type.__setattr__() and type.__delattr__() for non-interned or unicode
attribute names. Based on patch by Eryk Sun.
Fixed various segfaults with dict when input collections are mutated during
searching, inserting or comparing. Based on patches by Duane Griffin and
Tim Mitchell.
Fixed possible integer overflow in PyString_DecodeEscape. Patch by Jay
Bosamiya.
Fix potential crash during GC caused by ``tp_dealloc`` which doesn't call
``PyObject_GC_UnTrack()``.
Fix a crash in some methods of `io.TextIOWrapper`, when the decoder's state
is invalid. Patch by Oren Milman.
Fix a crash in the ``__setstate__()`` method of `ctypes._CData`, in case of
a bad ``__dict__``. Patch by Oren Milman.
Include sys/sysmacros.h for major(), minor(), and makedev(). GNU C libray
plans to remove the functions from sys/types.h.
Raise a TypeError instead of SystemError in case warnings.onceregistry is
not a dictionary. Patch by Oren Milman.
Fix an assertion failure in `ctypes` class definition, in case the class has
an attribute whose name is specified in ``_anonymous_`` but not in
``_fields_``. Patch by Oren Milman.
Fixed crashes when iterating over a file on multiple threads.
Prevent unwanted behavior in `_random.Random.seed()` in case the argument
has a bad ``__abs__()`` method. Patch by Oren Milman.
Add a new PYTHONSHOWALLOCCOUNT environment variable. When Python is compiled
with COUNT_ALLOCS, PYTHONSHOWALLOCCOUNT now has to be set to dump allocation
counts into stderr on shutdown. Moreover, allocations statistics are now dumped
into stderr rather than stdout.
Add a new PYTHONSHOWREFCOUNT environment variable. In debug mode, Python now
only print the total reference count if PYTHONSHOWREFCOUNT is set.
Bytearray methods partition() and rpartition() now accept only bytes-like
objects as separator, as documented. In particular they now raise TypeError
rather of returning a bogus result when an integer is passed as a separator.
The repr of deeply nested dict now raises a RecursionError instead of
crashing due to a stack overflow.
Yield expressions are now deprecated in comprehensions and generator
expressions when checking Python 3 compatibility. They are still
permitted in the definition of the outermost iterable, as that is
evaluated directly in the enclosing scope.
``repr()`` on a dict containing its own ``viewvalues()`` or
``viewitems()`` no longer raises ``RuntimeError``. Instead, use
``...``, as for other recursive structures. Patch by Ben North.
Prevent jumps from 'return' and 'exception' trace events.
Rewrite Comparisons section in the Expressions chapter of the language
reference. Some of the details of comparing mixed types were incorrect or
ambiguous. Added default behaviour and consistency suggestions for user-
defined classes. Based on patch from Andy Maier.
Add canonical header link on each page to corresponding major version of the
documentation. Patch by Matthias Bussonnier.
Link the documentation to its source file on GitHub.
Add missing attribute related constants in curses documentation.
Add RFC 7525 and Mozilla server side TLS links to SSL documentation.
Add a note about curses.addch and curses.addstr exception behavior when
writing outside a window, or pad.
Explain real behaviour of sys.settrace and sys.setprofile and their C-API counterparts
regarding which type of events are received in each function. Patch by Pablo Galindo Salgado.
Modify documentation for the :func:`islice` recipe to consume initial values
up to the start index.
cPickle now correctly propagates errors when unpickle instances of old-style
classes.
Fix bugs in WeakValueDictionary.setdefault() and WeakValueDictionary.pop()
when a GC collection happens in another thread.
Fix dict.fromkeys(x) overallocates when x is sparce dict. Original patch by
Rasmus Villemoes.
Remove editor artifacts from Tix.py, including encoding not recognized by
codecs.lookup.
More APIs now support longs as well as ints.
old keys should not remove new values from WeakValueDictionary when
collecting from another thread.
curses.ascii predicates now work correctly with negative integers.
Fixed recursion errors in large or resized curses.textpad.Textbox. Based on
patch by Tycho Andersen.
In urllib, suffixes in no_proxy environment variable with leading dots could
match related hostnames again (e.g. .b.c matches a.b.c). Patch by Milan
Oberkirch.
Support glibc 2.24 on Linux: don't use getentropy() function but read from
/dev/urandom to get random bytes, for example in os.urandom(). On Linux,
getentropy() is implemented which getrandom() is blocking mode, whereas
os.urandom() should not block.
Fixed loading libraries in ctypes by unicode names on Windows. Original
patch by Chi Hsuan Yen.
Fixed infinite recursion in the repr of uninitialized ctypes.CDLL instances.
Fix subprocess.Popen.wait() when the child process has exited to a stopped
instead of terminated state (ex: when under ptrace).
Fixed inspect.getargs() for parameters which are cell variables.
Fix file object leak in aifc.open() when file is given as a filesystem path
and is not in valid AIFF format. Original patch by Anthony Zhang.
Fixed integer overflow in cPickle when pickle large strings or too many
objects.
Release references to tasks, their arguments and their results as soon as
they are finished in multiprocessing.Pool.
Fix a crash in itertools.chain.from_iterable when encountering long runs of
empty iterables.
Fixed multiple crashes in ElementTree caused by race conditions and wrong
types.
_io._IOBase.readlines will check if it's closed first when hint is present.
Fixed race condition in HTMLParser.unescape().
Fixed crashes in IOBase methods next() and readlines() when readline() or
next() respectively return non-sizeable object. Fixed possible other errors
caused by not checking results of PyObject_Size(), PySequence_Size(), or
PyMapping_Size().
Fixed leaks and crashes in errors handling in the parser module.
Change resulted because of zipfile breakage. (See also: bpo-29094)
Removed the __init__ methods of _json's scanner and encoder. Misusing them
could cause memory leaks or crashes. Now scanner and encoder objects are
completely initialized in the __new__ methods.
Fix range checking in GB18030 decoder. Original patch by Ma Lin.
Fix sysconfig.is_python_build() if Python is built with Visual Studio 2008
(VS 9.0).
imaplib now catchs the Windows socket WSAEINVAL error (code 10022) on
shutdown(SHUT_RDWR): An invalid operation was attempted. This error occurs
sometimes on SSL connections.
Fixed a deprecation warning about the doctype() method of the
xml.etree.ElementTree.XMLParser class. Now it is emitted only when define
the doctype() method in the subclass of XMLParser.
Running Python with the -3 option now emits deprecation warnings for
getchildren() and getiterator() methods of the Element class in the
xml.etree.cElementTree module and when pass the html argument to
xml.etree.ElementTree.XMLParser().
Running Python with the -3 option now warns about regular expression syntax
that is invalid or has different semantic in Python 3 or will change the
behavior in future Python versions.
Warnings emitted when compile a regular expression now always point to the
line in the user code. Previously they could point into inners of the re
module if emitted from inside of groups or conditionals.
Fix handling escape characters in HZ codec. Based on patch by Ma Lin.
multiprocessing.Queue._feed background running thread do not break from main
loop on exception.
tkFont now supports unicode options (e.g. font family).
Preserve generator state when _random.Random.setstate() raises an exception.
Patch by Bryan Olson.
Fix the problem that logging.handlers.SysLogHandler cannot handle IPv6
addresses.
On Windows, subprocess.Popen.communicate() now also ignore EINVAL on
stdin.write() if the child process is still running but closed the pipe.
The traceback no longer displayed for SystemExit raised in a callback
registered by atexit.
Prohibited the '=' character in environment variable names in
``os.putenv()`` and ``os.spawn*()``.
Change ``ttk.OptionMenu`` radiobuttons to be unique across instances of
``OptionMenu``.
Fix handling of long oids in ssl. Based on patch by Christian Heimes.
The ssl and hashlib modules now call OPENSSL_add_all_algorithms_noconf() on
OpenSSL < 1.1.0. The function detects CPU features and enables optimizations
on some CPU architectures such as POWER8. Patch is based on research from
Gustavo Serra Scalet.
Fix ctypes producing wrong PEP 3118 type codes for integer types.
Fix ``poll.poll([timeout])`` in the ``select`` module for arbitrary negative
timeouts on all OSes where it can only be a non-negative integer or -1.
Patch by Riccardo Coccioli.
expat: Update libexpat from 2.2.3 to 2.2.4. Fix copying of partial
characters for UTF-8 input (libexpat bug 115):
https://github.com/libexpat/libexpat/issues/115
Work around a `gc.disable()` race condition in the `subprocess` module that
could leave garbage collection disabled when multiple threads are spawning
subprocesses at once. Users are *strongly encouraged* to use the
`subprocess32` module from PyPI on Python 2.7 instead, it is much more
reliable.
ssl.SSLContext() now uses OpenSSL error information when a context cannot be
instantiated.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment