Skip to content
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

Is -messaging part of the core definition of HTTP? #690

Closed
martinthomson opened this issue Jan 28, 2021 · 4 comments · Fixed by #790
Closed

Is -messaging part of the core definition of HTTP? #690

martinthomson opened this issue Jan 28, 2021 · 4 comments · Fixed by #790

Comments

@martinthomson
Copy link
Contributor

Sorry for this being a question.

I answered the same question for -caching by searching through and realizing that while caching might be a version-independent extension, a practical consequence of the structure of documents is that it is inextricably linked to -semantics. That's cool. Having the definition of HTTP/N rely on -caching is eminently sensible.

There is a normative reference to -messaging though. Why would HTTP/3 care about that? If this were software, I'd be horrified by pulling in a dependency like that.

Most of the references to -messaging are strictly examples. I could only see two cases where there was a potentially normative dependency: TRACE recommends "message/http" and content codings prohibit overlap with transfer codings. These seem like they could be broken (the second easier than the first, certainly) and the reference made normative.

@reschke
Copy link
Contributor

reschke commented Jan 28, 2021

I agree that this would be good.

@reschke
Copy link
Contributor

reschke commented Jan 29, 2021

  1. A SHOULD-level requirement to use message/http. Moving the media type definition over is not going to help, because it essentially defines the HTTP/1.1 wire format as media type. It seems the only way to fix this would be to relax the SHOULD.
  2. That one could probably be replaced with a reference to the transfer coding registry (which is what counts here), and the pointer to the spec text would then become informative.

@mnot mnot added the semantics label Feb 3, 2021
@mnot
Copy link
Member

mnot commented Feb 10, 2021

History in #335 and linked issues.

@martinthomson
Copy link
Contributor Author

Concrete recommendation for 1: a server (intermediary) responding to TRACE MUST generate a representation of the request that it received in any format. The message/http is one possible way to represent a request message, so that can be an informative reference instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
3 participants