Kaydet (Commit) 27a28589 authored tarafından Georg Brandl's avatar Georg Brandl

Rewrap.

üst 002fa2de
...@@ -11,11 +11,11 @@ Core and Builtins ...@@ -11,11 +11,11 @@ Core and Builtins
----------------- -----------------
- Issue #9738: Document PyErr_SetString() and PyErr_SetFromErrnoWithFilename() - Issue #9738: Document PyErr_SetString() and PyErr_SetFromErrnoWithFilename()
encodings encodings.
- ast.literal_eval() can now handle negative numbers. It is also a little - ast.literal_eval() can now handle negative numbers. It is also a little more
more liberal in what it accepts without compromising the safety of the liberal in what it accepts without compromising the safety of the evaluation.
evaluation. For example, 3j+4 and 3+4+5 are both accepted. For example, 3j+4 and 3+4+5 are both accepted.
- Issue #10006: type.__abstractmethods__ now raises an AttributeError. As a - Issue #10006: type.__abstractmethods__ now raises an AttributeError. As a
result metaclasses can now be ABCs (see #9533). result metaclasses can now be ABCs (see #9533).
...@@ -23,8 +23,8 @@ Core and Builtins ...@@ -23,8 +23,8 @@ Core and Builtins
- Issue #8670: ctypes.c_wchar supports non-BMP characters with 32 bits wchar_t. - Issue #8670: ctypes.c_wchar supports non-BMP characters with 32 bits wchar_t.
- Issue #8670: PyUnicode_AsWideChar() and PyUnicode_AsWideCharString() replace - Issue #8670: PyUnicode_AsWideChar() and PyUnicode_AsWideCharString() replace
UTF-16 surrogate pairs by single non-BMP characters for 16 bits Py_UNICODE UTF-16 surrogate pairs by single non-BMP characters for 16 bits Py_UNICODE and
and 32 bits wchar_t (eg. Linux in narrow build). 32 bits wchar_t (eg. Linux in narrow build).
- Issue #10003: Allow handling of SIGBREAK on Windows. Fixes a regression - Issue #10003: Allow handling of SIGBREAK on Windows. Fixes a regression
introduced by issue #9324. introduced by issue #9324.
...@@ -34,12 +34,11 @@ Core and Builtins ...@@ -34,12 +34,11 @@ Core and Builtins
- Issue #7397: Mention that importlib.import_module() is probably what someone - Issue #7397: Mention that importlib.import_module() is probably what someone
really wants to be using in __import__'s docstring. really wants to be using in __import__'s docstring.
- Issue #8521: Allow CreateKeyEx, OpenKeyEx, and DeleteKeyEx functions - Issue #8521: Allow CreateKeyEx, OpenKeyEx, and DeleteKeyEx functions of winreg
of winreg to use named arguments. to use named arguments.
- Issue #9930: Remove bogus subtype check that was causing (e.g.) - Issue #9930: Remove bogus subtype check that was causing (e.g.)
float.__rdiv__(2.0, 3) to return NotImplemented instead of the float.__rdiv__(2.0, 3) to return NotImplemented instead of the expected 1.5.
expected 1.5.
- Issue #9808: Implement os.getlogin for Windows. Patch by Jon Anglin. - Issue #9808: Implement os.getlogin for Windows. Patch by Jon Anglin.
...@@ -47,23 +46,21 @@ Core and Builtins ...@@ -47,23 +46,21 @@ Core and Builtins
threads are still running. Instead, reinitialize the GIL on a second call to threads are still running. Instead, reinitialize the GIL on a second call to
Py_Initialize(). Py_Initialize().
- All SyntaxErrors now have a column offset and therefore a caret when the - All SyntaxErrors now have a column offset and therefore a caret when the error
error is printed. is printed.
- Issue #9252: PyImport_Import no longer uses a fromlist hack to return the - Issue #9252: PyImport_Import no longer uses a fromlist hack to return the
module that was imported, but instead gets the module from sys.modules. module that was imported, but instead gets the module from sys.modules.
- Issue #9212: The range type_items now provides index() and count() - Issue #9212: The range type_items now provides index() and count() methods, to
methods, to conform to the Sequence ABC. Patch by Daniel Urban and conform to the Sequence ABC. Patch by Daniel Urban and Daniel Stutzbach.
Daniel Stutzbach.
- Issue #7994: Issue a PendingDeprecationWarning if object.__format__ - Issue #7994: Issue a PendingDeprecationWarning if object.__format__ is called
is called with a non-empty format string. This is an effort to with a non-empty format string. This is an effort to future-proof user
future-proof user code. If a derived class does not currently code. If a derived class does not currently implement __format__ but later
implement __format__ but later adds its own __format__, it would adds its own __format__, it would most likely break user code that had
most likely break user code that had supplied a format string. This supplied a format string. This will be changed to a DeprecationWaring in
will be changed to a DeprecationWaring in Python 3.3 and it will be Python 3.3 and it will be an error in Python 3.4.
an error in Python 3.4.
- Issue #9828: Destroy the GIL in Py_Finalize(), so that it gets properly - Issue #9828: Destroy the GIL in Py_Finalize(), so that it gets properly
re-created on a subsequent call to Py_Initialize(). The problem (a crash) re-created on a subsequent call to Py_Initialize(). The problem (a crash)
...@@ -73,17 +70,17 @@ Core and Builtins ...@@ -73,17 +70,17 @@ Core and Builtins
functions from the libc caused the methods .upper() and lower() to become functions from the libc caused the methods .upper() and lower() to become
locale aware and created subtly wrong results. locale aware and created subtly wrong results.
- Issue #9738: PyUnicode_FromFormat() and PyErr_Format() raise an error on - Issue #9738: PyUnicode_FromFormat() and PyErr_Format() raise an error on a
a non-ASCII byte in the format string. non-ASCII byte in the format string.
- Issue #4617: Previously it was illegal to delete a name from the local - Issue #4617: Previously it was illegal to delete a name from the local
namespace if it occurs as a free variable in a nested block. This limitation namespace if it occurs as a free variable in a nested block. This limitation
of the compiler has been lifted, and a new opcode introduced (DELETE_DEREF). of the compiler has been lifted, and a new opcode introduced (DELETE_DEREF).
- Issue #9804: ascii() now always represents unicode surrogate pairs as - Issue #9804: ascii() now always represents unicode surrogate pairs as a single
a single ``\UXXXXXXXX``, regardless of whether the character is printable ``\UXXXXXXXX``, regardless of whether the character is printable or not.
or not. Also, the "backslashreplace" error handler now joins surrogate Also, the "backslashreplace" error handler now joins surrogate pairs into a
pairs into a single character on UCS-2 builds. single character on UCS-2 builds.
- Issue #9757: memoryview objects get a release() method to release the - Issue #9757: memoryview objects get a release() method to release the
underlying buffer (previously this was only done when deallocating the underlying buffer (previously this was only done when deallocating the
...@@ -118,35 +115,35 @@ Library ...@@ -118,35 +115,35 @@ Library
- Issue #9065: tarfile no longer uses "root" as the default for the uname and - Issue #9065: tarfile no longer uses "root" as the default for the uname and
gname field. gname field.
- Issue #8980: Fixed a failure in distutils.command check that was shadowed - Issue #8980: Fixed a failure in distutils.command check that was shadowed by
by an environment that does not have docutils. Patch by Arfrever. an environment that does not have docutils. Patch by Arfrever.
- Issue #1050268: parseaddr now correctly quotes double quote and backslash - Issue #1050268: parseaddr now correctly quotes double quote and backslash
characters that appear inside quoted strings in email addresses. characters that appear inside quoted strings in email addresses.
- Issue #10004: quoprimime no longer generates a traceback when confronted - Issue #10004: quoprimime no longer generates a traceback when confronted with
with invalid characters after '=' in a Q-encoded word. invalid characters after '=' in a Q-encoded word.
- Issue #1491: BaseHTTPServer nows send a 100 Continue response before sending - Issue #1491: BaseHTTPServer nows send a ``100 Continue`` response before
a 200 OK for the Expect: 100-continue request header. sending a 200 OK for the Expect: 100-continue request header.
- Issue #9360: Cleanup and improvements to the nntplib module. The API - Issue #9360: Cleanup and improvements to the nntplib module. The API now
now conforms to the philosophy of bytes and unicode separation in Python 3. conforms to the philosophy of bytes and unicode separation in Python 3. A
A test suite has also been added. test suite has also been added.
- Issue #9962: GzipFile now has the peek() method. - Issue #9962: GzipFile now has the peek() method.
- Issue #9090: When a socket with a timeout fails with EWOULDBLOCK or EAGAIN, - Issue #9090: When a socket with a timeout fails with EWOULDBLOCK or EAGAIN,
retry the select() loop instead of bailing out. This is because select() retry the select() loop instead of bailing out. This is because select() can
can incorrectly report a socket as ready for reading (for example, if it incorrectly report a socket as ready for reading (for example, if it received
received some data with an invalid checksum). some data with an invalid checksum).
- Issue #3612: Added new types to ctypes.wintypes. (CHAR and pointers) - Issue #3612: Added new types to ctypes.wintypes. (CHAR and pointers)
- Issue #9950: Fix socket.sendall() crash or misbehaviour when a signal is - Issue #9950: Fix socket.sendall() crash or misbehaviour when a signal is
received. Now sendall() properly calls signal handlers if necessary, received. Now sendall() properly calls signal handlers if necessary, and
and retries sending if these returned successfully, including on sockets retries sending if these returned successfully, including on sockets with a
with a timeout. timeout.
- Issue #9947: logging: Fixed locking bug in stopListening. - Issue #9947: logging: Fixed locking bug in stopListening.
...@@ -159,8 +156,8 @@ Library ...@@ -159,8 +156,8 @@ Library
- Issue #9928: Properly initialize the types exported by the bz2 module. - Issue #9928: Properly initialize the types exported by the bz2 module.
- Issue #1675951: Allow GzipFile to work with unseekable file objects. - Issue #1675951: Allow GzipFile to work with unseekable file objects. Patch by
Patch by Florian Festi. Florian Festi.
- Logging: Added QueueListener class to facilitate logging usage for - Logging: Added QueueListener class to facilitate logging usage for
performance-critical threads. performance-critical threads.
...@@ -176,8 +173,8 @@ Library ...@@ -176,8 +173,8 @@ Library
- Issue #2643: msync() is not called anymore when deallocating an open mmap - Issue #2643: msync() is not called anymore when deallocating an open mmap
object, only munmap(). object, only munmap().
- logging: Changed LoggerAdapter implementation internally, to make it - logging: Changed LoggerAdapter implementation internally, to make it easier to
easier to subclass in a useful way. subclass in a useful way.
- logging: hasHandlers method was added to Logger, and isEnabledFor, - logging: hasHandlers method was added to Logger, and isEnabledFor,
getEffectiveLevel, hasHandlers and setLevel were added to LoggerAdapter. getEffectiveLevel, hasHandlers and setLevel were added to LoggerAdapter.
...@@ -186,8 +183,8 @@ Library ...@@ -186,8 +183,8 @@ Library
- Issue #1686: Fix string.Template when overriding the pattern attribute. - Issue #1686: Fix string.Template when overriding the pattern attribute.
- Issue #9854: SocketIO objects now observe the RawIOBase interface in - Issue #9854: SocketIO objects now observe the RawIOBase interface in
non-blocking mode: they return None when an operation would block (instead non-blocking mode: they return None when an operation would block (instead of
of raising an exception). raising an exception).
- Issue #1730136: Fix the comparison between a tk.font.Font and an object of - Issue #1730136: Fix the comparison between a tk.font.Font and an object of
another kind. another kind.
...@@ -196,18 +193,18 @@ Library ...@@ -196,18 +193,18 @@ Library
- Issue #9865: collections.OrderedDict now has a __sizeof__ method. - Issue #9865: collections.OrderedDict now has a __sizeof__ method.
- Issue #9854: The default read() implementation in io.RawIOBase now - Issue #9854: The default read() implementation in io.RawIOBase now handles
handles non-blocking readinto() returning None correctly. non-blocking readinto() returning None correctly.
- Issue #1552: socket.socketpair() now returns regular socket.socket - Issue #1552: socket.socketpair() now returns regular socket.socket objects
objects supporting the whole socket API (rather than the "raw" supporting the whole socket API (rather than the "raw" _socket.socket
_socket.socket objects). objects).
- Issue #9853: Fix the signature of SSLSocket.recvfrom() and - Issue #9853: Fix the signature of SSLSocket.recvfrom() and SSLSocket.sendto()
SSLSocket.sendto() to match the corresponding socket methods. to match the corresponding socket methods.
- Issue 9840: Added a decorator to reprlib for wrapping __repr__ methods - Issue 9840: Added a decorator to reprlib for wrapping __repr__ methods to make
to make them handle recursive calls within the same thread. them handle recursive calls within the same thread.
- logging: Enhanced HTTPHandler with secure and credentials initializers. - logging: Enhanced HTTPHandler with secure and credentials initializers.
...@@ -216,85 +213,82 @@ Library ...@@ -216,85 +213,82 @@ Library
- Issue #9837: The read() method of ZipExtFile objects (as returned by - Issue #9837: The read() method of ZipExtFile objects (as returned by
ZipFile.open()) could return more bytes than requested. ZipFile.open()) could return more bytes than requested.
- Issue #9826: OrderedDict.__repr__ can now handle self-referential - Issue #9826: OrderedDict.__repr__ can now handle self-referential values:
values: d['x'] = d. d['x'] = d.
- Issue #9825: Using __del__ in the definition of collections.OrderedDict made - Issue #9825: Using __del__ in the definition of collections.OrderedDict made
it possible for the user to create self-referencing ordered dictionaries it possible for the user to create self-referencing ordered dictionaries which
which become permanently uncollectable GC garbage. Reinstated the Py3.1 become permanently uncollectable GC garbage. Reinstated the Python 3.1
approach of using weakref proxies so that reference cycles never get created approach of using weakref proxies so that reference cycles never get created
in the first place. in the first place.
- Issue #9579, #9580: Fix os.confstr() for value longer than 255 bytes and - Issue #9579, #9580: Fix os.confstr() for value longer than 255 bytes and
encode the value with filesystem encoding and surrogateescape (instead of encode the value with filesystem encoding and surrogateescape (instead of
utf-8 in strict mode). Patch written by David Watson. utf-8 in strict mode) . Patch written by David Watson.
- Issue #9632: Remove sys.setfilesystemencoding() function: use - Issue #9632: Remove sys.setfilesystemencoding() function: use PYTHONFSENCODING
PYTHONFSENCODING environment variable to set the filesystem encoding at environment variable to set the filesystem encoding at Python startup.
Python startup. sys.setfilesystemencoding() creates inconsistencies because sys.setfilesystemencoding() creates inconsistencies because it is unable to
it is unable to reencode all filenames in all objects. reencode all filenames in all objects.
- Issue #9410: Various optimizations to the pickle module, leading to - Issue #9410: Various optimizations to the pickle module, leading to speedups
speedups up to 4x (depending on the benchmark). Mostly ported from up to 4x (depending on the benchmark). Mostly ported from Unladen Swallow;
Unladen Swallow; initial patch by Alexandre Vassalotti. initial patch by Alexandre Vassalotti.
- The pprint module now supports printing OrderedDicts in their given - The pprint module now supports printing OrderedDicts in their given order
order (formerly, it would sort the keys). (formerly, it would sort the keys).
- Logging: Added QueueHandler class to facilitate logging usage with - Logging: Added QueueHandler class to facilitate logging usage with
multiprocessing. multiprocessing.
- Issue #9707: Rewritten reference implementation of threading.local which - Issue #9707: Rewritten reference implementation of threading.local which is
is friendlier towards reference cycles. This change is not normally friendlier towards reference cycles. This change is not normally visible
visible since an optimized C implementation (_thread._local) is used since an optimized C implementation (_thread._local) is used instead.
instead.
- Issue #6394: os.getppid() is now supported on Windows. Note that it will - Issue #6394: os.getppid() is now supported on Windows. Note that it will
still return the id of the parent process after it has exited. This process still return the id of the parent process after it has exited. This process
id may even have been reused by another unrelated process. id may even have been reused by another unrelated process.
- Issue #9792: In case of connection failure, socket.create_connection() - Issue #9792: In case of connection failure, socket.create_connection() would
would swallow the exception and raise a new one, making it impossible swallow the exception and raise a new one, making it impossible to fetch the
to fetch the original errno, or to filter timeout errors. Now the original errno, or to filter timeout errors. Now the original error is
original error is re-raised. re-raised.
- Issue #9758: When fcntl.ioctl() was called with mutable_flag set to True, - Issue #9758: When fcntl.ioctl() was called with mutable_flag set to True, and
and the passed buffer was exactly 1024 bytes long, the buffer wouldn't the passed buffer was exactly 1024 bytes long, the buffer wouldn't be updated
be updated back after the system call. Original patch by Brian Brazil. back after the system call. Original patch by Brian Brazil.
- Updates to the random module: - Updates to the random module:
* Document which parts of the module are guaranteed to stay the same * Document which parts of the module are guaranteed to stay the same across
across versions and which parts are subject to change. versions and which parts are subject to change.
* Update the seed() method to use all of the bits in a string * Update the seed() method to use all of the bits in a string instead of just
instead of just the hash value. This makes better use of the the hash value. This makes better use of the seed value and assures the
seed value and assures the seeding is platform independent. seeding is platform independent. Issue #7889.
Issue #7889.
* Improved the random()-->integer algorithm used in choice(), * Improved the random()-->integer algorithm used in choice(), shuffle(),
shuffle(), sample(), randrange(), and randint(). Formerly, it sample(), randrange(), and randint(). Formerly, it used int(n*random())
used int(n*random()) which has a slight bias whenever n is not which has a slight bias whenever n is not a power of two. Issue #9025.
a power of two. Issue #9025.
* Improved documentation of arguments to randrange(). Issue #9379. * Improved documentation of arguments to randrange(). Issue #9379.
- collections.OrderedDict now supports a new method for repositioning - collections.OrderedDict now supports a new method for repositioning keys to
keys to either end. either end.
- Issue #9754: Similarly to assertRaises and assertRaisesRegexp, unittest - Issue #9754: Similarly to assertRaises and assertRaisesRegexp, unittest test
test cases now also have assertWarns and assertWarnsRegexp methods to cases now also have assertWarns and assertWarnsRegexp methods to check that a
check that a given warning type was triggered by the code under test. given warning type was triggered by the code under test.
- Issue #5506: BytesIO objects now have a getbuffer() method exporting a - Issue #5506: BytesIO objects now have a getbuffer() method exporting a view of
view of their contents without duplicating them. The view is both readable their contents without duplicating them. The view is both readable and
and writable. writable.
- Issue #7566: Implement os.path.sameopenfile for Windows. - Issue #7566: Implement os.path.sameopenfile for Windows.
- Issue #9293: I/O streams now raise ``io.UnsupportedOperation`` when an - Issue #9293: I/O streams now raise ``io.UnsupportedOperation`` when an
unsupported operation is attempted (for example, writing to a file open unsupported operation is attempted (for example, writing to a file open only
only for reading). for reading).
- hashlib has two new constant attributes: algorithms_guaranteed and - hashlib has two new constant attributes: algorithms_guaranteed and
algorithms_avaiable that respectively list the names of hash algorithms algorithms_avaiable that respectively list the names of hash algorithms
...@@ -315,15 +309,15 @@ C-API ...@@ -315,15 +309,15 @@ C-API
Tools/Demos Tools/Demos
----------- -----------
- Issue #9188: The gdb extension now handles correctly narrow (UCS2) as well - Issue #9188: The gdb extension now handles correctly narrow (UCS2) as well as
as wide (UCS4) unicode builds for both the host interpreter (embedded wide (UCS4) unicode builds for both the host interpreter (embedded inside gdb)
inside gdb) and the interpreter under test. and the interpreter under test.
Tests Tests
----- -----
- Issue #1051: Add a script (Lib/test/make_ssl_certs.py) to generate the - Issue #1051: Add a script (Lib/test/make_ssl_certs.py) to generate the custom
custom certificate and private key files used by SSL-related certs. certificate and private key files used by SSL-related certs.
- Issue #9978: Wait until subprocess completes initialization. (Win32KillTests - Issue #9978: Wait until subprocess completes initialization. (Win32KillTests
in test_os) in test_os)
...@@ -333,8 +327,8 @@ Tests ...@@ -333,8 +327,8 @@ Tests
- Issue #9628: fix runtests.sh -x option so more than one test can be excluded. - Issue #9628: fix runtests.sh -x option so more than one test can be excluded.
- Issue #9899: Fix test_tkinter.test_font on various platforms. Patch by - Issue #9899: Fix test_tkinter.test_font on various platforms. Patch by Ned
Ned Deily. Deily.
- Issue #9894: Do not hardcode ENOENT in test_subprocess. - Issue #9894: Do not hardcode ENOENT in test_subprocess.
...@@ -350,8 +344,8 @@ Build ...@@ -350,8 +344,8 @@ Build
- Issue #10062: Allow building on platforms which do not have sem_timedwait. - Issue #10062: Allow building on platforms which do not have sem_timedwait.
- Issue #10054: Some platforms provide uintptr_t in inttypes.h. Patch by - Issue #10054: Some platforms provide uintptr_t in inttypes.h. Patch by Akira
Akira Kitada. Kitada.
- Issue #10055: Make json C89-compliant in UCS4 mode. - Issue #10055: Make json C89-compliant in UCS4 mode.
...@@ -359,18 +353,18 @@ Build ...@@ -359,18 +353,18 @@ Build
- Issue #1633863: Don't ignore $CC under AIX. - Issue #1633863: Don't ignore $CC under AIX.
- Issue #9810: Compile bzip2 source files in python's project file - Issue #9810: Compile bzip2 source files in Python's project file directly. It
directly. It used to be built with bzip2's makefile. used to be built with bzip2's makefile.
- Issue #9848: Stopping trying to build _weakref in setup.py as it is a - Issue #9848: Stopping trying to build _weakref in setup.py as it is a built-in
built-in module. module.
- Issue #9806: python-config now has an ``--extension-suffix`` option that - Issue #9806: python-config now has an ``--extension-suffix`` option that
outputs the suffix for dynamic libraries including the ABI version name outputs the suffix for dynamic libraries including the ABI version name
defined by PEP 3149. defined by PEP 3149.
- Issue #941346: Improve the build process under AIX and allow Python to - Issue #941346: Improve the build process under AIX and allow Python to be
be built as a shared library. Patch by Sébastien Sablé. built as a shared library. Patch by Sébastien Sablé.
- Issue #4026: Make the fcntl extension build under AIX. Patch by Sébastien - Issue #4026: Make the fcntl extension build under AIX. Patch by Sébastien
Sablé. Sablé.
......
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