Allow re-casing when serializing for transmission#926
Draft
cceckman-at-fastly wants to merge 1 commit into
Draft
Allow re-casing when serializing for transmission#926cceckman-at-fastly wants to merge 1 commit into
cceckman-at-fastly wants to merge 1 commit into
Conversation
HPACK (RFC 7541) provides a mechanism for compressing HTTP headers; it is used in HTTP/2 and HTTP/3. One of the ways it accomlishes compression is via a static table of common values, listed in Appendix A. Of note, all of the field names in this table are provided in lower case. The restriction of preserving field name case when serializing for transmission implies that an implementation of wasi-http may not always be able to use the most efficient encoding of the field name (from the static table), even when the semantics are the same. This commit relaxes the requirement to preserve case _when serializing for transmission_. This allows an implementation to use the most efficient encoding available when the result is semantically equivalent, e.g. to use HPACK ignoring case differences.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
HPACK (RFC 7541) provides a mechanism for compressing HTTP headers; it is used in HTTP/2 and HTTP/3. One of the ways it accomlishes compression is via a static table of common values, listed in Appendix A. Of note, all of the field names in this table are provided in lower case.
The restriction of preserving field name case when serializing for transmission implies that an implementation of wasi-http may not always be able to use the most efficient encoding of the field name (from the static table), even when the semantics are the same.
This commit relaxes the requirement to preserve case when serializing for transmission. This allows an implementation to use the most efficient encoding available when the result is semantically equivalent, e.g. to use HPACK ignoring case differences.