#http2
Tá chegando aquela hora

http2.mlstatic.com/D_NQ_NP_6576...
March 1, 2025 at 12:50 PM
Vite 7.2 is out! ⚡️

🗃️ `build.license` option
🔌 proxy + HTTP2 support
💜 and more features and fixes

Don't forget to check the complete changelog at github.com/vitejs/vite/...
github.com
November 5, 2025 at 10:56 AM
CAN-SADO
July 3, 2025 at 8:19 PM
Only recently did I have cause to really dig into HTTP2 performance improvements and wow is it exciting.

It really changed how one can think about HTTP-based APIs.

The number of HTTP2 streams per TCP connection is not artificially limited! Multiplexing works! And HTTP3 fixes head-of-line blocking!
July 14, 2023 at 4:36 PM
I gotta reverse-tunnel my gRPC Unix sockets over HTTP2/WebSockets streams.
June 30, 2024 at 2:47 AM
It is wild to me that there's still applications that does not support providing http2
December 11, 2025 at 4:08 PM
Today we celebrate functional HTTP/2 support in #curl turning twelve years old: https://daniel.haxx.se/blog/2014/03/09/http2-in-curl/
http2 in curl
While the first traces of http2 support in curl was added already back in September 2013 it hasn’t been until recently it actually was made useful. There’s been a lot of http2 related activities in the curl team recently and in the late January 2014 we could run our first command line inter-op tests against public http2 (draft-09) servers on the Internet. There’s a lot to be said about http2 for those not into its nitty gritty details, but I’ll focus on the curl side of this universe in this blog post. I’ll do separate posts and presentations on http2 “internals” later. ## A quick http2 overview http2 (without the minor version, as per what the IETF work group has decided on) is a binary protocol that allows many logical streams multiplexed over the same physical TCP connection, it features compressed headers in both directions and it has stream priorities and more. It is being designed to maintain the user concepts and paradigms from HTTP 1.1 so web sites don’t have to change contents and web authors won’t need to relearn a lot. The web **will not break** because of http2, it will just magically work a little better, a little smoother and a little faster. In libcurl we build http2 support with the help of the excellent library called nghttp2, which takes care of all the binary protocol details for us. You’ll also have to build it with a new enough version of the SSL library of your choice, as http2 over TLS will require use of some fairly recent TLS extensions that not many older releases have and several TLS libraries still completely lack! The need for an extension is because with speaking TLS over port 443 which HTTPS implies, the current and former web infrastructure assumes that we will speak HTTP 1.1 over that, while we now want to be able to instead say we want to talk http2. When Google introduced SPDY then pushed for a new extension called NPN to do this, which when taken through the standardization in IETF has been forked, changed and renamed to ALPN with roughly the same characteristics (I don’t know the specific internals so I’ll stick to how they appear from the outside). So, NPN and especially ALPN are fairly recent TLS extensions so you need a modern enough SSL library to get that support. OpenSSL and NSS both support NPN _and_ ALPN with a recent enough version, while GnuTLS only supports ALPN. You can build libcurl to use any of these threes libraries to get it to talk http2 over TLS. ## http2 using libcurl (This still describes what’s in curl’s git repository, the first release to have this level of http2 support is the upcoming 7.36.0 release.) Users of libcurl who want to enable http2 support will only have to set CURLOPT_HTTP_VERSION to CURL_HTTP_VERSION_2_0 and that’s it. It will make libcurl try to use http2 for the HTTP requests you do with that handle. For HTTP URLs, this will make libcurl send a normal HTTP 1.1 request with an offer to the server to upgrade the connection to version 2 instead. If it does, libcurl will continue using http2 **in the clear** on the connection and if it doesn’t, it’ll continue using HTTP 1.1 on it. This mode is what Firefox and Chrome will not support. For HTTPS URLs, libcurl will use NPN and ALPN as explained above and offer to speak http2 and if the server supports it. there will be http2 sweetness from than point onwards. Or it selects HTTP 1.1 and then that’s what will be used. The latter is also what will be picked if the server doesn’t support ALPN and NPN. Alt-Svc and ALTSVC are new things planned to show up in time for http2 draft-11 so we haven’t really thought through how to best support them and provide their features in the libcurl API. Suggestions (and patches!) are of course welcome! ## http2 with curl Hardly surprising, the curl command line tool also has this power. You use the –http2 command line option to switch on the libcurl behavior as described above. ## Translated into old-style To reduce transition pains and problems and to work with the rest of the world to the highest possible degree, libcurl will (decompress and) translate received http2 headers into http 1.1 style headers so that applications and users will get a stream of headers that look very much the way you’re used to and it will produce an initial response line that says HTTP 2.0 blabla. ## Building (lib)curl to support http2 See the README.http2 file in the lib/ directory. ## This is still a draft version of http2! I just want to make this perfectly clear: http2 is not out “for real” yet. We have tried our http2 support somewhat at the draft-09 level and Tatsuhiro has worked on the draft-10 support in nghttp2. I expect there to be at least one more draft, but perhaps even more, before http2 becomes an official RFC. We hope to be able to stay on the frontier of http2 and deliver support for the most recent draft going forward. PS. If you try any of this and experience any sort of problems, please speak to us on the curl-library mailing list and help us smoothen out whatever problem you got!
daniel.haxx.se
March 9, 2026 at 8:05 AM
Had a dream that grpc became the standard for most net communication then woke up remembering that some things don’t even support http2 properly yet
April 2, 2026 at 7:35 AM
guess who forgot to enable http2 and http3 on her self hosted web services
March 21, 2025 at 11:40 AM
Vite 7.2.0-beta.1 is out ✋
Beta docs at main.vitejs.dev

🗃️ `build.license` option
🔌 proxy + HTTP2 support
💜 and more feats and fixes

Help us test the beta and give us feedback!

Full changelog linked below.

github.com/vitejs/vite/...
github.com
October 29, 2025 at 7:40 AM
The rewrite for node:http will land later this week. Several fixes to http2 will land this week as well.
February 18, 2025 at 6:06 PM
This Week in Security: Messing with AI, 7Zip and Notepad++ Vulnerabilities, HTTP2 Bomb, and More
This Week in Security: Messing with AI, 7Zip and Notepad++ Vulnerabilities, HTTP2 Bomb, and More
Hackaday Article
hackaday.com
June 5, 2026 at 2:07 PM
Single handedly pushing forward the HTTP2/3 support for a lot of scraping libraries. Thanks 🙏🙏
April 28, 2025 at 5:52 AM
Well that's kind of rude. :(
April 8, 2025 at 2:18 PM
מה שכן - במסגרת העמדת הפנים שאני פעיל וכו' - הפוסטים הטכניים שלי מתפרסמים כסדרם. היום זה פוסט מתוק במיוחד על לחיצת יד קריפטוגרפית ב TLS1.3 בפרוטוקול HTTP2. פתחתי wireshark, בחנתי את התנועה ונורא נהניתי לכתוב אותו. באמת ממתק אבל טכני מאד.
internet-israel.com?p=11672
תהליך החיבור ב-HTTP2\TLS 1.3 | אינטרנט ישראל
הסבר פשוט ומוחשי, עם wireshark על פרוטוקול https ותהליך לחיצת היד.
internet-israel.com
July 13, 2025 at 4:20 PM
Nos queda vender órganos
December 13, 2023 at 12:13 AM
We only need to focus on four modules:
1. http
2. net
3. http2
4. tls

Once the number is high enough for those, we will reach 90%.
February 18, 2025 at 6:06 PM
same systems. I believe the most significant fix was configuring a much larger initial http2 window between the various internal services
August 13, 2026 at 9:42 PM
I’m currently fighting a flaky test on Node.js fetch http2 support. The test fails every time on CI, but once every hour of continuous test on my Linux machine. So, I’m just ssh from my phone to debug.
November 9, 2024 at 8:13 AM
In srvx.h3.dev 0.7:

- 🚀 Seamless HTTP2 support for Node.js when TLS is enabled (thanks @oskarlebuda.bsky.social ❤️)

- ✅ Initial WPT tests for FastURL

- 🧩 Simplified plugins and middleware

- 📦 Bundled with obuild.unjs.io

- 💰 Core <1kb with middleware and error handling!
srvx - Universal Server API
Based on web platform standards and works seamlessly with Deno, Bun and Node.js.
srvx.h3.dev
May 13, 2025 at 10:56 PM
I reported a bug in Google's GFE (HTTP front-end) last night that's making them do a rollback today:

github.com/golang/go/is...

I wish I were still at Google so I could watch the internal bugs & see the various commits!

But if you saw flakes in your GitHub Actions CI, this might be why.
proxy.golang.org, cmd/go, net/http: http2 PROTOCOL_ERRORS from the proxy · Issue #69544 · golang/go
Go version go1.23.1 Linux (on GitHub Actions CI runs) What did you do? A ton of our GitHub CI jobs started failing today with http2 protocol errors from proxy.golang.org while fetching modules. e.g...
github.com
September 20, 2024 at 7:13 PM
We should really be working to support http3 everywhere now, not still struggling to provide frameworks and servers that cant handle http2 and http2c
December 11, 2025 at 4:12 PM
Never did this before, but publishing a type of video that I normally only publish to my coworkers @fission.codes.
It's about CAR mirror (sending CAR files around) and streaming HTTP2 requests, so I think the BlueSky audience might like it:
youtu.be/OWiVFTEzWqo
rs-car-mirror, streaming, and HTTP2
Announcing the release of a bunch of crates from the rs-car-mirror repository (github.com/rs-car-mirror) and some stuff I learned about HTTP request body str...
youtu.be
March 5, 2024 at 6:20 PM
There’s a much more elegant solution to horizontally scaling the Relay service that we came up with: stateless hypersharing using HTTP2 streams.

But since it didn’t happen earlier this unfortunately hacky solution does seem necessary.

Will be a bit of network tech debt but can be cleaned up later.
November 19, 2024 at 1:24 PM
is there some kind of upstream connection limit from bunny? seems like that would be odd. http2-related somehow? (theres sometimes a multiplexing limit, but real reach idk)
September 17, 2026 at 12:53 AM