commit | 20b056380e2c8c33c2ea7ae3d4dcc306dfca386e | [log] [tgz] |
---|---|---|
author | Philipp Schrader <philipp.schrader@gmail.com> | Mon Nov 02 15:17:21 2020 -0800 |
committer | Copybara-Service <copybara-worker@google.com> | Mon Nov 02 15:18:50 2020 -0800 |
tree | af9a7df329a22c4d5fb02643ff3724cd559e1e98 | |
parent | c266ac966761c4b3d8a408a03e407505c93effdd [diff] |
Fix incompatible target skipping for skylib's analysistest In #12366, Keith Smiley (@keith) reported that he was having trouble using the new `target_compatible_with` attribute in `rules_swift`. Specifically, setting it on an `analysistest` test target was giving him the following error: ERROR: /workdir/test/BUILD:13:29: in coverage_xcode_prefix_map_test rule //test:coverage_settings_xcode_prefix_map: rules with analysis_test=true must return an instance of AnalysisTestResultInfo ERROR: Analysis of target '//test:coverage_settings_xcode_prefix_map' failed; build aborted: Analysis of target '//test:coverage_settings_xcode_prefix_map' failed This was caused by the fact that for incompatible targets we create a dummy `ConfiguredTarget` that only provides the bare minimum to make the rest of bazel happy before it gets skipped. It turns out that `analysistest` rules have additional checks that need to be satisfied. This patch aims to satisfy those additional checks without impacting functionality. Fixes #12366 Closes #12368. PiperOrigin-RevId: 340326650
{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:
See CONTRIBUTING.md