commit | 400dbc45b180fc2c0ef302a932f3f34bd2c32c31 | [log] [tgz] |
---|---|---|
author | gregce <gregce@google.com> | Fri Mar 13 14:55:35 2020 -0700 |
committer | Copybara-Service <copybara-worker@google.com> | Fri Mar 13 14:56:41 2020 -0700 |
tree | 68395b43e9c2ce1669f601e80f7e8fac8204591d | |
parent | c0b02b0e14d31d4a0d2b216f643078516580a123 [diff] |
Roll forward of https://github.com/bazelbuild/bazel/commit/78fdb7d62d The original change broke some call paths that didn't have an event reporter to provide. It's also a bit fragile in relying on AbstractUnorderedFormatter.setEventHandler to provide the reporter - there are different call sites and if we forget to call that method from one of them we'd get a null pointer exception. This version simply makes the reporting optional: if the reporter is available the output formatter reports to it. Else it skips it. Ideally we'd do a deeper audit of all call sites and guarantee the existence of a reporter in all expected places. That's a lot of refactoring, and in some disparate pieces of code that serve varying purposes. So it's unclear what assumptions are correct in what place. This approach, while weaker, at least avoids the crash and provides a clear reason in *some* use cases. We could presumably expand such qualifying use cases incrementally as needed. In the meantime those use cases will simply return misleading data. :( PiperOrigin-RevId: 300832332
{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