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

x/build: document that it's a special internal repo, doesn't provide same level of stability as other repos #36505

dmitshur opened this issue Jan 10, 2020 · 4 comments
Builders Documentation NeedsFix


Copy link

@dmitshur dmitshur commented Jan 10, 2020

The x/build repo is described in its README as:

This subrepository holds the source for various packages and tools that support Go's build system and the development of the Go programming language.

As far as I know, the x/build repo is different from all other repos in that it's meant to serve our internal needs and does not offer stability guarantees the way other repos do. For instance, we did not have CI for this repo for a long time and it was okay. When we started testing this repo in CL 157438, it was at a time that was convenient for us and only in module mode without any support for GOPATH mode. There was also discussion of the target audience of x/build in issue #29935.

Do you know if this is documented anywhere @bradfitz? I think I know this intuitively, but I'd like to be able to point people at something that is written down. Also, if it's not documented, then Go users can't know this.

/cc @bradfitz @cagedmantis @toothrot

@dmitshur dmitshur added the NeedsInvestigation label Jan 10, 2020
@dmitshur dmitshur added this to the Backlog milestone Jan 10, 2020
@gopherbot gopherbot added Builders Documentation labels Jan 10, 2020
Copy link

@smasher164 smasher164 commented Jan 11, 2020

@kardianos's comment at #17244 (comment) categorizes x/build in "Tools used by the Go project", but doesn't distinguish its level of stability from x/review, x/tools, x/website, and x/perf.

Copy link

@bradfitz bradfitz commented Jan 15, 2020

I tweaked the GitHub repo description a bit at to now say:

[mirror] Go's continuous build and release infrastructure (no stability promises)

Feel free to drop something like that in more places.

Certain packages inside x/build already say stuff like that: says:

The API is not subject to the Go 1 compatibility promise and may change at any time.


Copy link

@gopherbot gopherbot commented Mar 22, 2022

Change mentions this issue: all: document in README how x/build serves internal Go project needs

@dmitshur dmitshur removed this from the Backlog milestone Mar 22, 2022
@dmitshur dmitshur added this to the Unreleased milestone Mar 22, 2022
@dmitshur dmitshur added NeedsFix and removed NeedsInvestigation labels Mar 22, 2022
@dmitshur dmitshur self-assigned this Mar 22, 2022
Copy link
Contributor Author

@dmitshur dmitshur commented Mar 22, 2022

By now this is also mentioned in (as of CL 365714):

[...] not in scope for the proposal process:

  • [...]
  • Making API or command-line changes in, since that is code to run the Go project, not for users to import and depend on.
  • [...]

Mailed CL 394514 to document it in the x/build README too, and will consider this resolved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Builders Documentation NeedsFix
None yet

No branches or pull requests

4 participants