Opened 4 years ago

Closed 4 years ago

Last modified 3 years ago

#30116 closed Cleanup/optimization (fixed)

Drop support for Python 3.5

Reported by: Tim Graham Owned by: Tim Graham
Component: Core (Other) Version: dev
Severity: Normal Keywords:
Cc: Triage Stage: Accepted
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

Django 2.2 LTS, supported until April 2022, is the last version to support Python 3.5 (end of life: September 2020).

Change History (12)

comment:1 Changed 4 years ago by Tim Graham

Has patch: set

comment:2 Changed 4 years ago by Claude Paroz

I'm not so enthusiast to drop Python 3.5 now (it is still the default version in Debian stable). Couldn't this be done in Django 3.1 instead?

comment:3 Changed 4 years ago by Tim Graham

If that's the consensus, I guess we should rewrite our policy about Python version support and instead base it on Debian (you made the same argument about Python 3.4 support).

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. For example, Python 3.3 security support ends September 2017 and Django 1.8 LTS security support ends April 2018. Therefore Django 1.8 is the last version to support Python 3.3.

comment:4 Changed 4 years ago by Claude Paroz

It's not a consensus at all for now, I'm just on the side on the very conservative people wrt long time support software. Feel free to ignore me if I'm on a small minority boat. I'm not vindictive :-)

comment:5 Changed 4 years ago by Simon Charette

Thanks for your input Claude. I also think we should stick to our documented policy as well to be coherent with the previous releases.

I'm not too familiar with Debian's package policy but given 2.2 LTS is not going away anytime soon nothing should prevent them from sticking to it until stable defaults to 3.6+?

Last edited 4 years ago by Simon Charette (previous) (diff)

comment:6 Changed 4 years ago by Claude Paroz

Yes, sure, it's more about people willing to contribute to Django master will have to install a custom Python version in current Debian stable (the next one should be out this summer).

comment:7 Changed 4 years ago by Tim Graham

I created a django-developers discussion regarding the Python version support policy.

comment:8 Changed 4 years ago by Carlton Gibson

There's not consensus to change the policy on the mailing list, so we can push forward with this.

comment:9 Changed 4 years ago by Tim Graham <timograham@…>

Resolution: fixed
Status: assignedclosed

In 7e6b214:

Fixed #30116 -- Dropped support for Python 3.5.

comment:10 Changed 4 years ago by Mariusz Felisiak <felisiak.mariusz@…>

In b711eafd:

Refs #30116 -- Removed unnecessary str() calls in CommonPasswordValidator.

open() and gzip.open() supports path-like objects since Python 3.6.

comment:11 Changed 3 years ago by Mariusz Felisiak <felisiak.mariusz@…>

In e0e88cea:

Refs #30116 -- Simplified stdout/stderr decoding with subprocess.run()'s encoding argument.

The encoding argument has been available since Python 3.6.
https://docs.python.org/3/library/subprocess.html#subprocess.run

comment:12 Changed 3 years ago by Mariusz Felisiak <felisiak.mariusz@…>

In d6aff369:

Refs #30116 -- Simplified regex match group access with Match.getitem().

The method has been available since Python 3.6. The shorter syntax is
also marginally faster.

Note: See TracTickets for help on using tickets.
Back to Top