cpython/Misc/NEWS.d/2.6a3.rst

357 lines
8.1 KiB
ReStructuredText

.. bpo: 2719
.. date: 6897
.. nonce: 4NH_Xn
.. release date: 08-May-2008
.. section: Core and Builtins
backported the ``next()`` builtin from Python 3.
..
.. bpo: 2681
.. date: 6896
.. nonce: 8UXx90
.. section: Core and Builtins
The octal literal ``0o8`` was incorrecly acctepted. Now it properly raises a
SyntaxError.
..
.. bpo: 2617
.. date: 6895
.. nonce: 1gTS6r
.. section: Core and Builtins
Reserved -J and -X arguments for Jython, IronPython and other
implementations of Python.
..
.. bpo: 0
.. date: 6894
.. nonce: aRO9gE
.. section: Core and Builtins
Implemented PEP 370: Per user site-packages directory.
..
.. bpo: 2670
.. date: 6893
.. nonce: VM2Luj
.. section: Library
Fix a failure in urllib2.build_opener(), when passed two handlers that
derive the same default base class.
..
.. bpo: 0
.. date: 6892
.. nonce: 7fblHZ
.. section: Library
Added kill, terminate and send_signal(sig) to subprocess.Popen.
..
.. bpo: 0
.. date: 6891
.. nonce: 88WSiY
.. section: Library
Added phase(z) -> phi, polar(z) -> r, phi and rect(r, phi) -> z to the cmath
module.
..
.. bpo: 0
.. date: 6890
.. nonce: 6dejMd
.. section: Library
Four new methods were added to the math and cmath modules: acosh, asinh,
atanh and log1p.
..
.. bpo: 0
.. date: 6889
.. nonce: v-VAd8
.. section: Library
zlib.decompressobj().flush(value) no longer crashes the interpreter when
passed a value less than or equal to zero.
..
.. bpo: 1631171
.. date: 6888
.. nonce: 8Bc0Zl
.. section: Library
Re-implement the 'warnings' module in C (the original Python code has been
kept as backup). This will allow for using the 'warning's machinery in such
places as the parser where use of pure Python code is not possible. Both
the ``showarning()`` and ``formatwarning()`` gain an optional 'line'
argument which is not called by default for backwards-compatibility reasons.
Setting ``warnings.showwarning()`` to an implementation that lacks support
for the ``line`` argument will raise a DeprecationWarning.
..
.. bpo: 0
.. date: 6887
.. nonce: CNqdrb
.. section: Library
The audiodev module has been deprecated for removal in Python 3.0.
..
.. bpo: 2750
.. date: 6886
.. nonce: nv-hkg
.. section: Library
Add the 'json' package. Based on simplejson 1.9 and contributed by Bob
Ippolito.
..
.. bpo: 1734346
.. date: 6885
.. nonce: lfR8ca
.. section: Library
Support Unicode file names for zipfiles.
..
.. bpo: 2581
.. date: 6884
.. nonce: fOkdCT
.. section: Library
distutils: Vista UAC/elevation support for bdist_wininst.
..
.. bpo: 2635
.. date: 6883
.. nonce: F8Y92w
.. section: Library
Fix bug in 'fix_sentence_endings' textwrap.fill option, where an extra space
was added after a word containing (but not ending in) '.', '!' or '?'.
..
.. bpo: 0
.. date: 6882
.. nonce: lYk3LA
.. section: Library
Add from_buffer() and from_buffer_copy() class methods to ctypes data types.
..
.. bpo: 2682
.. date: 6881
.. nonce: NLrJe2
.. section: Library
ctypes callback functions no longer contain a cyclic reference to
themselves.
..
.. bpo: 0
.. date: 6880
.. nonce: TTWJof
.. section: Library
The getpass module has been improved on Unix. It now uses /dev/tty by
default and uses stderr instead of stdout. A GetPassWarning is issued when
input echo cannot be controlled.
..
.. bpo: 2014
.. date: 6879
.. nonce: CKvu6Y
.. section: Library
Allow XML-RPC datetime objects to have dates before 1900-01-01.
..
.. bpo: 2439
.. date: 6878
.. nonce: Kwwv4U
.. section: Library
Added new function pkgutil.get_data(), which is a convenience wrapper for
the PEP 302 get_data() API.
..
.. bpo: 2616
.. date: 6877
.. nonce: UHPY7r
.. section: Library
The ctypes.pointer() and ctypes.POINTER() functions are now implemented in C
for better performance.
..
.. bpo: 2408
.. date: 6876
.. nonce: GhLvZ5
.. section: Library
The ``_types`` module, which was used as in implementation detail of the
public ``types`` module, has been removed and replaced by pure python code.
..
.. bpo: 2513
.. date: 6875
.. nonce: x3Kj5E
.. section: Library
distutils on Windows is now capable of cross-compiling extension modules
between 32 and 64 bit platforms. See the distutls build documentation for
more information.
..
.. bpo: 815646
.. date: 6874
.. nonce: GhCmJD
.. section: Library
Individual file objects may now be used from multiple threads at once
without fear of crashing the Python interpreter. If file.close() is called
while an object is in use by another thread an IOError exception will be
raised and the file will not be closed.
..
.. bpo: 0
.. date: 6873
.. nonce: NdBuEp
.. section: Library
The bundled libffi copy is now in sync with the recently released
libffi3.0.5 version, apart from some small changes to
Modules/_ctypes/libffi/configure.ac.
..
.. bpo: 2385
.. date: 6872
.. nonce: qIBVVF
.. section: Library
distutils.core.run_script() makes __file__ available, so the controlled
environment will more closely mirror the typical script environment. This
supports setup.py scripts that refer to data files.
..
.. bpo: 2550
.. date: 6871
.. nonce: wbV22J
.. section: Tests
The approach used by client/server code for obtaining ports to listen on in
network-oriented tests has been refined in an effort to facilitate running
multiple instances of the entire regression test suite in parallel without
issue. test_support.bind_port() has been fixed such that it will always
return a unique port -- which wasn't always the case with the previous
implementation, especially if socket options had been set that affected
address reuse (i.e. SO_REUSEADDR, SO_REUSEPORT). The new implementation of
bind_port() will actually raise an exception if it is passed an
AF_INET/SOCK_STREAM socket with either the SO_REUSEADDR or SO_REUSEPORT
socket option set. Furthermore, if available, bind_port() will set the
SO_EXCLUSIVEADDRUSE option on the socket it's been passed. This currently
only applies to Windows. This option prevents any other sockets from
binding to the host/port we've bound to, thus removing the possibility of
the 'non-deterministic' behaviour, as Microsoft puts it, that occurs when a
second SOCK_STREAM socket binds and accepts to a host/port that's already
been bound by another socket. The optional preferred port parameter to
bind_port() has been removed. Under no circumstances should tests be hard
coding ports!
test_support.find_unused_port() has also been introduced, which will pass a
temporary socket object to bind_port() in order to obtain an unused port.
The temporary socket object is then closed and deleted, and the port is
returned. This method should only be used for obtaining an unused port in
order to pass to an external program (i.e. the -accept [port] argument to
openssl's s_server mode) or as a parameter to a server-oriented class that
doesn't give you direct access to the underlying socket used.
Finally, test_support.HOST has been introduced, which should be used for the
host argument of any relevant socket calls (i.e. bind and connect).
The following tests were updated to following the new conventions:
test_socket, test_smtplib, test_asyncore, test_ssl, test_httplib,
test_poplib, test_ftplib, test_telnetlib, test_socketserver, test_asynchat
and test_socket_ssl.
It is now possible for multiple instances of the regression test suite to
run in parallel without issue.
..
.. bpo: 1496032
.. date: 6870
.. nonce: DcJtNu
.. section: Build
On alpha, use -mieee when gcc is the compiler.
..
.. bpo: 2544
.. date: 6869
.. nonce: -H_NZm
.. section: Build
On HP-UX systems, use 'gcc -shared' for linking when gcc is used as
compiler.
..
.. bpo: 2573
.. date: 6868
.. nonce: 4wDeJ7
.. section: Build
On MacOS X it is now possible to install the framework with a different name
using --with-framework-name=NAME.
..
.. bpo: 0
.. date: 6867
.. nonce: yznsKq
.. section: C API
Added implementation of copysign, acosh, asinh, atanh and log1p to the new
files Include/pymath.h and Python/pymath.h for platforms which provide the
functions through their libm. The files also contains several helpers and
constants for math.
..
.. bpo: 0
.. date: 6866
.. nonce: Kr65an
.. section: C API
Added a new convenience macro, PyErr_WarnPy3k, for issuing Py3k warnings.