Hi all, In other threads we've discussed the problem of Python 2/3 compatibility where we need to catch exceptions and need the exception object itself. This leads to ugliness and possible poor performance on PyPy.
However, we could get around it completely if we drop Python 2.5 support, since the 'except Exception as e' syntax is valid from Python 2.6. [1] Other things I've read recently suggest life will be made much easier for out Python 3 work if we drop Python 2.5 support [2]. So, I propose that we attempt to merge the py3k work after the release of 1.4, rather than let it go stale and lose the good work done so far, and also drop support for Python 2.5 for Django 1.5. For reference, here are release dates so far, and Python versions, with my proposal sketched in: Django releases --------------- Django 1.0 - September 3, 2008 Django 1.1 - July 29, 2009 Django 1.2 - May 17, 2010 Django 1.3 - March 23, 2011 Django 1.4 - early 2012 ? Django 1.5 - late 2012 ?? Python releases Django dropped support --------------- ---------------------- Python 2.3 - July 29, 2003 in 1.2 released May 2010 Python 2.4 - November 30, 2004 in 1.4 released early 2012 (?) Python 2.5 - September 19, 2006 in 1.5 released late 2012 (?) So, we dropped Python 2.3 support 6 years 10 months after it was released. We will be dropping 2.4 support after approx 7 years 3 months, and we would be dropping Python 2.5 support after approx 6 years 3 months. So, this would be a slight squeeze compared to Python 2.3, and a bigger squeeze compared to 2.4. But given that I think a push to Python 3 is the right thing to do, this doesn't seem like an extreme programme at all. We *should* be squeezing the programme in terms of migrating from 2.x, not expanding it. It would be nice to be able to announce this when we release 1.4, if we agree on it. In the past we have talked about dropping a Python version with each Django release. The other thing to consider is support by the major vendors. I know very little about this side, but from what I've gleaned, RHEL5 goes into long term support mode in 2012 Q1 (it had Python 2.4, which we already dropped), and RHEL6 is already out, and has Python 2.6. Regards, Luke [1] http://docs.python.org/whatsnew/2.6.html [2] http://goo.gl/qNfKN -- Luke Plant || http://lukeplant.me.uk/ -- You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to django-developers@googlegroups.com. To unsubscribe from this group, send email to django-developers+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-developers?hl=en.