Well I made the old HTTP/2 thread, so I guess it’s time I should make the HTTP/3 thread, lol. ^.^;
Cloudflare has rolled out HTTP/3 support. Things from curl to chrome itself already support HTTP/3, and firefox is adding support in an upcoming nightly. So how goes HTTP/3 support in phoenix (does the BEAM even have a QUIC library yet speaking of)?
The most complete I’ve seen for QUIC is https://github.com/g-andrade/quack which has been archived. Since HTTP/3 moves parts for flow control to the protocol QUIC that were in the application level with HTTP/2 I have meant to look at if an http/2 library, like https://github.com/joedevivo/chatterbox, would make sense as a starting point to pull some parts out of for build quic.
Also, TLS 1.3 is required though, isn’t it? I know it is at least partially available in OTP 22 but I don’t know that all necessary components are available.
I’m unsure if referencing HTTP/2 would help. QUIC adds things that are a lot like SCTP style things like pipelines, and those are why some parts of HTTP/2 can be dropped, just because it already exists in QUIC, but it’s not specific to HTTP/# at all as it is just a protocol layer and QUIC is useful for non-HTTP things.
And I do know QUIC requires TLS, and I’m pretty sure TLS 1.3 is required but uncertain on that last part… Though I bet HTTP/3 requires it regardless.
My 2 cents would be that in addition to server (as in Cowboy most likely), support for HTTP client would be a nice to have at some point. I can see this will be a big speed up in some systems I saw, that do crazy stuff like protobuf files stored & read through S3, once AWS adds support to HTTP/3 on their end.
Yeah it’s looking nice so far. I was hesitant about QUIC being a more ‘generic’ non-http standard at first but they even have things like unreliable channels in the spec now too, it looks very nice! Like becoming a modern SCTP replacement!