commit | 3ebfe2450b66467b7c91b5da0f289b50686cb9bc | [log] [tgz] |
---|---|---|
author | Googler <adgar@google.com> | Wed Apr 24 08:54:12 2024 -0700 |
committer | Copybara-Service <copybara-worker@google.com> | Wed Apr 24 08:55:52 2024 -0700 |
tree | 5253a6842f593a92298e2ae7b7030c040478e201 | |
parent | a213687b4e8db8221c70d26f429471f2ce7392c8 [diff] |
`AbstractConfiguredTarget#getIndex` no longer crashes the build tool when given an unexported provider. The crash can be produced with just a few lines of Starlark and BUILD file content. `demo/bad.bzl`: ``` bad_rule = rule( implementation = lambda ctx: ctx.attr.input[provider()], attrs = {"input": attr.label(allow_single_file = True)}, ) ``` `demo/BUILD`: ``` load(":bad.bzl", "bad_rule") bad_rule( name = "bad_target", input = "example.in", ) ``` Running `bazel build demo:bad_target` will crash the build tool absent a change like this one. PiperOrigin-RevId: 627744499 Change-Id: I28f4c8ba1a51f950d72a24f223447865a5a8c973
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel rebuilds only what is necessary. With advanced local and distributed caching, optimized dependency analysis and parallel execution, you get fast and incremental builds.
One tool, multiple languages: Build and test Java, C++, Android, iOS, Go, and a wide variety of other language platforms. Bazel runs on Windows, macOS, and Linux.
Scalable: Bazel helps you scale your organization, codebase, and continuous integration solution. It handles codebases of any size, in multiple repositories or a huge monorepo.
Extensible to your needs: Easily add support for new languages and platforms with Bazel's familiar extension language. Share and re-use language rules written by the growing Bazel community.
Follow our tutorials:
To report a security issue, please email security@bazel.build with a description of the issue, the steps you took to create the issue, affected versions, and, if known, mitigations for the issue. Our vulnerability management team will respond within 3 working days of your email. If the issue is confirmed as a vulnerability, we will open a Security Advisory. This project follows a 90 day disclosure timeline.
See CONTRIBUTING.md