Open patrickmscott opened 2 weeks ago
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
View this failed invocation of the CLA check for more information.
For the most up to date status, view the checks section at the bottom of the pull request.
Gazelle already iterates over all supported os/arch combos to include go files. This is similar but expanded to custom tags. When adding a new build tag, we create a copy with the tag set to true and append to the original. This means that build tag evaluation will grow exponentially.
Fixes https://github.com/bazelbuild/bazel-gazelle/issues/1262
What type of PR is this?
Feature
What package or component does this PR mostly affect?
language/go
What does this PR do? Why is it needed?
It changes the behavior of
build_tags
to defer evaluation to build time. Instead of assuming the tag is always true, it treats the tag as both true and false when evaluating tags for a file.Which issues(s) does this PR fix?
Fixes #1262
Other notes for review