HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
httpwg
http2-spec
Makefile2013–2020
httpwg / http2-spec

http2-spec

Working copy of the HTTP/2 Specification

22Distinct people
24Mentions
0Explicit recommenders
3.7KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Working copy of the HTTP/2 Specification

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year24 dated mentions

Observed mentions: 2013-02-08 09:25:15 UTC to 2020-03-08 03:45:09 UTC.

02468102013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 5 mentions; 1 submissions, 4 comments20132014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 8 mentions; 2 submissions, 6 comments2015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 9 mentions; 0 submissions, 9 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20162017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2020

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC514
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC826
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC909
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC101
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC000
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC000
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC000
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC101

From the project README

An excerpt from the repository, fetched Nov 13, 2026.

Read the project’s introduction
HTTP/2 Revision Draft This is the working area for a revision of the HTTP/2 specification, originally RFC 7540. HTTP/2 revision: Editor's copy (text) This repository does include an updated copy of HPACK (RFC 7541) but there is no intention of updating that document.
Read the full README on GitHub

What Hacker News says

24 sources
This is based on a number of obsolete premises. Contemporary HTTP techniques include[1] framed binary wire protocol, redundant header elimination, compressed header values and efficient cryptography. HTTP/2 + TLS 1.3+ are extremely efficient together and are difficult to improve upon. When compatibility, implementation quality and ubiquity[2] are considered they are effectively impossible to improve upon. Except... If, in the unlikely case that your particular bit of brilliance is indeed hampered by the vestigial amount of overhead still present in contemporary HTTP, then you might do as Google and several other operations have done and dispense with traditional techniques (including TCP) altogether via QUIC. Just because what you see in the Network tab of your browser's 'Developer tools' window looks like something from 2005 doesn't
Read the rest
mean that's what is actually on the wire. It mostly isn't any longer as a share of global traffic. But again, all of that is irrelevant; the post provided no evidence that replacing HTTP with some dubiously unnamed form of RPC would solve any actual problems. HTTP was tossed in the rant basket with a bunch of other things, few of which appeared relevant to the actual failure modes cited. [1] https://www.oreilly.com/library/view/high-performance-browse... [2] https://github.com/http2/http2-spec/wiki/Implementations
In We have to talk about this Python, Gunicorn, Gevent thing
Leaving the specific letters aside, I wonder about this comment in https://github.com/http2/http2-spec/issues/101: "And the experimental data we have (what there is of it) suggests that we need to make this look like an unknown HTTP/1.1 method (or two)." Anyone know what experimental data this refers to, and why this helps? This gets encapsulated inside TLS; nothing should know about it except the endpoints, both of which need to understand HTTP/2.
In The secret message hidden in every HTTP/2 connection
The HTTP/2 spec is done on https://github.com/http2/http2-spec, this particular change seem to be quietly introduced here: commit ac468f3fab9f7092a430eedfd69ee1fb2e23c944 Author: Martin Thomson <martin.thomson@gmail.com> Date: Fri Jun 14 13:14:02 2013 -0700 Exercising editorial discretion regarding magic. diff --git a/draft-ietf-httpbis-http2.xml b/draft-ietf-httpbis-http2.xml index 58bbc27..f1e570d 100644 --- a/draft-ietf-httpbis-http2.xml +++ b/draft-ietf-httpbis-http2.xml @@ -385,9 +385,9 @@ Upgrade: HTTP/2.0 The client connection header is a sequence of 24 octets (in hex notation) </t> <figure><artwork type="inline"> -535441202a20485454502f322e300d0a0d0a52540d0a0d0a</artwork></figure> +505249202a20485454502f322e300d0a0d0a534d0d0a0d0a</artwork
Read the rest
></figure> <t> - (the string <spanx style="verb">STA * HTTP/2.0\r\n\r\nRT\r\n\r\n</spanx>) followed by a + (the string <spanx style="verb">PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n</spanx>) followed by a <xref target="SETTINGS">SETTINGS frame</xref>. The client sends the client connection header immediately upon receipt of a 101 Switching Protocols response (indicating a successful upgrade), or after receiving a TLS Finished message from the server. If starting an
In The secret message hidden in every HTTP/2 connection
Chrome, Firefox, and Opera all support it, as do Google, Twitter, Akamai, Jetty, Apache, and several others: https://github.com/http2/http2-spec/wiki/Implementations https://en.wikipedia.org/wiki/HTTP/2 That's a big chunk of the Internet right there. IE 11 and Safari 9 both support it, so once their respective betas go public that's the rest of the client-side support. Nginx is supposed to support it by the end of the year; once that happens most sites will get it just by tweaking a config file: https://www.nginx.com/blog/how-nginx-plans-to-support-http2/
In Some analysis of the 1M most popular sites on the web
> I don't mind the binary protocol that much, but the apparent assumption that every endpoint is a fat stateful cache (push, multiplexing) is madness. A client can say it does not want push in the settings frame up front. And then it can make one request at a time, effectively avoiding multiplexing, although each frame in the response will have a 9-byte frame header (similar to the overhead in chunking today in 1.x). By saying it does not want push, it relieves itself of having an object cache. It will still be on the hook for having an HPACK table as state. (In practice this will be coded once in each language in a library and most developers will never think about it.) > Have they actually worked out how to implement a HTTP/2 front end cache in the face of ill-behaved clients, crashy servers, and the way wireless breaks a lot of the as
Read the rest
sumptions that would make "one big TCP session" a good idea in the first place? The community has indeed been working on a corpus of interoperability libraries, servers, clients, and proxies: https://github.com/http2/http2-spec/wiki/Implementations > If TCP+TLS handshakes are so expensive, wouldn't it be a better investment of everyone's resources to work on an L3 protocol for setting up a fast second session? Leave the multiplexing to packet people. It's multiplexing with declared weighting and dependency trees. So for example, the client can tell the server that it wants files A, B, C, and D, but to have B, C, D is useless until it has A, and once A is finished, the relative importance of B is twice as much as C or D. That's much easier to do on one socket. Also one socket gets the header compression in HPACK to benefit from all the headers going through the same state engine. Giant sets of cookies (more common than we'd like to believe) are now more efficiently expressed. One socket also helps the server-side keep statistics and logs more organized as related requests are together. I understand your suggestion to do it on a lower level, and that's a fine idea, but I also understand why the working group did it on an HTTP layer, especially with SPDY as precedent. I work at Akamai, and I'm one of the open source library contributors (the Common Lisp one). These opinions are my own.
In HTTP/2 Frequently Asked Questions
Yes, HTTP/2 is finally taking the opportunistic encryption seriously (think STARTTLS in SMTP), whereas the pre-Snowden http://tools.ietf.org/html/rfc2817 "Upgrading to TLS Within HTTP/1.1" never took off one bit. In fact, there are now not one, but like at least four different post-Snowden drafts to the effect of seamless behind-the-scenes encryption on top of the HTTP:// address scheme, which is the exact solution I'm personally advocating for, since it's pretty much backwards compatible with 100% of the existing infrastructure, and effectively has negligible cost, and no tie-ins, unlike the full blown HTTPS://. https://github.com/http2/http2-spec/issues/315 https://www.mnot.net/blog/2014/03/17/trying_out_tls_for_http... http://tools.ietf.org/html/draft-nottingham-http2-encryption... http://tools.ietf.org/html/draft-hoffman-httpbis-minim
Read the rest
In RFC 7258 – Pervasive Monitoring Is an Attack

Showing the 15 most recent of 24 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.