commit | 5670fb29734483f8d2008cb01dddc5f3dd129cf9 | [log] [tgz] |
---|---|---|
author | ulfjack <ulfjack@google.com> | Thu Nov 30 07:15:05 2017 -0800 |
committer | Copybara-Service <copybara-piper@google.com> | Thu Nov 30 07:17:39 2017 -0800 |
tree | 0430e14fe9bdf942e1ed346f63c4c1cf89012e87 | |
parent | 16a5bd9fde00a418e16f30e18270aeb198d36218 [diff] |
Simplify tagged event handling. Don't make copies of Events on replay. The same events may be replayed a lot, so it's better to copy before storing the events. Also avoid a copy if the tag doesn't actually change. The intent of this change is to reduce gc churn on incremental builds. When I wrote this change (~a year ago), this was a noticable source of gc churn in some benchmarks I ran at the time. PiperOrigin-RevId: 177450696
{Fast, Correct} - Choose two
Build and test software of any size, quickly and reliably.
Speed up your builds and tests: Bazel only rebuilds 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
Bazel is released in ‘Beta’. See the product roadmap to learn about the path toward a stable 1.0 release.