bazelbuild / rules_go

Go rules for Bazel
Apache License 2.0
1.37k stars 651 forks source link

polyfill_bazel_features does not work with rolling Bazel releases #3973

Closed cramertj closed 3 months ago

cramertj commented 3 months ago

Attempting to build rules_go with a rolling Bazel release fails due to polyfill_bazel_features asserting that the bazel version should only have three numerical parts:

https://github.com/bazelbuild/rules_go/blob/93f29a542553f50787233cac7d9006ce300d4079/go/private/polyfill_bazel_features.bzl#L22-L23

When building with Bazel 8.0.0-pre.20240607.2 (the current rolling release), I see this error:

Repository rule polyfill_bazel_features defined at:
  /private/var/tmp/_bazel_cramertj/a00d34452f6eadc13e5ae1f0a9c942af/external/io_bazel_rules_go/go/private/polyfill_bazel_features.bzl:31:42: in <toplevel>
ERROR: An error occurred during the fetch of repository 'bazel_features':
   Traceback (most recent call last):
File "/private/var/tmp/_bazel_cramertj/a00d34452f6eadc13e5ae1f0a9c942af/external/io_bazel_rules_go/go/private/polyfill_bazel_features.bzl", line 19, column 13, in _polyfill_bazel_features_impl
fail("invalid Bazel version '{}': got {} dot-separated segments, want 3".format(bazel_version, len(version_parts)))
Error in fail: invalid Bazel version '8.0.0-pre.20240607.2': got 5 dot-separated segments, want 3
WARNING: Target pattern parsing failed.
cramertj commented 3 months ago

This is actually fixed at head, which additionally splits on -.