This PR contains the following updates:
| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [uvicorn](https://github.com/Kludex/uvicorn) ([changelog](https://uvicorn.dev/release-notes)) | `==0.41.0` → `==0.49.0` |  |  |
---
### Release Notes
<details>
<summary>Kludex/uvicorn (uvicorn)</summary>
### [`v0.49.0`](https://github.com/Kludex/uvicorn/releases/tag/0.49.0): Version 0.49.0
[Compare Source](https://github.com/Kludex/uvicorn/compare/0.48.0...0.49.0)
#### What's Changed
- Bump httptools minimum version to 0.8.0 by [@​Kludex](https://github.com/Kludex) in [#​2962](https://github.com/Kludex/uvicorn/pull/2962)
- Consume duplicate forwarding headers in ProxyHeadersMiddleware (reverses the 0.48.0 behavior of ignoring them) by [@​Kludex](https://github.com/Kludex) in [#​2971](https://github.com/Kludex/uvicorn/pull/2971)
**Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.48.0...0.49.0>
### [`v0.48.0`](https://github.com/Kludex/uvicorn/releases/tag/0.48.0): Version 0.48.0
[Compare Source](https://github.com/Kludex/uvicorn/compare/0.47.0...0.48.0)
#### What's Changed
- Default `ssl_ciphers` to `None` and use OpenSSL defaults by [@​Kludex](https://github.com/Kludex) in [#​2940](https://github.com/Kludex/uvicorn/pull/2940)
- Ignore duplicate forwarding headers in `ProxyHeadersMiddleware` by [@​Kludex](https://github.com/Kludex) in [#​2944](https://github.com/Kludex/uvicorn/pull/2944)
**Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.47.0...0.48.0>
### [`v0.47.0`](https://github.com/Kludex/uvicorn/releases/tag/0.47.0): Version 0.47.0
[Compare Source](https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0)
#### What's Changed
- Eagerly import the ASGI app in the parent process by [@​Kludex](https://github.com/Kludex) in [#​2919](https://github.com/Kludex/uvicorn/pull/2919)
- Add `ssl_context_factory` for custom `SSLContext` configuration by [@​Kludex](https://github.com/Kludex) in [#​2920](https://github.com/Kludex/uvicorn/pull/2920)
- Treat `fd=0` as a valid file descriptor with reload/workers by [@​eltoder](https://github.com/eltoder) in [#​2927](https://github.com/Kludex/uvicorn/pull/2927)
**Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0>
### [`v0.46.0`](https://github.com/Kludex/uvicorn/releases/tag/0.46.0): Version 0.46.0
[Compare Source](https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0)
#### What's Changed
- Support `ws_max_size` in `wsproto` implementation by [@​Kludex](https://github.com/Kludex) in [#​2915](https://github.com/Kludex/uvicorn/pull/2915)
- Support `ws_ping_interval` and `ws_ping_timeout` in `wsproto` implementation by [@​Kludex](https://github.com/Kludex) in [#​2916](https://github.com/Kludex/uvicorn/pull/2916)
- Use `bytearray` for incoming WebSocket message buffer in websockets-sansio by [@​Kludex](https://github.com/Kludex) in [#​2917](https://github.com/Kludex/uvicorn/pull/2917)
**Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0>
### [`v0.45.0`](https://github.com/Kludex/uvicorn/releases/tag/0.45.0): Version 0.45.0
[Compare Source](https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0)
#### What's Changed
- Preserve forwarded client ports in proxy headers middleware by [@​Kludex](https://github.com/Kludex) in [#​2903](https://github.com/Kludex/uvicorn/pull/2903)
- Accept `os.PathLike` for `log_config` by [@​Kludex](https://github.com/Kludex) in [#​2905](https://github.com/Kludex/uvicorn/pull/2905)
- Accept `log_level` strings case-insensitively by [@​Kludex](https://github.com/Kludex) in [#​2907](https://github.com/Kludex/uvicorn/pull/2907)
- Raise helpful `ImportError` when PyYAML is missing for YAML log config by [@​Kludex](https://github.com/Kludex) in [#​2906](https://github.com/Kludex/uvicorn/pull/2906)
- Revert empty context for ASGI runs by [@​Kludex](https://github.com/Kludex) in [#​2911](https://github.com/Kludex/uvicorn/pull/2911)
- Add `--reset-contextvars` flag to isolate ASGI request context by [@​Kludex](https://github.com/Kludex) in [#​2912](https://github.com/Kludex/uvicorn/pull/2912)
- Revert "Emit `http.disconnect` on server shutdown for streaming responses" ([#​2829](https://github.com/Kludex/uvicorn/issues/2829)) by [@​Kludex](https://github.com/Kludex) in [#​2913](https://github.com/Kludex/uvicorn/pull/2913)
#### New Contributors
- [@​Krishnachaitanyakc](https://github.com/Krishnachaitanyakc) made their first contribution in [#​2870](https://github.com/Kludex/uvicorn/pull/2870)
**Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0>
### [`v0.44.0`](https://github.com/Kludex/uvicorn/releases/tag/0.44.0): Version 0.44.0
[Compare Source](https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0)
#### What's Changed
- Implement websocket keepalive pings for websockets-sansio by [@​Kludex](https://github.com/Kludex) in [#​2888](https://github.com/Kludex/uvicorn/pull/2888)
**Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0>
### [`v0.43.0`](https://github.com/Kludex/uvicorn/releases/tag/0.43.0): Version 0.43.0
[Compare Source](https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0)
#### Changed
- Emit `http.disconnect` ASGI `receive()` event on server shutting down for streaming responses ([#​2829](https://github.com/Kludex/uvicorn/issues/2829))
- Use native `context` parameter for `create_task` on Python 3.11+ ([#​2859](https://github.com/Kludex/uvicorn/issues/2859))
- Drop cast in ASGI types ([#​2875](https://github.com/Kludex/uvicorn/issues/2875))
***
**Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0>
### [`v0.42.0`](https://github.com/Kludex/uvicorn/releases/tag/0.42.0): Version 0.42.0
[Compare Source](https://github.com/Kludex/uvicorn/compare/0.41.0...0.42.0)
#### Changed
- Use `bytearray` for request body accumulation to avoid O(n^2) allocation on fragmented bodies ([#​2845](https://github.com/Kludex/uvicorn/issues/2845))
#### Fixed
- Escape brackets and backslash in httptools `HEADER_RE` regex ([#​2824](https://github.com/Kludex/uvicorn/issues/2824))
- Fix multiple issues in websockets sans-io implementation ([#​2825](https://github.com/Kludex/uvicorn/issues/2825))
***
#### New Contributors
- [@​bysiber](https://github.com/bysiber) made their first contribution in [#​2825](https://github.com/Kludex/uvicorn/pull/2825)
***
**Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.41.0...0.42.0>
</details>
---
### Configuration
📅 **Schedule**: (UTC)
- Branch creation
- At any time (no schedule defined)
- Automerge
- At any time (no schedule defined)
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yMTYuNCIsInVwZGF0ZWRJblZlciI6IjQzLjIxNi40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
jcabillot
was assigned by renovate2026-06-11 00:14:39 -04:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This PR contains the following updates:
==0.41.0→==0.49.0Release Notes
Kludex/uvicorn (uvicorn)
v0.49.0: Version 0.49.0Compare Source
What's Changed
Full Changelog: https://github.com/Kludex/uvicorn/compare/0.48.0...0.49.0
v0.48.0: Version 0.48.0Compare Source
What's Changed
ssl_cipherstoNoneand use OpenSSL defaults by @Kludex in #2940ProxyHeadersMiddlewareby @Kludex in #2944Full Changelog: https://github.com/Kludex/uvicorn/compare/0.47.0...0.48.0
v0.47.0: Version 0.47.0Compare Source
What's Changed
ssl_context_factoryfor customSSLContextconfiguration by @Kludex in #2920fd=0as a valid file descriptor with reload/workers by @eltoder in #2927Full Changelog: https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0
v0.46.0: Version 0.46.0Compare Source
What's Changed
ws_max_sizeinwsprotoimplementation by @Kludex in #2915ws_ping_intervalandws_ping_timeoutinwsprotoimplementation by @Kludex in #2916bytearrayfor incoming WebSocket message buffer in websockets-sansio by @Kludex in #2917Full Changelog: https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0
v0.45.0: Version 0.45.0Compare Source
What's Changed
os.PathLikeforlog_configby @Kludex in #2905log_levelstrings case-insensitively by @Kludex in #2907ImportErrorwhen PyYAML is missing for YAML log config by @Kludex in #2906--reset-contextvarsflag to isolate ASGI request context by @Kludex in #2912http.disconnecton server shutdown for streaming responses" (#2829) by @Kludex in #2913New Contributors
Full Changelog: https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0
v0.44.0: Version 0.44.0Compare Source
What's Changed
Full Changelog: https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0
v0.43.0: Version 0.43.0Compare Source
Changed
http.disconnectASGIreceive()event on server shutting down for streaming responses (#2829)contextparameter forcreate_taskon Python 3.11+ (#2859)Full Changelog: https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0
v0.42.0: Version 0.42.0Compare Source
Changed
bytearrayfor request body accumulation to avoid O(n^2) allocation on fragmented bodies (#2845)Fixed
HEADER_REregex (#2824)New Contributors
Full Changelog: https://github.com/Kludex/uvicorn/compare/0.41.0...0.42.0
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate.
7ab7c8c6f3to0346a69b4c