Skip to content

proposal: cmd/go: add flag to allow internal paths #46792

@stevemk14ebr

Description

@stevemk14ebr

Hello!

Now before i say anything, i know this is going to be controversial, but please don't close this immediately and hear me out, please :)

The goruntime code (here) is essentially the living documentation of internal compiler information. This is things like types, metadata table layouts, table parsers, etc. To me, as a reverse engineer, this is insanely useful information. And better yet, this is information and code I can just use out of the box to parse these complex file format structures. However, there's a really big problem with this, alot of the parsers and structures I care about are behind internal paths. For me to build tooling that uses this information I have to, by hand, re-path and re-factor hundreds of files transitively. I understand these structures change often, but when this occurs I could just update this runtime code and perform the required interface changes manually, rather than having to ALSO do that + re-path everything to not be behind a /internal path.

My ask is simple. Please allow a compiler flag that allows imports from internal or other restricted paths. I understand why this rule exists, and why this is probably not wanted, but like all rules there are exceptional cases where the bad option is much nicer than the good option, and this is one of them. Please give me an escape hatch.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions