Google’s Bazel build tool, an open source system supporting a variety of languages and platforms, including the Angular web framework and TensorFlow machine learning library, has reached version 1.0 status.
Bazel is positioned to offer faster build speeds, with builds that also are correct and scalable. The tool leverages a uniform extension language, Starlark, formerly known as Skylark, for defining builds.
Key features in Bazel 1.0 include:
- Capabilities for Android, Angular, C++, and Java, including end-to-end support for remote execution and caching as well as support for standard package managers and third-party dependencies.
- Semantic versioning, in which all Bazel 1.x releases will be backward compatible with Bazel 1.0. There will be a window of at least three months between breaking releases, with minor releases published monthly.
- Long-term support, with the Bazel team offering critical bug fixes.
Bazel allows developers to build and test for multiple platforms and a wide range of languages. MacOS, Linux, and Windows are all supported. Key to Bazel is that it only rebuilds what is necessary. Fast, incremental builds are enabled by advanced local and distributed caching, optimized dependency analysis, and parallel execution. Codebases of any size can be accommodated, in multiple repos or a single, large repo.
How to get started with Bazel
Instructions on ramping up with Bazel can be found on the project website.