commit | 43a5a035572c1fb52155c8957f80f29617fa81a4 | [log] [tgz] |
---|---|---|
author | ajurkowski <ajurkowski@google.com> | Mon Mar 21 11:17:51 2022 -0700 |
committer | Copybara-Service <copybara-worker@google.com> | Mon Mar 21 11:19:04 2022 -0700 |
tree | 78da2bccaaaf09b6c6be5c39238c97bff44b5b4f | |
parent | d75035f0ef31fc0f92a6972b2e91fae67591158c [diff] |
Do not crash `PrepareDepsOfTargetsUnderDirectoryFunction` while bubbling errors from subpackages. `PrepareDepsOfTargetsUnderDirectoryFunction` declares dependencies on subpackages and checks that they are present in Skyframe. The check will trigger a bug report if we encounter any [missing value/exception](https://github.com/bazelbuild/bazel/blob/987bf12af02d8a401cfd0a3158ca1a4158503396/src/main/java/com/google/devtools/build/skyframe/GraphTraversingHelper.java#L84-L91). Notably, in case of a declared child for which we did not pass an exception it threw, [SkyframeIterableResult::nextOrThrow](https://github.com/bazelbuild/bazel/blob/987bf12af02d8a401cfd0a3158ca1a4158503396/src/main/java/com/google/devtools/build/skyframe/SkyframeIterableResult.java#L86-L89) will return null which is indistinguishable from missing value in the graph. Add missing exception type `PrepareDepsOfTargetsUnderDirectoryFunction` so failures from subpackages don't trip the check for missing children while bubbing up errors. PiperOrigin-RevId: 436257657
{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