-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Should Semantics assume that field values have been coalesced or just unfolded? #116
Comments
See also #111 |
I agree |
IIRC, we encountered a bug during H2 development where folded headers were packaged up in HPACK, CRLF and all. However, I'm comfortable declaring that construction a bug unless we have evidence that it's in deployed HTTP/2 stacks. |
I think the cref'd text is good for inclusion. I'd also remove obs-fold from the ABNF in semantics; i.e., it should be processed in h1 specifically, so that at the semantic "layer", it doesn't appear. Regarding coalesced values - ISTM that that we can; H1-messaging (and other versions, if they allow such serialisations) can say that you forward header fields without knowing anything about them, but when we deal with them at the semantic level, you only deal with the coalesced value. Doing that would probably also simplify #111. |
Waiting for #111. |
#111 is done; unwaiting. |
#111 took care of distinguishing between a field value and a field line value. As we found, there are still a few places where this distinction need to be made in semantics (e.g., regarding cookies). Will do a PR to make adjustments to semantics. |
It is hard to talk about header fields without also noting they might appear across multiple lines via repeated names or obs-fold lines. My goal has been to describe the coalescing of fields in Messaging and only deal with complete values in Semantics. However, I think only obs-fold is specific to HTTP/1.x.
For now, we have the following text (currently in crefs) in the "Field Values" section of Semantics:
The text was updated successfully, but these errors were encountered: