[Django] #36005: Drop support for Python 3.10 & 3.11.

26 views
Skip to first unread message

Django

unread,
Dec 12, 2024, 9:57:54 AM12/12/24
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Type:
| Cleanup/optimization
Status: new | Component: Core
| (Other)
Version: dev | Severity: Normal
Keywords: | Triage Stage:
| Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
If I understood the process correctly then Django 5.2 LTS, supported until
April 2028, is the last version to support:

* Python 3.10 (end of life: October 2026)
* Python 3.11 (end of life: October 2027)

See ​our policy about Python version support and discussions regarding the
Python version support policy:

* https://groups.google.com/forum/#!topic/django-
developers/YDJwI7uvgxU/discussion
* https://groups.google.com/forum/#!msg/django-
developers/ezUpskYAcyo/discussion
--
Ticket URL: <https://code.djangoproject.com/ticket/36005>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Dec 12, 2024, 9:58:02 AM12/12/24
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: (none)
Type: | Status: new
Cleanup/optimization |
Component: Core (Other) | Version: dev
Severity: Normal | Resolution:
Keywords: | Triage Stage:
| Unreviewed
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Sarah Boyce):

This ticket should be "Someday/Maybe" until we start working on Django
6.0.
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:1>

Django

unread,
Dec 12, 2024, 11:12:50 AM12/12/24
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: (none)
Type: | Status: new
Cleanup/optimization |
Component: Core (Other) | Version: dev
Severity: Normal | Resolution:
Keywords: | Triage Stage:
| Someday/Maybe
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Tim Graham):

* stage: Unreviewed => Someday/Maybe

Comment:

That's correct. The policy is also documented in
[https://docs.djangoproject.com/en/dev/faq/install/#what-python-version-
can-i-use-with-django the FAQ]:

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.9 security support ends
in October 2025 and Django 4.2 LTS security support ends in April 2026.
Therefore Django 4.2 is the last version to support Python 3.9.
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:2>

Django

unread,
Dec 12, 2024, 2:40:16 PM12/12/24
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: (none)
Type: | Status: new
Cleanup/optimization |
Component: Core (Other) | Version: dev
Severity: Normal | Resolution:
Keywords: | Triage Stage:
| Someday/Maybe
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Claude Paroz):

I cannot refrain from voicing my traditional rant :-) Django 6.0 lifetime
is entirely inside the Python 3.11 lifetime, so I don't see the point in
dropping support in that case. I know, I know, it's not the policy...
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:3>

Django

unread,
Dec 13, 2024, 1:32:52 AM12/13/24
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: (none)
Type: | Status: new
Cleanup/optimization |
Component: Core (Other) | Version: dev
Severity: Normal | Resolution:
Keywords: | Triage Stage:
| Someday/Maybe
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Carlton Gibson):

I’ll just add that I’ve shared Claude’s concerns. (See those two threads)

Tim was very patient in running me around the playground, thinking through
the issues there.

Particularly the second thread I found convincing.
It’s difficult to see how or when we could adjust dropping the older
versions

(With Python now having 5 live versions with the annual release cycle the
CI and support matrix is already extensive. I’m sceptical about extending
it further.)

I think one problem is we always have this conversation at this point in
the cycle, where if we are going to change it we should probably discuss
it at the start of the cycle in order to have time to talk it through. (So
if we want to think about it for 7.x we should discuss again after/around
6.0)
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:4>

Django

unread,
Jan 7, 2025, 9:04:50 AMJan 7
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: (none)
Type: | Status: new
Cleanup/optimization |
Component: Core (Other) | Version: dev
Severity: Normal | Resolution:
Keywords: | Triage Stage:
| Someday/Maybe
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Vir2S):

I think there is no reason to drop support python versions.
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:5>

Django

unread,
Jan 15, 2025, 6:41:44 AMJan 15
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: Mariusz
Type: | Felisiak
Cleanup/optimization | Status: assigned
Component: Core (Other) | Version: dev
Severity: Normal | Resolution:
Keywords: | Triage Stage:
| Someday/Maybe
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Sarah Boyce):

* owner: (none) => Mariusz Felisiak
* status: new => assigned

--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:6>

Django

unread,
Jan 17, 2025, 9:45:54 AMJan 17
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: Mariusz
Type: | Felisiak
Cleanup/optimization | Status: assigned
Component: Core (Other) | Version: dev
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Sarah Boyce):

* stage: Someday/Maybe => Accepted

--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:7>

Django

unread,
Jan 20, 2025, 4:48:49 AMJan 20
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: Mariusz
Type: | Felisiak
Cleanup/optimization | Status: assigned
Component: Core (Other) | Version: dev
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Sarah Boyce):

* needs_better_patch: 0 => 1

Comment:

Looks like [https://pypy.org/posts/2025/01/towards-pypy311-an-update.html
pypy is working on 3.11 support] and so I don't suppose it will support
3.12 "shortly".
We have a statement that
[https://docs.djangoproject.com/en/5.1/topics/performance/#id1 we are
compatible with pypy], which will no longer be the case once 3.10 is
dropped (ref #34986).
I think we should drop pypy support as part of the work for this ticket
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:8>

Django

unread,
Jan 20, 2025, 5:56:29 AMJan 20
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: Mariusz
Type: | Felisiak
Cleanup/optimization | Status: assigned
Component: Core (Other) | Version: dev
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Mariusz Felisiak):

* needs_better_patch: 1 => 0

--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:9>

Django

unread,
Jan 20, 2025, 6:01:54 AMJan 20
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: Mariusz
Type: | Felisiak
Cleanup/optimization | Status: assigned
Component: Core (Other) | Version: dev
Severity: Normal | Resolution:
Keywords: | Triage Stage: Ready for
| checkin
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Sarah Boyce):

* stage: Accepted => Ready for checkin

--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:10>

Django

unread,
Jan 20, 2025, 8:07:38 AMJan 20
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: Mariusz
Type: | Felisiak
Cleanup/optimization | Status: closed
Component: Core (Other) | Version: dev
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Ready for
| checkin
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Sarah Boyce <42296566+sarahboyce@…>):

* resolution: => fixed
* status: assigned => closed

Comment:

In [changeset:"f5772de69679efb54129ac1cbca3579b512778af" f5772de6]:
{{{#!CommitTicketReference repository=""
revision="f5772de69679efb54129ac1cbca3579b512778af"
Fixed #36005 -- Dropped support for Python 3.10 and 3.11.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:11>

Django

unread,
Jan 28, 2025, 2:02:23 AMJan 28
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: Mariusz
Type: | Felisiak
Cleanup/optimization | Status: closed
Component: Core (Other) | Version: dev
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Ready for
| checkin
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by GitHub <noreply@…>):

In [changeset:"d9af197801376fae178761cac12d57178a738cf4" d9af197]:
{{{#!CommitTicketReference repository=""
revision="d9af197801376fae178761cac12d57178a738cf4"
Refs #36005 -- Bumped minimum supported versions of 3rd-party packages.

This bumps minimum supported versions of 3rd-party packages to the first
releases to support Python 3.12.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:12>

Django

unread,
Feb 18, 2025, 2:35:46 AMFeb 18
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: Mariusz
Type: | Felisiak
Cleanup/optimization | Status: closed
Component: Core (Other) | Version: dev
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Ready for
| checkin
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by GitHub <noreply@…>):

In [changeset:"efb7f9ced2dcf71294353596a265e3fd67faffeb" efb7f9c]:
{{{#!CommitTicketReference repository=""
revision="efb7f9ced2dcf71294353596a265e3fd67faffeb"
Refs #36005 -- Used datetime.UTC alias instead of datetime.timezone.utc.

datetime.UTC was added in Python 3.11.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:13>

Django

unread,
Oct 19, 2025, 2:13:28 PM (3 days ago) Oct 19
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: Mariusz
Type: | Felisiak
Cleanup/optimization | Status: closed
Component: Core (Other) | Version: dev
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Ready for
| checkin
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by GitHub <noreply@…>):

In [changeset:"ca3e0484ef31d13053af6a9d50667813e22fc282" ca3e048]:
{{{#!CommitTicketReference repository=""
revision="ca3e0484ef31d13053af6a9d50667813e22fc282"
Refs #36005 -- Bumped minimum supported versions of docutils to 0.22.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:14>

Django

unread,
Oct 19, 2025, 2:17:52 PM (3 days ago) Oct 19
to django-...@googlegroups.com
#36005: Drop support for Python 3.10 & 3.11.
-------------------------------------+-------------------------------------
Reporter: Sarah Boyce | Owner: Mariusz
Type: | Felisiak
Cleanup/optimization | Status: closed
Component: Core (Other) | Version: dev
Severity: Normal | Resolution: fixed
Keywords: | Triage Stage: Ready for
| checkin
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):

In [changeset:"195836b69af24d3c10fa994fb772c5be1cf065da" 195836b]:
{{{#!CommitTicketReference repository=""
revision="195836b69af24d3c10fa994fb772c5be1cf065da"
[6.0.x] Refs #36005 -- Bumped minimum supported versions of docutils to
0.22.

Backport of ca3e0484ef31d13053af6a9d50667813e22fc282 from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/36005#comment:15>
Reply all
Reply to author
Forward
0 new messages