bazelbuild/bazel (bazel)
### [`v7.2.0`](https://togithub.com/bazelbuild/bazel/releases/tag/7.2.0)
[Compare Source](https://togithub.com/bazelbuild/bazel/compare/7.1.2...7.2.0)
> \[!NOTE]
> If you are looking for [rolling releases](https://bazel.build/release#rolling-releases), please visit [this page](https://bazel.build/release/rolling).
### 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](https://togithub.com/bazelbuild/bazel/pull/22369))
#### CLI
- Bazel on Linux and BSD now respects the XDG_CACHE_HOME environment variable instead of assuming that ~/.cache/bazel is writable. ([#21817](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22135))
- Starlark command-line flags can now be referred to through `alias` targets. ([#22212](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/issues/22080) for more details. ([#22203](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22351))
- Added a new `include()` directive to `MODULE.bazel` files, which allows the root module file to be divided into multiple segments. ([#22204](https://togithub.com/bazelbuild/bazel/pull/22204))
- Fixed certain deadlocks in repo fetching with worker threads (`--experimental_worker_for_repo_fetching=auto`). ([#22261](https://togithub.com/bazelbuild/bazel/pull/22261), [#22573](https://togithub.com/bazelbuild/bazel/pull/22573))
- bzlmod `git_override` now accepts the `strip_prefix` arg and passes it to the underlying `git_repository` call. ([#22137](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22325), [#22525](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22371))
- `bazel fetch` now more reliably fetches repos required for a build by triggering the analysis phase. ([#21841](https://togithub.com/bazelbuild/bazel/pull/21841))
- `Label` instances passed to `print` or `fail` as positional arguments are now formatted with apparent repository names (optimized for human readability). ([#22460](https://togithub.com/bazelbuild/bazel/pull/22460))
- Changes to environment variables read via `mctx.getenv` now correctly invalidate module extensions. ([#22541](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22650))
#### Local Execution
- Paths in the Linux sandbox are now again identical to those outside the sandbox, even with `--incompatible_sandbox_hermetic_tmp`. ([#22407](https://togithub.com/bazelbuild/bazel/pull/22407))
#### Remote Execution
- The combined coverage report produced via `--combined_report=lcov` is now announced on the BES via the new `CoverageReport` event. ([#22327](https://togithub.com/bazelbuild/bazel/pull/22327))
- The compact and full execution logs now contain start times for spawns (if available). ([#22341](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22316))
- Added new flags `--experimental_remote_output_service` and `--experimental_remote_output_service_output_path_prefix` for [remote output service](https://togithub.com/bazelbuild/bazel/discussions/20933)
#### Starlark / Build Language
- Starlark `min` and `max` buitins now allow a `key` callback, similarly to `sorted`. ([#21960](https://togithub.com/bazelbuild/bazel/pull/21960))
- `native.package_relative_label` can now be used in rule initializers.
Refer to the [full list of commits](https://togithub.com/bazelbuild/bazel/compare/release-7.1.1...release-7.2.0) 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](https://mirror.bazel.build/openjdk/index.html).
*Security*: All our binaries are signed with our [public key](https://bazel.build/bazel-release.pub.gpg) [`3D5919B`](https://togithub.com/bazelbuild/bazel/commit/3D5919B448457EE0).
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
7.1.2
->7.2.0
Release Notes
bazelbuild/bazel (bazel)
### [`v7.2.0`](https://togithub.com/bazelbuild/bazel/releases/tag/7.2.0) [Compare Source](https://togithub.com/bazelbuild/bazel/compare/7.1.2...7.2.0) > \[!NOTE] > If you are looking for [rolling releases](https://bazel.build/release#rolling-releases), please visit [this page](https://bazel.build/release/rolling). ### 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](https://togithub.com/bazelbuild/bazel/pull/22369)) #### CLI - Bazel on Linux and BSD now respects the XDG_CACHE_HOME environment variable instead of assuming that ~/.cache/bazel is writable. ([#21817](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22135)) - Starlark command-line flags can now be referred to through `alias` targets. ([#22212](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/issues/22080) for more details. ([#22203](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22351)) - Added a new `include()` directive to `MODULE.bazel` files, which allows the root module file to be divided into multiple segments. ([#22204](https://togithub.com/bazelbuild/bazel/pull/22204)) - Fixed certain deadlocks in repo fetching with worker threads (`--experimental_worker_for_repo_fetching=auto`). ([#22261](https://togithub.com/bazelbuild/bazel/pull/22261), [#22573](https://togithub.com/bazelbuild/bazel/pull/22573)) - bzlmod `git_override` now accepts the `strip_prefix` arg and passes it to the underlying `git_repository` call. ([#22137](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22325), [#22525](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22371)) - `bazel fetch` now more reliably fetches repos required for a build by triggering the analysis phase. ([#21841](https://togithub.com/bazelbuild/bazel/pull/21841)) - `Label` instances passed to `print` or `fail` as positional arguments are now formatted with apparent repository names (optimized for human readability). ([#22460](https://togithub.com/bazelbuild/bazel/pull/22460)) - Changes to environment variables read via `mctx.getenv` now correctly invalidate module extensions. ([#22541](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22650)) #### Local Execution - Paths in the Linux sandbox are now again identical to those outside the sandbox, even with `--incompatible_sandbox_hermetic_tmp`. ([#22407](https://togithub.com/bazelbuild/bazel/pull/22407)) #### Remote Execution - The combined coverage report produced via `--combined_report=lcov` is now announced on the BES via the new `CoverageReport` event. ([#22327](https://togithub.com/bazelbuild/bazel/pull/22327)) - The compact and full execution logs now contain start times for spawns (if available). ([#22341](https://togithub.com/bazelbuild/bazel/pull/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](https://togithub.com/bazelbuild/bazel/pull/22316)) - Added new flags `--experimental_remote_output_service` and `--experimental_remote_output_service_output_path_prefix` for [remote output service](https://togithub.com/bazelbuild/bazel/discussions/20933) #### Starlark / Build Language - Starlark `min` and `max` buitins now allow a `key` callback, similarly to `sorted`. ([#21960](https://togithub.com/bazelbuild/bazel/pull/21960)) - `native.package_relative_label` can now be used in rule initializers. Refer to the [full list of commits](https://togithub.com/bazelbuild/bazel/compare/release-7.1.1...release-7.2.0) 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](https://mirror.bazel.build/openjdk/index.html). *Security*: All our binaries are signed with our [public key](https://bazel.build/bazel-release.pub.gpg) [`3D5919B`](https://togithub.com/bazelbuild/bazel/commit/3D5919B448457EE0).Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Renovate Bot.