Releases: bazelbuild/bazel
7.6.0rc4
Note
If you are looking for rolling releases, please visit this page.
Release 7.6.0rc4 (2025-03-19)
Bazel 7.6.0 is a minor LTS release. It is fully backward compatible with Bazel 7.0 and contains selected changes by the Bazel community and Google engineers.
General
- LCOV parsing does not break on FN lines including an end line number. (#25549)
External Deps
- The repo_name parameter of bazel_dep can now be set to None to mark it a "nodep" dependency -- that is, the bazel_dep specification is only honored if the target module already exists in the dependency graph by some other means. (#25509)
- Emit BAZEL_CURRENT_REPOSITORY when using @rules_cc//cc/runfiles (#25424)
- Permit literal dicts as extra keyword args in MODULE.bazel (#25614)
- Handle large numeric segments in Bazel module versions (#25632)
Java
- Use runfiles path instead of root relative path in JavaStarlarkCommon.collectNativeLibsDirs (#25548)
Performance
- build metrics: Do not set start/end of mnemonics that were only created but not executed. (#25598)
Remote Execution
- Don't download all artifacts with BwoB when their TTL expires (#25490)
- Avoid downloading the empty Tree message (#25489)
- Actually fix setting the mtime on a shared disk cache. (#25473)
Refer to the full list of commits for more details.
Acknowledgements:
This release contains contributions from many people at Google, as well as Fabian Meumertzheim, James Judd, and timothyklim, Stig Rohde Døssing, and Garrett Holmstrom.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.
7.6.0rc3
Note
If you are looking for rolling releases, please visit this page.
Release 7.6.0rc3 (2025-03-19)
Bazel 7.6.0 is a minor LTS release. It is fully backward compatible with Bazel 7.0 and contains selected changes by the Bazel community and Google engineers.
General
- LCOV parsing does not break on FN lines including an end line number. (#25549)
External Deps
- The repo_name parameter of bazel_dep can now be set to None to mark it a "nodep" dependency -- that is, the bazel_dep specification is only honored if the target module already exists in the dependency graph by some other means. (#25509)
- Emit BAZEL_CURRENT_REPOSITORY when using @rules_cc//cc/runfiles (#25424)
- Permit literal dicts as extra keyword args in MODULE.bazel (#25614)
Java
- Use runfiles path instead of root relative path in JavaStarlarkCommon.collectNativeLibsDirs (#25548)
Performance
- build metrics: Do not set start/end of mnemonics that were only created but not executed. (#25598)
Remote Execution
- Don't download all artifacts with BwoB when their TTL expires (#25490)
- Avoid downloading the empty Tree message (#25489)
- Actually fix setting the mtime on a shared disk cache. (#25473)
Refer to the full list of commits for more details.
Acknowledgements:
This release contains contributions from many people at Google, as well as Fabian Meumertzheim, James Judd, and timothyklim, Stig Rohde Døssing, and Garrett Holmstrom.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.
7.6.0rc2
Note
If you are looking for rolling releases, please visit this page.
Release 7.6.0rc2 (2025-03-18)
Bazel 7.6.0 is a minor LTS release. It is fully backward compatible with Bazel 7.0 and contains selected changes by the Bazel community and Google engineers.
External Deps
- The repo_name parameter of bazel_dep can now be set to None to mark it a "nodep" dependency -- that is, the bazel_dep specification is only honored if the target module already exists in the dependency graph by some other means. (#25509)
- Emit BAZEL_CURRENT_REPOSITORY when using @rules_cc//cc/runfiles (#25424)
- Permit literal dicts as extra keyword args in MODULE.bazel (#25614)
Java
- Use runfiles path instead of root relative path in JavaStarlarkCommon.collectNativeLibsDirs (#25548)
Performance
- build metrics: Do not set start/end of mnemonics that were only created but not executed. (#25598)
Remote Execution
- Don't download all artifacts with BwoB when their TTL expires (#25490)
- Avoid downloading the empty Tree message (#25489)
- Actually fix setting the mtime on a shared disk cache. (#25473)
Refer to the full list of commits for more details.
Acknowledgements:
This release contains contributions from many people at Google, as well as Fabian Meumertzheim, James Judd, and timothyklim, Stig Rohde Døssing, and Garrett Holmstrom.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.
7.6.0rc1
Note
If you are looking for rolling releases, please visit this page.
Release 7.6.0rc1 (2025-03-11)
Bazel 7.6.0 is a minor LTS release. It is fully backward compatible with Bazel 7.0 and contains selected changes by the Bazel community and Google engineers.
External Deps
- The repo_name parameter of bazel_dep can now be set to None to mark it a "nodep" dependency -- that is, the bazel_dep specification is only honored if the target module already exists in the dependency graph by some other means. (#25509)
Remote Execution
- Don't download all artifacts with BwoB when their TTL expires (#25490)
- Avoid downloading the empty Tree message (#25489)
- Actually fix setting the mtime on a shared disk cache. (#25473)
Refer to the full list of commits for more details.
Acknowledgements:
This release contains contributions from many people at Google, as well as Fabian Meumertzheim, James Judd, and timothyklim.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.
8.1.1
Note
If you are looking for rolling releases, please visit this page.
Release 8.1.1 (2025-02-25)
Bazel 8.1.1 is a patch LTS release. It is fully backward compatible with Bazel 8.0 and contains selected changes by the Bazel community and Google engineers.
General
- Fix building binary launchers on windows with clang-cl (#25344)
External Dependencies
- Fall back to
rctx.name
if$original_name
is empty (#25310)
Java
- Restore compatibility with any JDK 23 on Windows (#25348)
Remote Execution
- Rollback of ‘Use digest function matching the checksum in gRPC remote downloader’ (#25331)
Refer to the full list of commits for more details.
Acknowledgements:
This release contains contributions from many people at Google, as well as Fabian Meumertzheim.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.
8.1.1rc1
Note
If you are looking for rolling releases, please visit this page.
Release 8.1.1rc1 (2025-02-21)
Bazel 8.1.1 is a patch LTS release. It is fully backward compatible with Bazel 8.0 and contains selected changes by the Bazel community and Google engineers.
General
- Fix building binary launchers on windows with clang-cl (#25344)
External Dependencies
- Fall back to
rctx.name
if$original_name
is empty (#25310)
Java
- Restore compatibility with any JDK 23 on Windows (#25348)
Remote Execution
- Rollback of ‘Use digest function matching the checksum in gRPC remote downloader’ (#25331)
Refer to the full list of commits for more details.
Acknowledgements:
This release contains contributions from many people at Google, as well as Fabian Meumertzheim.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.
8.1.0
Note
If you are looking for rolling releases, please visit this page.
Release 8.1.0 (2025-02-13)
Bazel 8.1.0 is a minor LTS release. It is fully backward compatible with Bazel 8.0 and contains selected changes by the Bazel community and Google engineers.
General
- On Linux, the default limit on the number of --watchfs file events per directory has been raised to 10,000 (from 500). If needed, it can be increased further via
--host_jvm_args=-Djdk.nio.file.WatchService.maxEventsPerPoll=<limit>
. (#24872)
C++ / Objective-C
- Added conlyopts and cxxopts to objc_library. (#25022)
Configurability
- Changing any part of --run_under that isn't the label (such as the shell command) no longer invalidates the analysis cache. (#25023)
- The new no_match_error attribute on toolchain_type can be used to show a custom message when no matching toolchain is found for that type, but one is required. (#25178)
External Dependencies
- --experimental_downloader_config now supports the ~ character for the home directory. (#24978)
- Added repository_ctx.original_name, which contains the original value of the name attribute as specified at the repo rule call site. (#25191)
Remote Execution
- CAS requests made when Bazel downloads a blob with Build without the Bytes enabled now provide metadata with an action ID of input if the blob is downloaded as the input to a local action and output if it is a requested action output. (#25058)
Starlark / Build Language
- Add a set data type to Starlark. (#25111)
Refer to the full list of commits for more details.
Acknowledgements:
This release contains contributions from many people at Google, as well as Boleyn Su, Fabian Meumertzheim, Keith Smiley, Kiron, Pareesh Madan, and Sarad Pant.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.
8.1.0rc4
Note
If you are looking for rolling releases, please visit this page.
Release 8.1.0rc4 (2025-02-11)
Bazel 8.1.0 is a minor LTS release. It is fully backward compatible with Bazel 8.0 and contains selected changes by the Bazel community and Google engineers.
General
- On Linux, the default limit on the number of --watchfs file events per directory has been raised to 10,000 (from 500). If needed, it can be increased further via
--host_jvm_args=-Djdk.nio.file.WatchService.maxEventsPerPoll=<limit>
. (#24872)
C++ / Objective-C
- Added conlyopts and cxxopts to objc_library. (#25022)
Configurability
- Changing any part of --run_under that isn't the label (such as the shell command) no longer invalidates the analysis cache. (#25023)
- The new no_match_error attribute on toolchain_type can be used to show a custom message when no matching toolchain is found for that type, but one is required. (#25178)
External Dependencies
- --experimental_downloader_config now supports the ~ character for the home directory. (#24978)
- Added repository_ctx.original_name, which contains the original value of the name attribute as specified at the repo rule call site. (#25191)
Remote Execution
- CAS requests made when Bazel downloads a blob with Build without the Bytes enabled now provide metadata with an action ID of input if the blob is downloaded as the input to a local action and output if it is a requested action output. (#25058)
Starlark / Build Language
- Add a set data type to Starlark. (#25111)
Refer to the full list of commits for more details.
Acknowledgements:
This release contains contributions from many people at Google, as well as Boleyn Su, Fabian Meumertzheim, Keith Smiley, Kiron, Pareesh Madan, and Sarad Pant.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.
8.1.0rc3
Note
If you are looking for rolling releases, please visit this page.
Release 8.1.0rc3 (2025-02-07)
Bazel 8.1.0 is a minor LTS release. It is fully backward compatible with Bazel 8.0 and contains selected changes by the Bazel community and Google engineers.
General
- On Linux, the default limit on the number of --watchfs file events per directory has been raised to 10,000 (from 500). If needed, it can be increased further via
--host_jvm_args=-Djdk.nio.file.WatchService.maxEventsPerPoll=<limit>
. (#24872)
C++ / Objective-C
- Added conlyopts and cxxopts to objc_library. (#25022)
Configurability
- Changing any part of --run_under that isn't the label (such as the shell command) no longer invalidates the analysis cache. (#25023)
- The new no_match_error attribute on toolchain_type can be used to show a custom message when no matching toolchain is found for that type, but one is required. (#25178)
External Dependencies
- --experimental_downloader_config now supports the ~ character for the home directory. (#24978)
- Added repository_ctx.original_name, which contains the original value of the name attribute as specified at the repo rule call site. (#25191)
Remote Execution
- CAS requests made when Bazel downloads a blob with Build without the Bytes enabled now provide metadata with an action ID of input if the blob is downloaded as the input to a local action and output if it is a requested action output. (#25058)
Starlark / Build Language
- Add a set data type to Starlark. (#25111)
Refer to the full list of commits for more details.
Acknowledgements:
This release contains contributions from many people at Google, as well as Boleyn Su, Fabian Meumertzheim, Keith Smiley, Kiron, Pareesh Madan, and Sarad Pant.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.
8.1.0rc2
Note
If you are looking for rolling releases, please visit this page.
Release 8.1.0rc2 (2025-02-05)
Bazel 8.1.0 is a minor LTS release. It is fully backward compatible with Bazel 8.0 and contains selected changes by the Bazel community and Google engineers.
C++ / Objective-C
- On Linux, the default limit on the number of --watchfs file events per directory has been raised to 10,000 (from 500). If needed, it can be increased further via --host_jvm_args=-Djdk.nio.file.WatchService.maxEventsPerPoll=. (#24872)
Configurability
- Changing any part of --run_under that isn't the label (such as the shell command) no longer invalidates the analysis cache. (#25023)
- The new no_match_error attribute on toolchain_type can be used to show a custom message when no matching toolchain is found for that type, but one is required. (#25178)
External Dependencies
- Added repository_ctx.original_name, which contains the original value of the name attribute as specified at the repo rule call site. (#25191)
Remote Execution
- CAS requests made when Bazel downloads a blob with Build without the Bytes enabled now provide metadata with an action ID of input if the blob is downloaded as the input to a local action and output if it is a requested action output. (#25058)
Starlark / Build Language
- Add a set data type to Starlark. (#25111)
Refer to the full list of commits for more details.
Acknowledgements:
This release contains contributions from many people at Google, as well as Boleyn Su, Fabian Meumertzheim, Keith Smiley, Kiron, Pareesh Madan, and Sarad Pant.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 3D5919B448457EE0.