Curl says bye bye to pipelining
daniel.haxx.se
daniel.haxx.se
HTTP/1.1 Pipelining was badly supported by curl for a long time in the sense that we had a series of known bugs and it was a fragile feature without enough tests.In short, the Curl developers couldn't remove pipes without crippling the app.
Which is to say that your comments are not self-evident to everyone, by any means.
Example: less(1) was eventually fitted with the -R flag to allow highlighting to be passed by pipe, to make it friendly to piping from highlight-producing apps rather than its default highlight-unfriendly stripping of input controls/escapes.
Benign intentions with regard to files sometimes require a little more thought to be simultaneously friendly to pipes, except for the simplest of plain text apps.
(I'm not trying to make a big point, but I just rediscovered 'less -R' out of necessity today. So, I was pondering some of these issues)
Worth a re-read for everyone (and I worry that these things may be in the process of being forgotten):
[1] https://en.wikipedia.org/wiki/Unix_philosophy
[2] https://en.wikipedia.org/wiki/Unix_philosophy#Eric_Raymond's... and the book:
[3] https://en.wikipedia.org/wiki/The_Art_of_Unix_Programming
[4] Raymond didn't invent any of this, but he explained it very nicely, IMHO.
Edit: P.S. the above is somewhat meandering, and is sure to be criticized because simple equivalence of piped and file input is the most important thing, which I agree with -- but I was mixing that with a secondary point because of what I was doing today. Sorry. "I did not have time to make this letter shorter" etc.
It's for the best that it becomes widely treated as a non-feature of HTTP/1.1.
HTTP3 actually does propose changing the transport protocol, but to QUIC, which is a transport over UDP.
It didn’t get the right traction. It isn’t built into windows, it was even a second class citizen on Linux not that long ago requiring lksctp to be installed (maybe it still does).
Yes, but it's largely unusable because it's not supported by most home network routers, and isn't supported at all on Windows or macOS.
> And why wasn't HTTP1.1+ built on top of that?
Because it didn't exist yet. HTTP 1.1 was standardized in 1997, and SCTP development didn't start until around 2000.