Skip to content

Commit 20c2ed0

Browse files
Bazel Release Systemfweikert
Bazel Release System
authored andcommitted
Release 7.0.0-pre.20230517.4 (2023-05-26)
Baseline: 267ac1f Cherry picks: + 98d5d5f: Download outputs that were not downloaded during spawn execution in `finalizeAction`. + 02853f8: Fix non-determinism in the `FailureDetail` produced for a package with multiple label crosses subpackage boundary errors. Incompatible changes: - This has the side effect of changing the message on unsuccessful builds from ``` FAILED: Build did NOT complete successfully (0 packages loaded) ``` to ``` ERROR: Build did NOT complete successfully ``` - Bazel no longer increases the delay between progress updates when there is no cursor control. - This has the side effect of changing the message on unsuccessful builds from ``` FAILED: Build did NOT complete successfully (0 packages loaded) ``` to ``` ERROR: Build did NOT complete successfully ``` - the --experimental_async_execution flag is now a no-op. - --experimental_replay_action_out_err is not a no-op. - `cquery --output=files` also outputs source files. - `--incompatible_strict_conflict_checks` is flipped to true. See #16729 for details. - `--incompatible_strict_conflict_checks` is flipped to true. See #16729 for details. - `--incompatible_always_include_files_in_data` is flipped to true. See #16654 for details. - This changes the behavior of Python version in exec/host configuration. Mitigation is to set Python version on the targets. - When multiple --deleted_packages options are passed on the command line, they will be concatenated instead of the latest one taking effect. - This has the side effect of changing the message on unsuccessful builds from - JSON profile: Use doubles instead of strings for counter series. - query --output=proto --order_output=deps now returns targets in topological order (previously there was no ordering). - --experimental_build_transitive_python_runfiles is flipped to false. See #16303 for details - --incompatible_python_disable_py2 is flipped to true. See #17293 for details. - When remote cache evicts blobs, Bazel will exit with code 39. - `--features` only applies to targets built in the target configuration, and `--host_features` is used for the host / exec configuration (gated behind `--incompatible_use_host_features`) - `--incompatible_strict_conflict_checks` is flipped to true. See #16729 for details. - Bazel's local CPU resource on Linux is now container aware. Use `--local_cpu_resources`, `--loading_phase_threads` or `--jobs` to override. - `copy_from_rule` is exec_groups is deprecated (#17668). - --legacy_bazel_java_test is now a no-op - --legacy_bazel_java_test is now a no-op - --legacy_bazel_java_test is now a no-op - `--experimental_execution_graph_log` no longer exists. Current users that want local logs need to pass `--experimental_enable_execution_graph_log --experimental_execution_graph_log_path=/some/local/path`. Current users that want logs uploaded to BEP need to pass `--experimental_enable_execution_graph_log --experimental_stream_log_file_uploads`. - Remove 'darwin' as a CPU value, use 'darwin_x86_64' instead - Remove high priority workers functionality from blaze. - Renamed PackageMetrics proto message to PackageLoadMetrics. The formats should be wire compatible. New features: - The `aquery` and `cquery` commands now respect the `--query_file` flag just like the `query` command. - --experimental_repository_disable_download is now promoted to stable and is also available under the name --repository_disable_download . Important changes: - The new path variable `$(rlocationpath ...)` and its plural form `$(rlocationpaths ...)` can be used to expand labels to the paths accepted by the `Rlocation` function of runfiles libraries. This is the preferred way to access data dependencies at runtime and works on all platforms, even when runfiles are not enabled (e.g., on Windows by default). - Starlark `print()` statements are now emitted iff the line of code is executed. They are no longer replayed on subsequent invocations unless the Starlark code is re-executed. Additionally, multiple identical `print()` statements (same string from the same line of code, e.g. from a loop) are all emitted and no longer deduplicated. - Fixes a bug where some compilation flags would not be applied to a cc_test - removed outdated ctx.host_fragments - removed outdated ctx.host_configuration - Now that the host configuration is finished, `genrule` should prefer the use of `tools` and stop using `exec_tools`. - Added a `native.package_relative_label()` function, which converts a label string to a Label object in the context of the calling package, in contrast to `Label()`, which does so in the context of the current .bzl file. Both functions now also accept relative labels such as `:foo`, and are idempotent. - Update Android manifest merger to v30.1.3, and also drop support for legacy (pre-D8) desugaring. - Adds coverage metric support to android_local_test - Correctly encode double value positive infinity as "inf" instead of "+inf" for textprotos. - Add --use_target_platform_for_tests which uses the target platform for executing tests instead of the execution platform. - Custom C++ rules on Windows calling cc_common.create_linking_context_from_compilation_outputs should review whether each target of the rule type should produce a dynamic library since a condition which blocked their creation has been moved to the rules from behind the API. - Add flag `--experimental_remote_cache_ttl` and set the default value to 3 hours. - making --incompatible_use_platforms_repo_for_constraints do nothing. Using constraints from @bazel_tools//platforms with or without the flag will throw error with message "Constraints from @bazel_tools//platforms have been removed. Please use constraints from @platforms repository embedded in Bazel, or preferably declare dependency on https://github.com/bazelbuild/platforms" - Fixed an issue where WORKSPACE and WORKSPACE-loaded .bzl files couldn't see the Bzlmod root module's mappings when Bzlmod is enabled. - Subsequent settings of --extra_execution_platforms now override previous settings, instead of adding them to a list. If you currently set --extra_execution_platforms more than once, please migrate by passing a list of values to --extra_execution_platforms instead so that earlier values aren't overwritten. - @bazel_tools//config:common_settings.bzl has been removed. Use @bazel_skylib//rules:common_settings.bzl instead. - cc_shared_library is no longer experimental, see #16709 for details - The flag `--distinct_host_configuration` is removed. It has been a no-op since Bazel 6.0.0. - Added `native.module_name()` and `native.module_version()` to allow BUILD macro authors to acquire information about which Bazel module the current repo is associated with. - Add `--skip_incompatible_explicit_targets` option - Remove 'darwin' as a CPU value, use 'darwin_x86_64' instead - cc_test can now be configured by using a native.toolchain(). - `@foo` labels can now be used on the command line as the top-level target (that is, `bazel build @foo` now works). Double-dot syntax is now forbidden (`bazel build ../foo` will no longer work). - The location of rules that explicitly specify `generator_name` and/or `generator_function` attributes (typically because they are incidentally copied from `native.existing_rule()`) is now the top-level call in the `BUILD` file, which is consistent with rules that do not explicitly specify these attributes. - Warnings (most notably those associated with the `deprecation` rule attribute) are no longer replayed on subsequent invocations unless the target in question is re-analyzed. Warnings are purely informational, so this change has no bearing on the correctness of the build. Downstream tests that break due to this change should update their expectations. - `--experimental_remote_build_event_upload` has been renamed to `--remote_build_event_upload` - [Breaking change] platform, constraint_setting, and constraint_value can no longer take an applicable_licenses value. Remediation is to remove the attribute and rely on the package level default. - `--experimental_action_cache_store_output_metadata` has been renamed to `--action_cache_store_output_metadata` - Changed the default value for `--remote_build_event_upload` to `minimal`. - `--experimental_remote_cache_compression` has been renamed to `--remote_cache_compression` - The REPO.bazel and MODULE.bazel files are now also considered workspace boundary markers. - Added a new `max_compatibility_level` attribute to the `bazel_dep` directive, which allows version selection to upgrade a dependency up to the specified compatibility level. - `--experimental_remote_grpc_log` has been renamed to `--remote_grpc_log` - `--incompatible_remote_build_event_upload_respect_no_cache` is now a no-op. - json.decode now takes an optional `default` positional parameter; if this parameter is specified and decoding fails, json.decode will return the `default` value instead of failing Starlark evaluation. - Overrides specified by non-root modules no longer cause an error, and are silently ignored instead. They were originally treated as an error to allow for the future possibility of overrides in the transitive dependency graph working together; but we've deemed that infeasible (and even if it was, it'd be so complicated and confusing to users that it would not be a good addition). - `applicable_licenses` is no longer allowed on the `platform` rule. Additionally, `default_package_metadata` from any `package` rule will not be applied. This release contains contributions from many people at Google, as well as Adam Lavin, Alessandro Patti, Alex Eagle, AlexTereshenkov, Amanda L Martin, Andreas Herrmann, Andy Hamon, Ankit Agarwal, Ankush Goyal, Anthony Ter-Saakov, Artem Zinnatullin, aryeh, Austin Schuh, Benjamin Lee, Benjamin Peterson, Benjamin Peterson, Benjamin Sigonneau, Ben Lee, Brentley Jones, Cameron Martin, Chirag Ramani, Chirag Ramani, Chris Sauer, Christopher Peterson Sauer, Christopher Rydell, Christopher Sauer, Daniel Grunwald, Daniel KT, Daniel Wagner-Hall, David Ostrovsky, Dimi Shahbaz, eareilg, Ed Schouten, Emil Kattainen, Ezekiel Warren, Fabian Meumertzheim, Fabian Meumertzheim, Fahrzin Hemmati, Fahrzin Hemmati, Gaspare Vitta, George Gensure, Greg, Greg Magolan, Halil Sener, Hao Yuan, hvadehra, hvd, Ivan Golub, Jack Dai, James Ma, Jasper, Jeff Hodges, Jeremy Volkman, Joel Jeske, John Hinnegan, Jon Landis, Jon Parise, jonrose-dev, Joseph Tilahun, Julio Merino, Kai Zhang, keertk, Keith Smiley, Konstantin Erman, Krzysztof Naglik, kshyanashree, Kun-Lu, Lee Mracek, lripoche, Malte Poll, Marc Redemske, Marc Zych, Matt Mackay, Mauricio Galindo, Maxwell Elliott, mohamadk, nathyong, Nick Korostelev, Oliver Lee, Oscar Garzon, Patrick Balestra, Patrick Balestra, Philipp Schrader, Red Daly, redwrasse, robincaloudis, Robin Tweedie, Roger Hu, Sagar Pathare, Saleem Abdulrasool, Sara Adams, Sascha Moecker, Severin Strobl, Siddhesh Bhupendra Kuakde, Simon Mavi Stewart, something_vague, Son Luong Ngoc, Stiopa Koltsov, stoozy, Sushain Cherivirala, tbaing, Ted Kaplan, Ted Kaplan, Ted Logan, Thulio Ferraz Assis, Tom Cnops, Ulf Adams, Ulf Adams, Ulrik Falklof, Uri Baghin, Xavier Bonaventura, Xdng Yng, Xiangquan Xiao, Yannic Bonenberger, Yannic, Yi Cheng, yuzhy8701.
1 parent 0fe6cf1 commit 20c2ed0

File tree

1 file changed

+212
-0
lines changed

1 file changed

+212
-0
lines changed

CHANGELOG.md

Lines changed: 212 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,215 @@
1+
## Release 7.0.0-pre.20230517.4 (2023-05-26)
2+
3+
```
4+
Baseline: 267ac1f14f733a41380c1f70d095f096b8798c6b
5+
6+
Cherry picks:
7+
8+
+ 98d5d5f6980ec8513dc5c0ee95fcabe3b80beb47:
9+
Download outputs that were not downloaded during spawn execution
10+
in `finalizeAction`.
11+
+ 02853f888cd8cea6a0e06b0ca417e0470de2cec0:
12+
Fix non-determinism in the `FailureDetail` produced for a
13+
package with multiple label crosses subpackage boundary errors.
14+
```
15+
16+
Incompatible changes:
17+
18+
- This has the side effect of changing the message on unsuccessful
19+
builds from
20+
```
21+
FAILED: Build did NOT complete successfully (0 packages loaded)
22+
```
23+
to
24+
```
25+
ERROR: Build did NOT complete successfully
26+
```
27+
- Bazel no longer increases the delay between progress updates when
28+
there is no cursor control.
29+
- This has the side effect of changing the message on unsuccessful
30+
builds from
31+
```
32+
FAILED: Build did NOT complete successfully (0 packages loaded)
33+
```
34+
to
35+
```
36+
ERROR: Build did NOT complete successfully
37+
```
38+
- the --experimental_async_execution flag is now a no-op.
39+
- --experimental_replay_action_out_err is not a no-op.
40+
- `cquery --output=files` also outputs source files.
41+
- `--incompatible_strict_conflict_checks` is flipped to true. See
42+
https://github.com/bazelbuild/bazel/issues/16729 for details.
43+
- `--incompatible_strict_conflict_checks` is flipped to true. See
44+
https://github.com/bazelbuild/bazel/issues/16729 for details.
45+
- `--incompatible_always_include_files_in_data` is flipped to true.
46+
See https://github.com/bazelbuild/bazel/issues/16654 for details.
47+
- This changes the behavior of Python version in exec/host
48+
configuration. Mitigation is to set Python version on the targets.
49+
- When multiple --deleted_packages options are passed on the
50+
command line, they will be concatenated instead of the latest one
51+
taking effect.
52+
- This has the side effect of changing the message on unsuccessful
53+
builds from
54+
- JSON profile: Use doubles instead of strings for counter series.
55+
- query --output=proto --order_output=deps now returns targets in
56+
topological order (previously there was no ordering).
57+
- --experimental_build_transitive_python_runfiles is flipped to
58+
false. See #16303 for details
59+
- --incompatible_python_disable_py2 is flipped to true. See #17293
60+
for details.
61+
- When remote cache evicts blobs, Bazel will exit with code 39.
62+
- `--features` only applies to targets built in the target
63+
configuration, and `--host_features` is used for the host / exec
64+
configuration (gated behind `--incompatible_use_host_features`)
65+
- `--incompatible_strict_conflict_checks` is flipped to true. See
66+
https://github.com/bazelbuild/bazel/issues/16729 for details.
67+
- Bazel's local CPU resource on Linux is now container aware. Use
68+
`--local_cpu_resources`, `--loading_phase_threads` or `--jobs` to
69+
override.
70+
- `copy_from_rule` is exec_groups is deprecated
71+
(https://github.com/bazelbuild/bazel/issues/17668).
72+
- --legacy_bazel_java_test is now a no-op
73+
- --legacy_bazel_java_test is now a no-op
74+
- --legacy_bazel_java_test is now a no-op
75+
- `--experimental_execution_graph_log` no longer exists. Current
76+
users that want local logs need to pass
77+
`--experimental_enable_execution_graph_log
78+
--experimental_execution_graph_log_path=/some/local/path`.
79+
Current users that want logs uploaded to BEP need to pass
80+
`--experimental_enable_execution_graph_log
81+
--experimental_stream_log_file_uploads`.
82+
- Remove 'darwin' as a CPU value, use 'darwin_x86_64' instead
83+
- Remove high priority workers functionality from blaze.
84+
- Renamed PackageMetrics proto message to PackageLoadMetrics. The
85+
formats should be wire compatible.
86+
87+
New features:
88+
89+
- The `aquery` and `cquery` commands now respect the
90+
`--query_file` flag just like the `query` command.
91+
- --experimental_repository_disable_download is now promoted to
92+
stable and is also available under the name
93+
--repository_disable_download .
94+
95+
Important changes:
96+
97+
- The new path variable `$(rlocationpath ...)` and its plural form
98+
`$(rlocationpaths ...)` can be used to expand labels to the paths
99+
accepted by the `Rlocation` function of runfiles libraries. This
100+
is the preferred way to access data dependencies at runtime and
101+
works on all platforms, even when runfiles are not enabled (e.g.,
102+
on Windows by default).
103+
- Starlark `print()` statements are now emitted iff the line of
104+
code is executed. They are no longer replayed on subsequent
105+
invocations unless the Starlark code is re-executed.
106+
Additionally, multiple identical `print()` statements (same
107+
string from the same line of code, e.g. from a loop) are all
108+
emitted and no longer deduplicated.
109+
- Fixes a bug where some compilation flags would not be applied to
110+
a cc_test
111+
- removed outdated ctx.host_fragments
112+
- removed outdated ctx.host_configuration
113+
- Now that the host configuration is finished, `genrule` should
114+
prefer the use of `tools` and stop using `exec_tools`.
115+
- Added a `native.package_relative_label()` function, which
116+
converts a label string to a Label object in the context of the
117+
calling package, in contrast to `Label()`, which does so in the
118+
context of the current .bzl file. Both functions now also accept
119+
relative labels such as `:foo`, and are idempotent.
120+
- Update Android manifest merger to v30.1.3, and also drop support
121+
for legacy (pre-D8) desugaring.
122+
- Adds coverage metric support to android_local_test
123+
- Correctly encode double value positive infinity as "inf" instead
124+
of "+inf" for textprotos.
125+
- Add --use_target_platform_for_tests which uses the target
126+
platform for executing tests instead of the execution platform.
127+
- Custom C++ rules on Windows calling
128+
cc_common.create_linking_context_from_compilation_outputs should
129+
review whether each target of the rule type should produce a
130+
dynamic library since a condition which blocked their creation
131+
has been moved to the rules from behind the API.
132+
- Add flag `--experimental_remote_cache_ttl` and set the default
133+
value to 3 hours.
134+
- making --incompatible_use_platforms_repo_for_constraints do
135+
nothing. Using constraints from @bazel_tools//platforms with or
136+
without the flag will throw error with message "Constraints from
137+
@bazel_tools//platforms have been removed. Please use constraints
138+
from @platforms repository embedded in Bazel, or preferably
139+
declare dependency on https://github.com/bazelbuild/platforms"
140+
- Fixed an issue where WORKSPACE and WORKSPACE-loaded .bzl files
141+
couldn't see the Bzlmod root module's mappings when Bzlmod is
142+
enabled.
143+
- Subsequent settings of --extra_execution_platforms now override
144+
previous settings, instead of adding them to a list. If you
145+
currently set --extra_execution_platforms more than once, please
146+
migrate by passing a list of values to
147+
--extra_execution_platforms instead so that earlier values aren't
148+
overwritten.
149+
- @bazel_tools//config:common_settings.bzl has been removed.
150+
Use @bazel_skylib//rules:common_settings.bzl instead.
151+
- cc_shared_library is no longer experimental, see
152+
https://github.com/bazelbuild/bazel/issues/16709 for details
153+
- The flag `--distinct_host_configuration` is removed. It has been
154+
a no-op since Bazel 6.0.0.
155+
- Added `native.module_name()` and `native.module_version()` to
156+
allow BUILD macro authors to acquire information about which
157+
Bazel module the current repo is associated with.
158+
- Add `--skip_incompatible_explicit_targets` option
159+
- Remove 'darwin' as a CPU value, use 'darwin_x86_64' instead
160+
- cc_test can now be configured by using a native.toolchain().
161+
- `@foo` labels can now be used on the command line as the
162+
top-level target (that is, `bazel build @foo` now works).
163+
Double-dot syntax is now forbidden (`bazel build ../foo` will no
164+
longer work).
165+
- The location of rules that explicitly specify `generator_name`
166+
and/or `generator_function` attributes (typically because they
167+
are incidentally copied from `native.existing_rule()`) is now the
168+
top-level call in the `BUILD` file, which is consistent with
169+
rules that do not explicitly specify these attributes.
170+
- Warnings (most notably those associated with the `deprecation`
171+
rule attribute) are no longer replayed on subsequent invocations
172+
unless the target in question is re-analyzed. Warnings are purely
173+
informational, so this change has no bearing on the correctness
174+
of the build. Downstream tests that break due to this change
175+
should update their expectations.
176+
- `--experimental_remote_build_event_upload` has been renamed to
177+
`--remote_build_event_upload`
178+
- [Breaking change] platform, constraint_setting, and
179+
constraint_value can no longer take an applicable_licenses value.
180+
Remediation is to remove the attribute and rely on the package
181+
level default.
182+
- `--experimental_action_cache_store_output_metadata` has been
183+
renamed to `--action_cache_store_output_metadata`
184+
- Changed the default value for `--remote_build_event_upload` to
185+
`minimal`.
186+
- `--experimental_remote_cache_compression` has been renamed to
187+
`--remote_cache_compression`
188+
- The REPO.bazel and MODULE.bazel files are now also considered
189+
workspace boundary markers.
190+
- Added a new `max_compatibility_level` attribute to the
191+
`bazel_dep` directive, which allows version selection to upgrade
192+
a dependency up to the specified compatibility level.
193+
- `--experimental_remote_grpc_log` has been renamed to
194+
`--remote_grpc_log`
195+
- `--incompatible_remote_build_event_upload_respect_no_cache` is
196+
now a no-op.
197+
- json.decode now takes an optional `default` positional parameter;
198+
if this parameter is specified and decoding fails, json.decode
199+
will return
200+
the `default` value instead of failing Starlark evaluation.
201+
- Overrides specified by non-root modules no longer cause an error,
202+
and are silently ignored instead. They were originally treated as
203+
an error to allow for the future possibility of overrides in the
204+
transitive dependency graph working together; but we've deemed
205+
that infeasible (and even if it was, it'd be so complicated and
206+
confusing to users that it would not be a good addition).
207+
- `applicable_licenses` is no longer allowed on the `platform` rule.
208+
Additionally, `default_package_metadata` from any `package` rule
209+
will not be applied.
210+
211+
This release contains contributions from many people at Google, as well as Adam Lavin, Alessandro Patti, Alex Eagle, AlexTereshenkov, Amanda L Martin, Andreas Herrmann, Andy Hamon, Ankit Agarwal, Ankush Goyal, Anthony Ter-Saakov, Artem Zinnatullin, aryeh, Austin Schuh, Benjamin Lee, Benjamin Peterson, Benjamin Peterson, Benjamin Sigonneau, Ben Lee, Brentley Jones, Cameron Martin, Chirag Ramani, Chirag Ramani, Chris Sauer, Christopher Peterson Sauer, Christopher Rydell, Christopher Sauer, Daniel Grunwald, Daniel KT, Daniel Wagner-Hall, David Ostrovsky, Dimi Shahbaz, eareilg, Ed Schouten, Emil Kattainen, Ezekiel Warren, Fabian Meumertzheim, Fabian Meumertzheim, Fahrzin Hemmati, Fahrzin Hemmati, Gaspare Vitta, George Gensure, Greg, Greg Magolan, Halil Sener, Hao Yuan, hvadehra, hvd, Ivan Golub, Jack Dai, James Ma, Jasper, Jeff Hodges, Jeremy Volkman, Joel Jeske, John Hinnegan, Jon Landis, Jon Parise, jonrose-dev, Joseph Tilahun, Julio Merino, Kai Zhang, keertk, Keith Smiley, Konstantin Erman, Krzysztof Naglik, kshyanashree, Kun-Lu, Lee Mracek, lripoche, Malte Poll, Marc Redemske, Marc Zych, Matt Mackay, Mauricio Galindo, Maxwell Elliott, mohamadk, nathyong, Nick Korostelev, Oliver Lee, Oscar Garzon, Patrick Balestra, Patrick Balestra, Philipp Schrader, Red Daly, redwrasse, robincaloudis, Robin Tweedie, Roger Hu, Sagar Pathare, Saleem Abdulrasool, Sara Adams, Sascha Moecker, Severin Strobl, Siddhesh Bhupendra Kuakde, Simon Mavi Stewart, something_vague, Son Luong Ngoc, Stiopa Koltsov, stoozy, Sushain Cherivirala, tbaing, Ted Kaplan, Ted Kaplan, Ted Logan, Thulio Ferraz Assis, Tom Cnops, Ulf Adams, Ulf Adams, Ulrik Falklof, Uri Baghin, Xavier Bonaventura, Xdng Yng, Xiangquan Xiao, Yannic Bonenberger, Yannic, Yi Cheng, yuzhy8701.
212+
1213
## Release 6.2.0 (2023-05-09)
2214

3215
```

0 commit comments

Comments
 (0)