Name Description Size Coverage
__init__.py 0 -
h3_wptserve_adapter.py HTTP/3 adapters for serving WPT resources through wptserve. The WebSocket H3 server must serve more than WebSocket CONNECT streams: tests also load HTML, JavaScript, CSS, Python handlers, and .sub. resources from the same H3 origin. wptserve already knows how to route those requests and apply the WPT response pipeline, but it expects HTTP/1-style request handler objects. This module provides the small compatibility layer between aioquic HTTP/3 events and wptserve. It builds request/response wrapper objects for H3 streams and writes wptserve responses back as HTTP/3 HEADERS and DATA frames. 7533 -
headers.py Header store that adapts HTTP/3 headers to pywebsocket3 expectations. 1316 -
tests -
websocket_h3_server.py WebSocket over HTTP/3 server for WPT. This is the main entry point for the WebSocket H3 server. It owns the QUIC server lifecycle, creates the HTTP/3 connection object, dispatches incoming H3 events, handles Extended CONNECT requests for WebSocket streams, and serves normal WPT resources over the same H3 port through wptserve adapters. 28832 -
websocket_h3_session.py Connects one WebSocket-over-H3 stream to a pywebsocket3 handler. aioquic gives this server WebSocket data as HTTP/3 DATA events. pywebsocket3 expects to read and write data through a socket-like object. This file provides the small request, connection, and session objects that translate between those two APIs. 8125 -
ws_h3_handshake.py This file provides the opening handshake processor for Bootstrapping WebSockets with HTTP/3 protocol (RFC 9220). Specification: https://datatracker.ietf.org/doc/html/rfc9220 2277 -