No need to apologize: sometimes I can sound very "grumpy" in writing, but I don't actually mean to.
Your perspective on this issue is valid: users are left with the "raw" functionality - it becomes their responsibility to make sure they implement the proper HTTP protocol.
The issues for me boils down to the fact that the User can call "write" more than once, and we won't take care at all of "Content-Length" and "Transfer-Encoding".
For a "simple" user, this will make us look like "broken" when they try to access our server with "picky HTTP clients" (i.e. clients that follow the HTTP standard by-the-book).
What do you guys suggest to do?
I propose Node because it offers an example solution: we don't need to.
Regarding retro-compatibility, we could:
- have this new behaviour disabled by a flag
- add "res.end()" next to "res.close()"
I think this should be enough to ensure we don't brake stuff.