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

FR: version string convention to signify patched Bazel binary #10040

Open
ghost opened this issue Oct 15, 2019 · 1 comment
Open

FR: version string convention to signify patched Bazel binary #10040

ghost opened this issue Oct 15, 2019 · 1 comment
Labels
area-EngProd Bazel CI, infrastructure, bootstrapping, release, and distribution tooling help wanted Someone outside the Bazel team could own this P3 We're not considering working on this, but happy to review a PR. (No assignee) team-Documentation Documentation improvements that cannot be directly linked to other team labels team-OSS Issues for the Bazel OSS team: installation, release processBazel packaging, website type: documentation (cleanup)

Comments

@ghost
Copy link

ghost commented Oct 15, 2019

Description of the problem / feature request:

I am requesting a documented convention which allows vendors to tag their builds of Bazel. Rule authors should then accommodate those conventions when conditioning code on Bazel's native.bazel_version.

Feature requests: what underlying problem are you trying to solve with this feature?

We backport patches from master, apply pending PRs, etc. to our internal builds of Bazel. To indicate to our users that they're not using vanilla Bazel, we append a +vmware to the version string:

$ bazel version
Starting local Bazel server and connecting to it...
Build label: 0.28.1+vmware
...

We now have users trying to use rules_nodejs, but their builds are failing because rules_nodejs has logic to parse Bazel's version, and it's choking on our +vmware suffix. Our options are now to either stop vendor-stamping our builds, or to (locally) patch rules_nodejs to ignore +.... I would prefer to adhere to a shared convention such that, after adjusting our stamping process to match said convention, we could instead submit a PR to rules_nodejs so that it supports the same scheme as well.

Have you found anything relevant by searching the web?

No.

I hadn't even heard of native.bazel_version until encountering its use in rules_nodejs. AFAICT it's undocumented on docs.bazel.build.

@jin jin added area-EngProd Bazel CI, infrastructure, bootstrapping, release, and distribution tooling untriaged labels Oct 15, 2019
@philwo philwo added the team-OSS Issues for the Bazel OSS team: installation, release processBazel packaging, website label Jun 15, 2020
@philwo
Copy link
Member

philwo commented Feb 8, 2021

I think this is fine and supported by semantic versioning:

  1. Build metadata MAY be denoted by appending a plus sign and a series of dot separated identifiers immediately following the patch or pre-release version. Identifiers MUST comprise only ASCII alphanumerics and hyphens [0-9A-Za-z-]. (https://semver.org/#spec-item-10)

@philwo philwo added P2 We'll consider working on this in future. (Assignee optional) type: documentation (cleanup) and removed untriaged labels Feb 8, 2021
@keertk keertk added the team-Documentation Documentation improvements that cannot be directly linked to other team labels label Jan 11, 2023
@keertk keertk added P3 We're not considering working on this, but happy to review a PR. (No assignee) help wanted Someone outside the Bazel team could own this and removed P2 We'll consider working on this in future. (Assignee optional) labels Jan 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-EngProd Bazel CI, infrastructure, bootstrapping, release, and distribution tooling help wanted Someone outside the Bazel team could own this P3 We're not considering working on this, but happy to review a PR. (No assignee) team-Documentation Documentation improvements that cannot be directly linked to other team labels team-OSS Issues for the Bazel OSS team: installation, release processBazel packaging, website type: documentation (cleanup)
Projects
None yet
Development

No branches or pull requests

3 participants