Accepted based on
[https://github.com/django/deps/blob/master/accepted/0009-async.rst DEP
0009: Async-capable Django].
[https://github.com/django/django/pull/11650 PR]
--
Ticket URL: <https://code.djangoproject.com/ticket/31224>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
* needs_tests: 0 => 1
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:1>
* needs_tests: 1 => 0
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:2>
* cc: Evstifeev Roman (added)
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:3>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"1e858adf7fabdeb98f95503d30ed6769a08c44b2" 1e858adf]:
{{{
#!CommitTicketReference repository=""
revision="1e858adf7fabdeb98f95503d30ed6769a08c44b2"
Refs #31224 -- Added BaseHandler.check_response().
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:4>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"17009e910538b9c3709d302f54c2d10eb245cf38" 17009e9]:
{{{
#!CommitTicketReference repository=""
revision="17009e910538b9c3709d302f54c2d10eb245cf38"
Refs #31224 -- Added autoconversion of test async methods.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:5>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"40a64dd1e24d45f8e00a55b22a5174b8f1359b5c" 40a64dd1]:
{{{
#!CommitTicketReference repository=""
revision="40a64dd1e24d45f8e00a55b22a5174b8f1359b5c"
Refs #31224 -- Doc'd async adapter functions.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:6>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"8d4638db20e73ffa451d4a21b0112c2b06ea6906" 8d4638db]:
{{{
#!CommitTicketReference repository=""
revision="8d4638db20e73ffa451d4a21b0112c2b06ea6906"
[3.0.x] Refs #31224 -- Doc'd async adapter functions.
Backport of 40a64dd1e24d45f8e00a55b22a5174b8f1359b5c from master
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:7>
* stage: Accepted => Ready for checkin
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:8>
* status: assigned => closed
* resolution: => fixed
Comment:
In [changeset:"fc0fa72ff4cdbf5861a366e31cb8bbacd44da22d" fc0fa72f]:
{{{
#!CommitTicketReference repository=""
revision="fc0fa72ff4cdbf5861a366e31cb8bbacd44da22d"
Fixed #31224 -- Added support for asynchronous views and middleware.
This implements support for asynchronous views, asynchronous tests,
asynchronous middleware, and an asynchronous test client.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:9>
Comment (by GitHub <noreply@…>):
In [changeset:"b5ad450fa6d53186b68f89a4507fdbabc8900f74" b5ad450f]:
{{{
#!CommitTicketReference repository=""
revision="b5ad450fa6d53186b68f89a4507fdbabc8900f74"
Refs #31224 -- Removed incorrect @sync_to_async(thread_sensitive=True)
example.
It does not support thread_sensitive when used as a decorator, yet.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:10>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"d292d1163e15ceb3d69e3693e13a722ed93c4383" d292d11]:
{{{
#!CommitTicketReference repository=""
revision="d292d1163e15ceb3d69e3693e13a722ed93c4383"
[3.0.x] Refs #31224 -- Removed incorrect
@sync_to_async(thread_sensitive=True) example.
It does not support thread_sensitive when used as a decorator, yet.
Backport of b5ad450fa6d53186b68f89a4507fdbabc8900f74 from master
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:11>
Comment (by GitHub <noreply@…>):
In [changeset:"d94a9aa0557a459a5b9b7b82a8c043de14f8b1a0" d94a9aa]:
{{{
#!CommitTicketReference repository=""
revision="d94a9aa0557a459a5b9b7b82a8c043de14f8b1a0"
Refs #31040, Refs #31224 -- Prevented cycles in exceptions chain.
Async exception handling was raising an exception that was creating a
cycle in the exception chain (by re-raising an exception in
sync_to_async that was already being handled).
Thanks Chris Jerdonek for detailed analysis.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:12>
Comment (by Mariusz Felisiak <felisiak.mariusz@…>):
In [changeset:"bd389a832aa1480fc76c3fb2bb6f92ea4209e378" bd389a8]:
{{{
#!CommitTicketReference repository=""
revision="bd389a832aa1480fc76c3fb2bb6f92ea4209e378"
[3.1.x] Refs #31040, Refs #31224 -- Prevented cycles in exceptions chain.
Async exception handling was raising an exception that was creating a
cycle in the exception chain (by re-raising an exception in
sync_to_async that was already being handled).
Thanks Chris Jerdonek for detailed analysis.
Backport of d94a9aa0557a459a5b9b7b82a8c043de14f8b1a0 from master
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:13>
Comment (by Carlton Gibson <carlton@…>):
In [changeset:"8d59075184f4cd2852b374359850ff7aeb412ec1" 8d59075]:
{{{
#!CommitTicketReference repository=""
revision="8d59075184f4cd2852b374359850ff7aeb412ec1"
Refs #31224 -- Made sync_to_async() examples use thread sensitive with ORM
calls.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:14>
Comment (by Carlton Gibson <carlton.gibson@…>):
In [changeset:"f36c441f80c9c2cf69cbfa3254976aae08ef15f9" f36c441f]:
{{{
#!CommitTicketReference repository=""
revision="f36c441f80c9c2cf69cbfa3254976aae08ef15f9"
[3.1.x] Refs #31224 -- Made sync_to_async() examples use thread sensitive
with ORM calls.
Backport of 8d59075184f4cd2852b374359850ff7aeb412ec1 from master
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/31224#comment:15>