Repository navigation
[WIP] HTTP/1.1 - #92
Conversation
|
Alright, I think I have completed all my initial tickboxes. I want to write some release tests before I merge this, but I'm beginning to think this is nearly done. There are still some outstanding work items for cleaning up:
|
|
These failures are difficulties with rabbitmq's APT repository, which we only hit when we try to build nghttp2. They're intermittent, and annoying. |
|
Sadly, at this point I need to reconcile the different header handling logic between the HTTP/2 layer and the HTTP/1.1 layer. |
|
This turns out to be really painful, because the HTTP/2 layer deals with headers as unicode strings and the HTTP/1.1 layer currently does so with bytestrings. I think I can make this work by adding a unicode interface to the HTTPHeaderMap, but it's really painful. =( |
|
Ok, I think the series of commits I just put up solves that problem. It simultaneously cleans and dirties the API, which is weird. |
|
@sigmavirus24 @shazow Is there any advantage in merging-and-releasing this block of code before I put a compatibility layer in front of it? |
|
No dis-advantage. :) You're infinitely more likely to never release it if you wait, vs if you release. |
|
Without the compatibility layer, people might start testing it and using it so you get feedback sooner. That's the only advantage I can think of. |
|
Ok, screw it, I'm going to merge this. I'll make a release that contains only this change on top of v0.2.2 (which I've just released), so people will always have a previous-stable-version to move to if for some reason this breaks them. Deep breath people, let's merge this 71-commit monster! |
This pull request tracks development of hyper's HTTP/1.1 implementation. Note that much of this is really, really early work, and is likely to change substantially before release. However, this is open-source, so the least I can do is do this development work in public.
Feedback always appreciated!
Here's the bare minimum of outstanding things I need to do before I want to merge this:
Connection: closeand friends.Some other stuff we need, but not necessarily right away: