we need to talk about how many more 2.7 releases there are
going to be. At the release of 2.7.0, I thought we promised 5 years of
bugfix maintenance, but my memory may be fuddled.
> This means we need to talk about how many more 2.7 releases there are
> going to be. At the release of 2.7.0, I thought we promised 5 years of
> bugfix maintenance, but my memory may be fuddled.
I'd like to promote the idea to abandon 2.7 bug fix releases earlier
than that, e.g. along with the release of 3.4. My recollection is
that "we" didn't actually promise any specific time frame; I recall
that Guido said that Python 2.7 would be supported "indefinitely",
which is not "infinitely" [1]. The Whats New says [2]
"""It’s very likely the 2.7 release will have a longer period of
maintenance compared to earlier 2.x versions."""
which explicitly refuses to set a date. Of course, individual committers
may have promised a more specific policy publicly in the past.
Since Christian asked: I'll likely continue to make binary releases
for Windows as along as Benjamin declares releases to be bug fix
releases. However, it will become increasingly difficult for users
to actually use these releases to build extension modules since
Microsoft decided to take VS 2008 Express offline (VS 2008 remains
available to MSDN subscribers; getting it from a store might
also be difficult in 2014).
I wonder whether the burden of maintaining three branches for bug
fixes (2.7, 3.3, default) and three more for security fixes
(2.6, 3.1, 3.2) is really sustainable for committers. I wouldn't
want to back off wrt. security fixes, and 2.6 will soon fall out
of the promised 5 years (after the initial release). However,
stopping to accept bug fixes for 2.7 would IMO significantly reduce
the load for committers - it would certainly continue to get
security fixes, and (for the time being) "indefinitely" so.
Wrt. to the 3.x migration rate: I think this is a self-fulfilling
prophecy. Migration rate will certainly increase once we announce
an end of 2.7, and then again when the end is actually reached.
I'm doubtful with respect to a community-managed ongoing 2.7 bug
fix release (i.e. I doubt that it will happen); the same was
discussed for a next 2.x feature release, and it hasn't happened.
OTOH, it is very likely that people will publish their own patches
to 2.7 throughout the net, just as the Linux distributions already
do. It may even happen that some volunteer offers to publish a
combined repository for such patches, with various members of the
community having write access to such a repository (but no formal
releases coming out of that).
Regards,
Martin
[1] http://mail.python.org/pipermail/python-dev/2009-November/093651.html
[2] http://docs.python.org/dev/whatsnew/2.7.html#the-future-for-python-2-x
Martin, you guys are shooting yourself in a foot. Almost noone uses
python 3 in production, even at pycon, which is the more progressive
crowd. There is a giant group of people using python that are not as
vocal. While I bet some are using Python 3, Python 2 is incredibly
popular for the "long tail" of libraries and applications. How much is
2.7 a burden? There are no major changes and it's pretty cool to
consider it "done".
For what is worth, we'll maintain the stdlib part of 2.7 past 2 years.
It would be cool if python-dev participated in that.
Cheers,
fijal
Where I work (a trading firm that uses Python as just one of many
different pieces of technology, not a company where Python is the core
technology upon which the firm is based) we are only just now
migrating from 2.4 to 2.7. I can't imagine we'll have migrated to
Python 3 in two years. It's not like we haven't seen this coming, but
you can only justify moving so fast with technology that already
works, especially if, like Python, you use it with lots of other
packages (most/all of which themselves have to be ported to Python 3)
and in-house software.
I think the discussion should focus on who's left on 2.x and why, not,
"yeah, releases every six months for the next couple years ought to do
it."
Just my 2¢.
Skip
With the current proposal, 2.7.8 in 2015 would be the last non-security release.
--
Regards,
Benjamin
On Apr 6, 2013, at 2:02 PM, Benjamin Peterson <benj...@python.org> wrote:
we need to talk about how many more 2.7 releases there are
going to be. At the release of 2.7.0, I thought we promised 5 years of
bugfix maintenance, but my memory may be fuddled.
I don't we need to make any "promises" beyond 5 years,but I also think it is likely the 2.7 will end-up being along-term maintenance version of Python.
At this year's Pycon keynote, I surveyed the crowd (approx 2500 people)and all almost everyone indicated that they had tried out Python 3.xand almost no one was using it in production or writing code for it.That indicates that Python 2.7 will continue to be important for a goodwhile.
In addition, the other implementations of Python (Jython, PyPy, GAE,and IronPython) are all at or nearly at Python 2.7. So, continuedsupport will be needed for their users as well.
After 2.7.4, I expect that the pace of real bug fixes will slow down,but that we'll continue to improve docs, add docstrings, update IDLE, etc.
IMO, it is premature to utter the phrase "the end of 2.7".Better to say, "2.7 is stable and is expected to only have minor updates".
Future point releases probably ought to occur "on their own schedule"whenever there are a sufficient number of changes to warrant a release,or an important security fix, or whenever the release managers have time.
-- Christian Tismer :^) <mailto:tis...@stackless.com> Software Consulting : Have a break! Take a ride on Python's Karl-Liebknecht-Str. 121 : *Starship* http://starship.python.net/ 14482 Potsdam : PGP key -> http://pgp.uni-mainz.de phone +49 173 24 18 776 fax +49 (30) 700143-0023 PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 whom do you want to sponsor today? http://www.stackless.com/
I started writing this last night before the flurry of messages which arrived overnight. I thought originally, "Oh, Skip, you're being too harsh." But now I'm not so sure. I think you are approaching the issue of 2.7's EOL incorrectly. Of those discussing the end of Python 2.7, how many of you still use it in your day-to-day work? Have any of you yet to move to Python 3? It sounds like many people at PyCon are still 2.x users. Where I work (a trading firm that uses Python as just one of many different pieces of technology, not a company where Python is the core technology upon which the firm is based) we are only just now migrating from 2.4 to 2.7. I can't imagine we'll have migrated to Python 3 in two years. It's not like we haven't seen this coming, but you can only justify moving so fast with technology that already works, especially if, like Python, you use it with lots of other packages (most/all of which themselves have to be ported to Python 3) and in-house software. I think the discussion should focus on who's left on 2.x and why, not, "yeah, releases every six months for the next couple years ought to do it."
Per my last message, 2.7.4 has at long last been released. I apologize
for the long interval between 2.7.3 and 2.7.4. To create more
determinism in the future, I will be soon updating PEP 373 with
approximate dates of future 2.7 bugfix releases. I will be aiming for
6 month intervals.
This means we need to talk about how many more 2.7 releases there are
going to be. At the release of 2.7.0, I thought we promised 5 years of
bugfix maintenance, but my memory may be fuddled. At any rate, 2.7.0
was released in July 2010, which currently puts us within a few months
of 3 years of maintenance. Over the past year, I've been happy to see
a lot of movement towards 3 including the porting of important
codebases like Twisted and Django. However, there's also no doubt that
2.x is still widely used. Obviously, there will be people who would be
happy if we kept maintaining 2.7 until 2025, but I think at this
juncture 5 total years of maintenance is reasonable. This means there
will be approximately 4 more 2.7 releases.
Thoughts?
On 07.04.13 14:10, Skip Montanaro wrote:when I read this, I was slightly shocked. You know what?Where I work (a trading firm that uses Python as just one of many different pieces of technology, not a company where Python is the core technology upon which the firm is based) we are only just now migrating from 2.4 to 2.7. I can't imagine we'll have migrated to Python 3 in two years. It's not like we haven't seen this coming, but you can only justify moving so fast with technology that already works, especially if, like Python, you use it with lots of other packages (most/all of which themselves have to be ported to Python 3) and in-house software. I think the discussion should focus on who's left on 2.x and why, not, "yeah, releases every six months for the next couple years ought to do it."
"""
We are pleased to announce the release of Python 2.4, final on November 30, 2004.
"""
I know that companies try to save (time? money?) something by not upgrading
software, and this is extremely annoying.
But I think every employee (including you) can quite easily put some pressure
on his company by claiming that Python 2.x is a dead end, and everybody is
about to move on to 3.x.
This does not have to be true, I just recognize that by claiming it and doing it
with your projects, the movement becomes a reality. Just say that we all need to
move on and cannot care about companies that ignore this necessity.
> So I believe that extension building is becoming more and more
> painful on Windows for Python 2.7 as time passes (and it is already
> way more painful than it is on Linux), and I see no way to do much
> about that. The "stable ABI" would have been a solution, but it's
> too late now for 2.7.
I think extension building for Python 2.7 on Windows for this reason is
moving from VS2008 to GCC 4.7 (MinGW). When using VS, we are stuck with
an old compiler (i.e. the .NET 3.5 SDK). With GCC, there is no such
issue - we just link with whatever CRT is appropriate. Thus, providing
link libraries for GCC/MinGW (both for the Python and the CRT DLL)
somewhat alleviates the problem, unless using VS is mandatory.
A long-term solution might be to expose the CRT used by the Python 2.7
DLL with DLL forwarding. That way, linking with the Python DLL's import
library would also link the correct CRT.
Sturla