fix(deps): update dependency uvicorn to ^0.54.0 #35

Open
renovate wants to merge 1 commit from renovate/uvicorn-0.x into main
Member

This PR contains the following updates:

Package Change Age Confidence
uvicorn (changelog) ^0.30.6 → ^0.54.0 age confidence

Release Notes

Kludex/uvicorn (uvicorn)

v0.54.0: Version 0.54.0

Compare Source

📨 Send metadata after the response body

uvicorn 0.54.0 adds response trailers and 103 Early Hints to its experimental HTTP/2 implementation through zttp.

uv add uvicorn==0.54.0 "zttp>=0.0.34"
  • Send HTTP/2 response trailers (#​3146). The ASGI http.response.trailers extension lets applications send metadata, such as checksums, after the response body. Clients must send TE: trailers to receive them. Multiple trailer messages are combined before completing the response.
  • HTTP/2 remains experimental and opt-in. Enable it with --http zttp --http2. Upgrade-based h2c and WebSockets over HTTP/2 remain unsupported.

💡 Hint at resources before the final response

  • Send 103 Early Hints over HTTP/2 (#​3137). Applications can use the ASGI http.response.early_hint extension to send resource hints before the final response. Each supplied link becomes a separate Link header.

Full changelog: 0.53.0...0.54.0

v0.53.0: Version 0.53.0

Compare Source

🌐 Opt-in HTTP/2 support

uvicorn 0.53.0 adds experimental HTTP/2 through zttp, alongside a new zuvloop integration and connection-handling improvements.

uv add uvicorn==0.53.0
  • Serve HTTP/1.1 and HTTP/2 with zttp (#​2982, #​3101). Install zttp, then enable HTTP/2 with --http zttp --http2. Uvicorn negotiates HTTP/2 over TLS with ALPN and supports cleartext prior knowledge.
  • HTTP/2 remains experimental. Upgrade-based h2c and WebSockets over HTTP/2 are not supported.

⚙️ More event loop choice

  • Run Uvicorn with zuvloop (#​3104). Install zuvloop separately and select it explicitly with --loop zuvloop on CPython 3.14 or newer.

🛡️ More reliable connections and proxies

  • Honor Connection: close token lists (#​3103). Uvicorn now parses comma-separated tokens case-insensitively across HTTP implementations.
  • Trust IPv6 loopback proxies by default (#​3119). The default FORWARDED_ALLOW_IPS value now includes ::1.
  • Keep upgraded WebSockets alive (#​3107). Uvicorn cancels the HTTP keep-alive timer when the connection becomes a WebSocket.

Full changelog: 0.52.4...0.53.0

v0.52.4: Version 0.52.4

Compare Source

Fixed
  • Remove duplicate Date headers from accepted WebSocket handshakes with websockets-sansio (#​3078)

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.52.3...0.52.4

v0.52.3: Version 0.52.3

Compare Source

Changed
  • Update zttp to 0.0.24 and use its combined receive path, improving HTTP/1.1 request parsing performance (#​3067)

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.52.2...0.52.3

v0.52.2: Version 0.52.2

Compare Source

Fixed
  • Update zttp to 0.0.22, fixing bodyless request receives and improving HTTP/1 request parsing performance (#​3063)

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.52.1...0.52.2

v0.52.1: Version 0.52.1

Compare Source

Fixed
  • Complete the closing handshake on server-initiated WebSocket closes in the websockets-sansio and wsproto implementations, waiting for the client's close reply with a 10 second timeout instead of resetting the connection (#​3053)
  • Add missing write flow control to the websockets-sansio implementation, preventing data truncation on server-initiated closes with large in-flight payloads (#​3048)
  • Handle connection loss while a WebSocket write is waiting on backpressure (#​3050)
  • Remove duplicate Content-Type and Content-Length headers from WebSocket denial responses on the websockets-sansio implementation, and deliver non-UTF-8 denial bodies intact (#​3041)

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.52.0...0.52.1

v0.52.0: Version 0.52.0

Compare Source

This release adds an experimental HTTP/1.1 implementation backed by zttp, a sans-IO HTTP parser I've been developing on the side: a core written in Zig, with bindings to Python. It has been running under a fuzzer for some weeks now, and has been through multiple rounds of security auditing.

It is still experimental, so don't put it in front of production traffic yet. Try it with --http zttp, and please send any feedback to the issue tracker.

Added
  • Add an experimental zttp HTTP/1.1 implementation, selectable with --http zttp (#​2979)
Fixed
  • Keep non-ASCII WebSocket request headers intact with websockets 17.0, which encodes them with ISO-8859-1 (#​3036)

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.51.0...0.52.0

v0.51.0: Version 0.51.0

Compare Source

What's Changed

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.50.2...0.51.0

v0.50.2: Version 0.50.2

Compare Source

What's Changed

  • Require websockets>=13.0 for the default sansio implementation by @​Kludex in #​3021

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.50.1...0.50.2

v0.50.1: Version 0.50.1

Compare Source

What's Changed

  • Split comma-separated Sec-WebSocket-Protocol values in the websockets-sansio implementation by @​Aayush7352 in #​3019

New Contributors

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.50.0...0.50.1

v0.50.0: Version 0.50.0

Compare Source

What's Changed

  • Memoize trusted host checks to avoid re-parsing the client IP per request by @​Kludex in #​2970
  • Cache the asgi scope sub-dict per connection by @​Kludex in #​2976
  • Build a fresh asgi scope dict per request by @​Kludex in #​2977
  • Replace click.style with an internal ANSI style helper by @​Kludex in #​2981
  • Avoid copying single-frame WebSocket payloads in websockets-sansio by @​Kludex in #​2983
  • Deprecate the legacy websockets implementation and default auto to websockets-sansio by @​Kludex in #​2985
  • Exit with a dedicated code on startup failure and stop the supervisor when a worker can't boot by @​Kludex in #​3001
  • Skip the eager app import in the parent when spawning workers by @​Kludex in #​3012

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.49.0...0.50.0

v0.49.0: Version 0.49.0

Compare Source

What's Changed

  • Bump httptools minimum version to 0.8.0 by @​Kludex in #​2962
  • Consume duplicate forwarding headers in ProxyHeadersMiddleware (reverses the 0.48.0 behavior of ignoring them) by @​Kludex in #​2971

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.48.0...0.49.0

v0.48.0: Version 0.48.0

Compare Source

What's Changed

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.47.0...0.48.0

v0.47.0: Version 0.47.0

Compare Source

What's Changed

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.46.0...0.47.0

v0.46.0: Version 0.46.0

Compare Source

What's Changed

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.45.0...0.46.0

v0.45.0: Version 0.45.0

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.44.0...0.45.0

v0.44.0: Version 0.44.0

Compare Source

What's Changed

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.43.0...0.44.0

v0.43.0: Version 0.43.0

Compare Source

Changed

  • Emit http.disconnect ASGI receive() event on server shutting down for streaming responses (#​2829)
  • Use native context parameter for create_task on Python 3.11+ (#​2859)
  • Drop cast in ASGI types (#​2875)

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.42.0...0.43.0

v0.42.0: Version 0.42.0

Compare Source

Changed

  • Use bytearray for request body accumulation to avoid O(n^2) allocation on fragmented bodies (#​2845)

Fixed

  • Escape brackets and backslash in httptools HEADER_RE regex (#​2824)
  • Fix multiple issues in websockets sans-io implementation (#​2825)

New Contributors


Full Changelog: https://github.com/Kludex/uvicorn/compare/0.41.0...0.42.0

v0.41.0: Version 0.41.0

Compare Source

Added

  • Add --limit-max-requests-jitter to stagger worker restarts (#​2707)
  • Add socket path to scope["server"] (#​2561)

Changed

  • Rename LifespanOn.error_occured to error_occurred (#​2776)

Fixed

  • Ignore permission denied errors in watchfiles reloader (#​2817)
  • Ensure lifespan shutdown runs when should_exit is set during startup (#​2812)
  • Reduce the log level of 'request limit exceeded' messages (#​2788)

New Contributors


Full Changelog: https://github.com/Kludex/uvicorn/compare/0.40.0...0.41.0

v0.40.0: Version 0.40.0

Compare Source

What's Changed

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.39.0...0.40.0

v0.39.0: Version 0.39.0

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.38.0...0.39.0

v0.38.0: Version 0.38.0

Compare Source

What's Changed


New Contributors

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.37.0...0.38.0

v0.37.0: Version 0.37.0

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.36.1...0.37.0

v0.36.1: Version 0.36.1

Compare Source

What's Changed

  • Raise an exception when calling removed Config.setup_event_loop() by @​Kludex in #​2709

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.36.0...0.36.1

v0.36.0: Version 0.36.0

Compare Source

Added


New Contributors

Full Changelog: https://github.com/Kludex/uvicorn/compare/0.35.0...0.36.0

v0.35.0: Version 0.35.0

Compare Source

Added

Changed

New Contributors

Full Changelog: https://github.com/encode/uvicorn/compare/0.34.3...0.35.0

v0.34.3: Version 0.34.3

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/encode/uvicorn/compare/0.34.2...0.34.3

v0.34.2: Version 0.34.2

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/encode/uvicorn/compare/0.34.1...0.34.2

v0.34.1: Version 0.34.1

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/encode/uvicorn/compare/0.34.0...0.34.1

v0.34.0: Version 0.34.0

Compare Source

What's Changed


Full Changelog: https://github.com/encode/uvicorn/compare/0.33.0...0.34.0

v0.33.0: Version 0.33.0

Compare Source

What's Changed

New Contributors

Full Changelog: https://github.com/encode/uvicorn/compare/0.32.1...0.33.0

v0.32.1: Version 0.32.1

Compare Source

What's Changed


Full Changelog: https://github.com/encode/uvicorn/compare/0.32.0...0.32.1

v0.32.0: Version 0.32.0

Compare Source

Added

  • Officially support Python 3.13 (#​2482)
  • Warn when max_request_limit is exceeded (#​2430)

Full Changelog: https://github.com/encode/uvicorn/compare/0.31.1...0.32.0

v0.31.1: Version 0.31.1

Compare Source

Fixed

  • Support WebSockets 0.13.1 #​2471
  • Restore support for [*] in trusted hosts #​2480
  • Add PathLike[str] type hint for ssl_keyfile #​2481

Full Changelog: https://github.com/encode/uvicorn/compare/0.31.0...0.31.1

v0.31.0: Version 0.31.0

Compare Source

Added

Improve ProxyHeadersMiddleware (#​2468) and (#​2231):

  • Fix the host for requests from clients running on the proxy server itself.
  • Fallback to host that was already set for empty x-forwarded-for headers.
  • Also allow specifying IP Networks as trusted hosts. This greatly simplifies deployments
    on docker swarm/Kubernetes, where the reverse proxy might have a dynamic IP.
    • This includes support for IPv6 Address/Networks.

Full Changelog: https://github.com/encode/uvicorn/compare/0.30.6...0.31.0


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.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate.

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.30.6` → `^0.54.0` | ![age](https://developer.mend.io/api/mc/badges/age/pypi/uvicorn/0.54.0?slim=true) | ![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/uvicorn/0.30.6/0.54.0?slim=true) | --- ### Release Notes <details> <summary>Kludex/uvicorn (uvicorn)</summary> ### [`v0.54.0`](https://github.com/Kludex/uvicorn/releases/tag/0.54.0): Version 0.54.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.53.0...0.54.0) #### 📨 Send metadata after the response body `uvicorn` 0.54.0 adds response trailers and `103 Early Hints` to its experimental HTTP/2 implementation through `zttp`. ```console uv add uvicorn==0.54.0 "zttp>=0.0.34" ``` - **Send HTTP/2 response trailers** ([#&#8203;3146](https://github.com/Kludex/uvicorn/pull/3146)). The ASGI `http.response.trailers` extension lets applications send metadata, such as checksums, after the response body. Clients must send `TE: trailers` to receive them. Multiple trailer messages are combined before completing the response. - **HTTP/2 remains experimental and opt-in.** Enable it with `--http zttp --http2`. Upgrade-based h2c and WebSockets over HTTP/2 remain unsupported. #### 💡 Hint at resources before the final response - **Send `103 Early Hints` over HTTP/2** ([#&#8203;3137](https://github.com/Kludex/uvicorn/pull/3137)). Applications can use the ASGI `http.response.early_hint` extension to send resource hints before the final response. Each supplied link becomes a separate `Link` header. **Full changelog:** [0.53.0...0.54.0](https://github.com/Kludex/uvicorn/compare/0.53.0...0.54.0) ### [`v0.53.0`](https://github.com/Kludex/uvicorn/releases/tag/0.53.0): Version 0.53.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.52.4...0.53.0) #### 🌐 Opt-in HTTP/2 support `uvicorn` 0.53.0 adds experimental HTTP/2 through `zttp`, alongside a new `zuvloop` integration and connection-handling improvements. ```console uv add uvicorn==0.53.0 ``` - **Serve HTTP/1.1 and HTTP/2 with `zttp`** ([#&#8203;2982](https://github.com/Kludex/uvicorn/pull/2982), [#&#8203;3101](https://github.com/Kludex/uvicorn/pull/3101)). Install `zttp`, then enable HTTP/2 with `--http zttp --http2`. Uvicorn negotiates HTTP/2 over TLS with ALPN and supports cleartext prior knowledge. - **HTTP/2 remains experimental.** Upgrade-based h2c and WebSockets over HTTP/2 are not supported. #### ⚙️ More event loop choice - **Run Uvicorn with `zuvloop`** ([#&#8203;3104](https://github.com/Kludex/uvicorn/pull/3104)). Install `zuvloop` separately and select it explicitly with `--loop zuvloop` on CPython 3.14 or newer. #### 🛡️ More reliable connections and proxies - **Honor `Connection: close` token lists** ([#&#8203;3103](https://github.com/Kludex/uvicorn/pull/3103)). Uvicorn now parses comma-separated tokens case-insensitively across HTTP implementations. - **Trust IPv6 loopback proxies by default** ([#&#8203;3119](https://github.com/Kludex/uvicorn/pull/3119)). The default `FORWARDED_ALLOW_IPS` value now includes `::1`. - **Keep upgraded WebSockets alive** ([#&#8203;3107](https://github.com/Kludex/uvicorn/pull/3107)). Uvicorn cancels the HTTP keep-alive timer when the connection becomes a WebSocket. **Full changelog:** [0.52.4...0.53.0](https://github.com/Kludex/uvicorn/compare/0.52.4...0.53.0) ### [`v0.52.4`](https://github.com/Kludex/uvicorn/releases/tag/0.52.4): Version 0.52.4 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.52.3...0.52.4) ##### Fixed - Remove duplicate `Date` headers from accepted WebSocket handshakes with `websockets-sansio` ([#&#8203;3078](https://github.com/Kludex/uvicorn/pull/3078)) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.52.3...0.52.4> ### [`v0.52.3`](https://github.com/Kludex/uvicorn/releases/tag/0.52.3): Version 0.52.3 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.52.2...0.52.3) ##### Changed - Update `zttp` to 0.0.24 and use its combined receive path, improving HTTP/1.1 request parsing performance ([#&#8203;3067](https://github.com/Kludex/uvicorn/issues/3067)) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.52.2...0.52.3> ### [`v0.52.2`](https://github.com/Kludex/uvicorn/releases/tag/0.52.2): Version 0.52.2 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.52.1...0.52.2) ##### Fixed - Update `zttp` to 0.0.22, fixing bodyless request receives and improving HTTP/1 request parsing performance ([#&#8203;3063](https://github.com/Kludex/uvicorn/issues/3063)) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.52.1...0.52.2> ### [`v0.52.1`](https://github.com/Kludex/uvicorn/releases/tag/0.52.1): Version 0.52.1 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.52.0...0.52.1) ##### Fixed - Complete the closing handshake on server-initiated WebSocket closes in the `websockets-sansio` and `wsproto` implementations, waiting for the client's close reply with a 10 second timeout instead of resetting the connection ([#&#8203;3053](https://github.com/Kludex/uvicorn/issues/3053)) - Add missing write flow control to the `websockets-sansio` implementation, preventing data truncation on server-initiated closes with large in-flight payloads ([#&#8203;3048](https://github.com/Kludex/uvicorn/issues/3048)) - Handle connection loss while a WebSocket write is waiting on backpressure ([#&#8203;3050](https://github.com/Kludex/uvicorn/issues/3050)) - Remove duplicate `Content-Type` and `Content-Length` headers from WebSocket denial responses on the `websockets-sansio` implementation, and deliver non-UTF-8 denial bodies intact ([#&#8203;3041](https://github.com/Kludex/uvicorn/issues/3041)) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.52.0...0.52.1> ### [`v0.52.0`](https://github.com/Kludex/uvicorn/releases/tag/0.52.0): Version 0.52.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.51.0...0.52.0) This release adds an experimental HTTP/1.1 implementation backed by [zttp](https://zttp.marcelotryle.com/), a sans-IO HTTP parser I've been developing on the side: a core written in Zig, with bindings to Python. It has been running under a fuzzer for some weeks now, and has been through multiple rounds of security auditing. It is still **experimental**, so don't put it in front of production traffic yet. Try it with `--http zttp`, and please send any feedback to the [issue tracker](https://github.com/Kludex/uvicorn/issues). ##### Added - Add an experimental `zttp` HTTP/1.1 implementation, selectable with `--http zttp` ([#&#8203;2979](https://github.com/Kludex/uvicorn/issues/2979)) ##### Fixed - Keep non-ASCII WebSocket request headers intact with websockets 17.0, which encodes them with ISO-8859-1 ([#&#8203;3036](https://github.com/Kludex/uvicorn/issues/3036)) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.51.0...0.52.0> ### [`v0.51.0`](https://github.com/Kludex/uvicorn/releases/tag/0.51.0): Version 0.51.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.50.2...0.51.0) #### What's Changed - Restart workers with overlap on SIGHUP for near-zero-downtime reloads by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;3025](https://github.com/Kludex/uvicorn/pull/3025) - Remove colorama from the standard extra by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;3027](https://github.com/Kludex/uvicorn/pull/3027) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.50.2...0.51.0> ### [`v0.50.2`](https://github.com/Kludex/uvicorn/releases/tag/0.50.2): Version 0.50.2 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.50.1...0.50.2) #### What's Changed - Require websockets>=13.0 for the default sansio implementation by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;3021](https://github.com/Kludex/uvicorn/pull/3021) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.50.1...0.50.2> ### [`v0.50.1`](https://github.com/Kludex/uvicorn/releases/tag/0.50.1): Version 0.50.1 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.50.0...0.50.1) #### What's Changed - Split comma-separated `Sec-WebSocket-Protocol` values in the websockets-sansio implementation by [@&#8203;Aayush7352](https://github.com/Aayush7352) in [#&#8203;3019](https://github.com/Kludex/uvicorn/pull/3019) #### New Contributors - [@&#8203;Aayush7352](https://github.com/Aayush7352) made their first contribution in [#&#8203;3019](https://github.com/Kludex/uvicorn/pull/3019) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.50.0...0.50.1> ### [`v0.50.0`](https://github.com/Kludex/uvicorn/releases/tag/0.50.0): Version 0.50.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.49.0...0.50.0) #### What's Changed - Memoize trusted host checks to avoid re-parsing the client IP per request by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2970](https://github.com/Kludex/uvicorn/pull/2970) - Cache the `asgi` scope sub-dict per connection by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2976](https://github.com/Kludex/uvicorn/pull/2976) - Build a fresh `asgi` scope dict per request by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2977](https://github.com/Kludex/uvicorn/pull/2977) - Replace click.style with an internal ANSI style helper by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2981](https://github.com/Kludex/uvicorn/pull/2981) - Avoid copying single-frame WebSocket payloads in websockets-sansio by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2983](https://github.com/Kludex/uvicorn/pull/2983) - Deprecate the legacy websockets implementation and default `auto` to websockets-sansio by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2985](https://github.com/Kludex/uvicorn/pull/2985) - Exit with a dedicated code on startup failure and stop the supervisor when a worker can't boot by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;3001](https://github.com/Kludex/uvicorn/pull/3001) - Skip the eager app import in the parent when spawning workers by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;3012](https://github.com/Kludex/uvicorn/pull/3012) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.49.0...0.50.0> ### [`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 [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2962](https://github.com/Kludex/uvicorn/pull/2962) - Consume duplicate forwarding headers in ProxyHeadersMiddleware (reverses the 0.48.0 behavior of ignoring them) by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;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 [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2940](https://github.com/Kludex/uvicorn/pull/2940) - Ignore duplicate forwarding headers in `ProxyHeadersMiddleware` by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;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 [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2919](https://github.com/Kludex/uvicorn/pull/2919) - Add `ssl_context_factory` for custom `SSLContext` configuration by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2920](https://github.com/Kludex/uvicorn/pull/2920) - Treat `fd=0` as a valid file descriptor with reload/workers by [@&#8203;eltoder](https://github.com/eltoder) in [#&#8203;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 [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2915](https://github.com/Kludex/uvicorn/pull/2915) - Support `ws_ping_interval` and `ws_ping_timeout` in `wsproto` implementation by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2916](https://github.com/Kludex/uvicorn/pull/2916) - Use `bytearray` for incoming WebSocket message buffer in websockets-sansio by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;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 [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2903](https://github.com/Kludex/uvicorn/pull/2903) - Accept `os.PathLike` for `log_config` by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2905](https://github.com/Kludex/uvicorn/pull/2905) - Accept `log_level` strings case-insensitively by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2907](https://github.com/Kludex/uvicorn/pull/2907) - Raise helpful `ImportError` when PyYAML is missing for YAML log config by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2906](https://github.com/Kludex/uvicorn/pull/2906) - Revert empty context for ASGI runs by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2911](https://github.com/Kludex/uvicorn/pull/2911) - Add `--reset-contextvars` flag to isolate ASGI request context by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2912](https://github.com/Kludex/uvicorn/pull/2912) - Revert "Emit `http.disconnect` on server shutdown for streaming responses" ([#&#8203;2829](https://github.com/Kludex/uvicorn/issues/2829)) by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2913](https://github.com/Kludex/uvicorn/pull/2913) #### New Contributors - [@&#8203;Krishnachaitanyakc](https://github.com/Krishnachaitanyakc) made their first contribution in [#&#8203;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 [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;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 ([#&#8203;2829](https://github.com/Kludex/uvicorn/issues/2829)) - Use native `context` parameter for `create_task` on Python 3.11+ ([#&#8203;2859](https://github.com/Kludex/uvicorn/issues/2859)) - Drop cast in ASGI types ([#&#8203;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 ([#&#8203;2845](https://github.com/Kludex/uvicorn/issues/2845)) #### Fixed - Escape brackets and backslash in httptools `HEADER_RE` regex ([#&#8203;2824](https://github.com/Kludex/uvicorn/issues/2824)) - Fix multiple issues in websockets sans-io implementation ([#&#8203;2825](https://github.com/Kludex/uvicorn/issues/2825)) *** #### New Contributors - [@&#8203;bysiber](https://github.com/bysiber) made their first contribution in [#&#8203;2825](https://github.com/Kludex/uvicorn/pull/2825) *** **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.41.0...0.42.0> ### [`v0.41.0`](https://github.com/Kludex/uvicorn/releases/tag/0.41.0): Version 0.41.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.40.0...0.41.0) #### Added - Add `--limit-max-requests-jitter` to stagger worker restarts ([#&#8203;2707](https://github.com/Kludex/uvicorn/issues/2707)) - Add socket path to `scope["server"]` ([#&#8203;2561](https://github.com/Kludex/uvicorn/issues/2561)) #### Changed - Rename `LifespanOn.error_occured` to `error_occurred` ([#&#8203;2776](https://github.com/Kludex/uvicorn/issues/2776)) #### Fixed - Ignore permission denied errors in watchfiles reloader ([#&#8203;2817](https://github.com/Kludex/uvicorn/issues/2817)) - Ensure lifespan shutdown runs when `should_exit` is set during startup ([#&#8203;2812](https://github.com/Kludex/uvicorn/issues/2812)) - Reduce the log level of 'request limit exceeded' messages ([#&#8203;2788](https://github.com/Kludex/uvicorn/issues/2788)) *** #### New Contributors - [@&#8203;t-kawasumi](https://github.com/t-kawasumi) made their first contribution in [#&#8203;2776](https://github.com/Kludex/uvicorn/pull/2776) - [@&#8203;fardyn](https://github.com/fardyn) made their first contribution in [#&#8203;2800](https://github.com/Kludex/uvicorn/pull/2800) - [@&#8203;ewie](https://github.com/ewie) made their first contribution in [#&#8203;2807](https://github.com/Kludex/uvicorn/pull/2807) - [@&#8203;shevron](https://github.com/shevron) made their first contribution in [#&#8203;2788](https://github.com/Kludex/uvicorn/pull/2788) - [@&#8203;jonashaag](https://github.com/jonashaag) made their first contribution in [#&#8203;2707](https://github.com/Kludex/uvicorn/pull/2707) *** **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.40.0...0.41.0> ### [`v0.40.0`](https://github.com/Kludex/uvicorn/releases/tag/0.40.0): Version 0.40.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.39.0...0.40.0) #### What's Changed - Drop Python 3.9 by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2772](https://github.com/Kludex/uvicorn/pull/2772) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.39.0...0.40.0> ### [`v0.39.0`](https://github.com/Kludex/uvicorn/releases/tag/0.39.0): Version 0.39.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.38.0...0.39.0) #### What's Changed - explicitly start ASGI run with empty context by [@&#8203;pmeier](https://github.com/pmeier) in [#&#8203;2742](https://github.com/Kludex/uvicorn/pull/2742) - fix(websockets): Send close frame on ASGI return by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2769](https://github.com/Kludex/uvicorn/pull/2769) #### New Contributors - [@&#8203;pmeier](https://github.com/pmeier) made their first contribution in [#&#8203;2742](https://github.com/Kludex/uvicorn/pull/2742) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.38.0...0.39.0> ### [`v0.38.0`](https://github.com/Kludex/uvicorn/releases/tag/0.38.0): Version 0.38.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.37.0...0.38.0) #### What's Changed - Support Python 3.14 by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2723](https://github.com/Kludex/uvicorn/pull/2723) *** #### New Contributors - [@&#8203;NGANAMODEIJunior](https://github.com/NGANAMODEIJunior) made their first contribution in [#&#8203;2713](https://github.com/Kludex/uvicorn/pull/2713) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.37.0...0.38.0> ### [`v0.37.0`](https://github.com/Kludex/uvicorn/releases/tag/0.37.0): Version 0.37.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.36.1...0.37.0) #### What's Changed - Add `--timeout-worker-healthcheck` setting by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2711](https://github.com/Kludex/uvicorn/pull/2711) - Add `os.PathLike[str]` type to `ssl_ca_certs` by [@&#8203;rnv812](https://github.com/rnv812) in [#&#8203;2676](https://github.com/Kludex/uvicorn/pull/2676) #### New Contributors - [@&#8203;LincolnPuzey](https://github.com/LincolnPuzey) made their first contribution in [#&#8203;2669](https://github.com/Kludex/uvicorn/pull/2669) - [@&#8203;rnv812](https://github.com/rnv812) made their first contribution in [#&#8203;2676](https://github.com/Kludex/uvicorn/pull/2676) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.36.1...0.37.0> ### [`v0.36.1`](https://github.com/Kludex/uvicorn/releases/tag/0.36.1): Version 0.36.1 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.36.0...0.36.1) #### What's Changed - Raise an exception when calling removed `Config.setup_event_loop()` by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2709](https://github.com/Kludex/uvicorn/pull/2709) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.36.0...0.36.1> ### [`v0.36.0`](https://github.com/Kludex/uvicorn/releases/tag/0.36.0): Version 0.36.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.35.0...0.36.0) #### Added - Support custom IOLOOPs by [@&#8203;gnir-work](https://github.com/gnir-work) in [#&#8203;2435](https://github.com/Kludex/uvicorn/pull/2435) - Allow to provide importable string in `--http`, `--ws` and `--loop` by [@&#8203;Kludex](https://github.com/Kludex) in [#&#8203;2658](https://github.com/Kludex/uvicorn/pull/2658) *** ##### New Contributors - [@&#8203;gnir-work](https://github.com/gnir-work) made their first contribution in [#&#8203;2435](https://github.com/Kludex/uvicorn/pull/2435) - [@&#8203;musicinmybrain](https://github.com/musicinmybrain) made their first contribution in [#&#8203;2659](https://github.com/Kludex/uvicorn/pull/2659) - [@&#8203;secrett2633](https://github.com/secrett2633) made their first contribution in [#&#8203;2684](https://github.com/Kludex/uvicorn/pull/2684) **Full Changelog**: <https://github.com/Kludex/uvicorn/compare/0.35.0...0.36.0> ### [`v0.35.0`](https://github.com/Kludex/uvicorn/releases/tag/0.35.0): Version 0.35.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.34.3...0.35.0) #### Added - Add `WebSocketsSansIOProtocol` by [@&#8203;Kludex](https://github.com/Kludex) in [encode#2540](https://github.com/encode/uvicorn/pull/2540) #### Changed - Refine help message for option `--proxy-headers` by [@&#8203;zhangyoufu](https://github.com/zhangyoufu) in [encode#2653](https://github.com/encode/uvicorn/pull/2653) #### New Contributors - [@&#8203;zhangyoufu](https://github.com/zhangyoufu) made their first contribution in [encode#2653](https://github.com/encode/uvicorn/pull/2653) **Full Changelog**: <https://github.com/encode/uvicorn/compare/0.34.3...0.35.0> ### [`v0.34.3`](https://github.com/Kludex/uvicorn/releases/tag/0.34.3): Version 0.34.3 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.34.2...0.34.3) #### What's Changed - Don't include `cwd()` when non-empty `--reload-dirs` is passed by [@&#8203;stinovlas](https://github.com/stinovlas) in [encode#2598](https://github.com/encode/uvicorn/pull/2598) - Apply `get_client_addr` formatting to WebSocket logging by [@&#8203;Harry-Lees](https://github.com/Harry-Lees) in [encode#2636](https://github.com/encode/uvicorn/pull/2636) - chore: improve type hints by [@&#8203;waketzheng](https://github.com/waketzheng) in [encode#2638](https://github.com/encode/uvicorn/pull/2638) #### New Contributors - [@&#8203;stinovlas](https://github.com/stinovlas) made their first contribution in [encode#2598](https://github.com/encode/uvicorn/pull/2598) - [@&#8203;LifeLex](https://github.com/LifeLex) made their first contribution in [encode#2621](https://github.com/encode/uvicorn/pull/2621) - [@&#8203;Harry-Lees](https://github.com/Harry-Lees) made their first contribution in [encode#2636](https://github.com/encode/uvicorn/pull/2636) - [@&#8203;waketzheng](https://github.com/waketzheng) made their first contribution in [encode#2638](https://github.com/encode/uvicorn/pull/2638) **Full Changelog**: <https://github.com/encode/uvicorn/compare/0.34.2...0.34.3> ### [`v0.34.2`](https://github.com/Kludex/uvicorn/releases/tag/0.34.2): Version 0.34.2 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.34.1...0.34.2) #### What's Changed - Flush the stdout buffer on Windows to trigger reload by [@&#8203;jamesh1999](https://github.com/jamesh1999) in [encode#2604](https://github.com/encode/uvicorn/pull/2604) #### New Contributors - [@&#8203;jamesh1999](https://github.com/jamesh1999) made their first contribution in [encode#2604](https://github.com/encode/uvicorn/pull/2604) **Full Changelog**: <https://github.com/encode/uvicorn/compare/0.34.1...0.34.2> ### [`v0.34.1`](https://github.com/Kludex/uvicorn/releases/tag/0.34.1): Version 0.34.1 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.34.0...0.34.1) #### What's Changed - Deprecate `ServerState` in the main module by [@&#8203;Kludex](https://github.com/Kludex) in [encode#2581](https://github.com/encode/uvicorn/pull/2581) #### New Contributors - [@&#8203;RakhimovRamis](https://github.com/RakhimovRamis) made their first contribution in [encode#2567](https://github.com/encode/uvicorn/pull/2567) - [@&#8203;carlwgeorge](https://github.com/carlwgeorge) made their first contribution in [encode#2590](https://github.com/encode/uvicorn/pull/2590) **Full Changelog**: <https://github.com/encode/uvicorn/compare/0.34.0...0.34.1> ### [`v0.34.0`](https://github.com/Kludex/uvicorn/releases/tag/0.34.0): Version 0.34.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.33.0...0.34.0) #### What's Changed - Add `content-length` to 500 response in wsproto by [@&#8203;Kludex](https://github.com/Kludex) in [encode#2542](https://github.com/encode/uvicorn/pull/2542) - Drop Python 3.8 by [@&#8203;Kludex](https://github.com/Kludex) in [encode#2543](https://github.com/encode/uvicorn/pull/2543) *** **Full Changelog**: <https://github.com/encode/uvicorn/compare/0.33.0...0.34.0> ### [`v0.33.0`](https://github.com/Kludex/uvicorn/releases/tag/0.33.0): Version 0.33.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.32.1...0.33.0) #### What's Changed - Remove WatchGod by [@&#8203;Kludex](https://github.com/Kludex) in [encode#2536](https://github.com/encode/uvicorn/pull/2536) #### New Contributors - [@&#8203;bwells](https://github.com/bwells) made their first contribution in [encode#2491](https://github.com/encode/uvicorn/pull/2491) - [@&#8203;tback](https://github.com/tback) made their first contribution in [encode#2528](https://github.com/encode/uvicorn/pull/2528) **Full Changelog**: <https://github.com/encode/uvicorn/compare/0.32.1...0.33.0> ### [`v0.32.1`](https://github.com/Kludex/uvicorn/releases/tag/0.32.1): Version 0.32.1 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.32.0...0.32.1) #### What's Changed - Enable httptools lenient data by [@&#8203;vvanglro](https://github.com/vvanglro) in [encode#2488](https://github.com/encode/uvicorn/pull/2488) - Drop ASGI spec version to 2.3 on HTTP scope by [@&#8203;Kludex](https://github.com/Kludex) in [encode#2513](https://github.com/encode/uvicorn/pull/2513) *** **Full Changelog**: <https://github.com/encode/uvicorn/compare/0.32.0...0.32.1> ### [`v0.32.0`](https://github.com/Kludex/uvicorn/releases/tag/0.32.0): Version 0.32.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.31.1...0.32.0) #### Added - Officially support Python 3.13 ([#&#8203;2482](https://github.com/Kludex/uvicorn/issues/2482)) - Warn when `max_request_limit` is exceeded ([#&#8203;2430](https://github.com/Kludex/uvicorn/issues/2430)) *** **Full Changelog**: <https://github.com/encode/uvicorn/compare/0.31.1...0.32.0> ### [`v0.31.1`](https://github.com/Kludex/uvicorn/releases/tag/0.31.1): Version 0.31.1 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.31.0...0.31.1) #### Fixed - Support WebSockets 0.13.1 [#&#8203;2471](https://github.com/encode/uvicorn/pull/2471) - Restore support for `[*]` in trusted hosts [#&#8203;2480](https://github.com/encode/uvicorn/pull/2480) - Add `PathLike[str]` type hint for `ssl_keyfile` [#&#8203;2481](https://github.com/encode/uvicorn/pull/2481) *** **Full Changelog**: <https://github.com/encode/uvicorn/compare/0.31.0...0.31.1> ### [`v0.31.0`](https://github.com/Kludex/uvicorn/releases/tag/0.31.0): Version 0.31.0 [Compare Source](https://github.com/Kludex/uvicorn/compare/0.30.6...0.31.0) ##### Added Improve `ProxyHeadersMiddleware` ([#&#8203;2468](https://github.com/Kludex/uvicorn/issues/2468)) and ([#&#8203;2231](https://github.com/Kludex/uvicorn/issues/2231)): - Fix the host for requests from clients running on the proxy server itself. - Fallback to host that was already set for empty x-forwarded-for headers. - Also allow specifying IP Networks as trusted hosts. This greatly simplifies deployments on docker swarm/Kubernetes, where the reverse proxy might have a dynamic IP. - This includes support for IPv6 Address/Networks. *** **Full Changelog**: <https://github.com/encode/uvicorn/compare/0.30.6...0.31.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:eyJjcmVhdGVkSW5WZXIiOiI0My4yODguMCIsInVwZGF0ZWRJblZlciI6IjQzLjI4OC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
fix(deps): update dependency uvicorn to ^0.54.0
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
af70044c58
renovate force-pushed renovate/uvicorn-0.x from af70044c58
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
to 394acb32ec
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
2026-11-04 22:57:15 +00:00
Compare
renovate force-pushed renovate/uvicorn-0.x from 394acb32ec
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
to 92b5df924e
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
2026-11-05 07:59:05 +00:00
Compare
renovate force-pushed renovate/uvicorn-0.x from 92b5df924e
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
to 73db9fd23a
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
2026-11-05 08:58:51 +00:00
Compare
All checks were successful
renovate/stability-days Updates have met minimum release age requirement
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/uvicorn-0.x:renovate/uvicorn-0.x
git switch renovate/uvicorn-0.x

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff renovate/uvicorn-0.x
git switch renovate/uvicorn-0.x
git rebase main
git switch main
git merge --ff-only renovate/uvicorn-0.x
git switch renovate/uvicorn-0.x
git rebase main
git switch main
git merge --no-ff renovate/uvicorn-0.x
git switch main
git merge --squash renovate/uvicorn-0.x
git switch main
git merge --ff-only renovate/uvicorn-0.x
git switch main
git merge renovate/uvicorn-0.x
git push origin main
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
sr2/snapdirect!35
No description provided.