Skip to content

Add WebSocket :protocol extension per RFC 9220.#236

Merged
Ruben2424 merged 2 commits into
hyperium:masterfrom
vi:ws
Jan 4, 2026
Merged

Add WebSocket :protocol extension per RFC 9220.#236
Ruben2424 merged 2 commits into
hyperium:masterfrom
vi:ws

Conversation

@vi

@vi vi commented Apr 13, 2024

Copy link
Copy Markdown
Contributor

Attempt to add WebSocket support to h3.

I don't know any server that supports RFC 9220, so it is untested.

@pythonwood

Copy link
Copy Markdown

Hi. you can add some unit test.
support rfc9220 server:
https://github.com/ngtcp2/nghttp3

@vi

vi commented Dec 13, 2024

Copy link
Copy Markdown
Contributor Author

What should the unit test test? as_str / from_str implementations?

@ararog

ararog commented Oct 29, 2025

Copy link
Copy Markdown

Other implementation of RFC9220:

https://github.com/aiortc/aioquic

@vi

vi commented Oct 31, 2025

Copy link
Copy Markdown
Contributor Author

Hi. you can add some unit test. support rfc9220 server: https://github.com/ngtcp2/nghttp3

It is appropriate to add a heavy dev-dependency for a such a trivial change?

@ararog

ararog commented Oct 31, 2025

Copy link
Copy Markdown

Based on what I see on other implementations of websocket, h3 should only provide the minimum at http level to be able to establish websockets connection, which is, in short, the ability to set CONNECT pseudo-headers, and maybe send the settings frames, besides that, looks like the remaining parts can still take advantage of existing frame parsing libraries.

@vi

vi commented Jan 4, 2026

Copy link
Copy Markdown
Contributor Author

Refreshed the pull request after a conflict from #273, which has a very similar idea.

@Ruben2424 Ruben2424 merged commit 154ff8d into hyperium:master Jan 4, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants