[Python-Dev] 2.7 Release? 2.7 == last of the 2.x line?

Nick Coghlan ncoghlan at gmail.com
Wed Nov 4 13:45:45 CET 2009


Terry Reedy wrote:
> Guido van Rossum wrote:
>> On Tue, Nov 3, 2009 at 9:37 AM, "Martin v. Löwis" <martin at v.loewis.de>
>> wrote:
>>> (and no, adding things like nonlocal to 2.7 doesn't making porting of
>>> a real application or library any easier, since the existing application
>>> or library simply doesn't use that keyword.
>>
>> Agreed.
>>
>>> In fact, no change to 2.x
>>> can reasonably simplify porting - only changes to 3.x might - except
>>> for changes to 2to3, which can simplify porting a lot. But 2to3 should
>>> be run under 3.x, IMO.)
>>
>> Disagreed. Better "-3" warnings could make porting easier. (Not just
>> more warnings -- "better" might mean fewer false positives for
>> warnings already issued.)
> 
> There is also Eric Smith's list to consider: PEP3118 new buffer
> protocol, short float repr, and maybe io.

The pure Python io module was already backported for the 2.6 release
[1], as was the C API aspect of PEP 3118 [2].

Short float repr has since been backported for 2.7, as has the C
accelerated io module implementation and the Python API (memoryview)
aspect of PEP 3118.

I believe those 3 features alone are more than enough justification to
proceed with at least a 2.7 release (that is probably the point Eric was
making in posting that list of features in the first place).

As to how those backports can help with forward ports to Py3k, someone
made the point elsewhere in the thread that testing/experimenting via
2to3 is a very C++ like development cycle - there is a long build time
before you get to see the results of running a test. With features
backported to 2.x, you can instead use more traditional version checks
(or the interactive prompt) and get the usual quick feedback cycle via
the 2.7 version, before submitting your code to the tender mercies of
the 2to3 converter (or possibly avoid 2to3 altogether if the version
checks turn out to suffice for a given use case).

Cheers,
Nick.

[1] http://docs.python.org/whatsnew/2.6.html#pep-3116-new-i-o-library
[2]
http://docs.python.org/whatsnew/2.6.html#pep-3118-revised-buffer-protocol

-- 
Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia
---------------------------------------------------------------


More information about the Python-Dev mailing list