docs/versions/7.5.0/release/index.mdx
As announced in the original blog post, Bazel 4.0 and higher versions provides support for two release tracks: rolling releases and long term support (LTS) releases. This page covers the latest information about Bazel's release model.
Bazel uses a major.minor.patch Semantic Versioning{: .external} scheme.
Additionally, pre-release versions are indicated by appending a hyphen and a date suffix to the next major version number.
For example, a new release of each type would result in these version numbers:
For each major Bazel version, there are four support stages:
Bazel regularly publish releases for two release tracks.
For planned releases, please check our release issues{: .external} on GitHub.
| LTS release | Support stage | Latest version | End of support |
|---|---|---|---|
| Bazel 7 | Rolling | Check GitHub release page{: .external} | N/A |
| Bazel 6 | Active | 6.4.0{: .external} | Dec 2025 |
| Bazel 5 | Maintenance | 5.4.1{: .external} | Jan 2025 |
| Bazel 4 | Maintenance | 4.2.4{: .external} | Jan 2024 |
All Bazel releases can be found on the release page{: .external} on GitHub.
Note: Bazel version older than Bazel 4 are no longer supported, Bazel users are recommended to upgrade to the latest LTS release or use rolling releases if you want to keep up with the latest changes at HEAD.
For rolling releases, the process is straightforward: about every two weeks, a new release is created, aligning with the same baseline as the Google internal Blaze release. Due to the rapid release schedule, we don't backport any changes to rolling releases.
For LTS releases, the procedure and policies below are followed:
release-<version> from the baseline
commit.@bazel-io flag" on relevant GitHub issues or PRs to mark them as potential
release blockers, the Bazel team triages them and decide whether to
back-port the commits.If a user finds a regression in a new Bazel release, release candidate or even Bazel at HEAD, please file a bug on GitHub{: .external}. You can use Bazelisk to bisect the culprit commit and include this information in the bug report.
For example, if your build succeeds with Bazel 6.1.0 but fails with the second release candidate of 6.2.0, you can do bisect via
bazelisk --bisect=6.1.0..release-6.2.0rc2 build //foo:bar
You can set BAZELISK_SHUTDOWN or BAZELISK_CLEAN environment variable to run
corresponding bazel commands to reset the build state if it's needed to
reproduce the issue. For more details, check out documentation about Bazelisk
[bisect feature] (https://github.com/bazelbuild/bazelisk#--bisect){: .external}.
Remember to upgrade Bazelisk to the latest version to use the bisect feature.
If you are a rule authors and want to maintain compatibility with different Bazel versions, please check out the Rule Compatibility page.