-
Notifications
You must be signed in to change notification settings - Fork 18k
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
x/net/http2: move frame operations to x/net/http2/http2frame #67819
Comments
This proposal has been added to the active column of the proposals project |
How would this enter std? Would it come in as net/http/http2frame? |
This would not enter std. We'd move Framer out of x/net/http2 so we can (eventually) deprecate that package while leaving Framer un-deprecated, but I don't see a compelling reason to move Framer into std. |
So an internal implementation of these types would come in, but there'd be no public API. Sounds good. |
Have all remaining concerns about this proposal been addressed? The proposal is in #67819 (comment). |
Based on the discussion above, this proposal seems like a likely accept. The proposal is in #67819 (comment). |
No change in consensus, so accepted. 🎉 The proposal is in #67819 (comment). |
This issue is part of a project to move
x/net/http2
intostd
: #67810The
golang.org/x/net/http2
package includes support for reading and writing HTTP/2 frames. Thehttp2.Framer
type reads and writes frames, and a number of additional types represent specific frames.Frame support adds a large amount of API surface that few users need. Users who send and receive HTTP/2 requests operate at a higher level than framing, which is an internal protocol detail.
I propose moving
Framer
and all of its ancillary types into a newgolang.org/x/net/http2/http2frame
package and eventually deprecating the versions inhttp2
.Specifically, the following types will move into the new package:
ContinuationFrame
DataFrame
Frame
FrameHeader
FrameType
FrameWriteRequest
Framer
GoAwayFrame
HeadersFrame
HeadersFrameParam
MetaHeadersFrame
PingFrame
PriorityFrame
PriorityParam
PushPromiseFrame
PushPromiseParam
RSTStreamFrame
SettingsFrame
UnknownFrame
WindowUpdateFrame
The text was updated successfully, but these errors were encountered: