[Django] #34900: Python 3.13 compatibility.

32 views
Skip to first unread message

Django

unread,
Oct 14, 2023, 2:16:35 PM10/14/23
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
--------------------------------------------+------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
Severity: Normal | Keywords:
Triage Stage: Someday/Maybe | Has patch: 0
Needs documentation: 0 | Needs tests: 0
Patch needs improvement: 0 | Easy pickings: 0
UI/UX: 0 |
--------------------------------------------+------------------------
Python 3.13 final is scheduled for October 2024 (see
[https://peps.python.org/pep-0719/ ​PEP 719]). This is a tracking ticket
for compatibility fixes for Django submitted in the meantime.

Django 5.1 will be the first version to support Python 3.13, because
Django 5.0 will end the mainstream support in August 2024.

--
Ticket URL: <https://code.djangoproject.com/ticket/34900>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Oct 16, 2023, 12:27:37 AM10/16/23
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------

Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 GitHub <noreply@…>):

In [changeset:"20b7aac7ca60b0352d926340622e618bcbee54a8" 20b7aac7]:
{{{
#!CommitTicketReference repository=""
revision="20b7aac7ca60b0352d926340622e618bcbee54a8"
Refs #34900, Refs #34118 -- Updated assertion in
test_skip_class_unless_db_feature() test on Python 3.12.1+.

Python 3.12.1+ no longer includes skipped tests in the number of
running tests. Check out:

https://github.com/python/cpython/issues/110890#issuecomment-1763458686
https://github.com/python/cpython/pull/106588
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:1>

Django

unread,
Oct 16, 2023, 12:28:46 AM10/16/23
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 Mariusz Felisiak <felisiak.mariusz@…>):

In [changeset:"448510a94b9af30e1d9384166f830e8da2ef0438" 448510a9]:
{{{
#!CommitTicketReference repository=""
revision="448510a94b9af30e1d9384166f830e8da2ef0438"
[5.0.x] Refs #34900, Refs #34118 -- Updated assertion in


test_skip_class_unless_db_feature() test on Python 3.12.1+.

Python 3.12.1+ no longer includes skipped tests in the number of
running tests. Check out:

https://github.com/python/cpython/issues/110890#issuecomment-1763458686
https://github.com/python/cpython/pull/106588
Backport of 20b7aac7ca60b0352d926340622e618bcbee54a8 from main
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:2>

Django

unread,
Oct 16, 2023, 12:29:09 AM10/16/23
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 Mariusz Felisiak <felisiak.mariusz@…>):

In [changeset:"a576ef98aea2709741f32a863cff3c7a54172ded" a576ef9]:
{{{
#!CommitTicketReference repository=""
revision="a576ef98aea2709741f32a863cff3c7a54172ded"
[4.2.x] Refs #34900, Refs #34118 -- Updated assertion in


test_skip_class_unless_db_feature() test on Python 3.12.1+.

Python 3.12.1+ no longer includes skipped tests in the number of
running tests. Check out:

--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:3>

Django

unread,
Nov 20, 2023, 1:53:08 PM11/20/23
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 GitHub <noreply@…>):

In [changeset:"00a950f923435188a6c1d4ccdcb42c37cdc3976a" 00a950f9]:
{{{
#!CommitTicketReference repository=""
revision="00a950f923435188a6c1d4ccdcb42c37cdc3976a"
Refs #34900 -- Added Python 3.13 to daily builds.
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:4>

Django

unread,
Nov 21, 2023, 1:54:28 AM11/21/23
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 GitHub <noreply@…>):

In [changeset:"6af83d2ee631afaec8bb018b81b2eba62a0524c2" 6af83d2e]:
{{{
#!CommitTicketReference repository=""
revision="6af83d2ee631afaec8bb018b81b2eba62a0524c2"
Refs #34900 -- Skipped argon2-cffi requirement on daily builds for Python
3.13.
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:5>

Django

unread,
Nov 22, 2023, 3:51:37 AM11/22/23
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 GitHub <noreply@…>):

In [changeset:"584fc49ac48acb16051c3153d01bb23aa8599a52" 584fc49]:
{{{
#!CommitTicketReference repository=""
revision="584fc49ac48acb16051c3153d01bb23aa8599a52"
Refs #34900 -- Skipped Selenium requirement on daily builds for Python
3.13.

Selenium required trio and trio required cffi on Windows.
}}}

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

Django

unread,
Feb 10, 2024, 11:07:55 AMFeb 10
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 Mariusz Felisiak <felisiak.mariusz@…>):

In [changeset:"bc8471f0aac8f0c215b9471b594d159783bac19b" bc8471f0]:
{{{#!CommitTicketReference repository=""
revision="bc8471f0aac8f0c215b9471b594d159783bac19b"


Refs #34900, Refs #34118 -- Updated assertion in

test_skip_class_unless_db_feature() test on Python 3.12.2+.

Python 3.12.2 bring back the skipped tests in the number of running
tests. Refs
https://github.com/python/cpython/commit/0a737639dcd3b7181250f5d56694b192eaddeef0
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:7>

Django

unread,
Feb 10, 2024, 11:08:30 AMFeb 10
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 Mariusz Felisiak <felisiak.mariusz@…>):

In [changeset:"1ba5afa0f21f10843bb530b443687e07a511516a" 1ba5afa]:
{{{#!CommitTicketReference repository=""
revision="1ba5afa0f21f10843bb530b443687e07a511516a"
[5.0.x] Refs #34900, Refs #34118 -- Updated assertion in


test_skip_class_unless_db_feature() test on Python 3.12.2+.

Python 3.12.2 bring back the skipped tests in the number of running
tests. Refs
https://github.com/python/cpython/commit/0a737639dcd3b7181250f5d56694b192eaddeef0

Backport of bc8471f0aac8f0c215b9471b594d159783bac19b from main
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:8>

Django

unread,
Feb 10, 2024, 11:09:28 AMFeb 10
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 Mariusz Felisiak <felisiak.mariusz@…>):

In [changeset:"86d8034972db5014769cdd4832125067f31b3e8b" 86d8034]:
{{{#!CommitTicketReference repository=""
revision="86d8034972db5014769cdd4832125067f31b3e8b"
[4.2.x] Refs #34900, Refs #34118 -- Updated assertion in


test_skip_class_unless_db_feature() test on Python 3.12.2+.

Python 3.12.2 bring back the skipped tests in the number of running
tests. Refs
https://github.com/python/cpython/commit/0a737639dcd3b7181250f5d56694b192eaddeef0

Backport of bc8471f0aac8f0c215b9471b594d159783bac19b from main
}}}
--

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

Django

unread,
Feb 20, 2024, 2:59:36 PMFeb 20
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 GitHub <noreply@…>):

In [changeset:"3426a5c33c36266af42128ee9eca4921e68ea876" 3426a5c3]:
{{{#!CommitTicketReference repository=""
revision="3426a5c33c36266af42128ee9eca4921e68ea876"
Refs #34900 -- Fixed
CommandTypes.test_help_default_options_with_custom_arguments test on
Python 3.13+.

https://github.com/python/cpython/commit/c4a2e8a2c5188c3288d57b80852e92c83f46f6f3
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:10>

Django

unread,
Mar 15, 2024, 7:51:50 AMMar 15
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 GitHub <noreply@…>):

In [changeset:"b231bcd19e57267ce1fc21d42d46f0b65fdcfcf8" b231bcd1]:
{{{#!CommitTicketReference repository=""
revision="b231bcd19e57267ce1fc21d42d46f0b65fdcfcf8"
Refs #34900 -- Fixed SafeMIMEText.set_payload() crash on Python 3.13.

Payloads with surrogates are passed to the set_payload() since
https://github.com/python/cpython/commit/f97f25ef5dfcdfec0d9a359fd970abd139cf3428
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:11>

Django

unread,
Apr 10, 2024, 11:57:04 AMApr 10
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 Sarah Boyce <42296566+sarahboyce@…>):

In [changeset:"338ec052b4824d3f621629b3bf0f344c7a43c3dc" 338ec052]:
{{{#!CommitTicketReference repository=""
revision="338ec052b4824d3f621629b3bf0f344c7a43c3dc"
Refs #35361 -- Added test for Email line length checks when dealing with
surrogate pairs.

Refs #33173, #34118 and #34900.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:12>

Django

unread,
Apr 10, 2024, 12:14:08 PMApr 10
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 Sarah Boyce <42296566+sarahboyce@…>):

In [changeset:"2e6ae1e96a405fc2ac318325956ce276cfb9830c" 2e6ae1e9]:
{{{#!CommitTicketReference repository=""
revision="2e6ae1e96a405fc2ac318325956ce276cfb9830c"
[5.0.x] Refs #34900, Refs #35361 -- Fixed SafeMIMEText.set_payload() crash
on Python 3.13.

Payloads with surrogates are passed to the set_payload() since
https://github.com/python/cpython/commit/f97f25ef5dfcdfec0d9a359fd970abd139cf3428

Backport of b231bcd19e57267ce1fc21d42d46f0b65fdcfcf8 from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/34900#comment:13>

Django

unread,
Apr 10, 2024, 12:31:14 PMApr 10
to django-...@googlegroups.com
#34900: Python 3.13 compatibility.
-------------------------------------+-------------------------------------
Reporter: Mariusz Felisiak | Owner: nobody
Type: New feature | Status: new
Component: Core (Other) | Version: 4.2
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 Sarah Boyce <42296566+sarahboyce@…>):

In [changeset:"0d3ddcaf2c74638a32781f361d467af572ced95f" 0d3ddcaf]:
{{{#!CommitTicketReference repository=""
revision="0d3ddcaf2c74638a32781f361d467af572ced95f"
[4.2.x] Refs #34900, Refs #35361 -- Fixed SafeMIMEText.set_payload() crash
on Python 3.13.

Payloads with surrogates are passed to the set_payload() since
https://github.com/python/cpython/commit/f97f25ef5dfcdfec0d9a359fd970abd139cf3428

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