Pounce supports multiple protocols through a modular handler system. The core ships with HTTP/1.1 via h11. HTTP/2 and WebSocket are optional extras.
HTTP/1.1
Default protocol — h11 (pure Python) or httptools (C-accelerated)
The foundation of Pounce's request handling.
HTTP/2
Stream multiplexing, header compression, priority signals
Install withpounce[h2].
WebSocket
Full-duplex communication, including WebSocket over HTTP/2
Install withpounce[ws].
Protocol Detection
For TLS connections, Pounce uses ALPN (Application-Layer Protocol Negotiation) to select between HTTP/1.1 and HTTP/2. For plain connections, HTTP/1.1 is used by default.
WebSocket connections start as HTTP/1.1 (or HTTP/2) and upgrade via the standard upgrade mechanism.