Zum Inhalt springen

Kludex Release Notes

10 Einträge aus 1 Quelle. Zuletzt aktualisiert:

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Uvicorn von Kludex

Uvicorn 0.54.0: HTTP/2-Trailers und 103 Early Hints

Uvicorn 0.54.0 ergänzt die experimentelle HTTP/2-Implementierung über zttp um HTTP/2-Response-Trailers (ASGI-Extension http.response.trailers) und um 103 Early Hints (ASGI-Extension http.response.early_hint).

📨 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

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Uvicorn von Kludex

Uvicorn 0.53.0: Experimentelles HTTP/2 und zuvloop

Uvicorn 0.53.0 führt experimentelles, optionales HTTP/2 über zttp (--http zttp --http2) sowie die Event-Loop-Option zuvloop (--loop zuvloop, CPython 3.14 oder neuer) ein und verbessert die Handhabung von Verbindungen und Proxys, etwa durch ::1 in den Standardwerten von FORWARDED_ALLOW_IPS und das Auswerten von Connection-close-Tokenlisten.

🌐 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. …

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Uvicorn von Kludex

Uvicorn 0.52.3

Uvicorn 0.52.3 aktualisiert zttp auf 0.0.24 und nutzt dessen kombinierten Empfangspfad, wodurch das Parsen von HTTP/1.1-Anfragen schneller wird.

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

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Uvicorn von Kludex

Uvicorn 0.52.2

Uvicorn 0.52.2 aktualisiert zttp auf 0.0.22, behebt damit das Empfangen von Anfragen ohne Body und beschleunigt das Parsen von HTTP/1-Anfragen.

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

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Uvicorn von Kludex

Uvicorn 0.52.1

Uvicorn 0.52.1 behebt mehrere WebSocket-Probleme, darunter den fehlenden Abschluss des Closing-Handshakes bei serverseitigem Schließen, fehlende Schreib-Flusskontrolle in websockets-sansio, den Umgang mit Verbindungsverlust bei Backpressure sowie doppelte Header in Ablehnungsantworten.

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

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Uvicorn von Kludex

Uvicorn 0.52.0

Uvicorn 0.52.0 führt eine experimentelle HTTP/1.1-Implementierung auf Basis von zttp ein (auswählbar mit --http zttp, noch nicht für Produktivbetrieb gedacht) und bewahrt nicht-ASCII-WebSocket-Header mit websockets 17.0.

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

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Uvicorn von Kludex

Uvicorn 0.51.0

Uvicorn 0.51.0 startet Worker bei SIGHUP mit Überlappung neu, was Reloads nahezu ohne Ausfallzeit ermöglicht, und entfernt colorama aus dem Extra „standard“.

What's Changed

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

Originalquelle(öffnet in neuem Tab)Problem melden

Angaben zum Datum

Datum aus der Quelle.

Erstmals gesehen am .

Uvicorn von Kludex

Uvicorn 0.50.1

Uvicorn 0.50.1 trennt in der websockets-sansio-Implementierung kommagetrennte Sec-WebSocket-Protocol-Werte korrekt auf.

What's Changed

New Contributors

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

Originalquelle(öffnet in neuem Tab)Problem melden