Skip to content

proposal: net/http/httputil/v2: split into focused subpackages #20758

Open
@bcmills

Description

@bcmills

This proposal builds on #7907 (remove deprecated stuff) and #19660 (refactor ioutil to provide a coherent abstraction).

httputil currently contains:

  • Dump{Request,RequestOut,Response}: "It should only be used by servers to debug client requests." These would be clearer in a net/http/debug subpackage.
  • NewChunked{Reader,Writer}: "not needed by normal applications. The http package automatically decodes chunking when reading response bodies." Not obvious why it's exported, but it could easily go in a net/http/chunked subpackage.
  • ReverseProxy: Could easily go in a separate net/http/proxy subpackage.
  • BufferPool: has ~nothing to do with HTTP, and if it is still useful implies a garbage-collector issue that we should address instead.
  • ClientConn: "We should have deleted it before Go 1."
  • ServerConn: "We should have deleted it before Go 1."

(@bradfitz)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Proposalv2An incompatible library change

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions