Bazel Blog

Announcing the Bazel 4.0 release

We are happy to announce Bazel’s first Long Term Support (LTS) release, Bazel 4.0. To serve as a solid foundation for long-term support, Bazel 4.0 includes a number of updates intended to make it easier to use and extend the release's usefulness throughout the LTS track’s lifetime. These updates can be grouped into the following themes:

  • Usability: Making Bazel easier to understand or harder to misconfigure by accident.
  • Consistency: Removing inconsistent or easily misused behaviors in Starlark and the Starlark build API.
  • Openness: Allowing definitions and rules to evolve independently of Bazel releases by moving them into separate Github repositories.
  • Extensibility: Migrating built-in native rules to Starlark to support extensibility of rulesets.
  • Stability: Updates to native language support for C++ and proto, removing obsolete, incorrect, or otherwise problematic behaviors.

Bazel 4.0 also supports these new features:

Remember that you can stay on your current release if you are not ready to move to Bazel 4.0.

We are excited about Bazel 4.0's new features improving Bazel's usability, consistency, and openness for the Bazel community. For a detailed list of incompatible flags flipping in Bazel 4.0, click here. Watch the Bazel blog for the Bazel 4.0 release notes for more detailed technical information.