Gmail is wrong? And no surprise there.<p>Don’t get me wrong: having written enough email-stuff myself, I can fully sympathize with Linus.<p>That said: Just like the worldwide web is quickly turning into whatever Google pushes through Chrome and their web assets, internet email now slowly seems to become whatever Gmail does or supports. Which is terrible.<p>90% of the programming guides for various languages and libraries now are <i>not</i> “This is how you send an internet email using SMTP from $X”, they are “This is how you send a <i>Gmail</i> from $X”.<p>And all that’s because of one single thing only: Market-share.<p>Get off Gmail. Get off Chrome. And help others do that too. Help bring down that market-share, and you may help restore balance to the internet.
As an aside, this is a superbly professional e-mail, with clear references to the applicable standards, and the disapproval of the broken service stated firmly, but using clean language.
Does anybody really think that Linus' (hopefully) past practice of starting with a foul mouthed rant, and only drilling down into the technical detail three pages in was a more effective way of communicating?
Here’s a copy of the thread with a light color scheme: <a href="https://marc.info/?l=git&m=155260711429449&w=2" rel="nofollow">https://marc.info/?l=git&m=155260711429449&w=2</a>
It's tempting to pile on Gmail and its monopoly and use this as an example of them "taking over" email but at the same time this type of ossification for long-used protocols is fairly common in my experience. In practice everybody ends up relying on a safe subset of the spec that everybody is expected to understand correctly.<p>Try implementing a fuzzer for HTTP, SMTP, NTP, USB-C, CD-ROM or, say, TLS that tests every obscure corner case of the spec and see how many implementations fail to conform.<p>Given that I wasn't aware of this issue before reading this email shows that it's probably not much of an issue in practice. I can imagine that whoever implemented this at Google took a shortcut originally, adding a "// XXX maybe we should allow arbitrary order for headers?" comment and it never turned out to be an issue in practice (better yet, it might help them discard bogus emails early in the pipeline).<p>Still, I can empathize with Linus's frustration, it's always annoying when you write technically correct code and it doesn't work because a third party didn't do it right.
I'm more disappointed about the RFC than gmail... Publishing a specific syntax which uses specific ordering and just leaving a note that it's actually incorrect is a really bad way of writing specifications. RFCs should be really clear and explicit in things like that.
> I have a very strong suspicion that it's easier to fix "git format-patch" than it is to fix whatever odd gmail issue.<p>Third option: Update the RFC so that it's more opinionated and makes the ordering of the headers a mandatory part of the spec.