chore(deps): bump the python-minor-patch group across 1 directory with 22 updates#1885
Merged
EItanya merged 2 commits intoMay 18, 2026
Merged
Conversation
…h 22 updates Bumps the python-minor-patch group with 21 updates in the /python directory: | Package | From | To | | --- | --- | --- | | [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.15.13` | | [authlib](https://github.com/authlib/authlib) | `1.7.1` | `1.7.2` | | [pydantic](https://github.com/pydantic/pydantic) | `2.12.5` | `2.13.4` | | [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` | | [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.13.0` | | [typer](https://github.com/fastapi/typer) | `0.16.0` | `0.25.1` | | [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.47.0` | | [openai](https://github.com/openai/openai-python) | `2.14.0` | `2.37.0` | | [mcp](https://github.com/modelcontextprotocol/python-sdk) | `1.25.0` | `1.27.1` | | [fastapi](https://github.com/fastapi/fastapi) | `0.129.0` | `0.136.1` | | [urllib3](https://github.com/urllib3/urllib3) | `2.6.3` | `2.7.0` | | [filelock](https://github.com/tox-dev/py-filelock) | `3.20.3` | `3.29.0` | | [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.22` | `0.0.29` | | [boto3](https://github.com/boto/boto3) | `1.42.28` | `1.43.9` | | [ollama](https://github.com/ollama/ollama-python) | `0.6.1` | `0.6.2` | | [psutil](https://github.com/giampaolo/psutil) | `7.0.0` | `7.2.2` | | [langgraph](https://github.com/langchain-ai/langgraph) | `1.0.6` | `1.2.0` | | [openai-agents](https://github.com/openai/openai-agents-python) | `0.6.5` | `0.17.2` | | [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` | | [langchain-openai](https://github.com/langchain-ai/langchain) | `1.1.7` | `1.2.1` | | [langgraph-checkpoint-sqlite](https://github.com/langchain-ai/langgraph) | `3.0.3` | `3.1.0` | Updates `ruff` from 0.15.12 to 0.15.13 - [Release notes](https://github.com/astral-sh/ruff/releases) - [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md) - [Commits](astral-sh/ruff@0.15.12...0.15.13) Updates `authlib` from 1.7.1 to 1.7.2 - [Release notes](https://github.com/authlib/authlib/releases) - [Commits](authlib/authlib@1.7.1...v1.7.2) Updates `pydantic` from 2.12.5 to 2.13.4 - [Release notes](https://github.com/pydantic/pydantic/releases) - [Changelog](https://github.com/pydantic/pydantic/blob/v2.13.4/HISTORY.md) - [Commits](pydantic/pydantic@v2.12.5...v2.13.4) Updates `typing-extensions` from 4.14.1 to 4.15.0 - [Release notes](https://github.com/python/typing_extensions/releases) - [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md) - [Commits](python/typing_extensions@4.14.1...4.15.0) Updates `anyio` from 4.10.0 to 4.13.0 - [Release notes](https://github.com/agronholm/anyio/releases) - [Commits](agronholm/anyio@4.10.0...4.13.0) Updates `typer` from 0.16.0 to 0.25.1 - [Release notes](https://github.com/fastapi/typer/releases) - [Changelog](https://github.com/fastapi/typer/blob/master/docs/release-notes.md) - [Commits](fastapi/typer@0.16.0...0.25.1) Updates `uvicorn` from 0.35.0 to 0.47.0 - [Release notes](https://github.com/Kludex/uvicorn/releases) - [Changelog](https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md) - [Commits](Kludex/uvicorn@0.35.0...0.47.0) Updates `openai` from 2.14.0 to 2.37.0 - [Release notes](https://github.com/openai/openai-python/releases) - [Changelog](https://github.com/openai/openai-python/blob/main/CHANGELOG.md) - [Commits](openai/openai-python@v2.14.0...v2.37.0) Updates `mcp` from 1.25.0 to 1.27.1 - [Release notes](https://github.com/modelcontextprotocol/python-sdk/releases) - [Changelog](https://github.com/modelcontextprotocol/python-sdk/blob/main/RELEASE.md) - [Commits](modelcontextprotocol/python-sdk@v1.25.0...v1.27.1) Updates `fastapi` from 0.129.0 to 0.136.1 - [Release notes](https://github.com/fastapi/fastapi/releases) - [Commits](fastapi/fastapi@0.129.0...0.136.1) Updates `urllib3` from 2.6.3 to 2.7.0 - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](urllib3/urllib3@2.6.3...2.7.0) Updates `filelock` from 3.20.3 to 3.29.0 - [Release notes](https://github.com/tox-dev/py-filelock/releases) - [Changelog](https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst) - [Commits](tox-dev/filelock@3.20.3...3.29.0) Updates `python-multipart` from 0.0.22 to 0.0.29 - [Release notes](https://github.com/Kludex/python-multipart/releases) - [Changelog](https://github.com/Kludex/python-multipart/blob/main/CHANGELOG.md) - [Commits](Kludex/python-multipart@0.0.22...0.0.29) Updates `boto3` from 1.42.28 to 1.43.9 - [Release notes](https://github.com/boto/boto3/releases) - [Commits](boto/boto3@1.42.28...1.43.9) Updates `ollama` from 0.6.1 to 0.6.2 - [Release notes](https://github.com/ollama/ollama-python/releases) - [Commits](ollama/ollama-python@v0.6.1...v0.6.2) Updates `psutil` from 7.0.0 to 7.2.2 - [Changelog](https://github.com/giampaolo/psutil/blob/master/docs/changelog.rst) - [Commits](giampaolo/psutil@v7.0.0...v7.2.2) Updates `langgraph` from 1.0.6 to 1.2.0 - [Release notes](https://github.com/langchain-ai/langgraph/releases) - [Commits](langchain-ai/langgraph@1.0.6...1.2.0) Updates `langchain-core` from 1.2.7 to 1.4.0 - [Release notes](https://github.com/langchain-ai/langchain/releases) - [Commits](langchain-ai/langchain@langchain-core==1.2.7...langchain-core==1.4.0) Updates `openai-agents` from 0.6.5 to 0.17.2 - [Release notes](https://github.com/openai/openai-agents-python/releases) - [Changelog](https://github.com/openai/openai-agents-python/blob/main/docs/release.md) - [Commits](openai/openai-agents-python@v0.6.5...v0.17.2) Updates `pyyaml` from 6.0.2 to 6.0.3 - [Release notes](https://github.com/yaml/pyyaml/releases) - [Changelog](https://github.com/yaml/pyyaml/blob/6.0.3/CHANGES) - [Commits](yaml/pyyaml@6.0.2...6.0.3) Updates `langchain-openai` from 1.1.7 to 1.2.1 - [Release notes](https://github.com/langchain-ai/langchain/releases) - [Commits](langchain-ai/langchain@langchain-openai==1.1.7...langchain-openai==1.2.1) Updates `langgraph-checkpoint-sqlite` from 3.0.3 to 3.1.0 - [Release notes](https://github.com/langchain-ai/langgraph/releases) - [Commits](langchain-ai/langgraph@checkpointsqlite==3.0.3...checkpointsqlite==3.1.0) --- updated-dependencies: - dependency-name: ruff dependency-version: 0.15.13 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: python-minor-patch - dependency-name: authlib dependency-version: 1.7.2 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: python-minor-patch - dependency-name: pydantic dependency-version: 2.13.4 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: typing-extensions dependency-version: 4.15.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: anyio dependency-version: 4.13.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: typer dependency-version: 0.25.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: uvicorn dependency-version: 0.47.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: openai dependency-version: 2.37.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: mcp dependency-version: 1.27.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: fastapi dependency-version: 0.136.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: urllib3 dependency-version: 2.7.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: filelock dependency-version: 3.29.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: python-multipart dependency-version: 0.0.29 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: python-minor-patch - dependency-name: boto3 dependency-version: 1.43.9 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: ollama dependency-version: 0.6.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: python-minor-patch - dependency-name: psutil dependency-version: 7.2.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: langgraph dependency-version: 1.2.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: langchain-core dependency-version: 1.4.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: openai-agents dependency-version: 0.17.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: pyyaml dependency-version: 6.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: python-minor-patch - dependency-name: langchain-openai dependency-version: 1.2.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch - dependency-name: langgraph-checkpoint-sqlite dependency-version: 3.1.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: python-minor-patch ... Signed-off-by: dependabot[bot] <support@github.com>
Contributor
Author
LabelsThe following labels could not be found: Please fix the above issues or remove invalid values from |
EItanya
approved these changes
May 18, 2026
maazghani
pushed a commit
to maazghani/kagent
that referenced
this pull request
May 18, 2026
…h 22 updates (kagent-dev#1885) Bumps the python-minor-patch group with 21 updates in the /python directory: | Package | From | To | | --- | --- | --- | | [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.15.13` | | [authlib](https://github.com/authlib/authlib) | `1.7.1` | `1.7.2` | | [pydantic](https://github.com/pydantic/pydantic) | `2.12.5` | `2.13.4` | | [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` | | [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.13.0` | | [typer](https://github.com/fastapi/typer) | `0.16.0` | `0.25.1` | | [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.47.0` | | [openai](https://github.com/openai/openai-python) | `2.14.0` | `2.37.0` | | [mcp](https://github.com/modelcontextprotocol/python-sdk) | `1.25.0` | `1.27.1` | | [fastapi](https://github.com/fastapi/fastapi) | `0.129.0` | `0.136.1` | | [urllib3](https://github.com/urllib3/urllib3) | `2.6.3` | `2.7.0` | | [filelock](https://github.com/tox-dev/py-filelock) | `3.20.3` | `3.29.0` | | [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.22` | `0.0.29` | | [boto3](https://github.com/boto/boto3) | `1.42.28` | `1.43.9` | | [ollama](https://github.com/ollama/ollama-python) | `0.6.1` | `0.6.2` | | [psutil](https://github.com/giampaolo/psutil) | `7.0.0` | `7.2.2` | | [langgraph](https://github.com/langchain-ai/langgraph) | `1.0.6` | `1.2.0` | | [openai-agents](https://github.com/openai/openai-agents-python) | `0.6.5` | `0.17.2` | | [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` | | [langchain-openai](https://github.com/langchain-ai/langchain) | `1.1.7` | `1.2.1` | | [langgraph-checkpoint-sqlite](https://github.com/langchain-ai/langgraph) | `3.0.3` | `3.1.0` | Updates `ruff` from 0.15.12 to 0.15.13 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/astral-sh/ruff/releases">ruff's releases</a>.</em></p> <blockquote> <h2>0.15.13</h2> <h2>Release Notes</h2> <p>Released on 2026-05-14.</p> <h3>Preview features</h3> <ul> <li>Add a rule to flag lazy imports that are eagerly evaluated (<a href="https://redirect.github.com/astral-sh/ruff/pull/25016">#25016</a>)</li> <li>[<code>pylint</code>] Standardize diagnostic message (<code>PLR0914</code>, <code>PLR0917</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24996">#24996</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>F811</code> false positive for class methods (<a href="https://redirect.github.com/astral-sh/ruff/pull/24933">#24933</a>)</li> <li>Fix setting selection for multi-folder workspace (<a href="https://redirect.github.com/astral-sh/ruff/pull/24819">#24819</a>)</li> <li>[<code>eradicate</code>] Fix false positive for lines with leading whitespace (<code>ERA001</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25122">#25122</a>)</li> <li>[<code>flake8-pyi</code>] Fix false positive for f-string debug specifier (<code>PYI016</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24098">#24098</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>Always include panic payload in panic diagnostic message (<a href="https://redirect.github.com/astral-sh/ruff/pull/24873">#24873</a>)</li> <li>Restrict <code>PYI034</code> for in-place operations to enclosing class (<a href="https://redirect.github.com/astral-sh/ruff/pull/24511">#24511</a>)</li> <li>Improve error message for parameters that are declared <code>global</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/24902">#24902</a>)</li> <li>Update known stdlib (<a href="https://redirect.github.com/astral-sh/ruff/pull/25103">#25103</a>)</li> </ul> <h3>Performance</h3> <ul> <li>[<code>isort</code>] Avoid constructing <code>glob::Pattern</code>s for literal known modules (<a href="https://redirect.github.com/astral-sh/ruff/pull/25123">#25123</a>)</li> </ul> <h3>CLI</h3> <ul> <li>Add TOML examples to <code>--config</code> help text (<a href="https://redirect.github.com/astral-sh/ruff/pull/25013">#25013</a>)</li> <li>Colorize ruff check 'All checks passed' (<a href="https://redirect.github.com/astral-sh/ruff/pull/25085">#25085</a>)</li> </ul> <h3>Configuration</h3> <ul> <li>Increase max allowed value of <code>line-length</code> setting (<a href="https://redirect.github.com/astral-sh/ruff/pull/24962">#24962</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add <code>D203</code> to rules that conflict with the formatter (<a href="https://redirect.github.com/astral-sh/ruff/pull/25044">#25044</a>)</li> <li>Clarify <code>COM819</code> and formatter interaction (<a href="https://redirect.github.com/astral-sh/ruff/pull/25045">#25045</a>)</li> <li>Clarify that <code>NotImplemented</code> is a value, not an exception (<code>F901</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25054">#25054</a>)</li> <li>Update number of lint rules supported (<a href="https://redirect.github.com/astral-sh/ruff/pull/24942">#24942</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Simplify the playground's markdown template (<a href="https://redirect.github.com/astral-sh/ruff/pull/24924">#24924</a>)</li> </ul> <h3>Contributors</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's changelog</a>.</em></p> <blockquote> <h2>0.15.13</h2> <p>Released on 2026-05-14.</p> <h3>Preview features</h3> <ul> <li>Add a rule to flag lazy imports that are eagerly evaluated (<a href="https://redirect.github.com/astral-sh/ruff/pull/25016">#25016</a>)</li> <li>[<code>pylint</code>] Standardize diagnostic message (<code>PLR0914</code>, <code>PLR0917</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24996">#24996</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>F811</code> false positive for class methods (<a href="https://redirect.github.com/astral-sh/ruff/pull/24933">#24933</a>)</li> <li>Fix setting selection for multi-folder workspace (<a href="https://redirect.github.com/astral-sh/ruff/pull/24819">#24819</a>)</li> <li>[<code>eradicate</code>] Fix false positive for lines with leading whitespace (<code>ERA001</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25122">#25122</a>)</li> <li>[<code>flake8-pyi</code>] Fix false positive for f-string debug specifier (<code>PYI016</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24098">#24098</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>Always include panic payload in panic diagnostic message (<a href="https://redirect.github.com/astral-sh/ruff/pull/24873">#24873</a>)</li> <li>Restrict <code>PYI034</code> for in-place operations to enclosing class (<a href="https://redirect.github.com/astral-sh/ruff/pull/24511">#24511</a>)</li> <li>Improve error message for parameters that are declared <code>global</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/24902">#24902</a>)</li> <li>Update known stdlib (<a href="https://redirect.github.com/astral-sh/ruff/pull/25103">#25103</a>)</li> </ul> <h3>Performance</h3> <ul> <li>[<code>isort</code>] Avoid constructing <code>glob::Pattern</code>s for literal known modules (<a href="https://redirect.github.com/astral-sh/ruff/pull/25123">#25123</a>)</li> </ul> <h3>CLI</h3> <ul> <li>Add TOML examples to <code>--config</code> help text (<a href="https://redirect.github.com/astral-sh/ruff/pull/25013">#25013</a>)</li> <li>Colorize ruff check 'All checks passed' (<a href="https://redirect.github.com/astral-sh/ruff/pull/25085">#25085</a>)</li> </ul> <h3>Configuration</h3> <ul> <li>Increase max allowed value of <code>line-length</code> setting (<a href="https://redirect.github.com/astral-sh/ruff/pull/24962">#24962</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add <code>D203</code> to rules that conflict with the formatter (<a href="https://redirect.github.com/astral-sh/ruff/pull/25044">#25044</a>)</li> <li>Clarify <code>COM819</code> and formatter interaction (<a href="https://redirect.github.com/astral-sh/ruff/pull/25045">#25045</a>)</li> <li>Clarify that <code>NotImplemented</code> is a value, not an exception (<code>F901</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25054">#25054</a>)</li> <li>Update number of lint rules supported (<a href="https://redirect.github.com/astral-sh/ruff/pull/24942">#24942</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Simplify the playground's markdown template (<a href="https://redirect.github.com/astral-sh/ruff/pull/24924">#24924</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/MichaReiser"><code>@MichaReiser</code></a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/astral-sh/ruff/commit/2afb467ce397e4a89c13a0a814c62cfecb0e9e49"><code>2afb467</code></a> Bump 0.15.13 (<a href="https://redirect.github.com/astral-sh/ruff/issues/25157">#25157</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/300879600fa3af7cde1e675c63de6ad9d0797d1b"><code>3008796</code></a> [ty] classify TypeVar semantic tokens as type parameters (<a href="https://redirect.github.com/astral-sh/ruff/issues/24891">#24891</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/79470e31877acb6074f3bbff2a49e508822ae4e8"><code>79470e3</code></a> [<code>isort</code>] Avoid constructing <code>glob::Pattern</code>s for literal known modules (<a href="https://redirect.github.com/astral-sh/ruff/issues/25123">#25123</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/2522549901d50f18775999f0fb802b19229417f0"><code>2522549</code></a> Remove shellcheck from prek (<a href="https://redirect.github.com/astral-sh/ruff/issues/25154">#25154</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/7db7170020f539d6d2bc01dbd0b0c09fab91dc06"><code>7db7170</code></a> [ty] Support TypedDict key completions in incomplete, anonymous contexts (<a href="https://redirect.github.com/astral-sh/ruff/issues/25">#25</a>...</li> <li><a href="https://github.com/astral-sh/ruff/commit/bb3dd535f1c5a83e2e56ac93a771fadbeeceebd0"><code>bb3dd53</code></a> [ty] Run full iteration analysis on narrowed typevars (<a href="https://redirect.github.com/astral-sh/ruff/issues/25143">#25143</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/828cdb7732efcb16a53f4ee5f011cf653b834d1a"><code>828cdb7</code></a> [ty] Isolate file-watching test environment (<a href="https://redirect.github.com/astral-sh/ruff/issues/25151">#25151</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/89e1d8670ea4d3af60c8143ee552dc750200718d"><code>89e1d86</code></a> [ty] Preserve TypedDict keys through dict unpacking (<a href="https://redirect.github.com/astral-sh/ruff/issues/24523">#24523</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/86f3064d6fffa5697d174f26b840bd6857b381da"><code>86f3064</code></a> [ty] Avoid accessing <code>args[0]</code> for <code>static_assert</code> (<a href="https://redirect.github.com/astral-sh/ruff/issues/25149">#25149</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/ed819f947dc27e36eac8bb3134153c4668d76a3a"><code>ed819f9</code></a> [ty] Treat custom enum <code>__new__</code> values as dynamic (<a href="https://redirect.github.com/astral-sh/ruff/issues/25136">#25136</a>)</li> <li>Additional commits viewable in <a href="https://github.com/astral-sh/ruff/compare/0.15.12...0.15.13">compare view</a></li> </ul> </details> <br /> Updates `authlib` from 1.7.1 to 1.7.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/authlib/authlib/releases">authlib's releases</a>.</em></p> <blockquote> <h2>v1.7.2</h2> <h2>What's Changed</h2> <ul> <li>Fix the readme links by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/886">authlib/authlib#886</a></li> <li>Allow non-recommended algorithms in ClientSecretJWT and PrivateKey by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/887">authlib/authlib#887</a></li> <li>Validate BCP47 language tags with a regex by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/873">authlib/authlib#873</a></li> <li>Fix RFC7523 signing with non RSA keys by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/884">authlib/authlib#884</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/authlib/authlib/compare/v1.7.1...v1.7.2">https://github.com/authlib/authlib/compare/v1.7.1...v1.7.2</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/authlib/authlib/commit/a0b76fac3fa114d7759af2010546bfc332364b63"><code>a0b76fa</code></a> chore: bump to 1.7.2</li> <li><a href="https://github.com/authlib/authlib/commit/c85c7f2b02faf2667f62b27aa60df042dbc9b4ab"><code>c85c7f2</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/884">#884</a> from azmeuk/852-rfc7523-key-import</li> <li><a href="https://github.com/authlib/authlib/commit/a3b2adda43b4452ba9f384d224f95848974b4eb4"><code>a3b2add</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/873">#873</a> from azmeuk/bcp47</li> <li><a href="https://github.com/authlib/authlib/commit/f2578eaa198aedbaaaf3bb00eccc451e15e45e3a"><code>f2578ea</code></a> fix: Import RSAKey in auth.py for additional key support</li> <li><a href="https://github.com/authlib/authlib/commit/b57182cf46a53da19623208dd852270ddec8ebcc"><code>b57182c</code></a> fix: fallback support RSAKey when client_secret is text</li> <li><a href="https://github.com/authlib/authlib/commit/4e7590292ca9f948a0766640b27025618750e6c1"><code>4e75902</code></a> Merge branch 'main' into 852-rfc7523-key-import</li> <li><a href="https://github.com/authlib/authlib/commit/5eb4a860600ea2f3acc1a2a9c3e621a430da9d0f"><code>5eb4a86</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/887">#887</a> from azmeuk/883-alg</li> <li><a href="https://github.com/authlib/authlib/commit/5633f37c47bd8352b962f982cb916bc8b95bb5d5"><code>5633f37</code></a> fix: allow non-recommended algorithms in ClientSecretJWT and PrivateKeyJWT</li> <li><a href="https://github.com/authlib/authlib/commit/4c8e7b381aaef68f60e2323a25ba96cdb346f82f"><code>4c8e7b3</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/886">#886</a> from azmeuk/885-readme</li> <li><a href="https://github.com/authlib/authlib/commit/23b333e48a17ebf9f032a0e0f9eb3f990a06f97b"><code>23b333e</code></a> docs: fix the readme links</li> <li>Additional commits viewable in <a href="https://github.com/authlib/authlib/compare/1.7.1...v1.7.2">compare view</a></li> </ul> </details> <br /> Updates `pydantic` from 2.12.5 to 2.13.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic/releases">pydantic's releases</a>.</em></p> <blockquote> <h2>v2.13.4 2026-05-06</h2> <h2>v2.13.4 (2026-05-06)</h2> <h3>What's Changed</h3> <h4>Packaging</h4> <ul> <li>Bump libc from 0.2.155 to 0.2.185 by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13109">#13109</a></li> <li>Adapt <code>pydantic-core</code> linker flags on macOS by <a href="https://github.com/washingtoneg"><code>@washingtoneg</code></a> and <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13147">#13147</a></li> </ul> <h4>Fixes</h4> <ul> <li>Preserve <code>RootModel</code> core metadata by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13129">#13129</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.3...v2.13.4">https://github.com/pydantic/pydantic/compare/v2.13.3...v2.13.4</a></p> <h2>v2.13.3 2026-04-20</h2> <h2>v2.13.3 (2026-04-20)</h2> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Handle <code>AttributeError</code> subclasses with <code>from_attributes</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13096">#13096</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.2...v2.13.3">https://github.com/pydantic/pydantic/compare/v2.13.2...v2.13.3</a></p> <h2>v2.13.2 2026-04-17</h2> <h2>v2.13.2 (2026-04-17)</h2> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.field_name</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13084">#13084</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.1...v2.13.2">https://github.com/pydantic/pydantic/compare/v2.13.1...v2.13.2</a></p> <h2>v2.13.1 2026-04-15</h2> <h2>v2.13.1 (2026-04-15)</h2> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.data</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/davidhewitt"><code>@davidhewitt</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13079">#13079</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.0...v2.13.1">https://github.com/pydantic/pydantic/compare/v2.13.0...v2.13.1</a></p> <h2>v2.13.0 2026-04-13</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic/blob/v2.13.4/HISTORY.md">pydantic's changelog</a>.</em></p> <blockquote> <h2>v2.13.4 (2026-05-06)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.4">GitHub release</a></p> <h3>What's Changed</h3> <h4>Packaging</h4> <ul> <li>Bump libc from 0.2.155 to 0.2.185 by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13109">#13109</a></li> <li>Adapt <code>pydantic-core</code> linker flags on macOS by <a href="https://github.com/washingtoneg"><code>@washingtoneg</code></a> and <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13147">#13147</a></li> </ul> <h4>Fixes</h4> <ul> <li>Preserve <code>RootModel</code> core metadata by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13129">#13129</a></li> </ul> <h2>v2.13.3 (2026-04-20)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.3">GitHub release</a></p> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Handle <code>AttributeError</code> subclasses with <code>from_attributes</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13096">#13096</a></li> </ul> <h2>v2.13.2 (2026-04-17)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.2">GitHub release</a></p> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.field_name</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13084">#13084</a></li> </ul> <h2>v2.13.1 (2026-04-15)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.1">GitHub release</a></p> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.data</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/davidhewitt"><code>@davidhewitt</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13079">#13079</a></li> </ul> <h2>v2.13.0 (2026-04-13)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.0">GitHub release</a></p> <p>The highlights of the v2.13 release are available in the <a href="https://pydantic.dev/articles/pydantic-v2-13-release">blog post</a>.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pydantic/pydantic/commit/cf67d4b3193c3fe43ede18612ed62785eee11382"><code>cf67d4b</code></a> Fix linting</li> <li><a href="https://github.com/pydantic/pydantic/commit/f0d8a214a5803036db46a56b1f62f1e56b81d662"><code>f0d8a21</code></a> Prepare release v2.13.4</li> <li><a href="https://github.com/pydantic/pydantic/commit/5e3fe1d41a00f441204241c66078003ae0391f9a"><code>5e3fe1d</code></a> Check for pydantic tag pattern in CI</li> <li><a href="https://github.com/pydantic/pydantic/commit/7f9edcc2a191d2eaa9751220eb910914e716a686"><code>7f9edcc</code></a> Document tagging conventions</li> <li><a href="https://github.com/pydantic/pydantic/commit/b46a0c9b8a4dd967fda8ec1a92f6437076bf262c"><code>b46a0c9</code></a> Adapt <code>pydantic-core</code> linker flags on macOS</li> <li><a href="https://github.com/pydantic/pydantic/commit/50629c851e61d887d5420452c311ec6203f1f400"><code>50629c8</code></a> Update to PyPy 7.3.22</li> <li><a href="https://github.com/pydantic/pydantic/commit/8522ebb71e5e9a6f7188af5f009f01785b8cf725"><code>8522ebb</code></a> Preserve <code>RootModel</code> core metadata</li> <li><a href="https://github.com/pydantic/pydantic/commit/a37f3aff090ca342dc5f48304889963530b993f8"><code>a37f3af</code></a> Adapt <code>MISSING</code> sentinel test to work with unreleased <code>typing_extensions</code> ver...</li> <li><a href="https://github.com/pydantic/pydantic/commit/909259a9df660518033aa686b689f045a6eaf9d2"><code>909259a</code></a> Remove Logfire example in documentation</li> <li><a href="https://github.com/pydantic/pydantic/commit/2c4174c366606fc2dc46cb806833a080aefa77df"><code>2c4174c</code></a> Bump libc from 0.2.155 to 0.2.185</li> <li>Additional commits viewable in <a href="https://github.com/pydantic/pydantic/compare/v2.12.5...v2.13.4">compare view</a></li> </ul> </details> <br /> Updates `typing-extensions` from 4.14.1 to 4.15.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/python/typing_extensions/releases">typing-extensions's releases</a>.</em></p> <blockquote> <h2>4.15.0</h2> <p>No user-facing changes since 4.15.0rc1.</p> <p>New features since 4.14.1:</p> <ul> <li>Add the <code>@typing_extensions.disjoint_base</code> decorator, as specified in PEP 800. Patch by Jelle Zijlstra.</li> <li>Add <code>typing_extensions.type_repr</code>, a backport of <a href="https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr"><code>annotationlib.type_repr</code></a>, introduced in Python 3.14 (CPython PR <a href="https://redirect.github.com/python/cpython/pull/124551">#124551</a>, originally by Jelle Zijlstra). Patch by Semyon Moroz.</li> <li>Fix behavior of type params in <code>typing_extensions.evaluate_forward_ref</code>. Backport of CPython PR <a href="https://redirect.github.com/python/cpython/pull/137227">#137227</a> by Jelle Zijlstra.</li> </ul> <h2>4.15.0rc1</h2> <ul> <li>Add the <code>@typing_extensions.disjoint_base</code> decorator, as specified in PEP 800. Patch by Jelle Zijlstra.</li> <li>Add <code>typing_extensions.type_repr</code>, a backport of <a href="https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr"><code>annotationlib.type_repr</code></a>, introduced in Python 3.14 (CPython PR <a href="https://redirect.github.com/python/cpython/pull/124551">#124551</a>, originally by Jelle Zijlstra). Patch by Semyon Moroz.</li> <li>Fix behavior of type params in <code>typing_extensions.evaluate_forward_ref</code>. Backport of CPython PR <a href="https://redirect.github.com/python/cpython/pull/137227">#137227</a> by Jelle Zijlstra.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/python/typing_extensions/blob/main/CHANGELOG.md">typing-extensions's changelog</a>.</em></p> <blockquote> <h1>Release 4.15.0 (August 25, 2025)</h1> <p>No user-facing changes since 4.15.0rc1.</p> <h1>Release 4.15.0rc1 (August 18, 2025)</h1> <ul> <li>Add the <code>@typing_extensions.disjoint_base</code> decorator, as specified in PEP 800. Patch by Jelle Zijlstra.</li> <li>Add <code>typing_extensions.type_repr</code>, a backport of <a href="https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr"><code>annotationlib.type_repr</code></a>, introduced in Python 3.14 (CPython PR <a href="https://redirect.github.com/python/cpython/pull/124551">#124551</a>, originally by Jelle Zijlstra). Patch by Semyon Moroz.</li> <li>Fix behavior of type params in <code>typing_extensions.evaluate_forward_ref</code>. Backport of CPython PR <a href="https://redirect.github.com/python/cpython/pull/137227">#137227</a> by Jelle Zijlstra.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python/typing_extensions/commit/9d1637e264b5c1a6b7acee3e907015f89b20c2c9"><code>9d1637e</code></a> Prepare release 4.15.0 (<a href="https://redirect.github.com/python/typing_extensions/issues/658">#658</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/4bd67c5be5d9443c7d33c314d02a56ee125eb88d"><code>4bd67c5</code></a> Coverage: exclude some noise (<a href="https://redirect.github.com/python/typing_extensions/issues/656">#656</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/e589a26da73b075c5276bae40b86db1af0144f84"><code>e589a26</code></a> Coverage: add detailed report to job summary (<a href="https://redirect.github.com/python/typing_extensions/issues/655">#655</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/67d37fed1298e050f74d5acc95b2621bd37837ad"><code>67d37fe</code></a> Coverage: Implement fail_under (<a href="https://redirect.github.com/python/typing_extensions/issues/654">#654</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/e9ae26f5286edee9262727755ecb9ad16e999192"><code>e9ae26f</code></a> Don't delete previous coverage comment (<a href="https://redirect.github.com/python/typing_extensions/issues/653">#653</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/ac80bb728a3006fc88ef7373b92f0c25cfcc7895"><code>ac80bb7</code></a> Add Coverage workflow (<a href="https://redirect.github.com/python/typing_extensions/issues/623">#623</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/abaaafd98c1cc7e5baf098ec287a3d22cb339670"><code>abaaafd</code></a> Prepare release 4.15.0rc1 (<a href="https://redirect.github.com/python/typing_extensions/issues/650">#650</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/98104053ea8d49bcdd247804e5fa9f73136acbd4"><code>9810405</code></a> Add <code>@disjoint_base</code> (PEP 800) (<a href="https://redirect.github.com/python/typing_extensions/issues/634">#634</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/7ee9e05fd484d06899ce56e80f5e1aa4c760fc03"><code>7ee9e05</code></a> Backport type_params fix from CPython (<a href="https://redirect.github.com/python/typing_extensions/issues/646">#646</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/1e8eb9c06ef51b3a1e1f05303a16feca13f5ed98"><code>1e8eb9c</code></a> Do not refer to PEP 705 as being experimental (<a href="https://redirect.github.com/python/typing_extensions/issues/648">#648</a>)</li> <li>Additional commits viewable in <a href="https://github.com/python/typing_extensions/compare/4.14.1...4.15.0">compare view</a></li> </ul> </details> <br /> Updates `anyio` from 4.10.0 to 4.13.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/agronholm/anyio/releases">anyio's releases</a>.</em></p> <blockquote> <h2>4.13.0</h2> <ul> <li>Dropped support for Python 3.9</li> <li>Added a <code>ttl</code> parameter to the <code>anyio.functools.lru_cache</code> wrapper (<a href="https://redirect.github.com/agronholm/anyio/pull/1073">#1073</a>; PR by <a href="https://github.com/Graeme22"><code>@Graeme22</code></a>)</li> <li>Widened the type annotations of file I/O streams to accept <code>IO[bytes]</code> instead of just <code>BinaryIO</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/1078">#1078</a>)</li> <li>Fixed <code>anyio.Path</code> not being compatible with Python 3.15 due to the removal of <code>pathlib.Path.is_reserved()</code> and the addition of <code>pathlib.Path.__vfspath__()</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/1061">#1061</a>; PR by <a href="https://github.com/veeceey"><code>@veeceey</code></a>)</li> <li>Fixed the <code>BrokenResourceError</code> raised by the asyncio <code>SocketStream</code> not having the original exception as its cause (<a href="https://redirect.github.com/agronholm/anyio/issues/1055">#1055</a>; PR by <a href="https://github.com/veeceey"><code>@veeceey</code></a>)</li> <li>Fixed the <code>TypeError</code> raised when using "func" as a parameter name in <code>pytest.mark.parametrize</code> when using the pytest plugin (<a href="https://redirect.github.com/agronholm/anyio/pull/1068">#1068</a>; PR by <a href="https://github.com/JohnnyDeuss"><code>@JohnnyDeuss</code></a>)</li> <li>Fixed the pytest plugin not running tests that had the <code>anyio</code> marker added programmatically via <code>pytest_collection_modifyitems</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/422">#422</a>; PR by <a href="https://github.com/chbndrhnns"><code>@chbndrhnns</code></a>)</li> <li>Fixed cancellation exceptions leaking from a <code>CancelScope</code> on asyncio when they are contained in an exception group alongside non-cancellation exceptions (<a href="https://redirect.github.com/agronholm/anyio/issues/1091">#1091</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed <code>Condition.wait()</code> not passing on a notification when the task is cancelled but already received a notification</li> <li>Fixed inverted condition in the process pool shutdown phase which would cause still-running pooled processes not to be terminated (<a href="https://redirect.github.com/agronholm/anyio/pull/1074">#1074</a>; PR by <a href="https://github.com/bysiber"><code>@bysiber</code></a>)</li> </ul> <h2>4.12.1</h2> <ul> <li>Changed all functions currently raising the private <code>NoCurrentAsyncBackend</code> exception (since v4.12.0) to instead raise the public <code>NoEventLoopError</code> exception (<a href="https://redirect.github.com/agronholm/anyio/issues/1048">#1048</a>)</li> <li>Fixed <code>anyio.functools.lru_cache</code> not working with instance methods (<a href="https://redirect.github.com/agronholm/anyio/issues/1042">#1042</a>)</li> </ul> <h2>4.12.0</h2> <ul> <li>Added support for asyncio's <a href="https://docs.python.org/3/library/asyncio-graph.html">task call graphs</a> on Python 3.14 and later when using AnyIO's task groups (<a href="https://redirect.github.com/agronholm/anyio/pull/1025">#1025</a>)</li> <li>Added an asynchronous implementation of the <code>functools</code> module (<a href="https://redirect.github.com/agronholm/anyio/pull/1001">#1001</a>)</li> <li>Added support for <code>uvloop=True</code> on Windows via the <a href="https://github.com/Vizonex/Winloop">winloop</a> implementation (<a href="https://redirect.github.com/agronholm/anyio/pull/960">#960</a>; PR by <a href="https://github.com/Vizonex"><code>@Vizonex</code></a>)</li> <li>Added support for use as a context manager to <code>anyio.lowlevel.RunVar</code> (<a href="https://redirect.github.com/agronholm/anyio/pull/1003">#1003</a>)</li> <li>Added <code>__all__</code> declarations to public submodules (<code>anyio.lowlevel</code> etc.) (<a href="https://redirect.github.com/agronholm/anyio/pull/1009">#1009</a>)</li> <li>Added the ability to set the token count of a <code>CapacityLimiter</code> to zero (<a href="https://redirect.github.com/agronholm/anyio/pull/1019">#1019</a>; requires Python 3.10 or later when using Trio)</li> <li>Added parameters <code>case_sensitive</code> and <code>recurse_symlinks</code> along with support for path-like objects to <code>anyio.Path.glob()</code> and <code>anyio.Path.rglob()</code> (<a href="https://redirect.github.com/agronholm/anyio/pull/1033">#1033</a>; PR by <a href="https://github.com/northisup"><code>@northisup</code></a>)</li> <li>Dropped <code>sniffio</code> as a direct dependency and added the <code>get_available_backends()</code> function (<a href="https://redirect.github.com/agronholm/anyio/pull/1021">#1021</a>)</li> <li>Fixed <code>Process.stdin.send()</code> not raising <code>ClosedResourceError</code> and <code>BrokenResourceError</code> on asyncio. Previously, a non-AnyIO exception was raised in such cases (<a href="https://redirect.github.com/agronholm/anyio/issues/671">#671</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed <code>Process.stdin.send()</code> not checkpointing before writing data on asyncio (<a href="https://redirect.github.com/agronholm/anyio/issues/1002">#1002</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed a race condition where cancelling a <code>Future</code> from <code>BlockingPortal.start_task_soon()</code> would sometimes not cancel the async function (<a href="https://redirect.github.com/agronholm/anyio/issues/1011">#1011</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed the presence of the pytest plugin causing breakage with older versions of pytest (<= 6.1.2) (<a href="https://redirect.github.com/agronholm/anyio/issues/1028">#1028</a>; PR by <a href="https://github.com/saper"><code>@saper</code></a>)</li> <li>Fixed a rarely occurring <code>RuntimeError: Set changed size during iteration</code> while shutting down the process pool when using the asyncio backend (<a href="https://redirect.github.com/agronholm/anyio/issues/985">#985</a>)</li> </ul> <h2>4.11.0</h2> <ul> <li>Added support for cancellation reasons (the <code>reason</code> parameter to <code>CancelScope.cancel()</code>) (<a href="https://redirect.github.com/agronholm/anyio/pull/975">#975</a>)</li> <li>Bumped the minimum version of Trio to v0.31.0</li> <li>Added the ability to enter the event loop from foreign (non-worker) threads by passing the return value of <code>anyio.lowlevel.current_token()</code> to <code>anyio.from_thread.run()</code> and <code>anyio.from_thread.run_sync()</code> as the <code>token</code> keyword argument (<a href="https://redirect.github.com/agronholm/anyio/issues/256">#256</a>)</li> <li>Added pytest option (<code>anyio_mode = "auto"</code>) to make the pytest plugin automatically handle all async tests (<a href="https://redirect.github.com/agronholm/anyio/pull/971">#971</a>)</li> <li>Added the <code>anyio.Condition.wait_for()</code> method for feature parity with asyncio (<a href="https://redirect.github.com/agronholm/anyio/pull/974">#974</a>)</li> <li>Changed the default type argument of <code>anyio.abc.TaskStatus</code> from <code>Any</code> to <code>None</code> (<a href="https://redirect.github.com/agronholm/anyio/pull/964">#964</a>)</li> <li>Fixed TCP listener behavior to guarantee the same ephemeral port is used for all socket listeners when <code>local_port=0</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/857">#857</a>; PR by <a href="https://github.com/11kkw"><code>@11kkw</code></a> and <a href="https://github.com/agronholm"><code>@agronholm</code></a>)</li> <li>Fixed inconsistency between Trio and asyncio where a TCP stream that previously raised a <code>BrokenResourceError</code> on <code>send()</code> would still raise <code>BrokenResourceError</code> after the stream was closed on asyncio, but <code>ClosedResourceError</code> on Trio. They now both raise a <code>ClosedResourceError</code> in this scenario. (<a href="https://redirect.github.com/agronholm/anyio/issues/671">#671</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/agronholm/anyio/commit/afbe93ca9d0c447adf26e9c1715ac20870622bf2"><code>afbe93c</code></a> Bumped up the version</li> <li><a href="https://github.com/agronholm/anyio/commit/33bdf2e4b4f40c2df178123746147a6d2471808d"><code>33bdf2e</code></a> Rearranged the changelog entries</li> <li><a href="https://github.com/agronholm/anyio/commit/19e09e25bc5a23dd78a577d8c3909dd377057c78"><code>19e09e2</code></a> Fixed inverted condition in _forcibly_shutdown_process_pool_on_exit (<a href="https://redirect.github.com/agronholm/anyio/issues/1074">#1074</a>)</li> <li><a href="https://github.com/agronholm/anyio/commit/9369d80b9e8292f2a892a9d5c73923c6a28aa08c"><code>9369d80</code></a> Fixed Condition.wait() not handing over notification when cancelled</li> <li><a href="https://github.com/agronholm/anyio/commit/6f122abdc6f6b166c6b6ac27d36d55cdf8fa08e8"><code>6f122ab</code></a> Fixed cancellation exceptions leaking from a <code>CancelScope</code> on asyncio when th...</li> <li><a href="https://github.com/agronholm/anyio/commit/beaa45aff568a4020f2faf317321dd92f0e1f4a0"><code>beaa45a</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/agronholm/anyio/issues/1097">#1097</a>)</li> <li><a href="https://github.com/agronholm/anyio/commit/602f6606dcf3f37702686a4f3e161328c537b07f"><code>602f660</code></a> Widened type annotations to accept IO[bytes] in file streams</li> <li><a href="https://github.com/agronholm/anyio/commit/b5dcd45170701a756ba634197398f05d4710cab3"><code>b5dcd45</code></a> Added note about erasing the template</li> <li><a href="https://github.com/agronholm/anyio/commit/d68670b3b4e0917d4caff2de082e03220f3e05a1"><code>d68670b</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/agronholm/anyio/issues/1090">#1090</a>)</li> <li><a href="https://github.com/agronholm/anyio/commit/fc17a22dd948e6a3d90d99908813f0010dfc3d2c"><code>fc17a22</code></a> tweak to_thread docs about abandon_on_cancel (<a href="https://redirect.github.com/agronholm/anyio/issues/1088">#1088</a>)</li> <li>Additional commits viewable in <a href="https://github.com/agronholm/anyio/compare/4.10.0...4.13.0">compare view</a></li> </ul> </details> <br /> Updates `typer` from 0.16.0 to 0.25.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/fastapi/typer/releases">typer's releases</a>.</em></p> <blockquote> <h2>0.25.1</h2> <h3>Features</h3> <ul> <li>🔧 Add Typer Library Skill for Agents. PR <a href="https://redirect.github.com/fastapi/typer/pull/1620">#1620</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump ruff from 0.15.11 to 0.15.12. PR <a href="https://redirect.github.com/fastapi/typer/pull/1722">#1722</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.10 to 0.3.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1723">#1723</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <h2>0.25.0</h2> <h3>Features</h3> <ul> <li>🚸 Don't truncate code lines in traceback when formatted with Rich. PR <a href="https://redirect.github.com/fastapi/typer/pull/1695">#1695</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h2>0.24.2</h2> <h3>Fixes</h3> <ul> <li>🐛 Ensure that <code>typer.launch</code> forwards correctly when launching a file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1708">#1708</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Refactors</h3> <ul> <li>🎨 Ensure <code>ty</code> runs without errors. PR <a href="https://redirect.github.com/fastapi/typer/pull/1628">#1628</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Docs</h3> <ul> <li>📝 Add dates to release notes. PR <a href="https://redirect.github.com/fastapi/typer/pull/1612">#1612</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>💄 Fix code blocks in reference docs overflowing table width. PR <a href="https://redirect.github.com/fastapi/typer/pull/1630">#1630</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>📝 Fix broken link to FastAPI and Friends newsletter. PR <a href="https://redirect.github.com/fastapi/typer/pull/1540">#1540</a> by <a href="https://github.com/Karlemami"><code>@Karlemami</code></a>.</li> <li>🔨 Handle external links <code>target=_blank</code> and CSS automatically in JS and CSS. PR <a href="https://redirect.github.com/fastapi/typer/pull/1622">#1622</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>📝 Remove link to Typer developer survey. PR <a href="https://redirect.github.com/fastapi/typer/pull/1609">#1609</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> <li>✏️ Clean up documentation in <code>install.md</code> file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1606">#1606</a> by <a href="https://github.com/Johandielangman"><code>@Johandielangman</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump mypy from 1.20.1 to 1.20.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1715">#1715</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.9 to 0.3.10. PR <a href="https://redirect.github.com/fastapi/typer/pull/1716">#1716</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic-settings from 2.13.1 to 2.14.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1713">#1713</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ty from 0.0.31 to 0.0.32. PR <a href="https://redirect.github.com/fastapi/typer/pull/1711">#1711</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.2 to 2.13.3. PR <a href="https://redirect.github.com/fastapi/typer/pull/1712">#1712</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pygments from 2.19.2 to 2.20.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1667">#1667</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pymdown-extensions from 10.20 to 10.21.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1710">#1710</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>⬆ Bump actions/cache from 5.0.4 to 5.0.5. PR <a href="https://redirect.github.com/fastapi/typer/pull/1700">#1700</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.1 to 2.13.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1703">#1703</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump actions/upload-artifact from 7.0.0 to 7.0.1. PR <a href="https://redirect.github.com/fastapi/typer/pull/1701">#1701</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ruff from 0.15.10 to 0.15.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1704">#1704</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump cloudflare/wrangler-action from 3.14.1 to 3.15.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1702">#1702</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump astral-sh/setup-uv from 7.6.0 to 8.1.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1699">#1699</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ty from 0.0.30 to 0.0.31. PR <a href="https://redirect.github.com/fastapi/typer/pull/1696">#1696</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.0 to 2.13.1. PR <a href="https://redirect.github.com/fastapi/typer/pull/1697">#1697</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/fastapi/typer/blob/master/docs/release-notes.md">typer's changelog</a>.</em></p> <blockquote> <h2>0.25.1 (2026-04-30)</h2> <h3>Features</h3> <ul> <li>🔧 Add Typer Library Skill for Agents. PR <a href="https://redirect.github.com/fastapi/typer/pull/1620">#1620</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump ruff from 0.15.11 to 0.15.12. PR <a href="https://redirect.github.com/fastapi/typer/pull/1722">#1722</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.10 to 0.3.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1723">#1723</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <h2>0.25.0 (2026-04-26)</h2> <h3>Features</h3> <ul> <li>🚸 Don't truncate code lines in traceback when formatted with Rich. PR <a href="https://redirect.github.com/fastapi/typer/pull/1695">#1695</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h2>0.24.2 (2026-04-22)</h2> <h3>Fixes</h3> <ul> <li>🐛 Ensure that <code>typer.launch</code> forwards correctly when launching a file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1708">#1708</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Refactors</h3> <ul> <li>🎨 Ensure <code>ty</code> runs without errors. PR <a href="https://redirect.github.com/fastapi/typer/pull/1628">#1628</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Docs</h3> <ul> <li>📝 Add dates to release notes. PR <a href="https://redirect.github.com/fastapi/typer/pull/1612">#1612</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>💄 Fix code blocks in reference docs overflowing table width. PR <a href="https://redirect.github.com/fastapi/typer/pull/1630">#1630</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>📝 Fix broken link to FastAPI and Friends newsletter. PR <a href="https://redirect.github.com/fastapi/typer/pull/1540">#1540</a> by <a href="https://github.com/Karlemami"><code>@Karlemami</code></a>.</li> <li>🔨 Handle external links <code>target=_blank</code> and CSS automatically in JS and CSS. PR <a href="https://redirect.github.com/fastapi/typer/pull/1622">#1622</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>📝 Remove link to Typer developer survey. PR <a href="https://redirect.github.com/fastapi/typer/pull/1609">#1609</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> <li>✏️ Clean up documentation in <code>install.md</code> file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1606">#1606</a> by <a href="https://github.com/Johandielangman"><code>@Johandielangman</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump mypy from 1.20.1 to 1.20.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1715">#1715</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.9 to 0.3.10. PR <a href="https://redirect.github.com/fastapi/typer/pull/1716">#1716</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic-settings from 2.13.1 to 2.14.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1713">#1713</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ty from 0.0.31 to 0.0.32. PR <a href="https://redirect.github.com/fastapi/typer/pull/1711">#1711</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.2 to 2.13.3. PR <a href="https://redirect.github.com/fastapi/typer/pull/1712">#1712</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pygments from 2.19.2 to 2.20.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1667">#1667</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pymdown-extensions from 10.20 to 10.21.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1710">#1710</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>⬆ Bump actions/cache from 5.0.4 to 5.0.5. PR <a href="https://redirect.github.com/fastapi/typer/pull/1700">#1700</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.1 to 2.13.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1703">#1703</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump actions/upload-artifact from 7.0.0 to 7.0.1. PR <a href="https://redirect.github.com/fastapi/typer/pull/1701">#1701</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ruff from 0.15.10 to 0.15.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1704">#1704</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump cloudflare/wrangler-action from 3.14.1 to 3.15.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1702">#1702</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/fastapi/typer/commit/cfcc2ef9f948bcce67897a6c7e689d39da690bf9"><code>cfcc2ef</code></a> 🔖 Release version 0.25.1</li> <li><a href="https://github.com/fastapi/typer/commit/13846cc59bd574567a9a1f56eae3cd42b9aa2a4f"><code>13846cc</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/a43746997ad6f2b4a8829c69c919f4d4c2cc0698"><code>a437469</code></a> 🔧 Add Typer Library Skill for Agents (<a href="https://redirect.github.com/fastapi/typer/issues/1620">#1620</a>)</li> <li><a href="https://github.com/fastapi/typer/commit/ba6cc2c9e7cba35f891c91118e228e1d2da35edb"><code>ba6cc2c</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/0f3ead07c2bb384fdd590e895ca6705582c58d89"><code>0f3ead0</code></a> ⬆ Bump ruff from 0.15.11 to 0.15.12 (<a href="https://redirect.github.com/fastapi/typer/issues/1722">#1722</a>)</li> <li><a href="https://github.com/fastapi/typer/commit/db4ade64936599b3460f2fc0a7c550c3fedc33b0"><code>db4ade6</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/5a5206ceed2afdf234f88a6e2ef74ad9ebdf0d92"><code>5a5206c</code></a> ⬆ Bump prek from 0.3.10 to 0.3.11 (<a href="https://redirect.github.com/fastapi/typer/issues/1723">#1723</a>)</li> <li><a href="https://github.com/fastapi/typer/commit/959845e173b4bec0d606d99247815c2710613ca8"><code>959845e</code></a> 🔖 Release version 0.25.0</li> <li><a href="https://github.com/fastapi/typer/commit/5e1fcfb5935e7ac3ff3c7526ef297eae31bd4822"><code>5e1fcfb</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/dfb21ad034804584702d553ebfba40d8f4d791b9"><code>dfb21ad</code></a> 🚸 Don't truncate code lines in traceback when formatted with Rich (<a href="https://redirect.github.com/fastapi/typer/issues/1695">#1695</a>)</li> <li>Additional commits viewable in <a href="https://github.com/fastapi/typer/compare/0.16.0...0.25.1">compare view</a></li> </ul> </details> <br /> Updates `uvicorn` from 0.35.0 to 0.47.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/releases">uvicorn's releases</a>.</em></p> <blockquote> <h2>Version 0.47.0</h2> <h2>What's Changed</h2> <ul> <li>Eagerly import the ASGI app in the parent process by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2919">Kludex/uvicorn#2919</a></li> <li>Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2920">Kludex/uvicorn#2920</a></li> <li>Treat <code>fd=0</code> as a valid file descriptor with reload/workers by <a href="https://github.com/eltoder"><code>@eltoder</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2927">Kludex/uvicorn#2927</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0">https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0</a></p> <h2>Version 0.46.0</h2> <h2>What's Changed</h2> <ul> <li>Support <code>ws_max_size</code> in <code>wsproto</code> implementation by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2915">Kludex/uvicorn#2915</a></li> <li>Support <code>ws_ping_interval</code> and <code>ws_ping_timeout</code> in <code>wsproto</code> implementation by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2916">Kludex/uvicorn#2916</a></li> <li>Use <code>bytearray</code> for incoming WebSocket message buffer in websockets-sansio by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2917">Kludex/uvicorn#2917</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0">https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0</a></p> <h2>Version 0.45.0</h2> <h2>What's Changed</h2> <ul> <li>Preserve forwarded client ports in proxy headers middleware by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2903">Kludex/uvicorn#2903</a></li> <li>Accept <code>os.PathLike</code> for <code>log_config</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2905">Kludex/uvicorn#2905</a></li> <li>Accept <code>log_level</code> strings case-insensitively by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2907">Kludex/uvicorn#2907</a></li> <li>Raise helpful <code>ImportError</code> when PyYAML is missing for YAML log config by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2906">Kludex/uvicorn#2906</a></li> <li>Revert empty context for ASGI runs by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2911">Kludex/uvicorn#2911</a></li> <li>Add <code>--reset-contextvars</code> flag to isolate ASGI request context by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2912">Kludex/uvicorn#2912</a></li> <li>Revert "Emit <code>http.disconnect</code> on server shutdown for streaming responses" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2829">#2829</a>) by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2913">Kludex/uvicorn#2913</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/Krishnachaitanyakc"><code>@Krishnachaitanyakc</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2870">Kludex/uvicorn#2870</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0">https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0</a></p> <h2>Version 0.44.0</h2> <h2>What's Changed</h2> <ul> <li>Implement websocket keepalive pings for websockets-sansio by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2888">Kludex/uvicorn#2888</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0">https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0</a></p> <h2>Version 0.43.0</h2> <h2>Changed</h2> <ul> <li>Emit <code>http.disconnect</code> ASGI <code>receive()</code> event on server shutting down for streaming responses (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2829">#2829</a>)</li> <li>Use native <code>context</code> parameter for <code>create_task</code> on Python 3.11+ (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2859">#2859</a>)</li> <li>Drop cast in ASGI types (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2875">#2875</a>)</li> </ul> <hr /> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0">https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0</a></p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md">uvicorn's changelog</a>.</em></p> <blockquote> <h2>0.47.0 (May 14, 2026)</h2> <h3>Added</h3> <ul> <li>Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2920">#2920</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Eagerly import the ASGI app in the parent process (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2919">#2919</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Treat <code>fd=0</code> as a valid file descriptor with reload/workers (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2927">#2927</a>)</li> </ul> <h2>0.46.0 (April 23, 2026)</h2> <h3>Added</h3> <ul> <li>Support <code>ws_max_size</code> in <code>wsproto</code> implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2915">#2915</a>)</li> <li>Support <code>ws_ping_interval</code> and <code>ws_ping_timeout</code> in <code>wsproto</code> implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2916">#2916</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Use <code>bytearray</code> for incoming WebSocket message buffer in <code>websockets-sansio</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2917">#2917</a>)</li> </ul> <h2>0.45.0 (April 21, 2026)</h2> <h3>Added</h3> <ul> <li>Add <code>--reset-contextvars</code> flag to isolate ASGI request context (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2912">#2912</a>)</li> <li>Accept <code>os.PathLike</code> for <code>log_config</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2905">#2905</a>)</li> <li>Accept <code>log_level</code> strings case-insensitively (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2907">#2907</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Revert "Emit <code>http.disconnect</code> on server shutdown for streaming responses" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2913">#2913</a>)</li> <li>Revert "Explicitly start ASGI run with empty context" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2911">#2911</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Preserve forwarded client ports in proxy headers middleware (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2903">#2903</a>)</li> <li>Raise helpful <code>ImportError</code> when PyYAML is missing for YAML log config (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2906">#2906</a>)</li> </ul> <h2>0.44.0 (April 6, 2026)</h2> <h3>Added</h3> <ul> <li>Implement websocket keepalive pings for websockets-sansio (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2888">#2888</a>)</li> </ul> <h2>0.43.0 (April 3, 2026)</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/uvicorn/commit/479a2c0c89186714f1aac52aecdebebf271395ac"><code>479a2c0</code></a> Version 0.47.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2937">#2937</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/89347fd166ebedf98fb3f806ce8ea44e93b1c2b5"><code>89347fd</code></a> Add 7-day cooldown for dependency resolution via uv exclude-newer (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2936">#2936</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/767315b38ae509cee9fe8ee9d09f6da920536096"><code>767315b</code></a> Drop unused contents/actions permissions from zizmor workflow (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2935">#2935</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/f25ee43e68a9678453cbca99ad96f1a447ff34af"><code>f25ee43</code></a> chore(deps): bump urllib3 from 2.6.3 to 2.7.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2933">#2933</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/8782666189a3d36c978de5698620db705659bf44"><code>8782666</code></a> Fix typo in <code>docs/deployment/index.md</code>. (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2932">#2932</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/ad5ff87c869e8a34e9b04fcd5ca38d65c526893c"><code>ad5ff87</code></a> Treat <code>fd=0</code> as a valid file descriptor with reload/workers (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2927">#2927</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/6761b2c8f9272fa0e908d0b9cdcb3cb0aa11382f"><code>6761b2c</code></a> Remove Hugging Face sponsor block from docs (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2923">#2923</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/438f64834de00708a9bb3548a36090e7a924ad84"><code>438f648</code></a> Surface sponsors on welcome page and sidebar (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2921">#2921</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/10ddc6dd296cb6e432a00835abe27f1c822373c1"><code>10ddc6d</code></a> Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2920">#2920</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/b499bc45101d920e691e384025d728507215d4d1"><code>b499bc4</code></a> Eagerly import the ASGI app in the parent process (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2919">#2919</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/uvicorn/compare/0.35.0...0.47.0">compare view</a></li> </ul> </details> <br /> Updates `openai` from 2.14.0 to 2.37.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/openai/openai-python/releases">openai's releases</a>.</em></p> <blockquote> <h2>v2.37.0</h2> <h2>2.37.0 (2026-05-13)</h2> <p>Full Changelog: <a href="https://github.com/openai/openai-python/compare/v2.36.0...v2.37.0">v2.36.0...v2.37.0</a></p> <h3>Features</h3> <ul> <li><strong>api:</strong> add service_tier parameter to responses compact method (<a href="https://github.com/openai/openai-python/commit/625827c5509ece3c40e5002be37a9bd9d91b5374">625827c</a>)</li> <li><strong>internal/types:</strong> support eagerly validating pydantic iterators (<a href="https://github.com/openai/openai-python/commit/7e527bc927cc58b74d7619abf7f1fbcfff8bddfa">7e527bc</a>)</li> <li>Remove unnecessary client_id when using workload identity provider for auth (<a href="https://github.com/openai/openai-python/commit/c39ea8d12a010052d7f02cebe8daabd2d1f89597">c39ea8d</a>)</li> </ul> <h3>Bug Fixes</h3> <ul> <li><strong>client:</strong> add missing f-string prefix in file type error message (<a href="https://github.com/openai/openai-python/commit/c85ebd935cb4b80e7e97ce255437…
maazghani
pushed a commit
to maazghani/kagent
that referenced
this pull request
May 18, 2026
…h 22 updates (kagent-dev#1885) Bumps the python-minor-patch group with 21 updates in the /python directory: | Package | From | To | | --- | --- | --- | | [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.15.13` | | [authlib](https://github.com/authlib/authlib) | `1.7.1` | `1.7.2` | | [pydantic](https://github.com/pydantic/pydantic) | `2.12.5` | `2.13.4` | | [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` | | [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.13.0` | | [typer](https://github.com/fastapi/typer) | `0.16.0` | `0.25.1` | | [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.47.0` | | [openai](https://github.com/openai/openai-python) | `2.14.0` | `2.37.0` | | [mcp](https://github.com/modelcontextprotocol/python-sdk) | `1.25.0` | `1.27.1` | | [fastapi](https://github.com/fastapi/fastapi) | `0.129.0` | `0.136.1` | | [urllib3](https://github.com/urllib3/urllib3) | `2.6.3` | `2.7.0` | | [filelock](https://github.com/tox-dev/py-filelock) | `3.20.3` | `3.29.0` | | [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.22` | `0.0.29` | | [boto3](https://github.com/boto/boto3) | `1.42.28` | `1.43.9` | | [ollama](https://github.com/ollama/ollama-python) | `0.6.1` | `0.6.2` | | [psutil](https://github.com/giampaolo/psutil) | `7.0.0` | `7.2.2` | | [langgraph](https://github.com/langchain-ai/langgraph) | `1.0.6` | `1.2.0` | | [openai-agents](https://github.com/openai/openai-agents-python) | `0.6.5` | `0.17.2` | | [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` | | [langchain-openai](https://github.com/langchain-ai/langchain) | `1.1.7` | `1.2.1` | | [langgraph-checkpoint-sqlite](https://github.com/langchain-ai/langgraph) | `3.0.3` | `3.1.0` | Updates `ruff` from 0.15.12 to 0.15.13 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/astral-sh/ruff/releases">ruff's releases</a>.</em></p> <blockquote> <h2>0.15.13</h2> <h2>Release Notes</h2> <p>Released on 2026-05-14.</p> <h3>Preview features</h3> <ul> <li>Add a rule to flag lazy imports that are eagerly evaluated (<a href="https://redirect.github.com/astral-sh/ruff/pull/25016">#25016</a>)</li> <li>[<code>pylint</code>] Standardize diagnostic message (<code>PLR0914</code>, <code>PLR0917</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24996">#24996</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>F811</code> false positive for class methods (<a href="https://redirect.github.com/astral-sh/ruff/pull/24933">#24933</a>)</li> <li>Fix setting selection for multi-folder workspace (<a href="https://redirect.github.com/astral-sh/ruff/pull/24819">#24819</a>)</li> <li>[<code>eradicate</code>] Fix false positive for lines with leading whitespace (<code>ERA001</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25122">#25122</a>)</li> <li>[<code>flake8-pyi</code>] Fix false positive for f-string debug specifier (<code>PYI016</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24098">#24098</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>Always include panic payload in panic diagnostic message (<a href="https://redirect.github.com/astral-sh/ruff/pull/24873">#24873</a>)</li> <li>Restrict <code>PYI034</code> for in-place operations to enclosing class (<a href="https://redirect.github.com/astral-sh/ruff/pull/24511">#24511</a>)</li> <li>Improve error message for parameters that are declared <code>global</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/24902">#24902</a>)</li> <li>Update known stdlib (<a href="https://redirect.github.com/astral-sh/ruff/pull/25103">#25103</a>)</li> </ul> <h3>Performance</h3> <ul> <li>[<code>isort</code>] Avoid constructing <code>glob::Pattern</code>s for literal known modules (<a href="https://redirect.github.com/astral-sh/ruff/pull/25123">#25123</a>)</li> </ul> <h3>CLI</h3> <ul> <li>Add TOML examples to <code>--config</code> help text (<a href="https://redirect.github.com/astral-sh/ruff/pull/25013">#25013</a>)</li> <li>Colorize ruff check 'All checks passed' (<a href="https://redirect.github.com/astral-sh/ruff/pull/25085">#25085</a>)</li> </ul> <h3>Configuration</h3> <ul> <li>Increase max allowed value of <code>line-length</code> setting (<a href="https://redirect.github.com/astral-sh/ruff/pull/24962">#24962</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add <code>D203</code> to rules that conflict with the formatter (<a href="https://redirect.github.com/astral-sh/ruff/pull/25044">#25044</a>)</li> <li>Clarify <code>COM819</code> and formatter interaction (<a href="https://redirect.github.com/astral-sh/ruff/pull/25045">#25045</a>)</li> <li>Clarify that <code>NotImplemented</code> is a value, not an exception (<code>F901</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25054">#25054</a>)</li> <li>Update number of lint rules supported (<a href="https://redirect.github.com/astral-sh/ruff/pull/24942">#24942</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Simplify the playground's markdown template (<a href="https://redirect.github.com/astral-sh/ruff/pull/24924">#24924</a>)</li> </ul> <h3>Contributors</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's changelog</a>.</em></p> <blockquote> <h2>0.15.13</h2> <p>Released on 2026-05-14.</p> <h3>Preview features</h3> <ul> <li>Add a rule to flag lazy imports that are eagerly evaluated (<a href="https://redirect.github.com/astral-sh/ruff/pull/25016">#25016</a>)</li> <li>[<code>pylint</code>] Standardize diagnostic message (<code>PLR0914</code>, <code>PLR0917</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24996">#24996</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>F811</code> false positive for class methods (<a href="https://redirect.github.com/astral-sh/ruff/pull/24933">#24933</a>)</li> <li>Fix setting selection for multi-folder workspace (<a href="https://redirect.github.com/astral-sh/ruff/pull/24819">#24819</a>)</li> <li>[<code>eradicate</code>] Fix false positive for lines with leading whitespace (<code>ERA001</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25122">#25122</a>)</li> <li>[<code>flake8-pyi</code>] Fix false positive for f-string debug specifier (<code>PYI016</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24098">#24098</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>Always include panic payload in panic diagnostic message (<a href="https://redirect.github.com/astral-sh/ruff/pull/24873">#24873</a>)</li> <li>Restrict <code>PYI034</code> for in-place operations to enclosing class (<a href="https://redirect.github.com/astral-sh/ruff/pull/24511">#24511</a>)</li> <li>Improve error message for parameters that are declared <code>global</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/24902">#24902</a>)</li> <li>Update known stdlib (<a href="https://redirect.github.com/astral-sh/ruff/pull/25103">#25103</a>)</li> </ul> <h3>Performance</h3> <ul> <li>[<code>isort</code>] Avoid constructing <code>glob::Pattern</code>s for literal known modules (<a href="https://redirect.github.com/astral-sh/ruff/pull/25123">#25123</a>)</li> </ul> <h3>CLI</h3> <ul> <li>Add TOML examples to <code>--config</code> help text (<a href="https://redirect.github.com/astral-sh/ruff/pull/25013">#25013</a>)</li> <li>Colorize ruff check 'All checks passed' (<a href="https://redirect.github.com/astral-sh/ruff/pull/25085">#25085</a>)</li> </ul> <h3>Configuration</h3> <ul> <li>Increase max allowed value of <code>line-length</code> setting (<a href="https://redirect.github.com/astral-sh/ruff/pull/24962">#24962</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add <code>D203</code> to rules that conflict with the formatter (<a href="https://redirect.github.com/astral-sh/ruff/pull/25044">#25044</a>)</li> <li>Clarify <code>COM819</code> and formatter interaction (<a href="https://redirect.github.com/astral-sh/ruff/pull/25045">#25045</a>)</li> <li>Clarify that <code>NotImplemented</code> is a value, not an exception (<code>F901</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25054">#25054</a>)</li> <li>Update number of lint rules supported (<a href="https://redirect.github.com/astral-sh/ruff/pull/24942">#24942</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Simplify the playground's markdown template (<a href="https://redirect.github.com/astral-sh/ruff/pull/24924">#24924</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/MichaReiser"><code>@MichaReiser</code></a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/astral-sh/ruff/commit/2afb467ce397e4a89c13a0a814c62cfecb0e9e49"><code>2afb467</code></a> Bump 0.15.13 (<a href="https://redirect.github.com/astral-sh/ruff/issues/25157">#25157</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/300879600fa3af7cde1e675c63de6ad9d0797d1b"><code>3008796</code></a> [ty] classify TypeVar semantic tokens as type parameters (<a href="https://redirect.github.com/astral-sh/ruff/issues/24891">#24891</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/79470e31877acb6074f3bbff2a49e508822ae4e8"><code>79470e3</code></a> [<code>isort</code>] Avoid constructing <code>glob::Pattern</code>s for literal known modules (<a href="https://redirect.github.com/astral-sh/ruff/issues/25123">#25123</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/2522549901d50f18775999f0fb802b19229417f0"><code>2522549</code></a> Remove shellcheck from prek (<a href="https://redirect.github.com/astral-sh/ruff/issues/25154">#25154</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/7db7170020f539d6d2bc01dbd0b0c09fab91dc06"><code>7db7170</code></a> [ty] Support TypedDict key completions in incomplete, anonymous contexts (<a href="https://redirect.github.com/astral-sh/ruff/issues/25">#25</a>...</li> <li><a href="https://github.com/astral-sh/ruff/commit/bb3dd535f1c5a83e2e56ac93a771fadbeeceebd0"><code>bb3dd53</code></a> [ty] Run full iteration analysis on narrowed typevars (<a href="https://redirect.github.com/astral-sh/ruff/issues/25143">#25143</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/828cdb7732efcb16a53f4ee5f011cf653b834d1a"><code>828cdb7</code></a> [ty] Isolate file-watching test environment (<a href="https://redirect.github.com/astral-sh/ruff/issues/25151">#25151</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/89e1d8670ea4d3af60c8143ee552dc750200718d"><code>89e1d86</code></a> [ty] Preserve TypedDict keys through dict unpacking (<a href="https://redirect.github.com/astral-sh/ruff/issues/24523">#24523</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/86f3064d6fffa5697d174f26b840bd6857b381da"><code>86f3064</code></a> [ty] Avoid accessing <code>args[0]</code> for <code>static_assert</code> (<a href="https://redirect.github.com/astral-sh/ruff/issues/25149">#25149</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/ed819f947dc27e36eac8bb3134153c4668d76a3a"><code>ed819f9</code></a> [ty] Treat custom enum <code>__new__</code> values as dynamic (<a href="https://redirect.github.com/astral-sh/ruff/issues/25136">#25136</a>)</li> <li>Additional commits viewable in <a href="https://github.com/astral-sh/ruff/compare/0.15.12...0.15.13">compare view</a></li> </ul> </details> <br /> Updates `authlib` from 1.7.1 to 1.7.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/authlib/authlib/releases">authlib's releases</a>.</em></p> <blockquote> <h2>v1.7.2</h2> <h2>What's Changed</h2> <ul> <li>Fix the readme links by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/886">authlib/authlib#886</a></li> <li>Allow non-recommended algorithms in ClientSecretJWT and PrivateKey by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/887">authlib/authlib#887</a></li> <li>Validate BCP47 language tags with a regex by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/873">authlib/authlib#873</a></li> <li>Fix RFC7523 signing with non RSA keys by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/884">authlib/authlib#884</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/authlib/authlib/compare/v1.7.1...v1.7.2">https://github.com/authlib/authlib/compare/v1.7.1...v1.7.2</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/authlib/authlib/commit/a0b76fac3fa114d7759af2010546bfc332364b63"><code>a0b76fa</code></a> chore: bump to 1.7.2</li> <li><a href="https://github.com/authlib/authlib/commit/c85c7f2b02faf2667f62b27aa60df042dbc9b4ab"><code>c85c7f2</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/884">#884</a> from azmeuk/852-rfc7523-key-import</li> <li><a href="https://github.com/authlib/authlib/commit/a3b2adda43b4452ba9f384d224f95848974b4eb4"><code>a3b2add</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/873">#873</a> from azmeuk/bcp47</li> <li><a href="https://github.com/authlib/authlib/commit/f2578eaa198aedbaaaf3bb00eccc451e15e45e3a"><code>f2578ea</code></a> fix: Import RSAKey in auth.py for additional key support</li> <li><a href="https://github.com/authlib/authlib/commit/b57182cf46a53da19623208dd852270ddec8ebcc"><code>b57182c</code></a> fix: fallback support RSAKey when client_secret is text</li> <li><a href="https://github.com/authlib/authlib/commit/4e7590292ca9f948a0766640b27025618750e6c1"><code>4e75902</code></a> Merge branch 'main' into 852-rfc7523-key-import</li> <li><a href="https://github.com/authlib/authlib/commit/5eb4a860600ea2f3acc1a2a9c3e621a430da9d0f"><code>5eb4a86</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/887">#887</a> from azmeuk/883-alg</li> <li><a href="https://github.com/authlib/authlib/commit/5633f37c47bd8352b962f982cb916bc8b95bb5d5"><code>5633f37</code></a> fix: allow non-recommended algorithms in ClientSecretJWT and PrivateKeyJWT</li> <li><a href="https://github.com/authlib/authlib/commit/4c8e7b381aaef68f60e2323a25ba96cdb346f82f"><code>4c8e7b3</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/886">#886</a> from azmeuk/885-readme</li> <li><a href="https://github.com/authlib/authlib/commit/23b333e48a17ebf9f032a0e0f9eb3f990a06f97b"><code>23b333e</code></a> docs: fix the readme links</li> <li>Additional commits viewable in <a href="https://github.com/authlib/authlib/compare/1.7.1...v1.7.2">compare view</a></li> </ul> </details> <br /> Updates `pydantic` from 2.12.5 to 2.13.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic/releases">pydantic's releases</a>.</em></p> <blockquote> <h2>v2.13.4 2026-05-06</h2> <h2>v2.13.4 (2026-05-06)</h2> <h3>What's Changed</h3> <h4>Packaging</h4> <ul> <li>Bump libc from 0.2.155 to 0.2.185 by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13109">#13109</a></li> <li>Adapt <code>pydantic-core</code> linker flags on macOS by <a href="https://github.com/washingtoneg"><code>@washingtoneg</code></a> and <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13147">#13147</a></li> </ul> <h4>Fixes</h4> <ul> <li>Preserve <code>RootModel</code> core metadata by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13129">#13129</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.3...v2.13.4">https://github.com/pydantic/pydantic/compare/v2.13.3...v2.13.4</a></p> <h2>v2.13.3 2026-04-20</h2> <h2>v2.13.3 (2026-04-20)</h2> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Handle <code>AttributeError</code> subclasses with <code>from_attributes</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13096">#13096</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.2...v2.13.3">https://github.com/pydantic/pydantic/compare/v2.13.2...v2.13.3</a></p> <h2>v2.13.2 2026-04-17</h2> <h2>v2.13.2 (2026-04-17)</h2> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.field_name</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13084">#13084</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.1...v2.13.2">https://github.com/pydantic/pydantic/compare/v2.13.1...v2.13.2</a></p> <h2>v2.13.1 2026-04-15</h2> <h2>v2.13.1 (2026-04-15)</h2> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.data</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/davidhewitt"><code>@davidhewitt</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13079">#13079</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.0...v2.13.1">https://github.com/pydantic/pydantic/compare/v2.13.0...v2.13.1</a></p> <h2>v2.13.0 2026-04-13</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic/blob/v2.13.4/HISTORY.md">pydantic's changelog</a>.</em></p> <blockquote> <h2>v2.13.4 (2026-05-06)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.4">GitHub release</a></p> <h3>What's Changed</h3> <h4>Packaging</h4> <ul> <li>Bump libc from 0.2.155 to 0.2.185 by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13109">#13109</a></li> <li>Adapt <code>pydantic-core</code> linker flags on macOS by <a href="https://github.com/washingtoneg"><code>@washingtoneg</code></a> and <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13147">#13147</a></li> </ul> <h4>Fixes</h4> <ul> <li>Preserve <code>RootModel</code> core metadata by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13129">#13129</a></li> </ul> <h2>v2.13.3 (2026-04-20)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.3">GitHub release</a></p> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Handle <code>AttributeError</code> subclasses with <code>from_attributes</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13096">#13096</a></li> </ul> <h2>v2.13.2 (2026-04-17)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.2">GitHub release</a></p> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.field_name</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13084">#13084</a></li> </ul> <h2>v2.13.1 (2026-04-15)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.1">GitHub release</a></p> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.data</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/davidhewitt"><code>@davidhewitt</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13079">#13079</a></li> </ul> <h2>v2.13.0 (2026-04-13)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.0">GitHub release</a></p> <p>The highlights of the v2.13 release are available in the <a href="https://pydantic.dev/articles/pydantic-v2-13-release">blog post</a>.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pydantic/pydantic/commit/cf67d4b3193c3fe43ede18612ed62785eee11382"><code>cf67d4b</code></a> Fix linting</li> <li><a href="https://github.com/pydantic/pydantic/commit/f0d8a214a5803036db46a56b1f62f1e56b81d662"><code>f0d8a21</code></a> Prepare release v2.13.4</li> <li><a href="https://github.com/pydantic/pydantic/commit/5e3fe1d41a00f441204241c66078003ae0391f9a"><code>5e3fe1d</code></a> Check for pydantic tag pattern in CI</li> <li><a href="https://github.com/pydantic/pydantic/commit/7f9edcc2a191d2eaa9751220eb910914e716a686"><code>7f9edcc</code></a> Document tagging conventions</li> <li><a href="https://github.com/pydantic/pydantic/commit/b46a0c9b8a4dd967fda8ec1a92f6437076bf262c"><code>b46a0c9</code></a> Adapt <code>pydantic-core</code> linker flags on macOS</li> <li><a href="https://github.com/pydantic/pydantic/commit/50629c851e61d887d5420452c311ec6203f1f400"><code>50629c8</code></a> Update to PyPy 7.3.22</li> <li><a href="https://github.com/pydantic/pydantic/commit/8522ebb71e5e9a6f7188af5f009f01785b8cf725"><code>8522ebb</code></a> Preserve <code>RootModel</code> core metadata</li> <li><a href="https://github.com/pydantic/pydantic/commit/a37f3aff090ca342dc5f48304889963530b993f8"><code>a37f3af</code></a> Adapt <code>MISSING</code> sentinel test to work with unreleased <code>typing_extensions</code> ver...</li> <li><a href="https://github.com/pydantic/pydantic/commit/909259a9df660518033aa686b689f045a6eaf9d2"><code>909259a</code></a> Remove Logfire example in documentation</li> <li><a href="https://github.com/pydantic/pydantic/commit/2c4174c366606fc2dc46cb806833a080aefa77df"><code>2c4174c</code></a> Bump libc from 0.2.155 to 0.2.185</li> <li>Additional commits viewable in <a href="https://github.com/pydantic/pydantic/compare/v2.12.5...v2.13.4">compare view</a></li> </ul> </details> <br /> Updates `typing-extensions` from 4.14.1 to 4.15.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/python/typing_extensions/releases">typing-extensions's releases</a>.</em></p> <blockquote> <h2>4.15.0</h2> <p>No user-facing changes since 4.15.0rc1.</p> <p>New features since 4.14.1:</p> <ul> <li>Add the <code>@typing_extensions.disjoint_base</code> decorator, as specified in PEP 800. Patch by Jelle Zijlstra.</li> <li>Add <code>typing_extensions.type_repr</code>, a backport of <a href="https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr"><code>annotationlib.type_repr</code></a>, introduced in Python 3.14 (CPython PR <a href="https://redirect.github.com/python/cpython/pull/124551">#124551</a>, originally by Jelle Zijlstra). Patch by Semyon Moroz.</li> <li>Fix behavior of type params in <code>typing_extensions.evaluate_forward_ref</code>. Backport of CPython PR <a href="https://redirect.github.com/python/cpython/pull/137227">#137227</a> by Jelle Zijlstra.</li> </ul> <h2>4.15.0rc1</h2> <ul> <li>Add the <code>@typing_extensions.disjoint_base</code> decorator, as specified in PEP 800. Patch by Jelle Zijlstra.</li> <li>Add <code>typing_extensions.type_repr</code>, a backport of <a href="https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr"><code>annotationlib.type_repr</code></a>, introduced in Python 3.14 (CPython PR <a href="https://redirect.github.com/python/cpython/pull/124551">#124551</a>, originally by Jelle Zijlstra). Patch by Semyon Moroz.</li> <li>Fix behavior of type params in <code>typing_extensions.evaluate_forward_ref</code>. Backport of CPython PR <a href="https://redirect.github.com/python/cpython/pull/137227">#137227</a> by Jelle Zijlstra.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/python/typing_extensions/blob/main/CHANGELOG.md">typing-extensions's changelog</a>.</em></p> <blockquote> <h1>Release 4.15.0 (August 25, 2025)</h1> <p>No user-facing changes since 4.15.0rc1.</p> <h1>Release 4.15.0rc1 (August 18, 2025)</h1> <ul> <li>Add the <code>@typing_extensions.disjoint_base</code> decorator, as specified in PEP 800. Patch by Jelle Zijlstra.</li> <li>Add <code>typing_extensions.type_repr</code>, a backport of <a href="https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr"><code>annotationlib.type_repr</code></a>, introduced in Python 3.14 (CPython PR <a href="https://redirect.github.com/python/cpython/pull/124551">#124551</a>, originally by Jelle Zijlstra). Patch by Semyon Moroz.</li> <li>Fix behavior of type params in <code>typing_extensions.evaluate_forward_ref</code>. Backport of CPython PR <a href="https://redirect.github.com/python/cpython/pull/137227">#137227</a> by Jelle Zijlstra.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python/typing_extensions/commit/9d1637e264b5c1a6b7acee3e907015f89b20c2c9"><code>9d1637e</code></a> Prepare release 4.15.0 (<a href="https://redirect.github.com/python/typing_extensions/issues/658">#658</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/4bd67c5be5d9443c7d33c314d02a56ee125eb88d"><code>4bd67c5</code></a> Coverage: exclude some noise (<a href="https://redirect.github.com/python/typing_extensions/issues/656">#656</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/e589a26da73b075c5276bae40b86db1af0144f84"><code>e589a26</code></a> Coverage: add detailed report to job summary (<a href="https://redirect.github.com/python/typing_extensions/issues/655">#655</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/67d37fed1298e050f74d5acc95b2621bd37837ad"><code>67d37fe</code></a> Coverage: Implement fail_under (<a href="https://redirect.github.com/python/typing_extensions/issues/654">#654</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/e9ae26f5286edee9262727755ecb9ad16e999192"><code>e9ae26f</code></a> Don't delete previous coverage comment (<a href="https://redirect.github.com/python/typing_extensions/issues/653">#653</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/ac80bb728a3006fc88ef7373b92f0c25cfcc7895"><code>ac80bb7</code></a> Add Coverage workflow (<a href="https://redirect.github.com/python/typing_extensions/issues/623">#623</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/abaaafd98c1cc7e5baf098ec287a3d22cb339670"><code>abaaafd</code></a> Prepare release 4.15.0rc1 (<a href="https://redirect.github.com/python/typing_extensions/issues/650">#650</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/98104053ea8d49bcdd247804e5fa9f73136acbd4"><code>9810405</code></a> Add <code>@disjoint_base</code> (PEP 800) (<a href="https://redirect.github.com/python/typing_extensions/issues/634">#634</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/7ee9e05fd484d06899ce56e80f5e1aa4c760fc03"><code>7ee9e05</code></a> Backport type_params fix from CPython (<a href="https://redirect.github.com/python/typing_extensions/issues/646">#646</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/1e8eb9c06ef51b3a1e1f05303a16feca13f5ed98"><code>1e8eb9c</code></a> Do not refer to PEP 705 as being experimental (<a href="https://redirect.github.com/python/typing_extensions/issues/648">#648</a>)</li> <li>Additional commits viewable in <a href="https://github.com/python/typing_extensions/compare/4.14.1...4.15.0">compare view</a></li> </ul> </details> <br /> Updates `anyio` from 4.10.0 to 4.13.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/agronholm/anyio/releases">anyio's releases</a>.</em></p> <blockquote> <h2>4.13.0</h2> <ul> <li>Dropped support for Python 3.9</li> <li>Added a <code>ttl</code> parameter to the <code>anyio.functools.lru_cache</code> wrapper (<a href="https://redirect.github.com/agronholm/anyio/pull/1073">#1073</a>; PR by <a href="https://github.com/Graeme22"><code>@Graeme22</code></a>)</li> <li>Widened the type annotations of file I/O streams to accept <code>IO[bytes]</code> instead of just <code>BinaryIO</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/1078">#1078</a>)</li> <li>Fixed <code>anyio.Path</code> not being compatible with Python 3.15 due to the removal of <code>pathlib.Path.is_reserved()</code> and the addition of <code>pathlib.Path.__vfspath__()</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/1061">#1061</a>; PR by <a href="https://github.com/veeceey"><code>@veeceey</code></a>)</li> <li>Fixed the <code>BrokenResourceError</code> raised by the asyncio <code>SocketStream</code> not having the original exception as its cause (<a href="https://redirect.github.com/agronholm/anyio/issues/1055">#1055</a>; PR by <a href="https://github.com/veeceey"><code>@veeceey</code></a>)</li> <li>Fixed the <code>TypeError</code> raised when using "func" as a parameter name in <code>pytest.mark.parametrize</code> when using the pytest plugin (<a href="https://redirect.github.com/agronholm/anyio/pull/1068">#1068</a>; PR by <a href="https://github.com/JohnnyDeuss"><code>@JohnnyDeuss</code></a>)</li> <li>Fixed the pytest plugin not running tests that had the <code>anyio</code> marker added programmatically via <code>pytest_collection_modifyitems</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/422">#422</a>; PR by <a href="https://github.com/chbndrhnns"><code>@chbndrhnns</code></a>)</li> <li>Fixed cancellation exceptions leaking from a <code>CancelScope</code> on asyncio when they are contained in an exception group alongside non-cancellation exceptions (<a href="https://redirect.github.com/agronholm/anyio/issues/1091">#1091</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed <code>Condition.wait()</code> not passing on a notification when the task is cancelled but already received a notification</li> <li>Fixed inverted condition in the process pool shutdown phase which would cause still-running pooled processes not to be terminated (<a href="https://redirect.github.com/agronholm/anyio/pull/1074">#1074</a>; PR by <a href="https://github.com/bysiber"><code>@bysiber</code></a>)</li> </ul> <h2>4.12.1</h2> <ul> <li>Changed all functions currently raising the private <code>NoCurrentAsyncBackend</code> exception (since v4.12.0) to instead raise the public <code>NoEventLoopError</code> exception (<a href="https://redirect.github.com/agronholm/anyio/issues/1048">#1048</a>)</li> <li>Fixed <code>anyio.functools.lru_cache</code> not working with instance methods (<a href="https://redirect.github.com/agronholm/anyio/issues/1042">#1042</a>)</li> </ul> <h2>4.12.0</h2> <ul> <li>Added support for asyncio's <a href="https://docs.python.org/3/library/asyncio-graph.html">task call graphs</a> on Python 3.14 and later when using AnyIO's task groups (<a href="https://redirect.github.com/agronholm/anyio/pull/1025">#1025</a>)</li> <li>Added an asynchronous implementation of the <code>functools</code> module (<a href="https://redirect.github.com/agronholm/anyio/pull/1001">#1001</a>)</li> <li>Added support for <code>uvloop=True</code> on Windows via the <a href="https://github.com/Vizonex/Winloop">winloop</a> implementation (<a href="https://redirect.github.com/agronholm/anyio/pull/960">#960</a>; PR by <a href="https://github.com/Vizonex"><code>@Vizonex</code></a>)</li> <li>Added support for use as a context manager to <code>anyio.lowlevel.RunVar</code> (<a href="https://redirect.github.com/agronholm/anyio/pull/1003">#1003</a>)</li> <li>Added <code>__all__</code> declarations to public submodules (<code>anyio.lowlevel</code> etc.) (<a href="https://redirect.github.com/agronholm/anyio/pull/1009">#1009</a>)</li> <li>Added the ability to set the token count of a <code>CapacityLimiter</code> to zero (<a href="https://redirect.github.com/agronholm/anyio/pull/1019">#1019</a>; requires Python 3.10 or later when using Trio)</li> <li>Added parameters <code>case_sensitive</code> and <code>recurse_symlinks</code> along with support for path-like objects to <code>anyio.Path.glob()</code> and <code>anyio.Path.rglob()</code> (<a href="https://redirect.github.com/agronholm/anyio/pull/1033">#1033</a>; PR by <a href="https://github.com/northisup"><code>@northisup</code></a>)</li> <li>Dropped <code>sniffio</code> as a direct dependency and added the <code>get_available_backends()</code> function (<a href="https://redirect.github.com/agronholm/anyio/pull/1021">#1021</a>)</li> <li>Fixed <code>Process.stdin.send()</code> not raising <code>ClosedResourceError</code> and <code>BrokenResourceError</code> on asyncio. Previously, a non-AnyIO exception was raised in such cases (<a href="https://redirect.github.com/agronholm/anyio/issues/671">#671</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed <code>Process.stdin.send()</code> not checkpointing before writing data on asyncio (<a href="https://redirect.github.com/agronholm/anyio/issues/1002">#1002</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed a race condition where cancelling a <code>Future</code> from <code>BlockingPortal.start_task_soon()</code> would sometimes not cancel the async function (<a href="https://redirect.github.com/agronholm/anyio/issues/1011">#1011</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed the presence of the pytest plugin causing breakage with older versions of pytest (<= 6.1.2) (<a href="https://redirect.github.com/agronholm/anyio/issues/1028">#1028</a>; PR by <a href="https://github.com/saper"><code>@saper</code></a>)</li> <li>Fixed a rarely occurring <code>RuntimeError: Set changed size during iteration</code> while shutting down the process pool when using the asyncio backend (<a href="https://redirect.github.com/agronholm/anyio/issues/985">#985</a>)</li> </ul> <h2>4.11.0</h2> <ul> <li>Added support for cancellation reasons (the <code>reason</code> parameter to <code>CancelScope.cancel()</code>) (<a href="https://redirect.github.com/agronholm/anyio/pull/975">#975</a>)</li> <li>Bumped the minimum version of Trio to v0.31.0</li> <li>Added the ability to enter the event loop from foreign (non-worker) threads by passing the return value of <code>anyio.lowlevel.current_token()</code> to <code>anyio.from_thread.run()</code> and <code>anyio.from_thread.run_sync()</code> as the <code>token</code> keyword argument (<a href="https://redirect.github.com/agronholm/anyio/issues/256">#256</a>)</li> <li>Added pytest option (<code>anyio_mode = "auto"</code>) to make the pytest plugin automatically handle all async tests (<a href="https://redirect.github.com/agronholm/anyio/pull/971">#971</a>)</li> <li>Added the <code>anyio.Condition.wait_for()</code> method for feature parity with asyncio (<a href="https://redirect.github.com/agronholm/anyio/pull/974">#974</a>)</li> <li>Changed the default type argument of <code>anyio.abc.TaskStatus</code> from <code>Any</code> to <code>None</code> (<a href="https://redirect.github.com/agronholm/anyio/pull/964">#964</a>)</li> <li>Fixed TCP listener behavior to guarantee the same ephemeral port is used for all socket listeners when <code>local_port=0</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/857">#857</a>; PR by <a href="https://github.com/11kkw"><code>@11kkw</code></a> and <a href="https://github.com/agronholm"><code>@agronholm</code></a>)</li> <li>Fixed inconsistency between Trio and asyncio where a TCP stream that previously raised a <code>BrokenResourceError</code> on <code>send()</code> would still raise <code>BrokenResourceError</code> after the stream was closed on asyncio, but <code>ClosedResourceError</code> on Trio. They now both raise a <code>ClosedResourceError</code> in this scenario. (<a href="https://redirect.github.com/agronholm/anyio/issues/671">#671</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/agronholm/anyio/commit/afbe93ca9d0c447adf26e9c1715ac20870622bf2"><code>afbe93c</code></a> Bumped up the version</li> <li><a href="https://github.com/agronholm/anyio/commit/33bdf2e4b4f40c2df178123746147a6d2471808d"><code>33bdf2e</code></a> Rearranged the changelog entries</li> <li><a href="https://github.com/agronholm/anyio/commit/19e09e25bc5a23dd78a577d8c3909dd377057c78"><code>19e09e2</code></a> Fixed inverted condition in _forcibly_shutdown_process_pool_on_exit (<a href="https://redirect.github.com/agronholm/anyio/issues/1074">#1074</a>)</li> <li><a href="https://github.com/agronholm/anyio/commit/9369d80b9e8292f2a892a9d5c73923c6a28aa08c"><code>9369d80</code></a> Fixed Condition.wait() not handing over notification when cancelled</li> <li><a href="https://github.com/agronholm/anyio/commit/6f122abdc6f6b166c6b6ac27d36d55cdf8fa08e8"><code>6f122ab</code></a> Fixed cancellation exceptions leaking from a <code>CancelScope</code> on asyncio when th...</li> <li><a href="https://github.com/agronholm/anyio/commit/beaa45aff568a4020f2faf317321dd92f0e1f4a0"><code>beaa45a</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/agronholm/anyio/issues/1097">#1097</a>)</li> <li><a href="https://github.com/agronholm/anyio/commit/602f6606dcf3f37702686a4f3e161328c537b07f"><code>602f660</code></a> Widened type annotations to accept IO[bytes] in file streams</li> <li><a href="https://github.com/agronholm/anyio/commit/b5dcd45170701a756ba634197398f05d4710cab3"><code>b5dcd45</code></a> Added note about erasing the template</li> <li><a href="https://github.com/agronholm/anyio/commit/d68670b3b4e0917d4caff2de082e03220f3e05a1"><code>d68670b</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/agronholm/anyio/issues/1090">#1090</a>)</li> <li><a href="https://github.com/agronholm/anyio/commit/fc17a22dd948e6a3d90d99908813f0010dfc3d2c"><code>fc17a22</code></a> tweak to_thread docs about abandon_on_cancel (<a href="https://redirect.github.com/agronholm/anyio/issues/1088">#1088</a>)</li> <li>Additional commits viewable in <a href="https://github.com/agronholm/anyio/compare/4.10.0...4.13.0">compare view</a></li> </ul> </details> <br /> Updates `typer` from 0.16.0 to 0.25.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/fastapi/typer/releases">typer's releases</a>.</em></p> <blockquote> <h2>0.25.1</h2> <h3>Features</h3> <ul> <li>🔧 Add Typer Library Skill for Agents. PR <a href="https://redirect.github.com/fastapi/typer/pull/1620">#1620</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump ruff from 0.15.11 to 0.15.12. PR <a href="https://redirect.github.com/fastapi/typer/pull/1722">#1722</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.10 to 0.3.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1723">#1723</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <h2>0.25.0</h2> <h3>Features</h3> <ul> <li>🚸 Don't truncate code lines in traceback when formatted with Rich. PR <a href="https://redirect.github.com/fastapi/typer/pull/1695">#1695</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h2>0.24.2</h2> <h3>Fixes</h3> <ul> <li>🐛 Ensure that <code>typer.launch</code> forwards correctly when launching a file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1708">#1708</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Refactors</h3> <ul> <li>🎨 Ensure <code>ty</code> runs without errors. PR <a href="https://redirect.github.com/fastapi/typer/pull/1628">#1628</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Docs</h3> <ul> <li>📝 Add dates to release notes. PR <a href="https://redirect.github.com/fastapi/typer/pull/1612">#1612</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>💄 Fix code blocks in reference docs overflowing table width. PR <a href="https://redirect.github.com/fastapi/typer/pull/1630">#1630</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>📝 Fix broken link to FastAPI and Friends newsletter. PR <a href="https://redirect.github.com/fastapi/typer/pull/1540">#1540</a> by <a href="https://github.com/Karlemami"><code>@Karlemami</code></a>.</li> <li>🔨 Handle external links <code>target=_blank</code> and CSS automatically in JS and CSS. PR <a href="https://redirect.github.com/fastapi/typer/pull/1622">#1622</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>📝 Remove link to Typer developer survey. PR <a href="https://redirect.github.com/fastapi/typer/pull/1609">#1609</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> <li>✏️ Clean up documentation in <code>install.md</code> file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1606">#1606</a> by <a href="https://github.com/Johandielangman"><code>@Johandielangman</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump mypy from 1.20.1 to 1.20.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1715">#1715</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.9 to 0.3.10. PR <a href="https://redirect.github.com/fastapi/typer/pull/1716">#1716</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic-settings from 2.13.1 to 2.14.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1713">#1713</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ty from 0.0.31 to 0.0.32. PR <a href="https://redirect.github.com/fastapi/typer/pull/1711">#1711</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.2 to 2.13.3. PR <a href="https://redirect.github.com/fastapi/typer/pull/1712">#1712</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pygments from 2.19.2 to 2.20.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1667">#1667</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pymdown-extensions from 10.20 to 10.21.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1710">#1710</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>⬆ Bump actions/cache from 5.0.4 to 5.0.5. PR <a href="https://redirect.github.com/fastapi/typer/pull/1700">#1700</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.1 to 2.13.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1703">#1703</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump actions/upload-artifact from 7.0.0 to 7.0.1. PR <a href="https://redirect.github.com/fastapi/typer/pull/1701">#1701</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ruff from 0.15.10 to 0.15.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1704">#1704</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump cloudflare/wrangler-action from 3.14.1 to 3.15.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1702">#1702</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump astral-sh/setup-uv from 7.6.0 to 8.1.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1699">#1699</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ty from 0.0.30 to 0.0.31. PR <a href="https://redirect.github.com/fastapi/typer/pull/1696">#1696</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.0 to 2.13.1. PR <a href="https://redirect.github.com/fastapi/typer/pull/1697">#1697</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/fastapi/typer/blob/master/docs/release-notes.md">typer's changelog</a>.</em></p> <blockquote> <h2>0.25.1 (2026-04-30)</h2> <h3>Features</h3> <ul> <li>🔧 Add Typer Library Skill for Agents. PR <a href="https://redirect.github.com/fastapi/typer/pull/1620">#1620</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump ruff from 0.15.11 to 0.15.12. PR <a href="https://redirect.github.com/fastapi/typer/pull/1722">#1722</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.10 to 0.3.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1723">#1723</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <h2>0.25.0 (2026-04-26)</h2> <h3>Features</h3> <ul> <li>🚸 Don't truncate code lines in traceback when formatted with Rich. PR <a href="https://redirect.github.com/fastapi/typer/pull/1695">#1695</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h2>0.24.2 (2026-04-22)</h2> <h3>Fixes</h3> <ul> <li>🐛 Ensure that <code>typer.launch</code> forwards correctly when launching a file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1708">#1708</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Refactors</h3> <ul> <li>🎨 Ensure <code>ty</code> runs without errors. PR <a href="https://redirect.github.com/fastapi/typer/pull/1628">#1628</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Docs</h3> <ul> <li>📝 Add dates to release notes. PR <a href="https://redirect.github.com/fastapi/typer/pull/1612">#1612</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>💄 Fix code blocks in reference docs overflowing table width. PR <a href="https://redirect.github.com/fastapi/typer/pull/1630">#1630</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>📝 Fix broken link to FastAPI and Friends newsletter. PR <a href="https://redirect.github.com/fastapi/typer/pull/1540">#1540</a> by <a href="https://github.com/Karlemami"><code>@Karlemami</code></a>.</li> <li>🔨 Handle external links <code>target=_blank</code> and CSS automatically in JS and CSS. PR <a href="https://redirect.github.com/fastapi/typer/pull/1622">#1622</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>📝 Remove link to Typer developer survey. PR <a href="https://redirect.github.com/fastapi/typer/pull/1609">#1609</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> <li>✏️ Clean up documentation in <code>install.md</code> file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1606">#1606</a> by <a href="https://github.com/Johandielangman"><code>@Johandielangman</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump mypy from 1.20.1 to 1.20.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1715">#1715</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.9 to 0.3.10. PR <a href="https://redirect.github.com/fastapi/typer/pull/1716">#1716</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic-settings from 2.13.1 to 2.14.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1713">#1713</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ty from 0.0.31 to 0.0.32. PR <a href="https://redirect.github.com/fastapi/typer/pull/1711">#1711</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.2 to 2.13.3. PR <a href="https://redirect.github.com/fastapi/typer/pull/1712">#1712</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pygments from 2.19.2 to 2.20.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1667">#1667</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pymdown-extensions from 10.20 to 10.21.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1710">#1710</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>⬆ Bump actions/cache from 5.0.4 to 5.0.5. PR <a href="https://redirect.github.com/fastapi/typer/pull/1700">#1700</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.1 to 2.13.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1703">#1703</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump actions/upload-artifact from 7.0.0 to 7.0.1. PR <a href="https://redirect.github.com/fastapi/typer/pull/1701">#1701</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ruff from 0.15.10 to 0.15.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1704">#1704</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump cloudflare/wrangler-action from 3.14.1 to 3.15.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1702">#1702</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/fastapi/typer/commit/cfcc2ef9f948bcce67897a6c7e689d39da690bf9"><code>cfcc2ef</code></a> 🔖 Release version 0.25.1</li> <li><a href="https://github.com/fastapi/typer/commit/13846cc59bd574567a9a1f56eae3cd42b9aa2a4f"><code>13846cc</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/a43746997ad6f2b4a8829c69c919f4d4c2cc0698"><code>a437469</code></a> 🔧 Add Typer Library Skill for Agents (<a href="https://redirect.github.com/fastapi/typer/issues/1620">#1620</a>)</li> <li><a href="https://github.com/fastapi/typer/commit/ba6cc2c9e7cba35f891c91118e228e1d2da35edb"><code>ba6cc2c</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/0f3ead07c2bb384fdd590e895ca6705582c58d89"><code>0f3ead0</code></a> ⬆ Bump ruff from 0.15.11 to 0.15.12 (<a href="https://redirect.github.com/fastapi/typer/issues/1722">#1722</a>)</li> <li><a href="https://github.com/fastapi/typer/commit/db4ade64936599b3460f2fc0a7c550c3fedc33b0"><code>db4ade6</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/5a5206ceed2afdf234f88a6e2ef74ad9ebdf0d92"><code>5a5206c</code></a> ⬆ Bump prek from 0.3.10 to 0.3.11 (<a href="https://redirect.github.com/fastapi/typer/issues/1723">#1723</a>)</li> <li><a href="https://github.com/fastapi/typer/commit/959845e173b4bec0d606d99247815c2710613ca8"><code>959845e</code></a> 🔖 Release version 0.25.0</li> <li><a href="https://github.com/fastapi/typer/commit/5e1fcfb5935e7ac3ff3c7526ef297eae31bd4822"><code>5e1fcfb</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/dfb21ad034804584702d553ebfba40d8f4d791b9"><code>dfb21ad</code></a> 🚸 Don't truncate code lines in traceback when formatted with Rich (<a href="https://redirect.github.com/fastapi/typer/issues/1695">#1695</a>)</li> <li>Additional commits viewable in <a href="https://github.com/fastapi/typer/compare/0.16.0...0.25.1">compare view</a></li> </ul> </details> <br /> Updates `uvicorn` from 0.35.0 to 0.47.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/releases">uvicorn's releases</a>.</em></p> <blockquote> <h2>Version 0.47.0</h2> <h2>What's Changed</h2> <ul> <li>Eagerly import the ASGI app in the parent process by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2919">Kludex/uvicorn#2919</a></li> <li>Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2920">Kludex/uvicorn#2920</a></li> <li>Treat <code>fd=0</code> as a valid file descriptor with reload/workers by <a href="https://github.com/eltoder"><code>@eltoder</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2927">Kludex/uvicorn#2927</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0">https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0</a></p> <h2>Version 0.46.0</h2> <h2>What's Changed</h2> <ul> <li>Support <code>ws_max_size</code> in <code>wsproto</code> implementation by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2915">Kludex/uvicorn#2915</a></li> <li>Support <code>ws_ping_interval</code> and <code>ws_ping_timeout</code> in <code>wsproto</code> implementation by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2916">Kludex/uvicorn#2916</a></li> <li>Use <code>bytearray</code> for incoming WebSocket message buffer in websockets-sansio by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2917">Kludex/uvicorn#2917</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0">https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0</a></p> <h2>Version 0.45.0</h2> <h2>What's Changed</h2> <ul> <li>Preserve forwarded client ports in proxy headers middleware by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2903">Kludex/uvicorn#2903</a></li> <li>Accept <code>os.PathLike</code> for <code>log_config</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2905">Kludex/uvicorn#2905</a></li> <li>Accept <code>log_level</code> strings case-insensitively by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2907">Kludex/uvicorn#2907</a></li> <li>Raise helpful <code>ImportError</code> when PyYAML is missing for YAML log config by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2906">Kludex/uvicorn#2906</a></li> <li>Revert empty context for ASGI runs by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2911">Kludex/uvicorn#2911</a></li> <li>Add <code>--reset-contextvars</code> flag to isolate ASGI request context by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2912">Kludex/uvicorn#2912</a></li> <li>Revert "Emit <code>http.disconnect</code> on server shutdown for streaming responses" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2829">#2829</a>) by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2913">Kludex/uvicorn#2913</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/Krishnachaitanyakc"><code>@Krishnachaitanyakc</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2870">Kludex/uvicorn#2870</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0">https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0</a></p> <h2>Version 0.44.0</h2> <h2>What's Changed</h2> <ul> <li>Implement websocket keepalive pings for websockets-sansio by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2888">Kludex/uvicorn#2888</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0">https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0</a></p> <h2>Version 0.43.0</h2> <h2>Changed</h2> <ul> <li>Emit <code>http.disconnect</code> ASGI <code>receive()</code> event on server shutting down for streaming responses (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2829">#2829</a>)</li> <li>Use native <code>context</code> parameter for <code>create_task</code> on Python 3.11+ (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2859">#2859</a>)</li> <li>Drop cast in ASGI types (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2875">#2875</a>)</li> </ul> <hr /> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0">https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0</a></p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md">uvicorn's changelog</a>.</em></p> <blockquote> <h2>0.47.0 (May 14, 2026)</h2> <h3>Added</h3> <ul> <li>Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2920">#2920</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Eagerly import the ASGI app in the parent process (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2919">#2919</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Treat <code>fd=0</code> as a valid file descriptor with reload/workers (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2927">#2927</a>)</li> </ul> <h2>0.46.0 (April 23, 2026)</h2> <h3>Added</h3> <ul> <li>Support <code>ws_max_size</code> in <code>wsproto</code> implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2915">#2915</a>)</li> <li>Support <code>ws_ping_interval</code> and <code>ws_ping_timeout</code> in <code>wsproto</code> implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2916">#2916</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Use <code>bytearray</code> for incoming WebSocket message buffer in <code>websockets-sansio</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2917">#2917</a>)</li> </ul> <h2>0.45.0 (April 21, 2026)</h2> <h3>Added</h3> <ul> <li>Add <code>--reset-contextvars</code> flag to isolate ASGI request context (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2912">#2912</a>)</li> <li>Accept <code>os.PathLike</code> for <code>log_config</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2905">#2905</a>)</li> <li>Accept <code>log_level</code> strings case-insensitively (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2907">#2907</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Revert "Emit <code>http.disconnect</code> on server shutdown for streaming responses" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2913">#2913</a>)</li> <li>Revert "Explicitly start ASGI run with empty context" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2911">#2911</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Preserve forwarded client ports in proxy headers middleware (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2903">#2903</a>)</li> <li>Raise helpful <code>ImportError</code> when PyYAML is missing for YAML log config (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2906">#2906</a>)</li> </ul> <h2>0.44.0 (April 6, 2026)</h2> <h3>Added</h3> <ul> <li>Implement websocket keepalive pings for websockets-sansio (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2888">#2888</a>)</li> </ul> <h2>0.43.0 (April 3, 2026)</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/uvicorn/commit/479a2c0c89186714f1aac52aecdebebf271395ac"><code>479a2c0</code></a> Version 0.47.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2937">#2937</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/89347fd166ebedf98fb3f806ce8ea44e93b1c2b5"><code>89347fd</code></a> Add 7-day cooldown for dependency resolution via uv exclude-newer (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2936">#2936</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/767315b38ae509cee9fe8ee9d09f6da920536096"><code>767315b</code></a> Drop unused contents/actions permissions from zizmor workflow (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2935">#2935</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/f25ee43e68a9678453cbca99ad96f1a447ff34af"><code>f25ee43</code></a> chore(deps): bump urllib3 from 2.6.3 to 2.7.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2933">#2933</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/8782666189a3d36c978de5698620db705659bf44"><code>8782666</code></a> Fix typo in <code>docs/deployment/index.md</code>. (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2932">#2932</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/ad5ff87c869e8a34e9b04fcd5ca38d65c526893c"><code>ad5ff87</code></a> Treat <code>fd=0</code> as a valid file descriptor with reload/workers (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2927">#2927</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/6761b2c8f9272fa0e908d0b9cdcb3cb0aa11382f"><code>6761b2c</code></a> Remove Hugging Face sponsor block from docs (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2923">#2923</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/438f64834de00708a9bb3548a36090e7a924ad84"><code>438f648</code></a> Surface sponsors on welcome page and sidebar (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2921">#2921</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/10ddc6dd296cb6e432a00835abe27f1c822373c1"><code>10ddc6d</code></a> Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2920">#2920</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/b499bc45101d920e691e384025d728507215d4d1"><code>b499bc4</code></a> Eagerly import the ASGI app in the parent process (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2919">#2919</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/uvicorn/compare/0.35.0...0.47.0">compare view</a></li> </ul> </details> <br /> Updates `openai` from 2.14.0 to 2.37.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/openai/openai-python/releases">openai's releases</a>.</em></p> <blockquote> <h2>v2.37.0</h2> <h2>2.37.0 (2026-05-13)</h2> <p>Full Changelog: <a href="https://github.com/openai/openai-python/compare/v2.36.0...v2.37.0">v2.36.0...v2.37.0</a></p> <h3>Features</h3> <ul> <li><strong>api:</strong> add service_tier parameter to responses compact method (<a href="https://github.com/openai/openai-python/commit/625827c5509ece3c40e5002be37a9bd9d91b5374">625827c</a>)</li> <li><strong>internal/types:</strong> support eagerly validating pydantic iterators (<a href="https://github.com/openai/openai-python/commit/7e527bc927cc58b74d7619abf7f1fbcfff8bddfa">7e527bc</a>)</li> <li>Remove unnecessary client_id when using workload identity provider for auth (<a href="https://github.com/openai/openai-python/commit/c39ea8d12a010052d7f02cebe8daabd2d1f89597">c39ea8d</a>)</li> </ul> <h3>Bug Fixes</h3> <ul> <li><strong>client:</strong> add missing f-string prefix in file type error message (<a href="https://github.com/openai/openai-python/commit/c85ebd935cb4b80e7e97ce255437…
maazghani
added a commit
to maazghani/kagent
that referenced
this pull request
May 19, 2026
* fix(ui): save memory config to spec.declarative.memory (#1887) Memory was being written to `spec.memory` on the Agent CR, but the v1alpha2 CRD defines `memory` under `spec.declarative`, not at the top level of `AgentSpec` - see https://github.com/kagent-dev/kagent/blob/e03ee3a61be8387f6148d4fae9205e75eb45d2ab/go/api/v1alpha2/agent_types.go#L162-L224. The backend silently ignored the misplaced field, causing memory configuration to appear to save but never actually persist. Also removed a dead fallback in the edit-load path that attempted to read `spec.memory` (a field that never exists in v1alpha2) masking the underlying issue. Signed-off-by: Brian Fox <878612+onematchfox@users.noreply.github.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> * chore(deps): bump the python-minor-patch group across 1 directory with 22 updates (#1885) Bumps the python-minor-patch group with 21 updates in the /python directory: | Package | From | To | | --- | --- | --- | | [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.15.13` | | [authlib](https://github.com/authlib/authlib) | `1.7.1` | `1.7.2` | | [pydantic](https://github.com/pydantic/pydantic) | `2.12.5` | `2.13.4` | | [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` | | [anyio](https://github.com/agronholm/anyio) | `4.10.0` | `4.13.0` | | [typer](https://github.com/fastapi/typer) | `0.16.0` | `0.25.1` | | [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.47.0` | | [openai](https://github.com/openai/openai-python) | `2.14.0` | `2.37.0` | | [mcp](https://github.com/modelcontextprotocol/python-sdk) | `1.25.0` | `1.27.1` | | [fastapi](https://github.com/fastapi/fastapi) | `0.129.0` | `0.136.1` | | [urllib3](https://github.com/urllib3/urllib3) | `2.6.3` | `2.7.0` | | [filelock](https://github.com/tox-dev/py-filelock) | `3.20.3` | `3.29.0` | | [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.22` | `0.0.29` | | [boto3](https://github.com/boto/boto3) | `1.42.28` | `1.43.9` | | [ollama](https://github.com/ollama/ollama-python) | `0.6.1` | `0.6.2` | | [psutil](https://github.com/giampaolo/psutil) | `7.0.0` | `7.2.2` | | [langgraph](https://github.com/langchain-ai/langgraph) | `1.0.6` | `1.2.0` | | [openai-agents](https://github.com/openai/openai-agents-python) | `0.6.5` | `0.17.2` | | [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` | | [langchain-openai](https://github.com/langchain-ai/langchain) | `1.1.7` | `1.2.1` | | [langgraph-checkpoint-sqlite](https://github.com/langchain-ai/langgraph) | `3.0.3` | `3.1.0` | Updates `ruff` from 0.15.12 to 0.15.13 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/astral-sh/ruff/releases">ruff's releases</a>.</em></p> <blockquote> <h2>0.15.13</h2> <h2>Release Notes</h2> <p>Released on 2026-05-14.</p> <h3>Preview features</h3> <ul> <li>Add a rule to flag lazy imports that are eagerly evaluated (<a href="https://redirect.github.com/astral-sh/ruff/pull/25016">#25016</a>)</li> <li>[<code>pylint</code>] Standardize diagnostic message (<code>PLR0914</code>, <code>PLR0917</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24996">#24996</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>F811</code> false positive for class methods (<a href="https://redirect.github.com/astral-sh/ruff/pull/24933">#24933</a>)</li> <li>Fix setting selection for multi-folder workspace (<a href="https://redirect.github.com/astral-sh/ruff/pull/24819">#24819</a>)</li> <li>[<code>eradicate</code>] Fix false positive for lines with leading whitespace (<code>ERA001</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25122">#25122</a>)</li> <li>[<code>flake8-pyi</code>] Fix false positive for f-string debug specifier (<code>PYI016</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24098">#24098</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>Always include panic payload in panic diagnostic message (<a href="https://redirect.github.com/astral-sh/ruff/pull/24873">#24873</a>)</li> <li>Restrict <code>PYI034</code> for in-place operations to enclosing class (<a href="https://redirect.github.com/astral-sh/ruff/pull/24511">#24511</a>)</li> <li>Improve error message for parameters that are declared <code>global</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/24902">#24902</a>)</li> <li>Update known stdlib (<a href="https://redirect.github.com/astral-sh/ruff/pull/25103">#25103</a>)</li> </ul> <h3>Performance</h3> <ul> <li>[<code>isort</code>] Avoid constructing <code>glob::Pattern</code>s for literal known modules (<a href="https://redirect.github.com/astral-sh/ruff/pull/25123">#25123</a>)</li> </ul> <h3>CLI</h3> <ul> <li>Add TOML examples to <code>--config</code> help text (<a href="https://redirect.github.com/astral-sh/ruff/pull/25013">#25013</a>)</li> <li>Colorize ruff check 'All checks passed' (<a href="https://redirect.github.com/astral-sh/ruff/pull/25085">#25085</a>)</li> </ul> <h3>Configuration</h3> <ul> <li>Increase max allowed value of <code>line-length</code> setting (<a href="https://redirect.github.com/astral-sh/ruff/pull/24962">#24962</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add <code>D203</code> to rules that conflict with the formatter (<a href="https://redirect.github.com/astral-sh/ruff/pull/25044">#25044</a>)</li> <li>Clarify <code>COM819</code> and formatter interaction (<a href="https://redirect.github.com/astral-sh/ruff/pull/25045">#25045</a>)</li> <li>Clarify that <code>NotImplemented</code> is a value, not an exception (<code>F901</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25054">#25054</a>)</li> <li>Update number of lint rules supported (<a href="https://redirect.github.com/astral-sh/ruff/pull/24942">#24942</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Simplify the playground's markdown template (<a href="https://redirect.github.com/astral-sh/ruff/pull/24924">#24924</a>)</li> </ul> <h3>Contributors</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md">ruff's changelog</a>.</em></p> <blockquote> <h2>0.15.13</h2> <p>Released on 2026-05-14.</p> <h3>Preview features</h3> <ul> <li>Add a rule to flag lazy imports that are eagerly evaluated (<a href="https://redirect.github.com/astral-sh/ruff/pull/25016">#25016</a>)</li> <li>[<code>pylint</code>] Standardize diagnostic message (<code>PLR0914</code>, <code>PLR0917</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24996">#24996</a>)</li> </ul> <h3>Bug fixes</h3> <ul> <li>Fix <code>F811</code> false positive for class methods (<a href="https://redirect.github.com/astral-sh/ruff/pull/24933">#24933</a>)</li> <li>Fix setting selection for multi-folder workspace (<a href="https://redirect.github.com/astral-sh/ruff/pull/24819">#24819</a>)</li> <li>[<code>eradicate</code>] Fix false positive for lines with leading whitespace (<code>ERA001</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25122">#25122</a>)</li> <li>[<code>flake8-pyi</code>] Fix false positive for f-string debug specifier (<code>PYI016</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/24098">#24098</a>)</li> </ul> <h3>Rule changes</h3> <ul> <li>Always include panic payload in panic diagnostic message (<a href="https://redirect.github.com/astral-sh/ruff/pull/24873">#24873</a>)</li> <li>Restrict <code>PYI034</code> for in-place operations to enclosing class (<a href="https://redirect.github.com/astral-sh/ruff/pull/24511">#24511</a>)</li> <li>Improve error message for parameters that are declared <code>global</code> (<a href="https://redirect.github.com/astral-sh/ruff/pull/24902">#24902</a>)</li> <li>Update known stdlib (<a href="https://redirect.github.com/astral-sh/ruff/pull/25103">#25103</a>)</li> </ul> <h3>Performance</h3> <ul> <li>[<code>isort</code>] Avoid constructing <code>glob::Pattern</code>s for literal known modules (<a href="https://redirect.github.com/astral-sh/ruff/pull/25123">#25123</a>)</li> </ul> <h3>CLI</h3> <ul> <li>Add TOML examples to <code>--config</code> help text (<a href="https://redirect.github.com/astral-sh/ruff/pull/25013">#25013</a>)</li> <li>Colorize ruff check 'All checks passed' (<a href="https://redirect.github.com/astral-sh/ruff/pull/25085">#25085</a>)</li> </ul> <h3>Configuration</h3> <ul> <li>Increase max allowed value of <code>line-length</code> setting (<a href="https://redirect.github.com/astral-sh/ruff/pull/24962">#24962</a>)</li> </ul> <h3>Documentation</h3> <ul> <li>Add <code>D203</code> to rules that conflict with the formatter (<a href="https://redirect.github.com/astral-sh/ruff/pull/25044">#25044</a>)</li> <li>Clarify <code>COM819</code> and formatter interaction (<a href="https://redirect.github.com/astral-sh/ruff/pull/25045">#25045</a>)</li> <li>Clarify that <code>NotImplemented</code> is a value, not an exception (<code>F901</code>) (<a href="https://redirect.github.com/astral-sh/ruff/pull/25054">#25054</a>)</li> <li>Update number of lint rules supported (<a href="https://redirect.github.com/astral-sh/ruff/pull/24942">#24942</a>)</li> </ul> <h3>Other changes</h3> <ul> <li>Simplify the playground's markdown template (<a href="https://redirect.github.com/astral-sh/ruff/pull/24924">#24924</a>)</li> </ul> <h3>Contributors</h3> <ul> <li><a href="https://github.com/MichaReiser"><code>@MichaReiser</code></a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/astral-sh/ruff/commit/2afb467ce397e4a89c13a0a814c62cfecb0e9e49"><code>2afb467</code></a> Bump 0.15.13 (<a href="https://redirect.github.com/astral-sh/ruff/issues/25157">#25157</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/300879600fa3af7cde1e675c63de6ad9d0797d1b"><code>3008796</code></a> [ty] classify TypeVar semantic tokens as type parameters (<a href="https://redirect.github.com/astral-sh/ruff/issues/24891">#24891</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/79470e31877acb6074f3bbff2a49e508822ae4e8"><code>79470e3</code></a> [<code>isort</code>] Avoid constructing <code>glob::Pattern</code>s for literal known modules (<a href="https://redirect.github.com/astral-sh/ruff/issues/25123">#25123</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/2522549901d50f18775999f0fb802b19229417f0"><code>2522549</code></a> Remove shellcheck from prek (<a href="https://redirect.github.com/astral-sh/ruff/issues/25154">#25154</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/7db7170020f539d6d2bc01dbd0b0c09fab91dc06"><code>7db7170</code></a> [ty] Support TypedDict key completions in incomplete, anonymous contexts (<a href="https://redirect.github.com/astral-sh/ruff/issues/25">#25</a>...</li> <li><a href="https://github.com/astral-sh/ruff/commit/bb3dd535f1c5a83e2e56ac93a771fadbeeceebd0"><code>bb3dd53</code></a> [ty] Run full iteration analysis on narrowed typevars (<a href="https://redirect.github.com/astral-sh/ruff/issues/25143">#25143</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/828cdb7732efcb16a53f4ee5f011cf653b834d1a"><code>828cdb7</code></a> [ty] Isolate file-watching test environment (<a href="https://redirect.github.com/astral-sh/ruff/issues/25151">#25151</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/89e1d8670ea4d3af60c8143ee552dc750200718d"><code>89e1d86</code></a> [ty] Preserve TypedDict keys through dict unpacking (<a href="https://redirect.github.com/astral-sh/ruff/issues/24523">#24523</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/86f3064d6fffa5697d174f26b840bd6857b381da"><code>86f3064</code></a> [ty] Avoid accessing <code>args[0]</code> for <code>static_assert</code> (<a href="https://redirect.github.com/astral-sh/ruff/issues/25149">#25149</a>)</li> <li><a href="https://github.com/astral-sh/ruff/commit/ed819f947dc27e36eac8bb3134153c4668d76a3a"><code>ed819f9</code></a> [ty] Treat custom enum <code>__new__</code> values as dynamic (<a href="https://redirect.github.com/astral-sh/ruff/issues/25136">#25136</a>)</li> <li>Additional commits viewable in <a href="https://github.com/astral-sh/ruff/compare/0.15.12...0.15.13">compare view</a></li> </ul> </details> <br /> Updates `authlib` from 1.7.1 to 1.7.2 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/authlib/authlib/releases">authlib's releases</a>.</em></p> <blockquote> <h2>v1.7.2</h2> <h2>What's Changed</h2> <ul> <li>Fix the readme links by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/886">authlib/authlib#886</a></li> <li>Allow non-recommended algorithms in ClientSecretJWT and PrivateKey by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/887">authlib/authlib#887</a></li> <li>Validate BCP47 language tags with a regex by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/873">authlib/authlib#873</a></li> <li>Fix RFC7523 signing with non RSA keys by <a href="https://github.com/azmeuk"><code>@azmeuk</code></a> in <a href="https://redirect.github.com/authlib/authlib/pull/884">authlib/authlib#884</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/authlib/authlib/compare/v1.7.1...v1.7.2">https://github.com/authlib/authlib/compare/v1.7.1...v1.7.2</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/authlib/authlib/commit/a0b76fac3fa114d7759af2010546bfc332364b63"><code>a0b76fa</code></a> chore: bump to 1.7.2</li> <li><a href="https://github.com/authlib/authlib/commit/c85c7f2b02faf2667f62b27aa60df042dbc9b4ab"><code>c85c7f2</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/884">#884</a> from azmeuk/852-rfc7523-key-import</li> <li><a href="https://github.com/authlib/authlib/commit/a3b2adda43b4452ba9f384d224f95848974b4eb4"><code>a3b2add</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/873">#873</a> from azmeuk/bcp47</li> <li><a href="https://github.com/authlib/authlib/commit/f2578eaa198aedbaaaf3bb00eccc451e15e45e3a"><code>f2578ea</code></a> fix: Import RSAKey in auth.py for additional key support</li> <li><a href="https://github.com/authlib/authlib/commit/b57182cf46a53da19623208dd852270ddec8ebcc"><code>b57182c</code></a> fix: fallback support RSAKey when client_secret is text</li> <li><a href="https://github.com/authlib/authlib/commit/4e7590292ca9f948a0766640b27025618750e6c1"><code>4e75902</code></a> Merge branch 'main' into 852-rfc7523-key-import</li> <li><a href="https://github.com/authlib/authlib/commit/5eb4a860600ea2f3acc1a2a9c3e621a430da9d0f"><code>5eb4a86</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/887">#887</a> from azmeuk/883-alg</li> <li><a href="https://github.com/authlib/authlib/commit/5633f37c47bd8352b962f982cb916bc8b95bb5d5"><code>5633f37</code></a> fix: allow non-recommended algorithms in ClientSecretJWT and PrivateKeyJWT</li> <li><a href="https://github.com/authlib/authlib/commit/4c8e7b381aaef68f60e2323a25ba96cdb346f82f"><code>4c8e7b3</code></a> Merge pull request <a href="https://redirect.github.com/authlib/authlib/issues/886">#886</a> from azmeuk/885-readme</li> <li><a href="https://github.com/authlib/authlib/commit/23b333e48a17ebf9f032a0e0f9eb3f990a06f97b"><code>23b333e</code></a> docs: fix the readme links</li> <li>Additional commits viewable in <a href="https://github.com/authlib/authlib/compare/1.7.1...v1.7.2">compare view</a></li> </ul> </details> <br /> Updates `pydantic` from 2.12.5 to 2.13.4 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic/releases">pydantic's releases</a>.</em></p> <blockquote> <h2>v2.13.4 2026-05-06</h2> <h2>v2.13.4 (2026-05-06)</h2> <h3>What's Changed</h3> <h4>Packaging</h4> <ul> <li>Bump libc from 0.2.155 to 0.2.185 by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13109">#13109</a></li> <li>Adapt <code>pydantic-core</code> linker flags on macOS by <a href="https://github.com/washingtoneg"><code>@washingtoneg</code></a> and <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13147">#13147</a></li> </ul> <h4>Fixes</h4> <ul> <li>Preserve <code>RootModel</code> core metadata by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13129">#13129</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.3...v2.13.4">https://github.com/pydantic/pydantic/compare/v2.13.3...v2.13.4</a></p> <h2>v2.13.3 2026-04-20</h2> <h2>v2.13.3 (2026-04-20)</h2> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Handle <code>AttributeError</code> subclasses with <code>from_attributes</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13096">#13096</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.2...v2.13.3">https://github.com/pydantic/pydantic/compare/v2.13.2...v2.13.3</a></p> <h2>v2.13.2 2026-04-17</h2> <h2>v2.13.2 (2026-04-17)</h2> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.field_name</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13084">#13084</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.1...v2.13.2">https://github.com/pydantic/pydantic/compare/v2.13.1...v2.13.2</a></p> <h2>v2.13.1 2026-04-15</h2> <h2>v2.13.1 (2026-04-15)</h2> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.data</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/davidhewitt"><code>@davidhewitt</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13079">#13079</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/pydantic/pydantic/compare/v2.13.0...v2.13.1">https://github.com/pydantic/pydantic/compare/v2.13.0...v2.13.1</a></p> <h2>v2.13.0 2026-04-13</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/pydantic/pydantic/blob/v2.13.4/HISTORY.md">pydantic's changelog</a>.</em></p> <blockquote> <h2>v2.13.4 (2026-05-06)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.4">GitHub release</a></p> <h3>What's Changed</h3> <h4>Packaging</h4> <ul> <li>Bump libc from 0.2.155 to 0.2.185 by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13109">#13109</a></li> <li>Adapt <code>pydantic-core</code> linker flags on macOS by <a href="https://github.com/washingtoneg"><code>@washingtoneg</code></a> and <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13147">#13147</a></li> </ul> <h4>Fixes</h4> <ul> <li>Preserve <code>RootModel</code> core metadata by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13129">#13129</a></li> </ul> <h2>v2.13.3 (2026-04-20)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.3">GitHub release</a></p> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Handle <code>AttributeError</code> subclasses with <code>from_attributes</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13096">#13096</a></li> </ul> <h2>v2.13.2 (2026-04-17)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.2">GitHub release</a></p> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.field_name</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/Viicos"><code>@Viicos</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13084">#13084</a></li> </ul> <h2>v2.13.1 (2026-04-15)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.1">GitHub release</a></p> <h3>What's Changed</h3> <h4>Fixes</h4> <ul> <li>Fix <code>ValidationInfo.data</code> missing with <code>model_validate_json()</code> by <a href="https://github.com/davidhewitt"><code>@davidhewitt</code></a> in <a href="https://redirect.github.com/pydantic/pydantic/pull/13079">#13079</a></li> </ul> <h2>v2.13.0 (2026-04-13)</h2> <p><a href="https://github.com/pydantic/pydantic/releases/tag/v2.13.0">GitHub release</a></p> <p>The highlights of the v2.13 release are available in the <a href="https://pydantic.dev/articles/pydantic-v2-13-release">blog post</a>.</p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/pydantic/pydantic/commit/cf67d4b3193c3fe43ede18612ed62785eee11382"><code>cf67d4b</code></a> Fix linting</li> <li><a href="https://github.com/pydantic/pydantic/commit/f0d8a214a5803036db46a56b1f62f1e56b81d662"><code>f0d8a21</code></a> Prepare release v2.13.4</li> <li><a href="https://github.com/pydantic/pydantic/commit/5e3fe1d41a00f441204241c66078003ae0391f9a"><code>5e3fe1d</code></a> Check for pydantic tag pattern in CI</li> <li><a href="https://github.com/pydantic/pydantic/commit/7f9edcc2a191d2eaa9751220eb910914e716a686"><code>7f9edcc</code></a> Document tagging conventions</li> <li><a href="https://github.com/pydantic/pydantic/commit/b46a0c9b8a4dd967fda8ec1a92f6437076bf262c"><code>b46a0c9</code></a> Adapt <code>pydantic-core</code> linker flags on macOS</li> <li><a href="https://github.com/pydantic/pydantic/commit/50629c851e61d887d5420452c311ec6203f1f400"><code>50629c8</code></a> Update to PyPy 7.3.22</li> <li><a href="https://github.com/pydantic/pydantic/commit/8522ebb71e5e9a6f7188af5f009f01785b8cf725"><code>8522ebb</code></a> Preserve <code>RootModel</code> core metadata</li> <li><a href="https://github.com/pydantic/pydantic/commit/a37f3aff090ca342dc5f48304889963530b993f8"><code>a37f3af</code></a> Adapt <code>MISSING</code> sentinel test to work with unreleased <code>typing_extensions</code> ver...</li> <li><a href="https://github.com/pydantic/pydantic/commit/909259a9df660518033aa686b689f045a6eaf9d2"><code>909259a</code></a> Remove Logfire example in documentation</li> <li><a href="https://github.com/pydantic/pydantic/commit/2c4174c366606fc2dc46cb806833a080aefa77df"><code>2c4174c</code></a> Bump libc from 0.2.155 to 0.2.185</li> <li>Additional commits viewable in <a href="https://github.com/pydantic/pydantic/compare/v2.12.5...v2.13.4">compare view</a></li> </ul> </details> <br /> Updates `typing-extensions` from 4.14.1 to 4.15.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/python/typing_extensions/releases">typing-extensions's releases</a>.</em></p> <blockquote> <h2>4.15.0</h2> <p>No user-facing changes since 4.15.0rc1.</p> <p>New features since 4.14.1:</p> <ul> <li>Add the <code>@typing_extensions.disjoint_base</code> decorator, as specified in PEP 800. Patch by Jelle Zijlstra.</li> <li>Add <code>typing_extensions.type_repr</code>, a backport of <a href="https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr"><code>annotationlib.type_repr</code></a>, introduced in Python 3.14 (CPython PR <a href="https://redirect.github.com/python/cpython/pull/124551">#124551</a>, originally by Jelle Zijlstra). Patch by Semyon Moroz.</li> <li>Fix behavior of type params in <code>typing_extensions.evaluate_forward_ref</code>. Backport of CPython PR <a href="https://redirect.github.com/python/cpython/pull/137227">#137227</a> by Jelle Zijlstra.</li> </ul> <h2>4.15.0rc1</h2> <ul> <li>Add the <code>@typing_extensions.disjoint_base</code> decorator, as specified in PEP 800. Patch by Jelle Zijlstra.</li> <li>Add <code>typing_extensions.type_repr</code>, a backport of <a href="https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr"><code>annotationlib.type_repr</code></a>, introduced in Python 3.14 (CPython PR <a href="https://redirect.github.com/python/cpython/pull/124551">#124551</a>, originally by Jelle Zijlstra). Patch by Semyon Moroz.</li> <li>Fix behavior of type params in <code>typing_extensions.evaluate_forward_ref</code>. Backport of CPython PR <a href="https://redirect.github.com/python/cpython/pull/137227">#137227</a> by Jelle Zijlstra.</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/python/typing_extensions/blob/main/CHANGELOG.md">typing-extensions's changelog</a>.</em></p> <blockquote> <h1>Release 4.15.0 (August 25, 2025)</h1> <p>No user-facing changes since 4.15.0rc1.</p> <h1>Release 4.15.0rc1 (August 18, 2025)</h1> <ul> <li>Add the <code>@typing_extensions.disjoint_base</code> decorator, as specified in PEP 800. Patch by Jelle Zijlstra.</li> <li>Add <code>typing_extensions.type_repr</code>, a backport of <a href="https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr"><code>annotationlib.type_repr</code></a>, introduced in Python 3.14 (CPython PR <a href="https://redirect.github.com/python/cpython/pull/124551">#124551</a>, originally by Jelle Zijlstra). Patch by Semyon Moroz.</li> <li>Fix behavior of type params in <code>typing_extensions.evaluate_forward_ref</code>. Backport of CPython PR <a href="https://redirect.github.com/python/cpython/pull/137227">#137227</a> by Jelle Zijlstra.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/python/typing_extensions/commit/9d1637e264b5c1a6b7acee3e907015f89b20c2c9"><code>9d1637e</code></a> Prepare release 4.15.0 (<a href="https://redirect.github.com/python/typing_extensions/issues/658">#658</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/4bd67c5be5d9443c7d33c314d02a56ee125eb88d"><code>4bd67c5</code></a> Coverage: exclude some noise (<a href="https://redirect.github.com/python/typing_extensions/issues/656">#656</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/e589a26da73b075c5276bae40b86db1af0144f84"><code>e589a26</code></a> Coverage: add detailed report to job summary (<a href="https://redirect.github.com/python/typing_extensions/issues/655">#655</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/67d37fed1298e050f74d5acc95b2621bd37837ad"><code>67d37fe</code></a> Coverage: Implement fail_under (<a href="https://redirect.github.com/python/typing_extensions/issues/654">#654</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/e9ae26f5286edee9262727755ecb9ad16e999192"><code>e9ae26f</code></a> Don't delete previous coverage comment (<a href="https://redirect.github.com/python/typing_extensions/issues/653">#653</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/ac80bb728a3006fc88ef7373b92f0c25cfcc7895"><code>ac80bb7</code></a> Add Coverage workflow (<a href="https://redirect.github.com/python/typing_extensions/issues/623">#623</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/abaaafd98c1cc7e5baf098ec287a3d22cb339670"><code>abaaafd</code></a> Prepare release 4.15.0rc1 (<a href="https://redirect.github.com/python/typing_extensions/issues/650">#650</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/98104053ea8d49bcdd247804e5fa9f73136acbd4"><code>9810405</code></a> Add <code>@disjoint_base</code> (PEP 800) (<a href="https://redirect.github.com/python/typing_extensions/issues/634">#634</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/7ee9e05fd484d06899ce56e80f5e1aa4c760fc03"><code>7ee9e05</code></a> Backport type_params fix from CPython (<a href="https://redirect.github.com/python/typing_extensions/issues/646">#646</a>)</li> <li><a href="https://github.com/python/typing_extensions/commit/1e8eb9c06ef51b3a1e1f05303a16feca13f5ed98"><code>1e8eb9c</code></a> Do not refer to PEP 705 as being experimental (<a href="https://redirect.github.com/python/typing_extensions/issues/648">#648</a>)</li> <li>Additional commits viewable in <a href="https://github.com/python/typing_extensions/compare/4.14.1...4.15.0">compare view</a></li> </ul> </details> <br /> Updates `anyio` from 4.10.0 to 4.13.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/agronholm/anyio/releases">anyio's releases</a>.</em></p> <blockquote> <h2>4.13.0</h2> <ul> <li>Dropped support for Python 3.9</li> <li>Added a <code>ttl</code> parameter to the <code>anyio.functools.lru_cache</code> wrapper (<a href="https://redirect.github.com/agronholm/anyio/pull/1073">#1073</a>; PR by <a href="https://github.com/Graeme22"><code>@Graeme22</code></a>)</li> <li>Widened the type annotations of file I/O streams to accept <code>IO[bytes]</code> instead of just <code>BinaryIO</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/1078">#1078</a>)</li> <li>Fixed <code>anyio.Path</code> not being compatible with Python 3.15 due to the removal of <code>pathlib.Path.is_reserved()</code> and the addition of <code>pathlib.Path.__vfspath__()</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/1061">#1061</a>; PR by <a href="https://github.com/veeceey"><code>@veeceey</code></a>)</li> <li>Fixed the <code>BrokenResourceError</code> raised by the asyncio <code>SocketStream</code> not having the original exception as its cause (<a href="https://redirect.github.com/agronholm/anyio/issues/1055">#1055</a>; PR by <a href="https://github.com/veeceey"><code>@veeceey</code></a>)</li> <li>Fixed the <code>TypeError</code> raised when using "func" as a parameter name in <code>pytest.mark.parametrize</code> when using the pytest plugin (<a href="https://redirect.github.com/agronholm/anyio/pull/1068">#1068</a>; PR by <a href="https://github.com/JohnnyDeuss"><code>@JohnnyDeuss</code></a>)</li> <li>Fixed the pytest plugin not running tests that had the <code>anyio</code> marker added programmatically via <code>pytest_collection_modifyitems</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/422">#422</a>; PR by <a href="https://github.com/chbndrhnns"><code>@chbndrhnns</code></a>)</li> <li>Fixed cancellation exceptions leaking from a <code>CancelScope</code> on asyncio when they are contained in an exception group alongside non-cancellation exceptions (<a href="https://redirect.github.com/agronholm/anyio/issues/1091">#1091</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed <code>Condition.wait()</code> not passing on a notification when the task is cancelled but already received a notification</li> <li>Fixed inverted condition in the process pool shutdown phase which would cause still-running pooled processes not to be terminated (<a href="https://redirect.github.com/agronholm/anyio/pull/1074">#1074</a>; PR by <a href="https://github.com/bysiber"><code>@bysiber</code></a>)</li> </ul> <h2>4.12.1</h2> <ul> <li>Changed all functions currently raising the private <code>NoCurrentAsyncBackend</code> exception (since v4.12.0) to instead raise the public <code>NoEventLoopError</code> exception (<a href="https://redirect.github.com/agronholm/anyio/issues/1048">#1048</a>)</li> <li>Fixed <code>anyio.functools.lru_cache</code> not working with instance methods (<a href="https://redirect.github.com/agronholm/anyio/issues/1042">#1042</a>)</li> </ul> <h2>4.12.0</h2> <ul> <li>Added support for asyncio's <a href="https://docs.python.org/3/library/asyncio-graph.html">task call graphs</a> on Python 3.14 and later when using AnyIO's task groups (<a href="https://redirect.github.com/agronholm/anyio/pull/1025">#1025</a>)</li> <li>Added an asynchronous implementation of the <code>functools</code> module (<a href="https://redirect.github.com/agronholm/anyio/pull/1001">#1001</a>)</li> <li>Added support for <code>uvloop=True</code> on Windows via the <a href="https://github.com/Vizonex/Winloop">winloop</a> implementation (<a href="https://redirect.github.com/agronholm/anyio/pull/960">#960</a>; PR by <a href="https://github.com/Vizonex"><code>@Vizonex</code></a>)</li> <li>Added support for use as a context manager to <code>anyio.lowlevel.RunVar</code> (<a href="https://redirect.github.com/agronholm/anyio/pull/1003">#1003</a>)</li> <li>Added <code>__all__</code> declarations to public submodules (<code>anyio.lowlevel</code> etc.) (<a href="https://redirect.github.com/agronholm/anyio/pull/1009">#1009</a>)</li> <li>Added the ability to set the token count of a <code>CapacityLimiter</code> to zero (<a href="https://redirect.github.com/agronholm/anyio/pull/1019">#1019</a>; requires Python 3.10 or later when using Trio)</li> <li>Added parameters <code>case_sensitive</code> and <code>recurse_symlinks</code> along with support for path-like objects to <code>anyio.Path.glob()</code> and <code>anyio.Path.rglob()</code> (<a href="https://redirect.github.com/agronholm/anyio/pull/1033">#1033</a>; PR by <a href="https://github.com/northisup"><code>@northisup</code></a>)</li> <li>Dropped <code>sniffio</code> as a direct dependency and added the <code>get_available_backends()</code> function (<a href="https://redirect.github.com/agronholm/anyio/pull/1021">#1021</a>)</li> <li>Fixed <code>Process.stdin.send()</code> not raising <code>ClosedResourceError</code> and <code>BrokenResourceError</code> on asyncio. Previously, a non-AnyIO exception was raised in such cases (<a href="https://redirect.github.com/agronholm/anyio/issues/671">#671</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed <code>Process.stdin.send()</code> not checkpointing before writing data on asyncio (<a href="https://redirect.github.com/agronholm/anyio/issues/1002">#1002</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed a race condition where cancelling a <code>Future</code> from <code>BlockingPortal.start_task_soon()</code> would sometimes not cancel the async function (<a href="https://redirect.github.com/agronholm/anyio/issues/1011">#1011</a>; PR by <a href="https://github.com/gschaffner"><code>@gschaffner</code></a>)</li> <li>Fixed the presence of the pytest plugin causing breakage with older versions of pytest (<= 6.1.2) (<a href="https://redirect.github.com/agronholm/anyio/issues/1028">#1028</a>; PR by <a href="https://github.com/saper"><code>@saper</code></a>)</li> <li>Fixed a rarely occurring <code>RuntimeError: Set changed size during iteration</code> while shutting down the process pool when using the asyncio backend (<a href="https://redirect.github.com/agronholm/anyio/issues/985">#985</a>)</li> </ul> <h2>4.11.0</h2> <ul> <li>Added support for cancellation reasons (the <code>reason</code> parameter to <code>CancelScope.cancel()</code>) (<a href="https://redirect.github.com/agronholm/anyio/pull/975">#975</a>)</li> <li>Bumped the minimum version of Trio to v0.31.0</li> <li>Added the ability to enter the event loop from foreign (non-worker) threads by passing the return value of <code>anyio.lowlevel.current_token()</code> to <code>anyio.from_thread.run()</code> and <code>anyio.from_thread.run_sync()</code> as the <code>token</code> keyword argument (<a href="https://redirect.github.com/agronholm/anyio/issues/256">#256</a>)</li> <li>Added pytest option (<code>anyio_mode = "auto"</code>) to make the pytest plugin automatically handle all async tests (<a href="https://redirect.github.com/agronholm/anyio/pull/971">#971</a>)</li> <li>Added the <code>anyio.Condition.wait_for()</code> method for feature parity with asyncio (<a href="https://redirect.github.com/agronholm/anyio/pull/974">#974</a>)</li> <li>Changed the default type argument of <code>anyio.abc.TaskStatus</code> from <code>Any</code> to <code>None</code> (<a href="https://redirect.github.com/agronholm/anyio/pull/964">#964</a>)</li> <li>Fixed TCP listener behavior to guarantee the same ephemeral port is used for all socket listeners when <code>local_port=0</code> (<a href="https://redirect.github.com/agronholm/anyio/issues/857">#857</a>; PR by <a href="https://github.com/11kkw"><code>@11kkw</code></a> and <a href="https://github.com/agronholm"><code>@agronholm</code></a>)</li> <li>Fixed inconsistency between Trio and asyncio where a TCP stream that previously raised a <code>BrokenResourceError</code> on <code>send()</code> would still raise <code>BrokenResourceError</code> after the stream was closed on asyncio, but <code>ClosedResourceError</code> on Trio. They now both raise a <code>ClosedResourceError</code> in this scenario. (<a href="https://redirect.github.com/agronholm/anyio/issues/671">#671</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/agronholm/anyio/commit/afbe93ca9d0c447adf26e9c1715ac20870622bf2"><code>afbe93c</code></a> Bumped up the version</li> <li><a href="https://github.com/agronholm/anyio/commit/33bdf2e4b4f40c2df178123746147a6d2471808d"><code>33bdf2e</code></a> Rearranged the changelog entries</li> <li><a href="https://github.com/agronholm/anyio/commit/19e09e25bc5a23dd78a577d8c3909dd377057c78"><code>19e09e2</code></a> Fixed inverted condition in _forcibly_shutdown_process_pool_on_exit (<a href="https://redirect.github.com/agronholm/anyio/issues/1074">#1074</a>)</li> <li><a href="https://github.com/agronholm/anyio/commit/9369d80b9e8292f2a892a9d5c73923c6a28aa08c"><code>9369d80</code></a> Fixed Condition.wait() not handing over notification when cancelled</li> <li><a href="https://github.com/agronholm/anyio/commit/6f122abdc6f6b166c6b6ac27d36d55cdf8fa08e8"><code>6f122ab</code></a> Fixed cancellation exceptions leaking from a <code>CancelScope</code> on asyncio when th...</li> <li><a href="https://github.com/agronholm/anyio/commit/beaa45aff568a4020f2faf317321dd92f0e1f4a0"><code>beaa45a</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/agronholm/anyio/issues/1097">#1097</a>)</li> <li><a href="https://github.com/agronholm/anyio/commit/602f6606dcf3f37702686a4f3e161328c537b07f"><code>602f660</code></a> Widened type annotations to accept IO[bytes] in file streams</li> <li><a href="https://github.com/agronholm/anyio/commit/b5dcd45170701a756ba634197398f05d4710cab3"><code>b5dcd45</code></a> Added note about erasing the template</li> <li><a href="https://github.com/agronholm/anyio/commit/d68670b3b4e0917d4caff2de082e03220f3e05a1"><code>d68670b</code></a> [pre-commit.ci] pre-commit autoupdate (<a href="https://redirect.github.com/agronholm/anyio/issues/1090">#1090</a>)</li> <li><a href="https://github.com/agronholm/anyio/commit/fc17a22dd948e6a3d90d99908813f0010dfc3d2c"><code>fc17a22</code></a> tweak to_thread docs about abandon_on_cancel (<a href="https://redirect.github.com/agronholm/anyio/issues/1088">#1088</a>)</li> <li>Additional commits viewable in <a href="https://github.com/agronholm/anyio/compare/4.10.0...4.13.0">compare view</a></li> </ul> </details> <br /> Updates `typer` from 0.16.0 to 0.25.1 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/fastapi/typer/releases">typer's releases</a>.</em></p> <blockquote> <h2>0.25.1</h2> <h3>Features</h3> <ul> <li>🔧 Add Typer Library Skill for Agents. PR <a href="https://redirect.github.com/fastapi/typer/pull/1620">#1620</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump ruff from 0.15.11 to 0.15.12. PR <a href="https://redirect.github.com/fastapi/typer/pull/1722">#1722</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.10 to 0.3.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1723">#1723</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <h2>0.25.0</h2> <h3>Features</h3> <ul> <li>🚸 Don't truncate code lines in traceback when formatted with Rich. PR <a href="https://redirect.github.com/fastapi/typer/pull/1695">#1695</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h2>0.24.2</h2> <h3>Fixes</h3> <ul> <li>🐛 Ensure that <code>typer.launch</code> forwards correctly when launching a file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1708">#1708</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Refactors</h3> <ul> <li>🎨 Ensure <code>ty</code> runs without errors. PR <a href="https://redirect.github.com/fastapi/typer/pull/1628">#1628</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Docs</h3> <ul> <li>📝 Add dates to release notes. PR <a href="https://redirect.github.com/fastapi/typer/pull/1612">#1612</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>💄 Fix code blocks in reference docs overflowing table width. PR <a href="https://redirect.github.com/fastapi/typer/pull/1630">#1630</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>📝 Fix broken link to FastAPI and Friends newsletter. PR <a href="https://redirect.github.com/fastapi/typer/pull/1540">#1540</a> by <a href="https://github.com/Karlemami"><code>@Karlemami</code></a>.</li> <li>🔨 Handle external links <code>target=_blank</code> and CSS automatically in JS and CSS. PR <a href="https://redirect.github.com/fastapi/typer/pull/1622">#1622</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>📝 Remove link to Typer developer survey. PR <a href="https://redirect.github.com/fastapi/typer/pull/1609">#1609</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> <li>✏️ Clean up documentation in <code>install.md</code> file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1606">#1606</a> by <a href="https://github.com/Johandielangman"><code>@Johandielangman</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump mypy from 1.20.1 to 1.20.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1715">#1715</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.9 to 0.3.10. PR <a href="https://redirect.github.com/fastapi/typer/pull/1716">#1716</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic-settings from 2.13.1 to 2.14.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1713">#1713</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ty from 0.0.31 to 0.0.32. PR <a href="https://redirect.github.com/fastapi/typer/pull/1711">#1711</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.2 to 2.13.3. PR <a href="https://redirect.github.com/fastapi/typer/pull/1712">#1712</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pygments from 2.19.2 to 2.20.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1667">#1667</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pymdown-extensions from 10.20 to 10.21.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1710">#1710</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>⬆ Bump actions/cache from 5.0.4 to 5.0.5. PR <a href="https://redirect.github.com/fastapi/typer/pull/1700">#1700</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.1 to 2.13.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1703">#1703</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump actions/upload-artifact from 7.0.0 to 7.0.1. PR <a href="https://redirect.github.com/fastapi/typer/pull/1701">#1701</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ruff from 0.15.10 to 0.15.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1704">#1704</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump cloudflare/wrangler-action from 3.14.1 to 3.15.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1702">#1702</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump astral-sh/setup-uv from 7.6.0 to 8.1.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1699">#1699</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ty from 0.0.30 to 0.0.31. PR <a href="https://redirect.github.com/fastapi/typer/pull/1696">#1696</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.0 to 2.13.1. PR <a href="https://redirect.github.com/fastapi/typer/pull/1697">#1697</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/fastapi/typer/blob/master/docs/release-notes.md">typer's changelog</a>.</em></p> <blockquote> <h2>0.25.1 (2026-04-30)</h2> <h3>Features</h3> <ul> <li>🔧 Add Typer Library Skill for Agents. PR <a href="https://redirect.github.com/fastapi/typer/pull/1620">#1620</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump ruff from 0.15.11 to 0.15.12. PR <a href="https://redirect.github.com/fastapi/typer/pull/1722">#1722</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.10 to 0.3.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1723">#1723</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <h2>0.25.0 (2026-04-26)</h2> <h3>Features</h3> <ul> <li>🚸 Don't truncate code lines in traceback when formatted with Rich. PR <a href="https://redirect.github.com/fastapi/typer/pull/1695">#1695</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> </ul> <h2>0.24.2 (2026-04-22)</h2> <h3>Fixes</h3> <ul> <li>🐛 Ensure that <code>typer.launch</code> forwards correctly when launching a file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1708">#1708</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Refactors</h3> <ul> <li>🎨 Ensure <code>ty</code> runs without errors. PR <a href="https://redirect.github.com/fastapi/typer/pull/1628">#1628</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> </ul> <h3>Docs</h3> <ul> <li>📝 Add dates to release notes. PR <a href="https://redirect.github.com/fastapi/typer/pull/1612">#1612</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>💄 Fix code blocks in reference docs overflowing table width. PR <a href="https://redirect.github.com/fastapi/typer/pull/1630">#1630</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>📝 Fix broken link to FastAPI and Friends newsletter. PR <a href="https://redirect.github.com/fastapi/typer/pull/1540">#1540</a> by <a href="https://github.com/Karlemami"><code>@Karlemami</code></a>.</li> <li>🔨 Handle external links <code>target=_blank</code> and CSS automatically in JS and CSS. PR <a href="https://redirect.github.com/fastapi/typer/pull/1622">#1622</a> by <a href="https://github.com/tiangolo"><code>@tiangolo</code></a>.</li> <li>📝 Remove link to Typer developer survey. PR <a href="https://redirect.github.com/fastapi/typer/pull/1609">#1609</a> by <a href="https://github.com/svlandeg"><code>@svlandeg</code></a>.</li> <li>✏️ Clean up documentation in <code>install.md</code> file. PR <a href="https://redirect.github.com/fastapi/typer/pull/1606">#1606</a> by <a href="https://github.com/Johandielangman"><code>@Johandielangman</code></a>.</li> </ul> <h3>Internal</h3> <ul> <li>⬆ Bump mypy from 1.20.1 to 1.20.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1715">#1715</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump prek from 0.3.9 to 0.3.10. PR <a href="https://redirect.github.com/fastapi/typer/pull/1716">#1716</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic-settings from 2.13.1 to 2.14.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1713">#1713</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ty from 0.0.31 to 0.0.32. PR <a href="https://redirect.github.com/fastapi/typer/pull/1711">#1711</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.2 to 2.13.3. PR <a href="https://redirect.github.com/fastapi/typer/pull/1712">#1712</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pygments from 2.19.2 to 2.20.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1667">#1667</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pymdown-extensions from 10.20 to 10.21.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1710">#1710</a> by <a href="https://github.com/YuriiMotov"><code>@YuriiMotov</code></a>.</li> <li>⬆ Bump actions/cache from 5.0.4 to 5.0.5. PR <a href="https://redirect.github.com/fastapi/typer/pull/1700">#1700</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump pydantic from 2.13.1 to 2.13.2. PR <a href="https://redirect.github.com/fastapi/typer/pull/1703">#1703</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump actions/upload-artifact from 7.0.0 to 7.0.1. PR <a href="https://redirect.github.com/fastapi/typer/pull/1701">#1701</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump ruff from 0.15.10 to 0.15.11. PR <a href="https://redirect.github.com/fastapi/typer/pull/1704">#1704</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> <li>⬆ Bump cloudflare/wrangler-action from 3.14.1 to 3.15.0. PR <a href="https://redirect.github.com/fastapi/typer/pull/1702">#1702</a> by <a href="https://github.com/apps/dependabot"><code>@dependabot[bot]</code></a>.</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/fastapi/typer/commit/cfcc2ef9f948bcce67897a6c7e689d39da690bf9"><code>cfcc2ef</code></a> 🔖 Release version 0.25.1</li> <li><a href="https://github.com/fastapi/typer/commit/13846cc59bd574567a9a1f56eae3cd42b9aa2a4f"><code>13846cc</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/a43746997ad6f2b4a8829c69c919f4d4c2cc0698"><code>a437469</code></a> 🔧 Add Typer Library Skill for Agents (<a href="https://redirect.github.com/fastapi/typer/issues/1620">#1620</a>)</li> <li><a href="https://github.com/fastapi/typer/commit/ba6cc2c9e7cba35f891c91118e228e1d2da35edb"><code>ba6cc2c</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/0f3ead07c2bb384fdd590e895ca6705582c58d89"><code>0f3ead0</code></a> ⬆ Bump ruff from 0.15.11 to 0.15.12 (<a href="https://redirect.github.com/fastapi/typer/issues/1722">#1722</a>)</li> <li><a href="https://github.com/fastapi/typer/commit/db4ade64936599b3460f2fc0a7c550c3fedc33b0"><code>db4ade6</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/5a5206ceed2afdf234f88a6e2ef74ad9ebdf0d92"><code>5a5206c</code></a> ⬆ Bump prek from 0.3.10 to 0.3.11 (<a href="https://redirect.github.com/fastapi/typer/issues/1723">#1723</a>)</li> <li><a href="https://github.com/fastapi/typer/commit/959845e173b4bec0d606d99247815c2710613ca8"><code>959845e</code></a> 🔖 Release version 0.25.0</li> <li><a href="https://github.com/fastapi/typer/commit/5e1fcfb5935e7ac3ff3c7526ef297eae31bd4822"><code>5e1fcfb</code></a> 📝 Update release notes</li> <li><a href="https://github.com/fastapi/typer/commit/dfb21ad034804584702d553ebfba40d8f4d791b9"><code>dfb21ad</code></a> 🚸 Don't truncate code lines in traceback when formatted with Rich (<a href="https://redirect.github.com/fastapi/typer/issues/1695">#1695</a>)</li> <li>Additional commits viewable in <a href="https://github.com/fastapi/typer/compare/0.16.0...0.25.1">compare view</a></li> </ul> </details> <br /> Updates `uvicorn` from 0.35.0 to 0.47.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/releases">uvicorn's releases</a>.</em></p> <blockquote> <h2>Version 0.47.0</h2> <h2>What's Changed</h2> <ul> <li>Eagerly import the ASGI app in the parent process by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2919">Kludex/uvicorn#2919</a></li> <li>Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2920">Kludex/uvicorn#2920</a></li> <li>Treat <code>fd=0</code> as a valid file descriptor with reload/workers by <a href="https://github.com/eltoder"><code>@eltoder</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2927">Kludex/uvicorn#2927</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0">https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0</a></p> <h2>Version 0.46.0</h2> <h2>What's Changed</h2> <ul> <li>Support <code>ws_max_size</code> in <code>wsproto</code> implementation by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2915">Kludex/uvicorn#2915</a></li> <li>Support <code>ws_ping_interval</code> and <code>ws_ping_timeout</code> in <code>wsproto</code> implementation by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2916">Kludex/uvicorn#2916</a></li> <li>Use <code>bytearray</code> for incoming WebSocket message buffer in websockets-sansio by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2917">Kludex/uvicorn#2917</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0">https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0</a></p> <h2>Version 0.45.0</h2> <h2>What's Changed</h2> <ul> <li>Preserve forwarded client ports in proxy headers middleware by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2903">Kludex/uvicorn#2903</a></li> <li>Accept <code>os.PathLike</code> for <code>log_config</code> by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2905">Kludex/uvicorn#2905</a></li> <li>Accept <code>log_level</code> strings case-insensitively by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2907">Kludex/uvicorn#2907</a></li> <li>Raise helpful <code>ImportError</code> when PyYAML is missing for YAML log config by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2906">Kludex/uvicorn#2906</a></li> <li>Revert empty context for ASGI runs by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2911">Kludex/uvicorn#2911</a></li> <li>Add <code>--reset-contextvars</code> flag to isolate ASGI request context by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2912">Kludex/uvicorn#2912</a></li> <li>Revert "Emit <code>http.disconnect</code> on server shutdown for streaming responses" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2829">#2829</a>) by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2913">Kludex/uvicorn#2913</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/Krishnachaitanyakc"><code>@Krishnachaitanyakc</code></a> made their first contribution in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2870">Kludex/uvicorn#2870</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0">https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0</a></p> <h2>Version 0.44.0</h2> <h2>What's Changed</h2> <ul> <li>Implement websocket keepalive pings for websockets-sansio by <a href="https://github.com/Kludex"><code>@Kludex</code></a> in <a href="https://redirect.github.com/Kludex/uvicorn/pull/2888">Kludex/uvicorn#2888</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0">https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0</a></p> <h2>Version 0.43.0</h2> <h2>Changed</h2> <ul> <li>Emit <code>http.disconnect</code> ASGI <code>receive()</code> event on server shutting down for streaming responses (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2829">#2829</a>)</li> <li>Use native <code>context</code> parameter for <code>create_task</code> on Python 3.11+ (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2859">#2859</a>)</li> <li>Drop cast in ASGI types (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2875">#2875</a>)</li> </ul> <hr /> <p><strong>Full Changelog</strong>: <a href="https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0">https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0</a></p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md">uvicorn's changelog</a>.</em></p> <blockquote> <h2>0.47.0 (May 14, 2026)</h2> <h3>Added</h3> <ul> <li>Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2920">#2920</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Eagerly import the ASGI app in the parent process (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2919">#2919</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Treat <code>fd=0</code> as a valid file descriptor with reload/workers (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2927">#2927</a>)</li> </ul> <h2>0.46.0 (April 23, 2026)</h2> <h3>Added</h3> <ul> <li>Support <code>ws_max_size</code> in <code>wsproto</code> implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2915">#2915</a>)</li> <li>Support <code>ws_ping_interval</code> and <code>ws_ping_timeout</code> in <code>wsproto</code> implementation (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2916">#2916</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Use <code>bytearray</code> for incoming WebSocket message buffer in <code>websockets-sansio</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2917">#2917</a>)</li> </ul> <h2>0.45.0 (April 21, 2026)</h2> <h3>Added</h3> <ul> <li>Add <code>--reset-contextvars</code> flag to isolate ASGI request context (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2912">#2912</a>)</li> <li>Accept <code>os.PathLike</code> for <code>log_config</code> (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2905">#2905</a>)</li> <li>Accept <code>log_level</code> strings case-insensitively (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2907">#2907</a>)</li> </ul> <h3>Changed</h3> <ul> <li>Revert "Emit <code>http.disconnect</code> on server shutdown for streaming responses" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2913">#2913</a>)</li> <li>Revert "Explicitly start ASGI run with empty context" (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2911">#2911</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Preserve forwarded client ports in proxy headers middleware (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2903">#2903</a>)</li> <li>Raise helpful <code>ImportError</code> when PyYAML is missing for YAML log config (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2906">#2906</a>)</li> </ul> <h2>0.44.0 (April 6, 2026)</h2> <h3>Added</h3> <ul> <li>Implement websocket keepalive pings for websockets-sansio (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2888">#2888</a>)</li> </ul> <h2>0.43.0 (April 3, 2026)</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/Kludex/uvicorn/commit/479a2c0c89186714f1aac52aecdebebf271395ac"><code>479a2c0</code></a> Version 0.47.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2937">#2937</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/89347fd166ebedf98fb3f806ce8ea44e93b1c2b5"><code>89347fd</code></a> Add 7-day cooldown for dependency resolution via uv exclude-newer (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2936">#2936</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/767315b38ae509cee9fe8ee9d09f6da920536096"><code>767315b</code></a> Drop unused contents/actions permissions from zizmor workflow (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2935">#2935</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/f25ee43e68a9678453cbca99ad96f1a447ff34af"><code>f25ee43</code></a> chore(deps): bump urllib3 from 2.6.3 to 2.7.0 (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2933">#2933</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/8782666189a3d36c978de5698620db705659bf44"><code>8782666</code></a> Fix typo in <code>docs/deployment/index.md</code>. (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2932">#2932</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/ad5ff87c869e8a34e9b04fcd5ca38d65c526893c"><code>ad5ff87</code></a> Treat <code>fd=0</code> as a valid file descriptor with reload/workers (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2927">#2927</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/6761b2c8f9272fa0e908d0b9cdcb3cb0aa11382f"><code>6761b2c</code></a> Remove Hugging Face sponsor block from docs (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2923">#2923</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/438f64834de00708a9bb3548a36090e7a924ad84"><code>438f648</code></a> Surface sponsors on welcome page and sidebar (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2921">#2921</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/10ddc6dd296cb6e432a00835abe27f1c822373c1"><code>10ddc6d</code></a> Add <code>ssl_context_factory</code> for custom <code>SSLContext</code> configuration (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2920">#2920</a>)</li> <li><a href="https://github.com/Kludex/uvicorn/commit/b499bc45101d920e691e384025d728507215d4d1"><code>b499bc4</code></a> Eagerly import the ASGI app in the parent process (<a href="https://redirect.github.com/Kludex/uvicorn/issues/2919">#2919</a>)</li> <li>Additional commits viewable in <a href="https://github.com/Kludex/uvicorn/compare/0.35.0...0.47.0">compare view</a></li> </ul> </details> <br /> Updates `openai` from 2.14.0 to 2.37.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/openai/openai-python/releases">openai's releases</a>.</em></p> <blockquote> <h2>v2.37.0</h2> <h2>2.37.0 (2026-05-13)</h2> <p>Full Changelog: <a href="https://github.com/openai/openai-python/compare/v2.36.0...v2.37.0">v2.36.0...v2.37.0</a></p> <h3>Features</h3> <ul> <li>…
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps the python-minor-patch group with 21 updates in the /python directory:
0.15.120.15.131.7.11.7.22.12.52.13.44.14.14.15.04.10.04.13.00.16.00.25.10.35.00.47.02.14.02.37.01.25.01.27.10.129.00.136.12.6.32.7.03.20.33.29.00.0.220.0.291.42.281.43.90.6.10.6.27.0.07.2.21.0.61.2.00.6.50.17.26.0.26.0.31.1.71.2.13.0.33.1.0Updates
rufffrom 0.15.12 to 0.15.13Release notes
Sourced from ruff's releases.
... (truncated)
Changelog
Sourced from ruff's changelog.
... (truncated)
Commits
2afb467Bump 0.15.13 (#25157)3008796[ty] classify TypeVar semantic tokens as type parameters (#24891)79470e3[isort] Avoid constructingglob::Patterns for literal known modules (#25123)2522549Remove shellcheck from prek (#25154)7db7170[ty] Support TypedDict key completions in incomplete, anonymous contexts (#25...bb3dd53[ty] Run full iteration analysis on narrowed typevars (#25143)828cdb7[ty] Isolate file-watching test environment (#25151)89e1d86[ty] Preserve TypedDict keys through dict unpacking (#24523)86f3064[ty] Avoid accessingargs[0]forstatic_assert(#25149)ed819f9[ty] Treat custom enum__new__values as dynamic (#25136)Updates
authlibfrom 1.7.1 to 1.7.2Release notes
Sourced from authlib's releases.
Commits
a0b76fachore: bump to 1.7.2c85c7f2Merge pull request #884 from azmeuk/852-rfc7523-key-importa3b2addMerge pull request #873 from azmeuk/bcp47f2578eafix: Import RSAKey in auth.py for additional key supportb57182cfix: fallback support RSAKey when client_secret is text4e75902Merge branch 'main' into 852-rfc7523-key-import5eb4a86Merge pull request #887 from azmeuk/883-alg5633f37fix: allow non-recommended algorithms in ClientSecretJWT and PrivateKeyJWT4c8e7b3Merge pull request #886 from azmeuk/885-readme23b333edocs: fix the readme linksUpdates
pydanticfrom 2.12.5 to 2.13.4Release notes
Sourced from pydantic's releases.
... (truncated)
Changelog
Sourced from pydantic's changelog.
... (truncated)
Commits
cf67d4bFix lintingf0d8a21Prepare release v2.13.45e3fe1dCheck for pydantic tag pattern in CI7f9edccDocument tagging conventionsb46a0c9Adaptpydantic-corelinker flags on macOS50629c8Update to PyPy 7.3.228522ebbPreserveRootModelcore metadataa37f3afAdaptMISSINGsentinel test to work with unreleasedtyping_extensionsver...909259aRemove Logfire example in documentation2c4174cBump libc from 0.2.155 to 0.2.185Updates
typing-extensionsfrom 4.14.1 to 4.15.0Release notes
Sourced from typing-extensions's releases.
Changelog
Sourced from typing-extensions's changelog.
Commits
9d1637ePrepare release 4.15.0 (#658)4bd67c5Coverage: exclude some noise (#656)e589a26Coverage: add detailed report to job summary (#655)67d37feCoverage: Implement fail_under (#654)e9ae26fDon't delete previous coverage comment (#653)ac80bb7Add Coverage workflow (#623)abaaafdPrepare release 4.15.0rc1 (#650)9810405Add@disjoint_base(PEP 800) (#634)7ee9e05Backport type_params fix from CPython (#646)1e8eb9cDo not refer to PEP 705 as being experimental (#648)Updates
anyiofrom 4.10.0 to 4.13.0Release notes
Sourced from anyio's releases.
Commits
afbe93cBumped up the version33bdf2eRearranged the changelog entries19e09e2Fixed inverted condition in _forcibly_shutdown_process_pool_on_exit (#1074)9369d80Fixed Condition.wait() not handing over notification when cancelled6f122abFixed cancellation exceptions leaking from aCancelScopeon asyncio when th...beaa45a[pre-commit.ci] pre-commit autoupdate (#1097)602f660Widened type annotations to accept IO[bytes] in file streamsb5dcd45Added note about erasing the templated68670b[pre-commit.ci] pre-commit autoupdate (#1090)fc17a22tweak to_thread docs about abandon_on_cancel (#1088)Updates
typerfrom 0.16.0 to 0.25.1Release notes
Sourced from typer's releases.
... (truncated)
Changelog
Sourced from typer's changelog.
... (truncated)
Commits
cfcc2ef🔖 Release version 0.25.113846cc📝 Update release notesa437469🔧 Add Typer Library Skill for Agents (#1620)ba6cc2c📝 Update release notes0f3ead0⬆ Bump ruff from 0.15.11 to 0.15.12 (#1722)db4ade6📝 Update release notes5a5206c⬆ Bump prek from 0.3.10 to 0.3.11 (#1723)959845e🔖 Release version 0.25.05e1fcfb📝 Update release notesdfb21ad🚸 Don't truncate code lines in traceback when formatted with Rich (#1695)Updates
uvicornfrom 0.35.0 to 0.47.0Release notes
Sourced from uvicorn's releases.
... (truncated)
Changelog
Sourced from uvicorn's changelog.
... (truncated)
Commits
479a2c0Version 0.47.0 (#2937)89347fdAdd 7-day cooldown for dependency resolution via uv exclude-newer (#2936)767315bDrop unused contents/actions permissions from zizmor workflow (#2935)f25ee43chore(deps): bump urllib3 from 2.6.3 to 2.7.0 (#2933)8782666Fix typo indocs/deployment/index.md. (#2932)ad5ff87Treatfd=0as a valid file descriptor with reload/workers (#2927)6761b2cRemove Hugging Face sponsor block from docs (#2923)438f648Surface sponsors on welcome page and sidebar (#2921)10ddc6dAddssl_context_factoryfor customSSLContextconfiguration (#2920)b499bc4Eagerly import the ASGI app in the parent process (#2919)Updates
openaifrom 2.14.0 to 2.37.0Release notes
Sourced from openai's releases.