Collin raised a fair point in #django-dev that Ubuntu 16.04 bundles Python 3.5. I guess 16.10 will include Python 3.6 -- that will be released before Django 2.0 in December 2017.
Presumably any Python's we don't drop for 2.0 we will have to support until the next LTS (which means 2 more years where we can't use any Python 3.6+ features without extra work to support them on 3.4, 3.5), or else we risk stranding Django users on some Django version like 2.0 or 2.1 where they could have received security updates for longer if they stayed on on 1.11 LTS. I don't like that situation. How would you revise our Python support policy? In my mind, the purpose of LTS is for conservative organizations that don't want to use the latest Python, Django, etc. Are Red Hat users on Python 3.4 demanding the latest Django? Maybe if Django is more aggressive about dropping old Pythons, those users will demand newer Pythons. It's hard to quantify how much extra work it is to support old Python versions, but besides the overhead of conditional code, dropping old versions also brings the possibility to use new features in Python. It also increases the size of build matrices across the entire Django ecosystem since most packages follow Django's version support. https://www.djangoproject.com/download/#supported-versions https://docs.python.org/devguide/#status-of-python-branches On Tuesday, December 27, 2016 at 3:25:39 PM UTC-5, Florian Apolloner wrote: > > Imo we should not drop Python versions overeagerly. After all I do not > wanna compile our own python for djangoproject.com :D Given that Redhat > is on Python 3.4 for the foreseeable future, I'd actually even like to see > 3.4 still supported in Django 2.0 unless there is a good reason to drop it. > Fwiw, Ubuntu Trusty which is LTS and still supported also is on Python 3.4. > So unless there are compelling arguments to drop 3.4, lets keep it as long > as it is not too much work. > > Either way, I am completely against dropping Python 3.5 now -- lets make > the Django 2.0 migration not more painful than it has to be (ie I do not > want to force people to upgrade existing supported systems just to get the > latest python and therefor Django). > > Cheers, > Florian > > On Tuesday, December 27, 2016 at 4:12:57 PM UTC+1, Tim Graham wrote: >> >> When I drafted the 1.11 release notes in May, I wrote, "The next major >> release, Django 2.0, will only support Python 3.5+." >> >> Our Python version support policy is "Typically, we will support a Python >> version up to and including the first Django LTS release whose security >> support ends after security support for that version of Python ends." >> >> Python 3.5's EOL is September 2020 which I think is sufficiently close to >> Django 1.11's EOL of April 2020 that we could say Django 2.0 is Python >> 3.6+. The alternative is not to drop Python 3.5 compatibility until Django >> 2.2 LTS which is supported until April 2022. I don't see much advantage to >> that. Any objections? >> >> p.s. There is already a ticket suggesting to take advantage of a Python >> 3.6 feature: >> https://code.djangoproject.com/ticket/27635* - *django.utils.crypto >> should use secrets on Python 3.6+ >> > -- You received this message because you are subscribed to the Google Groups "Django developers (Contributions to Django itself)" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-developers+unsubscr...@googlegroups.com. To post to this group, send email to django-developers@googlegroups.com. Visit this group at https://groups.google.com/group/django-developers. To view this discussion on the web visit https://groups.google.com/d/msgid/django-developers/8a4bacd4-8f59-4d84-8ef0-4d7a9d1d5fc4%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.