--
Ticket URL: <https://code.djangoproject.com/ticket/32074>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
Comment (by Carlton Gibson <carlton@…>):
In [changeset:"1fd9b44a6b1bde29fb1f6746e007787505608974" 1fd9b44]:
{{{
#!CommitTicketReference repository=""
revision="1fd9b44a6b1bde29fb1f6746e007787505608974"
Refs #32074 -- Fixed handling memoryview content by HttpResponse on Python
3.10+.
An iterator was added to memoryview in Python 3.10,
see https://bugs.python.org/issue41732
Refs #30294
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:2>
Comment (by Mariusz Felisiak):
Subclassing `models.Choices` with `ipaddress.IPv4Network`/`IPv6Network`
raises `TypeError` on Python3.10.0a4 (it works properly in
Python3.10.0a3), see https://bugs.python.org/issue42851
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:3>
Comment (by Carlton Gibson <carlton@…>):
In [changeset:"5d9b065d3f93de056588dfee6f1776294dd8bab2" 5d9b065d]:
{{{
#!CommitTicketReference repository=""
revision="5d9b065d3f93de056588dfee6f1776294dd8bab2"
Refs #32074 -- Fixed TextChoices/IntegerChoices crash on Python 3.10.
EnumMeta has a new keyword argument 'boundary' in Python 3.10. This
is a new mechanism that controls how out-of-range / invalid bits are
handled, see https://bugs.python.org/issue38250.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:4>
Comment (by Carlton Gibson <carlton.gibson@…>):
In [changeset:"ff25791d2312c7886e6dd256c0ae2b869f72c4f1" ff25791d]:
{{{
#!CommitTicketReference repository=""
revision="ff25791d2312c7886e6dd256c0ae2b869f72c4f1"
[3.2.x] Refs #32074 -- Fixed TextChoices/IntegerChoices crash on Python
3.10.
EnumMeta has a new keyword argument 'boundary' in Python 3.10. This
is a new mechanism that controls how out-of-range / invalid bits are
handled, see https://bugs.python.org/issue38250.
Backport of 5d9b065d3f93de056588dfee6f1776294dd8bab2 from master
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:5>
Comment (by GitHub <noreply@…>):
In [changeset:"c6859f1a684edec7bb33038b4408046a4db0c16d" c6859f1a]:
{{{
#!CommitTicketReference repository=""
revision="c6859f1a684edec7bb33038b4408046a4db0c16d"
Refs #32074 -- Backported Enum.__repr__() from Python 3.10.
Enum.__repr__() was changed in [1], we should use the same format in
Python < 3.10.
[1] https://bugs.python.org/issue40066
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:6>
Comment (by GitHub <noreply@…>):
In [changeset:"619f26d2895d121854b1bed1b535d42b722e2eba" 619f26d2]:
{{{
#!CommitTicketReference repository=""
revision="619f26d2895d121854b1bed1b535d42b722e2eba"
Refs #32074 -- Made ExclusionConstraint.__repr__() use
Deferrable.__repr__().
Follow up to c6859f1a684edec7bb33038b4408046a4db0c16d.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:7>
Comment (by GitHub <noreply@…>):
In [changeset:"b8c9e9fae14676d2e81242cb8df1e2eeef9c3a2d" b8c9e9f]:
{{{
#!CommitTicketReference repository=""
revision="b8c9e9fae14676d2e81242cb8df1e2eeef9c3a2d"
Refs #32074 -- Removed usage of Python's deprecated distutils.version
package.
The distutils package was formally deprecated in Python 3.10 and will
be removed in Python 3.12.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:8>
Comment (by GitHub <noreply@…>):
In [changeset:"623c8cd8f41a99f22d39b264f7eaf7244417000b" 623c8cd8]:
{{{
#!CommitTicketReference repository=""
revision="623c8cd8f41a99f22d39b264f7eaf7244417000b"
Refs #32074 -- Used asyncio.get_running_loop() instead of
get_event_loop().
Using asyncio.get_event_loop() when there is no running event loop was
deprecated in Python 3.10, see https://bugs.python.org/issue39529.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:9>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"f9f6bd63c98dc2f01412887f4a98dbfdab363fdf" f9f6bd6]:
{{{
#!CommitTicketReference repository=""
revision="f9f6bd63c98dc2f01412887f4a98dbfdab363fdf"
Refs #32074 -- Removed usage of deprecated Thread.setDaemon().
Thread.setDaemon() was deprecated in Python 3.10 and will be removed in
Python 3.12.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:10>
Comment (by GitHub <noreply@…>):
In [changeset:"0250340e372f652c4f276e6874d452d683c94dfe" 0250340]:
{{{
#!CommitTicketReference repository=""
revision="0250340e372f652c4f276e6874d452d683c94dfe"
Refs #32074 -- Used Enum.repr() format proposed for Python 3.10.
The Python's Steering Council decided to revert changes in the Enum
module (see https://bugs.python.org/issue44559) and moved them to
Python 3.11.
Follow up to 5d9b065d3f93de056588dfee6f1776294dd8bab2.
Thanks Nick Pope for the review.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:11>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"7afca03c4058c25f2e1cec8d0b07c2157c93e831" 7afca03c]:
{{{
#!CommitTicketReference repository=""
revision="7afca03c4058c25f2e1cec8d0b07c2157c93e831"
Refs #32074 -- Fixed CommandTests.test_subparser_invalid_option on Python
3.10+.
Python 3.10.0rc1 changed the error messages issued by argparse on
invalid choice to include the argument name. Update the expected test
output to account for that.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:12>
Comment (by GitHub <noreply@…>):
In [changeset:"f1bcaa9be8227dce89a320ce1ca37e1df7c80d03" f1bcaa9b]:
{{{
#!CommitTicketReference repository=""
revision="f1bcaa9be8227dce89a320ce1ca37e1df7c80d03"
Refs #32074 -- Fixed find_module()/find_loader() warnings on Python 3.10+.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:13>
* owner: nobody => Mariusz Felisiak
* status: new => assigned
* stage: Someday/Maybe => Accepted
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:14>
Comment (by GitHub <noreply@…>):
In [changeset:"15987c9c5315ac30f069915e28de78ade788458d" 15987c9c]:
{{{
#!CommitTicketReference repository=""
revision="15987c9c5315ac30f069915e28de78ade788458d"
Refs #32074 -- Added Python 3.10 to classifiers and tox.ini.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:15>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"c8d0a8c9b606e1b213c3a141d580080650b5f798" c8d0a8c9]:
{{{
#!CommitTicketReference repository=""
revision="c8d0a8c9b606e1b213c3a141d580080650b5f798"
[4.0.x] Refs #32074 -- Added Python 3.10 to classifiers and tox.ini.
Backport of 15987c9c5315ac30f069915e28de78ade788458d from main
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:16>
* status: assigned => closed
* resolution: => fixed
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:17>
Comment (by Claude Paroz):
From the ticket description: `Django 3.2 will be the first version to
support Python 3.10.`
Is that still a goal?
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:18>
* status: closed => new
* resolution: fixed =>
Comment:
> Is that still a goal?
Yes, working on this. Sorry, shouldn't closed this ticket so soon.
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:19>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"8bebb1c04a40a8bb45368415cd01ccbf32fd3236" 8bebb1c0]:
{{{
#!CommitTicketReference repository=""
revision="8bebb1c04a40a8bb45368415cd01ccbf32fd3236"
[3.2.x] Refs #32074 -- Removed usage of Python's deprecated
distutils.version package.
The distutils package was formally deprecated in Python 3.10 and will
be removed in Python 3.12.
Backport of b8c9e9fae14676d2e81242cb8df1e2eeef9c3a2d from main
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:20>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"d0dc446444ad83aab7b5f38179cf093ad0222195" d0dc4464]:
{{{
#!CommitTicketReference repository=""
revision="d0dc446444ad83aab7b5f38179cf093ad0222195"
[3.2.x] Refs #32074 -- Removed usage of deprecated Thread.setDaemon().
Thread.setDaemon() was deprecated in Python 3.10 and will be removed in
Python 3.12.
Backport of f9f6bd63c98dc2f01412887f4a98dbfdab363fdf from main
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:21>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"f6726fdc3ec09d40fb53eef7ce9b6b5a05762548" f6726fd]:
{{{
#!CommitTicketReference repository=""
revision="f6726fdc3ec09d40fb53eef7ce9b6b5a05762548"
[3.2.x] Refs #32074 -- Fixed find_module()/find_loader() warnings on
Python 3.10+.
Backport of f1bcaa9be8227dce89a320ce1ca37e1df7c80d03 from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:22>
Comment (by GitHub <noreply@…>):
In [changeset:"53fad80ffe16ab4edb713b1ef0090d0fcf63565a" 53fad80]:
{{{
#!CommitTicketReference repository=""
revision="53fad80ffe16ab4edb713b1ef0090d0fcf63565a"
[3.2.x] Refs #32074 -- Used asyncio.get_running_loop() instead of
get_event_loop() on Python 3.7+.
Using asyncio.get_event_loop() when there is no running event loop was
deprecated in Python 3.10, see https://bugs.python.org/issue39529.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:23>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"1aed4663c3e34ad3142f0db99c5c87229fea664b" 1aed4663]:
{{{
#!CommitTicketReference repository=""
revision="1aed4663c3e34ad3142f0db99c5c87229fea664b"
[3.2.x] Refs #32074 -- Added Python 3.10 to classifiers and tox.ini.
Backport of 15987c9c5315ac30f069915e28de78ade788458d from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:24>
Comment (by GitHub <noreply@…>):
In [changeset:"604df4e0adc71da264f61fe85020a170c98e6f09" 604df4e0]:
{{{
#!CommitTicketReference repository=""
revision="604df4e0adc71da264f61fe85020a170c98e6f09"
Refs #32074 -- Doc'd Python 3.10 compatibility in Django 3.2.x.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:25>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"ab07cb4b5447dc58e29f3f17a75d967d9c5c5c00" ab07cb4b]:
{{{
#!CommitTicketReference repository=""
revision="ab07cb4b5447dc58e29f3f17a75d967d9c5c5c00"
[4.0.x] Refs #32074 -- Doc'd Python 3.10 compatibility in Django 3.2.x.
Backport of 604df4e0adc71da264f61fe85020a170c98e6f09 from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:26>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"82fee0446d5ab7e60c40c1ea94f8ebd348aa6f3e" 82fee04]:
{{{
#!CommitTicketReference repository=""
revision="82fee0446d5ab7e60c40c1ea94f8ebd348aa6f3e"
[3.2.x] Refs #32074 -- Doc'd Python 3.10 compatibility in Django 3.2.x.
Backport of 604df4e0adc71da264f61fe85020a170c98e6f09 from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:27>
* status: new => closed
* resolution: => fixed
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:28>
Comment (by GitHub <noreply@…>):
In [changeset:"569a33579c3cca5f801c544d9b52a34e3c779424" 569a3357]:
{{{
#!CommitTicketReference repository=""
revision="569a33579c3cca5f801c544d9b52a34e3c779424"
Refs #32074 -- Removed usage of deprecated asyncore and smtpd modules.
asyncore and smtpd modules were deprecated in Python 3.10.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:29>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"6a16d5303990a90684befa396b30ce5265abf0ce" 6a16d53]:
{{{
#!CommitTicketReference repository=""
revision="6a16d5303990a90684befa396b30ce5265abf0ce"
[4.0.x] Refs #32074 -- Removed usage of deprecated asyncore and smtpd
modules.
asyncore and smtpd modules were deprecated in Python 3.10.
Backport of 569a33579c3cca5f801c544d9b52a34e3c779424 from main
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:30>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"dbcd81841f679d368a6ebf254f040455a83acf1f" dbcd8184]:
{{{
#!CommitTicketReference repository=""
revision="dbcd81841f679d368a6ebf254f040455a83acf1f"
[3.2.x] Refs #32074 -- Removed usage of deprecated asyncore and smtpd
modules.
asyncore and smtpd modules were deprecated in Python 3.10.
Backport of 569a33579c3cca5f801c544d9b52a34e3c779424 from main.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:31>
Comment (by GitHub <noreply@…>):
In [changeset:"5d13cc540e29eedafe695338d8ec9ec500185ccd" 5d13cc5]:
{{{
#!CommitTicketReference repository=""
revision="5d13cc540e29eedafe695338d8ec9ec500185ccd"
Refs #32074 -- Recommended aiosmtpd for minimal SMTP server.
Follow up to 569a33579c3cca5f801c544d9b52a34e3c779424.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:32>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"11881ad69f9915f64638d55e639770922049a375" 11881ad6]:
{{{
#!CommitTicketReference repository=""
revision="11881ad69f9915f64638d55e639770922049a375"
[4.0.x] Refs #32074 -- Recommended aiosmtpd for minimal SMTP server.
Follow up to 569a33579c3cca5f801c544d9b52a34e3c779424.
Backport of 5d13cc540e29eedafe695338d8ec9ec500185ccd from main
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/32074#comment:33>