Skip to content

x/net/http2: move frame operations to x/net/http2/http2frame #67819

Open
@neild

Description

@neild

This issue is part of a project to move x/net/http2 into std: #67810

The golang.org/x/net/http2 package includes support for reading and writing HTTP/2 frames. The http2.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 new golang.org/x/net/http2/http2frame package and eventually deprecating the versions in http2.

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    Accepted

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions