Supported Python versions for Django 1.7

948 views
Skip to first unread message

Aymeric Augustin

unread,
Jun 28, 2013, 10:17:22 AM6/28/13
to django-d...@googlegroups.com
Hello,

We just forked the stable/1.6.x branch. The development of Django 1.7 starts now!

As far as I can tell, there's a consensus on dropping support for Python 2.6. That will allow us to remove the vendored copy of unittest2 and to take advantage of datastructures introduced in Python 2.7 like OrderedDict.

I think we can continue supporting Python 3.2 in addition to Python 3.3 and 3.4. But if you see good reasons to drop it, I'd like to hear them!

Thank you,

--
Aymeric.

charettes

unread,
Jun 28, 2013, 12:45:34 PM6/28/13
to django-d...@googlegroups.com
If we drop support for Python 2.6 in Django 1.7 we should document that 1.6 will be the last version to support and announce it on the next beta/candidate release.

Clayton Keller

unread,
Jun 28, 2013, 3:22:57 PM6/28/13
to django-d...@googlegroups.com
On 06/28/2013 11:45 AM, charettes wrote:
> If we drop support for Python 2.6 in Django 1.7 we should document that
> 1.6 will be the last version to support and announce it on the next
> beta/candidate release.
>
> Le vendredi 28 juin 2013 10:17:22 UTC-4, Aymeric Augustin a �crit :
>
> Hello,
>
> We just forked the stable/1.6.x branch. The development of Django
> 1.7 starts now!
>
> As far as I can tell, there's a consensus on dropping support for
> Python 2.6. That will allow us to remove the vendored copy of
> unittest2 and to take advantage of datastructures introduced in
> Python 2.7 like OrderedDict.
>
> I think we can continue supporting Python 3.2 in addition to Python
> 3.3 and 3.4. But if you see good reasons to drop it, I'd like to
> hear them!
>
> Thank you,
>
> --
> Aymeric.
>
>

I just wanted to note that dropping Python 2.6 will drop the ability to
use RHEL 6 based installs without installing a second 2.7 instance of
Python.

I believe RHEL 7 will provide Python 2.7 as its base package, but until
its release this deprecation could pose an issue for existing RHEL 6
users wanting to stay current.

I ask that you please keep this in mind.

Clay

Ed Marshall

unread,
Jun 28, 2013, 5:31:10 PM6/28/13
to django-d...@googlegroups.com
Per the recent Red Hat Summit in Boston, RHEL7 willl be based off of Fedora 19, so yes: 2.7 will be the default /usr/bin/python in that distribution.

A related point of note: Python 2.6 is also easily installable on RHEL5 via EPEL (parallel-installable with the Python 2.4 release that shipped with RHEL). So, for both current major releases of RHEL/CentOS/Scientific Linux, Python 2.6 is a common denominator.

(One could argue, though, that perhaps effort might be better-spent packaging Python 2.7 for EPEL6 much like 2.6 was back-ported to RHEL5 via EPEL, which would solve the problem for more projects than just Django. ;))

-Ed


On Fri, Jun 28, 2013 at 12:22 PM, Clayton Keller <inet...@ruraltel.net> wrote:
On 06/28/2013 11:45 AM, charettes wrote:
If we drop support for Python 2.6 in Django 1.7 we should document that
1.6 will be the last version to support and announce it on the next
beta/candidate release.

Le vendredi 28 juin 2013 10:17:22 UTC-4, Aymeric Augustin a écrit :

    Hello,

    We just forked the stable/1.6.x branch. The development of Django
    1.7 starts now!

    As far as I can tell, there's a consensus on dropping support for
    Python 2.6. That will allow us to remove the vendored copy of
    unittest2 and to take advantage of datastructures introduced in
    Python 2.7 like OrderedDict.

    I think we can continue supporting Python 3.2 in addition to Python
    3.3 and 3.4. But if you see good reasons to drop it, I'd like to
    hear them!

    Thank you,

    --
    Aymeric.



I just wanted to note that dropping Python 2.6 will drop the ability to use RHEL 6 based installs without installing a second 2.7 instance of Python.

I believe RHEL 7 will provide Python 2.7 as its base package, but until its release this deprecation could pose an issue for existing RHEL 6 users wanting to stay current.

I ask that you please keep this in mind.

Clay


--
You received this message because you are subscribed to the Google Groups "Django developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-developers+unsubscribe@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at http://groups.google.com/group/django-developers.
For more options, visit https://groups.google.com/groups/opt_out.





--
Ed Marshall <e...@logic.net>
Felix qui potuit rerum cognoscere causas.
http://esm.logic.net/

James Bennett

unread,
Jun 28, 2013, 8:46:49 PM6/28/13
to django-d...@googlegroups.com
I also think the overlap between

1) People who want to always be running the absolute latest-released cutting-edge versions of software, and
2) People who are running older editions of RHEL

...is likely to be rather small.

Ed Marshall

unread,
Jun 28, 2013, 8:58:52 PM6/28/13
to django-d...@googlegroups.com
Just to be clear: RHEL6 (which only ships Python 2.6) is the latest version available right now. So, if you're a RHEL/CentOS/Scientific Linux shop, you're either running Python 2.6, or you've rolled your own Python build. (We have, but I assume we're slightly abnormal in that regard; upgrading Django is somewhat less involved than rolling your own Python build. ;))

RHEL7 beta (which, as luck would have it, should also ship with Python 3.3) won't land until end of year, at the earliest; I'd expect CentOS and SL to lag behind that a bit.

(I'm not making an argument either way, by the way: just want people to understand that a major Linux distribution doesn't yet ship Python 2.7 with it's most current release.)


--
You received this message because you are subscribed to the Google Groups "Django developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-develop...@googlegroups.com.
To post to this group, send email to django-d...@googlegroups.com.

Vincent

unread,
Jun 29, 2013, 1:22:52 AM6/29/13
to django-d...@googlegroups.com
I agree that there is likely to be little overlap between people using old systems and people using bleeding edge Django versions. Along the same lines, it's worth noting that these users will have a supported version if Django (1.6) for more than a year from today anyway.

Python 2.6 reminds me of IE6 for some reason. My grandpa used to tell us stories about Python 2.6 when me and my brothers were kids. He used to talk about how someday Python would be really great. He was right. I miss the 80s. Anyway, sorry, I'm just reminiscing a bit.

Aymeric Augustin

unread,
Jun 29, 2013, 4:47:51 AM6/29/13
to django-d...@googlegroups.com
On 29 juin 2013, at 02:58, Ed Marshall <e...@logic.net> wrote:

> RHEL7 beta (which, as luck would have it, should also ship with Python 3.3) won't land until end of year, at the earliest; I'd expect CentOS and SL to lag behind that a bit.

Which is perfectly timely: Django 1.7 will land roughly at that time. That's the reason why I think it's time to raise the minimum requirement to Python 2.7.

--
Aymeric.



Florian Apolloner

unread,
Jun 29, 2013, 5:08:53 AM6/29/13
to django-d...@googlegroups.com
Hi,


On Friday, June 28, 2013 4:17:22 PM UTC+2, Aymeric Augustin wrote:
As far as I can tell, there's a consensus on dropping support for Python 2.6. That will allow us to remove the vendored copy of unittest2 and to take advantage of datastructures introduced in Python 2.7 like OrderedDict.

Oh yes, getting rid of our vendored unittest2 is totally worth it (debugging failures when someone imports from below django.utils.unittest2 is no fun)!

Cheers,
Florian

Peter Herndon

unread,
Jul 1, 2013, 11:17:27 AM7/1/13
to django-d...@googlegroups.com
Hi all,

For those on RHEL6 or a derivative, please note that RHEL Software Collections will provide an installation source for Python 2.7 and 3.3, as well as Postgres 9.2 and both MySQL 5.5 and MariaDB 5.5, and works for RHELs 6.2-6.4.

Furthermore, "With the notable exception of Node.js, all Red Hat Software Collections components are fully supported under Red Hat Enterprise Linux Subscription Level Agreements, are functionally complete, and are intended for production use."

https://access.redhat.com/site/documentation/en-US/Red_Hat_Software_Collections/1-Beta/html/1.0_Release_Notes/chap-RHSCL.html

I ran across this announcement via Nick Coghlan.

So, there's a supported version of Python 2.7 and 3.3 for RHEL 6, which should make Python deprecation choices easier. I would suggest that the above link get some mention in the documentation, as this will make things much easier to sell in shops that value stability and support, if this alternative solution is better known.

Regards,

---Peter

Clayton Keller

unread,
Jul 1, 2013, 11:34:28 AM7/1/13
to django-d...@googlegroups.com
On 07/01/2013 10:17 AM, Peter Herndon wrote:
> Hi all,
>
> For those on RHEL6 or a derivative, please note that RHEL Software Collections will provide an installation source for Python 2.7 and 3.3, as well as Postgres 9.2 and both MySQL 5.5 and MariaDB 5.5, and works for RHELs 6.2-6.4.
>
> Furthermore, "With the notable exception of Node.js, all Red Hat Software Collections components are fully supported under Red Hat Enterprise Linux Subscription Level Agreements, are functionally complete, and are intended for production use."
>
> https://access.redhat.com/site/documentation/en-US/Red_Hat_Software_Collections/1-Beta/html/1.0_Release_Notes/chap-RHSCL.html
>
> I ran across this announcement via Nick Coghlan.
>
> So, there's a supported version of Python 2.7 and 3.3 for RHEL 6, which should make Python deprecation choices easier. I would suggest that the above link get some mention in the documentation, as this will make things much easier to sell in shops that value stability and support, if this alternative solution is better known.
>
> Regards,
>
> ---Peter
>
> On Jun 29, 2013, at 5:08 AM, Florian Apolloner <f.apo...@gmail.com> wrote:
>
>> Hi,
>>
>> On Friday, June 28, 2013 4:17:22 PM UTC+2, Aymeric Augustin wrote:
>> As far as I can tell, there's a consensus on dropping support for Python 2.6. That will allow us to remove the vendored copy of unittest2 and to take advantage of datastructures introduced in Python 2.7 like OrderedDict.
>>
>> Oh yes, getting rid of our vendored unittest2 is totally worth it (debugging failures when someone imports from below django.utils.unittest2 is no fun)!
>>
>> Cheers,
>> Florian
>>

Thanks Peter.

This is the first I've seen this. I think I'll check with those at
CentOS to see if they are supporting this and if not if they have any
plans to do so.

Clay

Clayton Keller

unread,
Jul 1, 2013, 11:52:09 AM7/1/13
to django-d...@googlegroups.com
I should read more before I post. I think this is going to work just
fine for us on CentOS 6. I will continue testing locally. Thank you
everyone for your time, suggestions, and added info on package availability.

Clay

Aymeric Augustin

unread,
Jul 1, 2013, 4:58:13 PM7/1/13
to django-d...@googlegroups.com
On 1 juil. 2013, at 17:17, Peter Herndon <tphe...@gmail.com> wrote:

> So, there's a supported version of Python 2.7 and 3.3 for RHEL 6, which should make Python deprecation choices easier. I would suggest that the above link get some mention in the documentation, as this will make things much easier to sell in shops that value stability and support, if this alternative solution is better known.

That's good news.

I've created a ticket to keep track of your suggestion: https://code.djangoproject.com/ticket/20685

I've also updated the dev docs to reflect my proposal, and I've started deprecating modules that were copied into Django only for use on Python 2.6 and earlier.

--
Aymeric.




VernonCole

unread,
Jul 1, 2013, 5:44:49 PM7/1/13
to django-d...@googlegroups.com

Dropping support of 3.2 would potentially aid projects which have not yet converted to Python 3, since Python 3.3 supports u"Unicode Literals" but 3.2 does not. Skipping over the early 3.x versions vastly eases transition from 2.6 to 3.3.

Besides, what are the chances that someone running Python 3.n is _not_ running 3.3?
--
Vernon Cole

Alex Ogier

unread,
Jul 1, 2013, 7:24:30 PM7/1/13
to django-d...@googlegroups.com
Debian Wheezy and Ubuntu 12.04 LTS are both on Python 3.2.


--

Aymeric Augustin

unread,
Jul 2, 2013, 2:08:03 AM7/2/13
to django-d...@googlegroups.com
On 1 juil. 2013, at 23:44, VernonCole <verno...@gmail.com> wrote:

> Dropping support of 3.2 would potentially aid projects which have not yet converted to Python 3, since Python 3.3 supports u"Unicode Literals" but 3.2 does not.

Third-party projects are free to set their own version requirements. For instance a project can declare it's compatible with Django 1.7 and Python 2.7 or 3.3. Supporting *more* versions doesn't hurt :)

--
Aymeric.




Reply all
Reply to author
Forward
0 new messages