Fixes a deadlock in CurrentThreadExecutor with nested async_to_sync →
sync_to_async → async_to_sync → create_task calls. (#494)
The ApplicationCommunicator testing utility will now return the task result
if it's already completed on send_input and receive_nothing. You may need to
catch (e.g.) the asyncio.exceptions.CancelledError if sending messages to
already finished consumers in your tests. (#505)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebase will rebase this PR
@dependabot recreate will recreate this PR, overwriting any edits that have been made to it
@dependabot merge will merge this PR after your CI passes on it
@dependabot squash and merge will squash and merge this PR after your CI passes on it
@dependabot cancel merge will cancel a previously requested merge and block automerging
@dependabot reopen will reopen this PR if it is closed
@dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
@dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
@dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
@dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
@dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/open-webui/open-webui/pull/18778
**Author:** [@dependabot[bot]](https://github.com/apps/dependabot)
**Created:** 11/1/2025
**Status:** ❌ Closed
**Base:** `dev` ← **Head:** `dependabot/pip/backend/dev/asgiref-3.10.0`
---
### 📝 Commits (1)
- [`0c40af3`](https://github.com/open-webui/open-webui/commit/0c40af3aa83d295763e995ec7275920c85ac6039) chore(deps): bump asgiref from 3.8.1 to 3.10.0 in /backend
### 📊 Changes
**1 file changed** (+1 additions, -1 deletions)
<details>
<summary>View changed files</summary>
📝 `backend/requirements.txt` (+1 -1)
</details>
### 📄 Description
Bumps [asgiref](https://github.com/django/asgiref) from 3.8.1 to 3.10.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/django/asgiref/blob/main/CHANGELOG.txt">asgiref's changelog</a>.</em></p>
<blockquote>
<h2>3.10.0 (2025-10-05)</h2>
<ul>
<li>Added AsyncSingleThreadContext context manager to ensure multiple AsyncToSync
invocations use the same thread. (<a href="https://redirect.github.com/django/asgiref/issues/511">#511</a>)</li>
</ul>
<h2>3.9.2 (2025-09-23)</h2>
<ul>
<li>
<p>Adds support for Python 3.14.</p>
</li>
<li>
<p>Fixes wsgi.errors file descriptor in WsgiToAsgi adapter.</p>
</li>
</ul>
<h2>3.9.1 (2025-07-08)</h2>
<ul>
<li>
<p>Fixed deletion of Local values affecting other contexts. (<a href="https://redirect.github.com/django/asgiref/issues/523">#523</a>)</p>
</li>
<li>
<p>Skip CPython specific garbage collection test on pypy. (<a href="https://redirect.github.com/django/asgiref/issues/521">#521</a>)</p>
</li>
</ul>
<h2>3.9.0 (2025-07-03)</h2>
<ul>
<li>
<p>Adds support for Python 3.13.</p>
</li>
<li>
<p>Drops support for (end-of-life) Python 3.8.</p>
</li>
<li>
<p>Fixes an error with conflicting kwargs between AsyncToSync and the wrapped
function. (<a href="https://redirect.github.com/django/asgiref/issues/471">#471</a>)</p>
</li>
<li>
<p>Fixes Local isolation between asyncio Tasks. (<a href="https://redirect.github.com/django/asgiref/issues/478">#478</a>)</p>
</li>
<li>
<p>Fixes a reference cycle in Local (<a href="https://redirect.github.com/django/asgiref/issues/508">#508</a>)</p>
</li>
<li>
<p>Fixes a deadlock in CurrentThreadExecutor with nested async_to_sync →
sync_to_async → async_to_sync → create_task calls. (<a href="https://redirect.github.com/django/asgiref/issues/494">#494</a>)</p>
</li>
<li>
<p>The ApplicationCommunicator testing utility will now return the task result
if it's already completed on send_input and receive_nothing. You may need to
catch (e.g.) the asyncio.exceptions.CancelledError if sending messages to
already finished consumers in your tests. (<a href="https://redirect.github.com/django/asgiref/issues/505">#505</a>)</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="https://github.com/django/asgiref/commit/f587b122af17bdba5749c30b96d2237bc1c2dfdf"><code>f587b12</code></a> Releasing 3.10.0.</li>
<li><a href="https://github.com/django/asgiref/commit/b08087c3b6df811a0524585c4d4dafdc6b12c222"><code>b08087c</code></a> Added AsyncSingleThreadContext (<a href="https://redirect.github.com/django/asgiref/issues/511">#511</a>)</li>
<li><a href="https://github.com/django/asgiref/commit/3471a0c09bd043d61c299308c0c8519ab6c0f774"><code>3471a0c</code></a> Releasing 3.9.2</li>
<li><a href="https://github.com/django/asgiref/commit/4f892bd261cee9afe51d67333e9bc7cd98b39a35"><code>4f892bd</code></a> Remove Python 3.8 from tox</li>
<li><a href="https://github.com/django/asgiref/commit/83cd6f3c6f59a66999446c2893cdb3fcae3c03c5"><code>83cd6f3</code></a> Run CI against Python 3.14</li>
<li><a href="https://github.com/django/asgiref/commit/796b9f14fd92d3131c7c39fab308ddd986d271eb"><code>796b9f1</code></a> Fix incorrect Trailer header (<a href="https://redirect.github.com/django/asgiref/issues/531">#531</a>)</li>
<li><a href="https://github.com/django/asgiref/commit/29b108b0a9a5eddae3e282ba33915412a855e529"><code>29b108b</code></a> Fixed <a href="https://redirect.github.com/django/asgiref/issues/529">#529</a>: wsgi.errors should be a StringIO (<a href="https://redirect.github.com/django/asgiref/issues/530">#530</a>)</li>
<li><a href="https://github.com/django/asgiref/commit/fbe9506df140a437921a01ea824dbe51d8c38c24"><code>fbe9506</code></a> Releasing 3.9.1</li>
<li><a href="https://github.com/django/asgiref/commit/fae2ab10f12858b529b01e6e812abac6aa1f6128"><code>fae2ab1</code></a> Fixed deletion of Local values affecting other contexts. (<a href="https://redirect.github.com/django/asgiref/issues/523">#523</a>)</li>
<li><a href="https://github.com/django/asgiref/commit/f43e1120286d2b7537547603a1534569e8d8f1a6"><code>f43e112</code></a> Adjust changelog for ApplicationCommunicator updates. (<a href="https://redirect.github.com/django/asgiref/issues/520">#520</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/django/asgiref/compare/3.8.1...3.10.0">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/open-webui/open-webui/pull/18778
Author: @dependabot[bot]
Created: 11/1/2025
Status: ❌ Closed
Base:
dev← Head:dependabot/pip/backend/dev/asgiref-3.10.0📝 Commits (1)
0c40af3chore(deps): bump asgiref from 3.8.1 to 3.10.0 in /backend📊 Changes
1 file changed (+1 additions, -1 deletions)
View changed files
📝
backend/requirements.txt(+1 -1)📄 Description
Bumps asgiref from 3.8.1 to 3.10.0.
Changelog
Sourced from asgiref's changelog.
Commits
f587b12Releasing 3.10.0.b08087cAdded AsyncSingleThreadContext (#511)3471a0cReleasing 3.9.24f892bdRemove Python 3.8 from tox83cd6f3Run CI against Python 3.14796b9f1Fix incorrect Trailer header (#531)29b108bFixed #529: wsgi.errors should be a StringIO (#530)fbe9506Releasing 3.9.1fae2ab1Fixed deletion of Local values affecting other contexts. (#523)f43e112Adjust changelog for ApplicationCommunicator updates. (#520)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.