HTTP/2 and HTTP/3 support?
Hi all,
I am using HTTP 0.9.17 and Julia 1.7.1. Right now, whenever I make an HTTP request, it seems the protocol used is HTTP/1.1.
I was wondering if HTTP.jl supports HTTP/2 or HTTP/3, and if not, when such support might be available. (I tried to find out if this question had been asked before, but I’m not sure the search bar liked the slashes in the version names. If this question has been asked before, please feel free to point me to the answer and close this issue!)
HTTP.jl does not currently support HTTP/2 or HTTP/3. No timeline as of right now for when it will be supported. I'd like to add support for HTTP/2 soonish, but I have a lot on my plate, so it's hard to commit to a specific deadline.
I'd like to add support for HTTP/2 soonish
HTTP/3 is out as a standard (not just QUIC it builds on, rather than TCP), so I think that should be the priority. I don't know if some of the work is shared with supporting HTTP/2, or if HTTP/2 should be totally ignored (gRPC needs it, not sure if it now would support HTTP/3).
I'm not saying you need to do this (nor this package, but if it doesn't, or will have HTTP3.jl as dependency at least if should link to such), and actually think we we must use C code. What cURL uses, i.e. it's upstream may be good.
HTTP/3 is a massive change. It does things differently aka QUIC/UDP over TCP
Does https://github.com/grlap/Nghttp3_jll.jl and https://github.com/grlap/Nghttp2.jl help? The latter has corresponding JLL, but the former has no corresponding non-JLL package, or that repo is empty.