.. bpo: 0 .. date: 7804 .. nonce: jherxT .. release date: 2010-01-09 .. section: Core and Builtins The ``__complex__()`` method is now looked up on the class of instances to make it consistent with other special methods. .. .. bpo: 7462 .. date: 7803 .. nonce: E1r1bi .. section: Core and Builtins Implement the stringlib fast search algorithm for the `rfind`, `rindex`, `rsplit` and `rpartition` methods. Patch by Florent Xicluna. .. .. bpo: 5080 .. date: 7802 .. nonce: Wb4q9j .. section: Core and Builtins A number of functions and methods previously produced a DeprecationWarning when passed a float argument where an integer was expected. These functions and methods now raise TypeError instead. The majority of the effects of this change are in the extension modules, but some core functions and methods are affected: notably the 'chr', 'range' and 'xrange' builtins, and many unicode/str methods. .. .. bpo: 7604 .. date: 7801 .. nonce: tTzdbD .. section: Core and Builtins Deleting an unset slotted attribute did not raise an AttributeError. .. .. bpo: 7534 .. date: 7800 .. nonce: UJiEZi .. section: Core and Builtins Fix handling of IEEE specials (infinities, nans, negative zero) in ** operator. The behaviour now conforms to that described in C99 Annex F. .. .. bpo: 7579 .. date: 7799 .. nonce: cmOrYb .. section: Core and Builtins The msvcrt module now has docstrings for all its functions. .. .. bpo: 7413 .. date: 7798 .. nonce: g6Euap .. section: Core and Builtins Passing '\0' as the separator to datetime.datetime.isoformat() used to drop the time part of the result. .. .. bpo: 1811 .. date: 7797 .. nonce: e1nd7g .. section: Core and Builtins Improve accuracy and cross-platform consistency for true division of integers: the result of a/b is now correctly rounded for ints a and b (at least on IEEE 754 platforms), and in particular does not depend on the internal representation of a long. .. .. bpo: 6108 .. date: 7796 .. nonce: j3A6pp .. section: Core and Builtins ``unicode(exception)`` and ``str(exception)`` should return the same message when only ``__str__()`` (and not ``__unicode__()``) is overridden in the subclass. .. .. bpo: 6834 .. date: 7795 .. nonce: iPCAPI .. section: Core and Builtins Replace the implementation for the 'python' and 'pythonw' executables on OSX. These executables now work properly with the arch(1) command: ``arch -ppc python`` will start a universal binary version of python in PPC mode (unlike previous releases). .. .. bpo: 1680159 .. date: 7794 .. nonce: zCoubo .. section: Core and Builtins Unicode coercion during an 'in' operation no longer masks the underlying error when the coercion fails for the left hand operand. .. .. bpo: 7491 .. date: 7793 .. nonce: bGallI .. section: Core and Builtins Metaclass's __cmp__ method was ignored. .. .. bpo: 7466 .. date: 7792 .. nonce: zrhYS4 .. section: Core and Builtins Segmentation fault when the garbage collector is called in the middle of populating a tuple. Patch by Florent Xicluna. .. .. bpo: 6963 .. date: 7791 .. nonce: TJvFT0 .. section: Library Added "maxtasksperchild" argument to ``multiprocessing.Pool``, allowing for a maximum number of tasks within the pool to be completed by the worker before that worker is terminated, and a new one created to replace it. .. .. bpo: 7617 .. date: 7790 .. nonce: duSdpP .. section: Library Make sure distutils.unixccompiler.UnixCCompiler recognizes gcc when it has a fully qualified configuration prefix. Initial patch by Arfrever. .. .. bpo: 7092 .. date: 7789 .. nonce: 8Bxjpz .. section: Library Remove py3k warning when importing cPickle. 2to3 handles renaming of `cPickle` to `pickle`. The warning was annoying since there's no alternative to cPickle if you care about performance. Patch by Florent Xicluna. .. .. bpo: 7455 .. date: 7788 .. nonce: 4QZ2RC .. section: Library Fix possible crash in cPickle on invalid input. Patch by Victor Stinner. .. .. bpo: 7092 .. date: 7787 .. nonce: z80fv1 .. section: Library Fix the DeprecationWarnings emitted by the standard library when using the -3 flag. Patch by Florent Xicluna. .. .. bpo: 7471 .. date: 7786 .. nonce: Flh7OS .. section: Library Improve the performance of GzipFile's buffering mechanism, and make it implement the ``io.BufferedIOBase`` ABC to allow for further speedups by wrapping it in an ``io.BufferedReader``. Patch by Nir Aides. .. .. bpo: 3972 .. date: 7785 .. nonce: T0AsF9 .. section: Library ``httplib.HTTPConnection`` now accepts an optional source_address parameter to allow specifying where your connections come from. .. .. bpo: 0 .. date: 7784 .. nonce: VuT7xt .. section: Library ``socket.create_connection()`` now accepts an optional source_address parameter. .. .. bpo: 5511 .. date: 7783 .. nonce: qXXb66 .. section: Library ``zipfile.ZipFile`` can now be used as a context manager. Initial patch by Brian Curtin. .. .. bpo: 0 .. date: 7782 .. nonce: jVBfGB .. section: Library Distutils now correctly identifies the build architecture as "x86_64" when building on OSX 10.6 without "-arch" flags. .. .. bpo: 7556 .. date: 7781 .. nonce: 9TArd4 .. section: Library Distutils' msvc9compiler now opens the MSVC Manifest file in text mode. .. .. bpo: 7552 .. date: 7780 .. nonce: cuagLV .. section: Library Removed line feed in the base64 Authorization header in the Distutils upload command to avoid an error when PyPI reads it. This occurs on long passwords. Initial patch by JP St. Pierre. .. .. bpo: 7231 .. date: 7779 .. nonce: PtW-pZ .. section: Library urllib2 cannot handle https with proxy requiring auth. Patch by Tatsuhiro Tsujikawa. .. .. bpo: 7349 .. date: 7778 .. nonce: qwbHfI .. section: Library Make methods of file objects in the io module accept None as an argument where file-like objects (ie StringIO and BytesIO) accept them to mean the same as passing no argument. .. .. bpo: 7348 .. date: 7777 .. nonce: 47KswH .. section: Library ``StringIO.StringIO.readline(-1)`` now acts as if it got no argument like other file objects. .. .. bpo: 7357 .. date: 7776 .. nonce: EteBpH .. section: Library tarfile no longer suppresses fatal extraction errors by default. .. .. bpo: 7470 .. date: 7775 .. nonce: IW_7wI .. section: Library logging: Fix bug in Unicode encoding fallback. .. .. bpo: 5949 .. date: 7774 .. nonce: oAWtv2 .. section: Library Fixed IMAP4_SSL hang when the IMAP server response is missing proper end-of-line termination. .. .. bpo: 7457 .. date: 7773 .. nonce: n8Bkqb .. section: Library Added a read_pkg_file method to ``distutils.dist.DistributionMetadata``. .. .. bpo: 3745 .. date: 7772 .. nonce: 1on7AT .. section: Library Undo the 2.7a1 change to have hashlib to reject unicode and non buffer API supporting objects as input. That behavior is for 3.x only. .. .. bpo: 7767 .. date: 7771 .. nonce: XmNIZJ .. section: C API New function ``PyLong_AsLongLongAndOverflow()`` added, analogous to ``PyLong_AsLongAndOverflow()``. .. .. bpo: 5080 .. date: 7770 .. nonce: bMlEGy .. section: C API The argument parsing functions ``PyArg_ParseTuple()``, ``PyArg_ParseTupleAndKeywords()``, ``PyArg_VaParse()``, ``PyArg_VaParseTupleAndKeywords()`` and ``PyArg_Parse()`` no longer accept float arguments for integer format codes (other than 'L'): previously an attempt to pass a float resulted in a DeprecationWarning; now it gives a TypeError. For the 'L' format code (which previously had no warning) there is now a DeprecationWarning. .. .. bpo: 7033 .. date: 7769 .. nonce: koLSHo .. section: C API Function ``PyErr_NewExceptionWithDoc()`` added. .. .. bpo: 6491 .. date: 7768 .. nonce: mDJ_mR .. section: Build Allow --with-dbmliborder to specify that no dbms will be built. .. .. bpo: 6943 .. date: 7767 .. nonce: HhHPsy .. section: Build Use pkg-config to find the libffi headers when the ``--with-system-ffi`` flag is used. .. .. bpo: 7609 .. date: 7766 .. nonce: w1witS .. section: Build Add a ``--with-system-expat`` option that causes the system's expat library to be used for the pyexpat module instead of the one included with Python. .. .. bpo: 7589 .. date: 7765 .. nonce: uh9YyY .. section: Build Only build the nis module when the correct header files are found. .. .. bpo: 0 .. date: 7764 .. nonce: 6WvEdi .. section: Build Switch to OpenSSL 0.9.8l and sqlite 3.6.21 on Windows. .. .. bpo: 7541 .. date: 7763 .. nonce: V8g0W6 .. section: Build when using ``python-config`` with a framework install the compiler might use the wrong library. .. .. bpo: 7376 .. date: 7762 .. nonce: Y0Cani .. section: Tests Instead of running a self-test (which was failing) when called with no arguments, doctest.py now gives a usage message. .. .. bpo: 7396 .. date: 7761 .. nonce: WRRHMZ .. section: Tests Fix regrtest -s, which was broken by the -j enhancement. .. .. bpo: 7498 .. date: 7760 .. nonce: Cpaz-t .. section: Tests test_multiprocessing now uses test_support.find_unused_port instead of a hardcoded port number in test_rapid_restart.