Skip to content

Releases: bazelbuild/bazel

7.3.1

19 Aug 17:09
Compare
Choose a tag to compare

Note

If you are looking for rolling releases, please visit this page.

Release 7.3.1 (2024-08-19)

Bazel 7.3.1 is a patch LTS release. It is fully backward compatible with Bazel 7.0 and contains selected changes by the Bazel community and Google engineers.

ExternalDeps

  • Fixed the lockfile always being considered out of date when --incompatible_use_plus_in_repo_names is set. (#23281)
  • Fixed a crash when vendoring alias targets. (#23309)

Performance

  • Revert "Deduplicate locally executed path mapped spawns” (#23290)

Refer to the full list of commits for more details.

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.3.1rc2

14 Aug 21:26
9b381af
Compare
Choose a tag to compare
7.3.1rc2 Pre-release
Pre-release

Note

If you are looking for rolling releases, please visit this page.

Release 7.3.1rc2 (2024-08-14)

Bazel 7.3.1 is a patch LTS release. It is fully backward compatible with Bazel 7.0 and contains selected changes by the Bazel community and Google engineers.

ExternalDeps

  • Fixed the lockfile always being considered out of date when --incompatible_use_plus_in_repo_names is set. (#23281)
  • Fixed a crash when vendoring alias targets. (#23309)

Performance

  • Revert "Deduplicate locally executed path mapped spawns” (#23290)

Refer to the full list of commits for more details.

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.3.1rc1

13 Aug 16:32
d89b97d
Compare
Choose a tag to compare
7.3.1rc1 Pre-release
Pre-release

Note

If you are looking for rolling releases, please visit this page.

Release 7.3.1rc1 (2024-08-13)

Bazel 7.3.1 is a patch LTS release. It is fully backward compatible with Bazel 7.0 and contains selected changes by the Bazel community and Google engineers.

ExternalDeps

  • Fixed the lockfile always being considered out of date when --incompatible_use_plus_in_repo_names is set. (#23281)

Refer to the full list of commits for more details.

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.3.0

12 Aug 16:58
Compare
Choose a tag to compare

Note

If you are looking for rolling releases, please visit this page.

Release 7.3.0 (2024-08-12)

Bazel 7.3.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

  • Bazel now supports vendoring external dependencies with Bzlmod, see https://bazel.build/external/vendor for details. (#22794)
  • Added a new flag, --incompatible_use_plus_in_repo_names, which uses the plus character (+) instead of the tilde (~) in canonical repo names. This flag will be flipped to true in Bazel 8.0. (#23127)
  • The extract method is now available on module_ctx. (#22825)

Performance

  • Experimental support for path mapping CppCompile actions can be enabled via --modify_execution_info=CppCompile=+supports-path-mapping. For more information, refer to the discussion #22658. (#22876)
  • Actions that become identical when path mapped are now deduplicated during local execution (#21043)

Refer to the full list of commits for more details.

Acknowledgements:

This release contains contributions from many people at Google, as well as Cornelius Riemenschneider, David Sanderson, Fabian Meumertzheim, Honnix, Jordan Mele, Laurent Le Brun, and Simon Mavi Stewart.

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.3.0rc2

07 Aug 16:24
acc1ff6
Compare
Choose a tag to compare
7.3.0rc2 Pre-release
Pre-release

Note

If you are looking for rolling releases, please visit this page.

Release 7.3.0rc2 (2024-08-07)

Bazel 7.3.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

  • Bazel now supports vendoring external dependencies with Bzlmod, see https://bazel.build/external/vendor for details. (#22794)
  • Added a new flag, --incompatible_use_plus_in_repo_names, which uses the plus character (+) instead of the tilde (~) in canonical repo names. This flag will be flipped to true in Bazel 8.0. (#23127)
  • The extract method is now available on module_ctx. (#22825)

Performance

  • Experimental support for path mapping CppCompile actions can be enabled via --modify_execution_info=CppCompile=+supports-path-mapping. For more information, refer to the discussion #22658. (#22876)
  • Actions that become identical when path mapped are now deduplicated during local execution (#21043)

Refer to the full list of commits for more details.

Acknowledgements:

This release contains contributions from many people at Google, as well as Cornelius Riemenschneider, David Sanderson, Fabian Meumertzheim, Honnix, Jordan Mele, Laurent Le Brun, and Simon Mavi Stewart.

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.3.0rc1

29 Jul 20:22
5f5355b
Compare
Choose a tag to compare
7.3.0rc1 Pre-release
Pre-release

Note

If you are looking for rolling releases, please visit this page.

Release 7.3.0rc1 (2024-07-29)

Bazel 7.3.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

  • Bazel now supports vendoring external dependencies with Bzlmod, see https://bazel.build/external/vendor for details. (#22794)
  • Added a new flag, --incompatible_use_plus_in_repo_names, which uses the plus character (+) instead of the tilde (~) in canonical repo names. This flag will be flipped to true in Bazel 8.0. (#23127)
  • The extract method is now available on module_ctx. (#22825)

Performance

  • Experimental support for path mapping CppCompile actions can be enabled via --modify_execution_info=CppCompile=+supports-path-mapping. For more information, refer to the discussion #22658. (#22876)
  • Actions that become identical when path mapped are now deduplicated during local execution (#21043)

Refer to the full list of commits for more details.

Acknowledgements:

This release contains contributions from many people at Google, as well as Cornelius Riemenschneider, David Sanderson, Fabian Meumertzheim, Honnix, Jordan Mele, Laurent Le Brun, and Simon Mavi Stewart.

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.2.1

25 Jun 17:32
Compare
Choose a tag to compare

Note

If you are looking for rolling releases, please visit this page.

Release 7.2.1 (2024-06-25)

Bazel 7.2.1 is a patch LTS release. It is fully backward compatible with Bazel 7.0 and contains selected changes by the Bazel community and Google engineers.

Android

  • Replace //external:android/d8_jar_import with "@android_gmaven_r8//jar" (#22699)

External Deps

  • Fix crash on IOException in SingleExtensionEvalFunction (#22697)
  • You can now discard previous overrides for --override_repository and --override_module by specifying an empty path. For example, if --override_repository=myrepo=/foo is followed by --override_repository=myrepo=, then myrepo will not be overridden. (#22784)
  • Overlay files specified in source.json are now assumed to be under the overlay subdirectory. (#22823)
  • Fixed an issue with the WORKSPACE file still being evaluated when --noenable_workspace is set. (#22837)

Remote Execution

  • Fix an NPE with the compact execution log and coverage (#22707)
  • Retry on connection reset error for http cache. (#22785)

Local Execution

  • Fix permissions on tree artifact subdirectories as needed to move them out of the sandbox. (#22806)

Performance

  • Do not fail a sandboxed spawn for missing execution statistics (#22790)

Acknowledgements:

This release contains contributions from many people at Google, as well as Fabian Meumertzheim and Simon Mavi Stewart.

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.2.1rc2

21 Jun 17:05
3324f06
Compare
Choose a tag to compare
7.2.1rc2 Pre-release
Pre-release

Note

If you are looking for rolling releases, please visit this page.

Release 7.2.1rc2 (2024-06-21)

Bazel 7.2.1 is a patch LTS release. It is fully backward compatible with Bazel 7.0 and contains selected changes by the Bazel community and Google engineers.

Android

  • Replace //external:android/d8_jar_import with "@android_gmaven_r8//jar" (#22699)

External Deps

  • Fix crash on IOException in SingleExtensionEvalFunction (#22697)
  • You can now discard previous overrides for --override_repository and --override_module by specifying an empty path. For example, if --override_repository=myrepo=/foo is followed by --override_repository=myrepo=, then myrepo will not be overridden. (#22784)
  • Overlay files specified in source.json are now assumed to be under the overlay subdirectory. (#22823)
  • Fixed an issue with the WORKSPACE file still being evaluated when --noenable_workspace is set. (#22837)

Remote Execution

  • Fix an NPE with the compact execution log and coverage (#22707)
  • Retry on connection reset error for http cache. (#22785)

Local Execution

  • Fix permissions on tree artifact subdirectories as needed to move them out of the sandbox. (#22806)

Performance

  • Do not fail a sandboxed spawn for missing execution statistics (#22790)

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 and Simon Mavi Stewart.

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.2.1rc1

12 Jun 15:10
873d55f
Compare
Choose a tag to compare
7.2.1rc1 Pre-release
Pre-release

Note

If you are looking for rolling releases, please visit this page.

Release 7.2.1rc1 (2024-06-12)

Bazel 7.2.1 is a patch LTS release. It is fully backward compatible with Bazel 7.0 and contains selected changes by the Bazel community and Google engineers.

Android

  • Replace //external:android/d8_jar_import with "@android_gmaven_r8//jar" (#22699)

External Deps

  • Fix crash on IOException in SingleExtensionEvalFunction (#22697)
  • Treat missing repo boundary files as transient errors (#22701)

Remote Execution

  • Fix an NPE with the compact execution log and coverage (#22707)

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.

7.2.0

10 Jun 13:53
Compare
Choose a tag to compare

Note

If you are looking for rolling releases, please visit this page.

Release 7.2.0 (2024-06-10)

Bazel 7.2.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.

C++ / Objective-C

  • The default Unix C++ toolchain now supports the parse_headers feature to validate header files with --process_headers_in_dependencies. (#22369)

CLI

  • Bazel on Linux and BSD now respects the XDG_CACHE_HOME environment variable instead of assuming that ~/.cache/bazel is writable. (#21817)

Configurability

  • aquery: //foo:bar now means "all configured targets with label //foo:bar" instead of "choose an arbitrary configured target with label //foo:bar". This is in line with cquery behavior. (#22135)
  • Starlark command-line flags can now be referred to through alias targets. (#22212)

External Deps

  • Added a new flag --incompatible_disable_native_repo_rules to disable native repo rule usage in WORKSPACE. All native repo rules now have a Starlark counterpart that can be used in both WORKSPACE and Bzlmod; see #22080 for more details. (#22203)
  • The format for MODULE.bazel.lock is now less likely to result in merge conflicts and is updated incrementally, with only new files downloaded from registries and existing ones taken from the repository cache (if configured). (#22351)
  • Added a new include() directive to MODULE.bazel files, which allows the root module file to be divided into multiple segments. (#22204)
  • Fixed certain deadlocks in repo fetching with worker threads (--experimental_worker_for_repo_fetching=auto). (#22261, #22573)
  • bzlmod git_override now accepts the strip_prefix arg and passes it to the underlying git_repository call. (#22137)
  • The source.json file in registries now supports the overlay attribute in addition to patches. http_archive now has two more attributes, remote_file_urls and remote_file_integrity, to support this use case. (#22325, #22525)
  • print statements in module files are now only executed for the root module and modules subject to non-registry overrides (e.g. local_path_override). (#22263)
  • The new refresh value for --lockfile_mode behaves like the update mode, but additionally forces a refresh of mutable registry content (yanked versions and missing module versions) when switched to or from time to time while enabled. (#22371)
  • bazel fetch now more reliably fetches repos required for a build by triggering the analysis phase. (#21841)
  • Label instances passed to print or fail as positional arguments are now formatted with apparent repository names (optimized for human readability). (#22460)
  • Changes to environment variables read via mctx.getenv now correctly invalidate module extensions. (#22541)
  • Git merge conflicts in MODULE.bazel.lock files can be resolved automatically. See https://bazel.build/external/lockfile#automatic-resolution for the required setup. (#22650)

Local Execution

  • Paths in the Linux sandbox are now again identical to those outside the sandbox, even with --incompatible_sandbox_hermetic_tmp. (#22407)

Remote Execution

  • The combined coverage report produced via --combined_report=lcov is now announced on the BES via the new CoverageReport event. (#22327)
  • The compact and full execution logs now contain start times for spawns (if available). (#22341)
  • Added a new flag --incompatible_modify_execution_info_additive, which causes the --modify_execution_info flag to become additive when specified multiple times. (#22316)
  • Added new flags --experimental_remote_output_service and --experimental_remote_output_service_output_path_prefix for remote output service

Starlark / Build Language

  • Starlark min and max buitins now allow a key callback, similarly to sorted. (#21960)
  • native.package_relative_label can now be used in rule initializers.

Refer to the full list of commits for more details.

Acknowledgements:

This release contains contributions from many people at Google, as well as Brentley Jones, Cameron Martin, Daniel Wagner-Hall, Douglas Thor, Fabian Meumertzheim, George Gensure, Isaac Torres, Keith Smiley, Mark Elliot, Romain Chossart, Son Luong Ngoc, Spencer Putt, and Thomas Weischuh.

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.