The company says it uses Bazel to build most of its software, and that it’s suitable for projects that involve large shared code repositories and extensive automated testing and release processes.
Bazel promises potentially faster build times, as it can recompile select files instead of entire projects and can avoid re-running tests of code that it knows hasn’t changed.
However, the company acknowledges that it may not be useful if you’re running build operations whose outputs should not be cached, or if you’re using interpreted languages directly.
Bazel is available for Linux and OS X and can be used to build and test projects in C++, Java, Python and more.
It also includes support for building Android and iOS apps, as well as Docker images, and lets you use libraries from sources like GitHub and Maven. If you prefer, you can dig into Bazel’s API to add your own build rules.
Google says it hopes to add a Windows version, distributed caching, and Go support in its final release.
➤ Bazel [via Google Open Source Blog]