blob: c44174f2be303bc174f45ab7c8ece957932d9fe0 [file] [log] [blame] [view]
Bazel Release Systemf457d812022-02-17 19:54:49 +01001## Release 6.0.0-pre.20220208.2 (2022-02-17)
2
3```
4Baseline: de3c14da9eba34bed39f4cb34446037813420ae3
5
6Cherry picks:
7
8 + a6bfab095ff11cc9d37e45994c2dd85be626710f:
9 Automated rollback of commit
10 64ac2a81f73ba7b085d0de65f12230814f4151c8.
11```
12
13Important changes:
14
15 - Tests that fail to create or complete their
16 `TestAttemptContinuation` by
17 throwing an `ExecException` will report an `INCOMPLETE` status.
18 Previously, Bazel
19 would fail to report any status for the test attempt.
20
21This release contains contributions from many people at Google, as well as divanorama, Fabian Meumertzheim, Keith Smiley, Marek uppa, Niyas Sait, Thi Doan, Yesudeep Mangalapilly.
22
Bazel Release System8431ef32022-02-11 13:54:02 +010023## Release 6.0.0-pre.20220201.3 (2022-02-11)
24
25```
26Baseline: c7652d875869ec063addd146a2746c1378c73236
27
28Cherry picks:
29
30 + 1c0cf8ee505edee539ebb1ce84a78da8e6064d0a:
31 Undelete BigIntegerCodec deleted in
32 https://github.com/bazelbuild/bazel/commit/16753d6ab16c22ed8cfd42
33 47e05c695223b67616. Belatedly realized needed for Starlark
34 bigint serialization.
35 + 382b187d4df664e555608c895716172d96e092c5:
36 Automated rollback of commit
37 9998c6361d3d7c22184ea07e363f38e88a345701.
38 + 45ce5459f3a8f0a32ec71c13c22500ba87aaa8c2:
39 Rollback
40 https://github.com/bazelbuild/bazel/commit/8174262bf946e31df86476
41 014c6f231f46ca0882
42```
43
44This release contains contributions from many people at Google, as well as Denys Kurylenko, Keith Smiley.
45
Bazel Release System41528c32022-02-02 18:41:43 +010046## Release 6.0.0-pre.20220127.1 (2022-02-02)
47
48```
49Baseline: c17f1b7f9b93bf034046d0973bf2b7e9a64815bf
50```
51
52This release contains contributions from many people at Google, as well as Bohdan Vanieiev, Keith Smiley, Zhongpeng Lin.
53
Bazel Release System55819482022-01-28 14:48:50 +010054## Release 6.0.0-pre.20220123.2 (2022-01-28)
55
56```
57Baseline: e2abe2b519fe86b213d822c1fadd7a51d6d3a3f6
58```
59
60Incompatible changes:
61
62 - Error Prone now checks for unused return values of additional
63 methods on `java.lang.Object`, which can be disabled using
64 `--javacopts=-Xep:ReturnValueIgnored:OFF`
65 - Error Prone now checks for unused return values of additional
66 methods on `java.lang.Object`, which can be disabled using
67 `--javacopts=-Xep:ReturnValueIgnored:OFF`
68
69Important changes:
70
71 - provider() has a new parameter: init, a callback for performing
72 pre-processing and validation of field values. Iff this parameter
73 is set,
74 provider() returns a tuple of 2 elements: the usual provider
75 symbol (which,
76 when called, invokes init) and a raw constructor (which bypasses
77 init).
78
79This release contains contributions from many people at Google, as well as Chad Miller, Christopher Sauer, dmaclach, floriographygoth, jheaff1, juanchoviedo, Keith Smiley, Oscar Bonilla, Paul Tarjan, Ulrik Falklof, Zhongpeng Lin.
80
Bazel Release System4de6bca2022-01-19 18:59:28 +010081## Release 6.0.0-pre.20220112.2 (2022-01-19)
82
83```
84Baseline: 10fb5ee47d22a6dbd7732e43bfa8ae8fdaf3fb48
85
86Cherry picks:
87
88 + fd646928d63dee15e37d20b3a504d887f44208e3:
89 Automated rollback of commit
90 ceece65abd46833fe277a43fded9ee9f387bab14.
91```
92
93Incompatible changes:
94
95 - this incompatible change breaks old instances of http_archive
96 that specified netrc as an absolute path. It is unlikely there
97 are many instances in the wild since the path would refer to a
98 netrc file inside the external repository by absolute path.
99 Migration should be straightforward.
100 - genrule switched to use exec transition instead of host. This can
101 break targets with hardcoded output paths. To avoid using
102 hardcoded paths use make variables, see
103 https://docs.bazel.build/versions/4.2.2/be/make-variables.html#pre
104 defined_label_variables
105 - this incompatible change breaks old instances of http_archive
106 that specified netrc as an absolute path. It is unlikely there
107 are many instances in the wild since...
108
109Important changes:
110
111 - Deprecate --incompatible_applicable_licenses flag, in preparation
112 for removal in Bazel 6.x.
113 - Treat py_*.srcs_version="PY2" the same as "PY2ONLY".
114 - The Build Event Protocol now contains file digests and sizes
115 along with the file name and URI.
116 - Refactor system suspend event handling.
117 - alias() can now select() directly on constraint_value()
118 - Allow \a \b \f \v escape sequences in Starlark.
119 - Match remote and local xcode version by most granular version.
120 - Adds `--experimental_worker_multiplex_sandboxing` flag that
121 controls whether to sandbox multiplex workers that support it.
122
123This release contains contributions from many people at Google, as well as Alessandro Patti, Alex Eagle, Alex Scott, Andrew Katson, Benedek Thaler, Benjamin Lee, Benjamin Peterson, Bradley Burns, Brandon Jacklyn, Brentley Jones, Chris Fredrickson, crydell-ericsson, Dan Fleming, Danny Wolf, Dimi Shahbaz, Ed Schouten, Fabian Meumertzheim, Fredrik Medley, Greg Estren, Greg, hvadehra, Jiawen Chen, Keith Smiley, Ken Micklas, Kevin Lin, lihu, Noa Resare, Patrick Balestra, Pras Velagapudi, Rahul Butani, Simon Bjorklen, Stiopa Koltsov, Tetsuo Kiso, Ulf Adams, Ulrik Falklof, William Muir, Xavier Bonaventura, Xdng Yng, Yannic Bonenberger.
124
Bazel Release System3c156f32022-01-19 15:04:51 +0100125## Release 5.0.0 (2022-01-19)
126
127```
128Baseline: 8d66a4171baddcbe1569972f019e54130111202c
129
130Cherry picks:
131
132 + becd1494481b96d2bc08055d3d9d4d7968d9702e:
133 Remote: Cache merkle trees
134 + d7628e1b566be353fe7172241ac8f15d5f8e7ff5:
135 Update DEFAULT_IOS_CPU for M1 arm64 simulator support
136 + 80c56ff7b603fcfff02a5f97829a2a5935f360a0:
137 Compile Apple tools as fat binaries if possible
138 + 3c09f3438a966b49a7c1726022c898b390b3a6e5:
139 Add protobuf as a well known module
140 + 3a5b3606a6f5433467a5b49f0188c41411684bf5:
141 Remote: Merge target-level exec_properties with
142 --remote_default_exec_properties
143 + 917e15ea408e1d3d25574edbb466b39cfbcb61fe:
144 Add -no_uuid for hermetic macOS toolchain setup
145 + f5cf8b076bc913dbe021104d5f6837fb4a6cd8b3:
146 Remote: Fixes an issue when --experimental_remote_cache_async
147 encounter flaky tests.
148 + 77a002cce050e861fcc87c89acf7768aa5c97124:
149 Remove DigestUtils.getDigestInExclusiveMode() now that SsdModule
150 has …
151 + 557a7e71eeb5396f2c87c909ddc025fde2678780:
152 Fixes for the Starlark transition hash computation (#14251)
153 + 34c71465f84fa780217926db2e8e5ca3d6d4568c:
154 Do location expansion in copts of objc_library
155 + 50274a9f714616d4735a560db7f617e53fb8d01b:
156 [5.x] Remote: Add support for compression on gRPC cache (#14277)
157 + 61bf2e5b5181cbe34a2f0d584053570943881804:
158 Automated rollback of commit
159 34c71465f84fa780217926db2e8e5ca3d6d4568c.
160 + 79888fe7369479c398bafe064daa19a7ae30f710:
161 Silence a zstd-jni GCC warning.
162 + 063b5c9c2c09b4794010b9a169b44890ffc79ec4:
163 Remote: Limit max number of gRPC connections by
164 --remote_max_connections.
165 + fd727ec96d861573dcbad3249d727a94eff84789:
166 Do location expansion in copts of objc_library
167 + 23d096931be9b7247eafa750999dd7feadde14c1:
168 Fix _is_shared_library_extension_valid
169 + 5cf1d6e1f78bc860fcd0e2e86eff6fe43ab4a5a2:
170 Remove merging of java_outputs in JavaPluginInfo.
171 + cea5f4f499aa832cf90c68898671869ce79d63f2:
172 Cherrypick Bzlmod documentation (#14301)
173 + 227e49e28e5122cddd6c4cb70686ff7bde3617ea:
174 Format work requests according to ndjson spec
175 + ae0a6c98d4f94abedbedb2d51c27de5febd7df67:
176 Enable user_link_flags_feature for macosx cc_toolchain_config
177 + 8c2c78cdc66cc9d5eb2cd59823c659892c1643a7:
178 Remote: Use Action's salt field to differentiate cache across
179 workspaces.
180 + f94898915268be5670fb1e93a16c03e9b14d2a58:
181 [5.x] Remote: Fix "file not found" error when remote cache is
182 changed from enabled to disabled. (#14321)
183 + 3069ac4e33dcca6f3d1abf55940cdd764d03bdbf:
184 Delete marker file before fetching an external repository
185 + c05c6261cdb2cacb7c9881c255c0ada435ab5182:
186 Remote: Fix file counting in merkletree.DirectoryTreeBuilder
187 + d84f7998ef8f15e27376a0c8f25b320145c4ba9e:
188 Fix remote spawn tests for remote_merkle_tree_cache=true
189 + 59e16e944200555da377799aa0d9e8d0674d2e27:
190 Show skipped tests as a warning
191 + 76b3c242831f8e88835e3002a831a185a41fcc52:
192 Build xcode-locator as a universal binary
193 + aa52f2ddf9bab1ebd18e5431124061e813bfcd80:
194 Exit collect_coverage.sh early if LCOV_MERGER is not set.
195 + 4256d46327bad8638df91be1a5d4ef83b12b74c7:
196 Automated rollback of commit
197 d84f7998ef8f15e27376a0c8f25b320145c4ba9e.
198 + dce24350befd08216b3910ae343670015444ff81:
199 [apple] fix issues compiling C in objc_library for watchos/armv7k
200 + bfc24139d93f8643686d91596ba347df2e01966a:
201 5.x: Remote: Ignore blobs referenced in BEP if the generating
202 action cannot be cached remotely. (#14389)
203 + 5aef53a8884038f3c9f06e6dddb9372196253378:
204 Remote: Don't blocking-get when acquiring gRPC connections.
205 (#14420)
206 + 005361c895da334beb873901e93aff06d180256e:
207 Disable IncludeValidation for ObjC in bazel
208 + d703b7b4f09fb3c389f99e52bac1f23930280b56:
209 Update java_tools v11.6
210 + 90965b072eb4a6dec8ff5b8abde3726732d37bdc:
211 Stop remote blob upload if upload is complete. (#14467)
212 + dc59d9e8f7937f2e317c042e8da8f97ba6b1237e:
213 [5.x] Make remote BES uploader better (#14472)
214 + 2edab739e1f61fe8813230b03396ca46f0790089:
215 Avoid too verbose warnings in terminal when cache issues
216 + 1160485192b5e6d95bcd426b55cc9a35fc6b8614:
217 Rename --project_id to --bes_instance_name
218 + c63d9ecbe5fcb5716a0be21d8fc781d7aa5bbc30:
219 Automated rollback of commit
220 bfdfa6ebfd21b388f1c91f512291c848e1a92a96.
221 + b341802700484d11c775bf02d80f43ba3f33b218:
222 [apple] support watchos_arm64 in toolchain
223 + 43bcf80a3dfdc5ac89c1e4d615d6f29a495855fb:
224 Disable implicitly collecting baseline coverage for toolchain
225 targets.
226 + 302971e1b3d803069ac949c0085c0d2a3916c8ab:
227 Automated rollback of commit
228 7d09b4a15985052670244c277e4357557b4d0039.
229 + 62002024ca7012ffe0f4fc74ac20b5471513c8c8:
230 Bzlmod: Starlarkify default attr values for TypeCheckedTags
231 + 38117d491cbc4a5686e0bdb1e58f8946d96aed58:
232 Fix build after rc4 cherrypicks (#14581)
233```
234
235This release contains contributions from many people at Google, as well as amberdixon, Benjamin Peterson, Brentley Jones, Dan Fleming, Danny Wolf, Fabian Meumertzheim, Keith Smiley, Noa Resare, Oliver Eikemeier, Philipp Schrader, Xùdōng Yáng, Yannic.
236
Bazel Release Systemf0f1fb42022-01-14 17:48:08 +0100237## Release 6.0.0-pre.20220105.5 (2022-01-14)
238
239```
240Baseline: 60dedb723131e2eb0070fc19bb218e0019351917
241```
242
243Important changes:
244
245 - Adds `--experimental_worker_multiplex_sandboxing` flag that
246 controls whether to sandbox multiplex workers that support it.
247
248This release contains contributions from many people at Google, as well as Alex Scott, Benjamin Peterson, Fabian Meumertzheim, Patrick Balestra, Pras Velagapudi, Ulrik Falklof, Yannic Bonenberger.
249
Bazel Release System15a602a2022-01-11 17:38:27 +0100250## Release 6.0.0-pre.20211220.1 (2022-01-11)
251
252```
253Baseline: 7f55cb768ae22352ac6599086e7cf6525a9565a5
254```
255
256Important changes:
257
258 - Match remote and local xcode version by most granular version.
259
260This release contains contributions from many people at Google, as well as Kevin Lin, lihu.
261
Bazel Release Systemfafe16d2021-12-21 20:41:56 +0100262## Release 6.0.0-pre.20211215.3 (2021-12-21)
263
264```
265Baseline: 8dcf27e590ce77241a15fd2f2f8b9889a3d7731b
266
267Cherry picks:
268
269 + 7074bcff7d1fcba7230fec11ce1d155b6e3d51b1:
270 Automated rollback of commit
271 ed825a49ef18a87e75fcbc381bb9b656e83b04fb.
272```
273
274Important changes:
275
276 - Allow \a \b \f \v escape sequences in Starlark.
277
278This release contains contributions from many people at Google, as well as Alex Eagle, Benjamin Peterson, Bradley Burns, Dan Fleming, Fabian Meumertzheim, Greg, Xavier Bonaventura, Xdng Yng.
279
Bazel Release System944f7512021-12-20 17:46:22 +0100280## Release 6.0.0-pre.20211202.4 (2021-12-20)
281
282```
283Baseline: 00a3354d54752648fc81a8c7277775780a05f5f2
284
285Cherry picks:
286
287 + c873525af9e045c87dfca2ac82ca68e9b76f8820:
288 Extract out constant for "current time" magic value in
289 Path#setLastModifiedTime, to avoid confusion.
290 + 7074bcff7d1fcba7230fec11ce1d155b6e3d51b1:
291 Automated rollback of commit
292 ed825a49ef18a87e75fcbc381bb9b656e83b04fb.
293```
294
295Important changes:
296
297 - alias() can now select() directly on constraint_value()
298
299This release contains contributions from many people at Google, as well as Brentley Jones, Chris Fredrickson, Danny Wolf, Dimi Shahbaz, Ed Schouten, Fabian Meumertzheim, Fredrik Medley, Greg Estren, hvadehra, Noa Resare, Simon Bjorklen, Tetsuo Kiso.
300
Bazel Release System139081f2021-12-07 14:41:37 +0100301## Release 6.0.0-pre.20211117.1 (2021-12-07)
302
303```
304Baseline: e5b3536583f742e0dda9fd377dffbda3c1e3d366
305```
306
307Incompatible changes:
308
309 - Removing java_common.javac_jar Starlark call.
310 - native.existing_rule now returns select values in a form that is
311 accepted by rule instantiation. This is a breaking API change
312 because there is some code that relies on the precise type
313 returned, including brittle workarounds for this bug specifically
314 and insufficiently flexible workarounds for other issues with the
315 intersection of select and native.existing_rule.
316 - flipped incompatible_use_toolchain_resolution_for_java_rules, see
317 #7849
318 - Query output=xml/proto/location for source files will now show
319 the location of line 1 of the source file (as the new default)
320 instead of its location in the BUILD file.
321 - Specifying a target pattern underneath a directory specified by
322 .bazelignore will now emit a warning, not an error.
323 - Query `--order_output=auto` will now sort lexicographically.
324 However, when `somepath` is used as a top level function (e.g.
325 `query 'somepath(a, b)'`), it will continue to output in
326 dependency order. If you do not want the lexicographical output
327 ordering, specify another `--order_output` value (`no`, `deps` or
328 `full`) based on what ordering you require.
329 - In the build event stream,
330 BuildMetrics.TargetMetrics.targets_loaded is no longer populated.
331 Its value was always mostly meaningless.
332 BuildMetrics.TargetMetrics.targets_configured and
333 BuildMetrics.ActionSummary.actions_created now include configured
334 aspect data.
335 - //visibility:legacy_public has been removed.
336 - Flip and remove incompatible_dont_collect_so_artifacts
337 (https://github.com/bazelbuild/bazel/issues/13043).
338 - Remove flag --experimental_no_product_name_out_symlink: it is
339 always true.
340 - The Starlark method generate_dsym in objc fragment has
341 been deleted. Please use the equivalent apple_generate_dsym in
342 cpp
343 fragment instead.
344 - Native libraries in data attribute are not collected. See
345 https://github.com/bazelbuild/bazel/issues/13550 for details
346 - Enforce the `--profile` path to be absolute.
347 - Enforce the --memory_profile path to be absolute.
348 - JavaToolchainInfo.jvm_opt returns Depset instead of a list.
349 - --apple_sdk has been deleted. It is a no-op.
350 - --bep_publish_used_heap_size_post_build is now a no-op and will
351 be deleted in a future release. Use --memory_profile=/dev/null
352 instead.
353 - Flipped --incompatible_disallow_resource_jars (see
354 https://github.com/bazelbuild/bazel/issues/13221).
355 - Remove --bep_publish_used_heap_size_post_build
356 - JSON trace profile: rename counter names.
357 - Removed --action_graph from the dump command.
358 - Remove `--{experimental_,}json_trace_compression` option.
359 - Remove `--experimental_profile_cpu_usage`.
360 - flipped --incompatible_java_common_parameters (see #12373)
361
362New features:
363
364 - Args.add_all and Args.add_joined can now accept closures in
365 map_each if explicitly enabled via allow_closure.
366 - Add `--bes_header` flag to pass extra headers to the BES server.
367
368Important changes:
369
370 - Flag --incompatible_objc_compile_info_migration is removed. See
371 #10854.
372 - Flag --incompatible_objc_compile_info_migration is removed. See
373 #10854.
374 - Flag --incompatible_objc_compile_info_migration is removed. See
375 #10854.
376 - none
377 PAIR=cmita
378 - The --incompatible_load_python_rules_from_bzl flag is now a no-op.
379 - Filter all (instead of just C++) source files for coverage output
380 according to --instrumentation_filter and
381 --instrument_test_targets.
382 - The `--incompatible_disable_native_apple_binary_rule` flag has
383 been added which disables the native `apple_binary` rule. Users
384 who need to use `apple_binary` directly (if they cannot use one
385 of the more specific Apple rules) should load it from
386 https://github.com/bazelbuild/rules_apple.
387 - The Android rules' --use_singlejar_apkbuilder is now a no-op.
388 SingleJar will always be used to build APKs.
389 - dict.setdefault(key, ...) now fails if dict is frozen, even if it
390 already contains key. This is an incompatible API change.
391 - Flag --incompatible_objc_provider_remove_compile_info is removed.
392 See #11359.
393 - Starlark now permits def statements to be nested (closures).
394 - native.existing_rule now returns select values in a form that is
395 accepted by rule instantiation. This is a breaking API change,
396 though the fallout is expected to be small.
397 - Starlark now supports lambda (anonymous function) expressions.
398 - The "test" and "coverage" commands no longer return 3 when a
399 test action fails because of a system error. Instead, the exit
400 code
401 reflects the type of system error.
402 - The undocumented ctx.expand feature no longer exists.
403 - Make --legacy_dynamic_scheduler a no-op flag.
404 - Multiplex persistent workers can now use the JSON protocol.
405 - native.existing_rule now returns a mutable list, not a tuple, for
406 a list-valued attributes. This is an incompatible API change.
407 - Roll back change to have native.existing_rules use list instead
408 of tuple.
409 - BEP includes test suite expansions.
410 - config_setting now honors `visibility` attribute (and defaults to
411 `//visibility:public`)
412 - Change the MultiArchSplitTransitionProvider to be based on
413 platform type + CPU instead of fixed "ios_" + cpu.
414 - enforce config_setting visibility. See
415 https://github.com/bazelbuild/bazel/issues/12932 for details.
416 - add a flag to build v4 signature file
417 - Added _direct_source_jars output group to Java related targets.
418 END_PUBLIC
419 - pkg_deb is no longer part of @bazel_tools//build_defs/pkg:pkg.bzl.
420 Use https://github.com/bazelbuild/rules_pkg/tree/main/pkg instead
421 - Allowing the lipo operations to be conditional in the
422 linkMultiArchBinary API for Apple binaries. Single architecture
423 slices are now returned through AppleBinaryOutput and the
424 Starlark API.
425 - Release restriction for "-" in the package name for Python
426 sources. Now `py_binary` and `py_test` targets can have main
427 source file with "-" in the path.
428 - Users consuming BEP may assume that a `named_set_of_files` event
429 will
430 appear before any event referencing that `named_set` by ID. This
431 allows consumers
432 to process the files for such events (eg. `TargetCompleted`)
433 immediately.
434 - BEP includes all files from successful actions in requested
435 output groups.
436 Previously, an output group's files were excluded if any file in
437 the output group
438 was not produced due to a failing action. Users can expect BEP
439 output to be larger
440 for failed builds.
441 - In BEP, TargetComplete.output_group has a new field `incomplete`
442 indicating that the file_sets field is missing one or more
443 declared artifacts
444 whose generating actions failed.
445 - The flag `--toolchain_resolution_debug` now takes a regex
446 argument, which is used to check which toolchain types should
447 have debug info printed. You may use `.*` as an argument to keep
448 the current behavior of debugging every toolchain type.
449 - Add runfiles.merge_all() for merging a sequence of runfiles
450 objects.
451 - runfiles.merge() and merge_all() now respect
452 --nested_set_depth_limit.
453 If you hit the depth limit because you were calling merge() in a
454 loop, use
455 merge_all() on a sequence of runfiles objects instead.
456 - Bazel will no longer create a bazel-out symlink if
457 --symlink_prefix is specified: the directory pointed to via the
458 bazel-out symlink is accessible via ${symlink_prefix}-out. If
459 this causes problems for you, set
460 --experimental_no_product_name_out_symlink=false in your builds
461 and file an issue.
462 - Updates worker protocol with cancellation fields, and adds
463 experimental_worker_cancellation flag to control cancellation.
464 - Simplify build failure output by always using `NNN arguments`.
465 - trim_test_configuration now defaults to on
466 - Mark genrule.srcs as a source attribute for coverage.
467 - When using --allow_analysis_failures (for example, via
468 bazel-skylib's
469 analysistest with `expect_failure = True`), analysis-time
470 failures in aspect
471 implementation functions will now be propagated and saved in
472 AnalysisFailureInfo, just like analysis-time failures in rules.
473 - cquery --noimplicit_deps now correctly filters out resolved
474 cc_toolchains
475 - Sign apks deterministically.
476 - Make gcov optional in cc_toolchain tools.
477 - If --experimental_prefer_mutual_xcode is passed, Bazel will
478 choose the local default (instead of the newest mutually
479 available version) if it's available both locally and remotely.
480 - Remove java_lite_proto_library.strict_deps attribute.
481 - Generate proguard configurations deterministically.
482 - Adds a new flag, `--incompatible_enable_cc_test_feature` which
483 switches from the use of build variables to the feature of the
484 same name.
485 - Dropped fragile xz support from built in pkg_tar. Users requiring
486 xz
487 compression should switch to bazlebuild/rules_pkg.
488 - If all strategies of one branch (the local or remote execution
489 branch) of the `dynamic` strategy fail to even accept (via the
490 response they give from `canExec`) the action, `dynamic` will now
491 try to see if the other branch can accept it. (Trying to run it
492 and it failing will still cause a failure if it was the first
493 result, this is about strategies claiming they can't even try the
494 action)
495 - Add `disable_annotation_processing` option to
496 `java_common.compile`, which disables any annotation processors
497 passed to `plugins` or in `exported_plugins` of `deps`
498 - Remove obsolete --incompatible_prohibit_aapt1
499 - The minimum Android build tools version for the Android rules is
500 now 30.0.0
501 - Adds --experimental_reuse_sandbox_directories flag to reuse
502 already-created non-worker sandboxes with cleanup.
503 - --experimental_force_gc_after_build is deprecated and will be
504 removed soon. Use --bep_publish_used_heap_size_post_build instead
505 - Forward coverage-instrumented files from non-tool dependencies by
506 default.
507 - The used_heap_size_post_build field in BEP is populated when the
508 --memory_profile flag is set
509 - --run_validations defaults to true.
510 - Consider label_keyed_string_dict attributes when gathering
511 instrumented files for coverage.
512 - Remove flag
513 --experimental_forward_instrumented_files_info_by_default, now
514 that this behavior is the default.
515 - When using MemoryProfiler with multiple GCs via the
516 --memory_profile_stable_heap_parameters flag, we do a more
517 precise calculation of heap used at the end of the build. This
518 will generally result in lower values.
519 - --bep_publish_used_heap_size_post_build is deprecated. Use
520 --memory_profile=/dev/null instead.
521 - Disable --all_incompatible_changes flag.
522 - The --all_incompatible_changes flag is now a no-op
523 - The `--toolchain_resolution_debug` flag now accepts regexes
524 matching targets, as well as toolchain types, when choosing what
525 debug messages to print.
526 - Adds --experimental_existing_rules_immutable_view flag to make the
527 native.existing_rule and native.existing_rules functions more
528 efficient by
529 returning immutable, lightweight dict-like view objects instead
530 of mutable
531 dicts.
532 - Add support to length-delimited protos as undeclared output
533 annotations []
534 - The deprecated "relative_to_caller_repository" parameter has been
535 removed from the Label constructor.
536 - The toolchain transition is now enabled for all toolchains.
537 - incompatible_disable_depset_items is flipped
538 - The --experimental_existing_rules_immutable_view flag has been
539 renamed to --incompatible_existing_rules_immutable_view
540 - Bazel no longer supports Java 8. From this version on, the
541 minimum required JDK is OpenJDK 11.
542 - Deprecate --incompatible_applicable_licenses flag, in preparation
543 for removal in Bazel 6.x.
544 - Treat py_*.srcs_version="PY2" the same as "PY2ONLY".
545 - The Build Event Protocol now contains file digests and sizes
546 along with the file name and URI.
547 - Refactor system suspend event handling.
548
549This release contains contributions from many people at Google, as well as Adam Liddell, Alessandro Patti, Alex Eagle, Alex Eagle, Alex Eagle, Andrew Katson, Anthony Pratti, Artem V. Navrotskiy, Austin Schuh, Benedek Thaler, Benjamin Lee, Benjamin Peterson, Benjamin Peterson, Ben Lee, Brandon Jacklyn, Brentley Jones, bromano, Cameron Mulhern, Christopher Peterson Sauer, Christopher Sauer, Cristian Hancila, crydell-ericsson, Dan Bamikiya, Daniel McCarney, Daniel Wagner-Hall, Danny Wolf, Dave MacLachlan, Dave Nicponski, David Cummings, David, David Ostrovsky, Delwin9999, Denys Kurylenko, Dmitry Ivankov, dorranh, ecngtng, Ed Schouten, Eitan Adler, Elliotte Rusty Harold, erenon, Eric Cousineau, Ethan Steinberg, Fabian Meumertzheim, Fabian Meumertzheim, FaBrand, Felix Ehrenpfort, Finn Ball, frazze-jobb, Fredrik Medley, Garrett Holmstrom, Gautam Korlam, George Gensure, goodspark, Greg Estren, Grzegorz Lukasik, Grzegorz Lukasik, hvadehra, Ikko Ashimine, Jesse Chan, Joe Lencioni, Johannes Abt, John Laxson, Jonathan Schear, Justus Tumacder, Keith Smiley, kekxv, Kevin Hogeland, Lauri Peltonen, Liu Liu, Lszl Csomor, m, Marc Zych, Mark Karpov, Masoud Koleini, Mathieu Olivari, Matt Mackay, Mauricio Galindo, Max Liu, Menny Even Danan, menny, Michael Chinen, Nathaniel Brough, Nick Korostelev, Niek Peeters, Nikolay Shelukhin, odisseus, Oleh Stolyar, Olek Wojnar, Olle Lundberg, Omar Zuniga, Paul Gschwendtner, Peter Kasting, Philipp Schrader, Pras Velagapudi, Qais Patankar, Rabi Shanker Guha, Rahul Butani, Rai, ron-stripe, Ryan Beasley, samhowes, Samuel Giddins, Sebastian Olsson, Sergey Tyurin, Steve Siano, steve-the-bayesian, Stiopa Koltsov, susinmotion, tatiana, Tetsuo Kiso, Thaler Benedek, Thi Doan, Thi Don, Thomas Carmet, ThomasCJY, Timothe Peignier, Timothy Klim, Tobi, Torgil Svensson, Trustin Lee, Ulf Adams, Ulrik Falklof, Uri Baghin, Vaidas Pilkauskas, Vertexwahn, William Muir, wisechengyi, Wren Turkal, Xavier Bonaventura, Yannic Bonenberger, Yannic Bonenberger, Yannic, Yury Evtikhov, Yuval Kaplan, Yuval K, Yuval, [zqzzq].
550
Bazel Release Systemd826b8d2021-12-02 19:12:26 +0100551## Release 4.2.2 (2021-12-02)
552
553```
554Baseline: 37a429ad12b4c9e6a62dbae4881a1ff03b81ab40
555
556Cherry picks:
557
558 + a689d673abadf80f1efaf8ddaeee92d56fc2847b:
559 Use getRunfilesPath for run_under executable path generation.
560 getRootRelativePath doesn't return a valid runfiles path for
561 external source files anymore after the recent external source
562 root change. Also, it won't work for external labels either once
563 the --nolegacy_external_runfiles becomes default. This fixes
564 issue #12545.
565 + d90ec67fdab9710f649a3c1d374fb6b938b9271a:
566 Fix NPE when coveragerunner is not set on the toolchain.
567 + 8555789dd239a5ac229c1d9cee80b2a9f30b3bf7:
568 Fix the classic query package-loading cutoff optimization with
569 external workspaces.
570 + 268bedd5b8f4fc0aa4158248a8cf2d0d8ad79e52:
571 Update turbine
572 + 613c9fe7d6ad265d80be569485e599394fff310e:
573 Update turbine
574 + f28f6978b118868a7faec5ad3818ea0582ffb8f5:
575 Update turbine
576 + 69b43621a16d7ede62a3b876772e8b297d4ea09e:
577 Update turbine
578 + 4d4ab50501d5f493cea35885bd89b2a56b0027f7:
579 Revert "Update turbine"
580 + 89b9a048eec8f108795bebdada5b6c9d33dacff2:
581 Update turbine
582 + d31f6dfc85b73750139d287acdcd29a596e1884a:
583 Update turbine version
584 + 57672aca01b3be895382c952b550c9f8edf6c9f2:
585 Update turbine
586 + bef4bbbb47d47befe3711d06f358782ee12554f9:
587 Update turbine
588 + d113d7454127bba78aa618dac81e5d164920b662:
589 Update turbine
590 + 1489f0f4cae3e9247a70e4003ab76bef45c5b986:
591 Support Scala3 .tasty files
592 + 0d2d95cd7e34b4061c8e5fdfd21ba0ab8818c685:
593 Update to java_tools javac11 release 10.5 (#12647)
594 + a9419f38d5f29af31a6c8ebda09a6e0303a6ba54:
595 Fix common prefix for instrumentation filter
596 + 84fadcf81f81b2d7343ca4151a5639be7f2263ee:
597 Fix builds for filegroup targets with incompatible dependencies
598 + e43825d0bef359f645e1cabf2164fd2db6ee4a35:
599 Revert "Remove
600 --incompatible_blacklisted_protos_requires_proto_info"
601 + 082d58de852ebaa640bcf13cf419cbb94eec2b26:
602 Transform roots along with paths during output deletion.
603 + e8835c1c221d76a2d5532d18083eaa04401619b3:
604 AttributeContainer.Large now handles more than 127 attributes.
605 + e1e87349335ac59f9b3df47cee8b999faeaa6d11:
606 Add an env attribute to all test and binary rule classes
607 + a87d7ed2411d5382bac58a20b79e09c464ad13b9:
608 Take no action to prefetch empty artifacts.
609 + 3e969ff24a6a0e03139b9f288c88451a7dfa97cd:
610 Fix a couple of bugs with Incompatible Target Skipping
611 + e6670825b1e183f81f5c864aafd425d512fa9ff5:
612 Pass --host_action_env to host options hostActionEnvironment
613 attribute
614 + 07400c0392e7be163f8a3396fa5cf89ce6705412:
615 Add --{no,}autodetect_server_javabase.
616 + c83366064621d5a265eba14d93a03deff58fe6d8:
617 Only treat "env" and "env_inherit" attrs specially for native
618 rules
619 + 6a60b30cd0f22d0ab84b2ddd658d5ccb899a8a76:
620 Fix coverage support when using default_java_toolchain. (#12801)
621 + 4158a6f512e52516437e00f8d9609a91be7fc195:
622 Revert JacocoCoverage target to remote_java_tools_java_import
623 and add a new target for remore_java_tools_filegroup. (#12813)
624 + f6d30cf5ef9a8a39fea7072317f89a872387b790:
625 Add windows_msvc back to conditions in bazel_tools.
626 + 6b33bdb1e22514304c0e35ce8e067f2175685245:
627 Release 4.0.0 (2021-01-21)
628 + 8811e27353c2c10980faf7e4c5e44b431d2d4f1c:
629 Fix error message from getPrerequisites to not print internal
630 details.
631 + 27e15ad11410eb1014f5247fd0eeb31a46733c07:
632 Clean up ConfiguredTargetValueAccessor and
633 ConfiguredTargetAccessor
634 + e87feb8ac9573cef993824f82370d0389570521d:
635 Move getConfigConditions into ConfiguredTarget.
636 + 34d98234324da83e93ba0d5ef5702880d5ac7c5c:
637 Change ConfiguredTargetQuery to use KeyedConfiguredTarget as a
638 value.
639 + 079bb7d69931705bb2b092c9017090e224ef3043:
640 Clean up old dependencies that are unused since
641 https://github.com/bazelbuild/bazel/commit/34d98234324da83e93ba0d
642 5ef5702880d5ac7c5c.
643 + e03cb63e059420847d6578d7cbfe93f05615c95e:
644 Update bazelbuild/platforms to a current release. - Roll forward
645 https://github.com/bazelbuild/bazel/commit/0a4533420a3de467fd211d
646 7f925cf88e0cd5b76a with kythe fix.
647 + 2eb1bf53d5fef13b89ee440af4f83003d1d0b50a:
648 Update docs and tests to use the @platforms//:incompatible
649 constraint
650 + c71697cf33b0fbbb42fc2910bac83960edc7e855:
651 Clarify test_suite behaviour in the Platforms docs
652 + dfb70ea4cae2ffffb76e9741d86c96505a6d05ad:
653 Enable toolchain resolution for filegroup targets.
654 + 24d086446f74606819dc53c3a436caa056ff05b7:
655 PlatformProviderUtils should ignore targets that don't have the
656 needed
657 + ba60c0b3f9bbd00975c984244839b155e84b4c5d:
658 ijar: fix manifest sections handling
659 + 58bb42ad7ca263a75c6eeef51482f805726663a5:
660 Revert "Switch to -fdebug-compilation-dir"
661 + 268bedd5b8f4fc0aa4158248a8cf2d0d8ad79e52:
662 Update turbine
663 + 613c9fe7d6ad265d80be569485e599394fff310e:
664 Update turbine
665 + f28f6978b118868a7faec5ad3818ea0582ffb8f5:
666 Update turbine
667 + 69b43621a16d7ede62a3b876772e8b297d4ea09e:
668 Update turbine
669 + 4d4ab50501d5f493cea35885bd89b2a56b0027f7:
670 Revert "Update turbine"
671 + 89b9a048eec8f108795bebdada5b6c9d33dacff2:
672 Update turbine
673 + d31f6dfc85b73750139d287acdcd29a596e1884a:
674 Update turbine version
675 + 57672aca01b3be895382c952b550c9f8edf6c9f2:
676 Update turbine
677 + bef4bbbb47d47befe3711d06f358782ee12554f9:
678 Update turbine
679 + d113d7454127bba78aa618dac81e5d164920b662:
680 Update turbine
681 + ad241fbebd90a9f0ad65ccd0658838f57030db68:
682 Allow cquery to filter out incompatible targets
683 + 1782f0ae751569607ef88930c822ac460a1f8bb3:
684 Patch grpc to fix cares selecting the wrong source when building
685 for darwin_arm64 cpu.
686 + 8f7bc2f67fafcaa8d25cfc77eaaedbf8eed2984a:
687 [1/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
688 blobs
689 + 848a51747a460ab4c5185e4c61ab522a9981cbea:
690 [2/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
691 blobs
692 + 9b30172547f2093acb56aedf159a77d5dceffda2:
693 [3/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
694 blobs
695 + 1e258d2a7a5221613047e5cee0aaec5b56045d2b:
696 Allow exec groups to inherit from the rule or other exec groups.
697 + d0676693310215407224c1b8e8aea9e3eddc183d:
698 Support execution constraints per exec group
699 + f1e0d346c8235c855e61afc2adb870e4b895e002:
700 Clean up RuleContext to use a Table instead of a Map of Maps.
701 + 8186fbb47ab964a9affa9a0fc6315fcdbde2b5aa:
702 Documentation for #13110
703 + 321fe3b6b4e892821ee7dbf2d17dd8ae6a541913:
704 Prevent --repo_env from triggering unnecessary fetches
705 + 3ebf658cba43bbab1efc36518f0795a7d65e2d46:
706 Prevent a crash when using --repo_env=VAR without a value
707 + 913a985a5c2fc3842b12c6e5f29af0fa1bccfd6a:
708 Report digest of failed uploads
709 + 5122617b8a22fee7acd86c9c48f2c2737709ca3f:
710 Status error presentation with details
711 + 9a70805db543e2fb910e1c55ef3b3567362adf30:
712 Fix double shutdown of BuildEventArtifactUploader when BES+File
713 output enabled.
714 + 325eb956c92530bdfda54a36a186cae4245a4f7b:
715 Add rxjava3 to third_party
716 + ceaac966a7b977461b69ce9501df6a467f4a93b2:
717 remote: set executable bit of an input file based on its real
718 value
719 + 5b786da75837c5e29714e1d708c3cdf9a67ed32d:
720 Remote: correctly implement equals and hashCode.
721 + 48648503729d53fdee1322fde2c8e6c05e99cff9:
722 Fixed an error that bazel binary is not executable when testing
723 with remote execution.
724 + bc54c648aa1f99509c7c36d5e6b570d066689209:
725 Remote: Use parameters instead of thread-local storage to
726 provide tracing metadata.
727 + 92955e617b5c41713a5163dc0437c2a024b31815:
728 Remote: Use parameters instead of thread-local storage to
729 provide tracing metadata. (Part 2)
730 + 75bd1ff8ab56d241916bde36291301fa026b2bab:
731 Remote: Use parameters instead of thread-local storage to
732 provide tracing metadata. (Part 3)
733 + 37ee252f3744abc4511f55b5089cc52abd3ba09d:
734 Remote: Use parameters instead of thread-local storage to
735 provide tracing metadata. (Part 4)
736 + 71e35b165f924e2649a078fcf6007645d58039af:
737 Remote: Use parameters instead of thread-local storage to
738 provide tracing metadata. (Part 5)
739 + 32fc451600b6e94a015263eb1c8a63e974f6f4cc:
740 Write/QueryWriteStatus logging refinement/addition
741 + 97963c5bb24ac79eb3646dd61bfcf2f8a648af54:
742 Remote: gRPC load balancing. (Part 1)
743 + e2b9a42a61596b0d24f0cadd6b7157b7f1efb221:
744 Remote: gRPC load balancing. (Part 2)
745 + 6667ad7dd77f8d97952133052c17e7779c1430ec:
746 Remote: gRPC load balancing. (Part 3)
747 + 7c081eb020186bfb16d4ef1c3832a8e946e99da1:
748 Remote: gRPC load balancing. (Part 4)
749 + 17afbe4e224b359fee6415a5bd71bbedaa7843eb:
750 Implement getMessage for BulkTransferException
751 + a6293b3df521aea9075b2ebbcdb675a7d02d3c32:
752 Remote: gRPC load balancing. (Part 5)
753 + 7a62c2d4e27e398f440910c81eacc384f38ca8be:
754 Remote: Add interoperability between Rx and ListenableFuture.
755 + 1fcb18a0b455bfcb8e9940778f37d8c82c5ed5a0:
756 Update to latest remote-execution proto
757 + dad96301d12aa77eb67399e08265a5f30f5ffd6a:
758 Set Platform on Action not just Command
759 + 6c5a3ee0dcbb4b804f4aa85c038a378fb70eb1f9:
760 Remote: Add AsyncTaskCache which is used to deduplicate task
761 executions and cache the results.
762 + 9d0c7325ac810febe565a62fdd875ae0c240b274:
763 Remote: Use AsyncTaskCache inside RemoteActionInputFetcher.
764 + f54fe07209acc25340df8d2e02993b1add2deafa:
765 Add --experimental_repository_disable_download to allow users
766 disable download for external repos
767 + b243584a479eb4481a9bf4f69acc899610a3b630:
768 Report errors parsing rewriter config file
769 + 63bc1c7d0853dc187e4b96a490d733fb29f79664:
770 Downloader rewriter config has all_blocked_message
771 + 495ac923f398443be45c20ab29d183fe47e08911:
772 Allow UrlRewriter to change protocol, i.e. https->http, and
773 http->https
774 + 8dbbde0037264c1db4b229a09f98a61ab4ca06b0:
775 Allow overriding the hostname and instance name in bytestream://
776 URIs
777 + 0881c80d29acecdfbb58c49156f805e8c50db117:
778 Don't set requestId on non-multiplex requests.
779 + e3b7e17b05f13ff183a4d7efec8ec797f3f5eaa3:
780 When generating a symlink in _virtual_includes, add the original
781 header to the 'allowed to use' set too
782 + f8f66f36ad299a0ea019c94100d5a8e2018f5ab5:
783 Make SimpleLogHandler not swallow interrupts.
784 + f8606e5e76579442a1c6563e718ea54c673f1a04:
785 linux-sandbox: don't assume -lrt, -D__STDC_FORMAT_MACROS
786 + dac0d40d0eb903f5cb70341398d1a333c19adf3a:
787 Improve "Common Attributes" section
788 + a607d9dc70ac67f1aa2c32ca954177f9c77860be:
789 Never create more than one process per WorkerMultiplexer.
790 + 80c03ef14a1842d1e3475b1adf98adeb05df33f9:
791 Move sending requests and reading responses for multiplex
792 workers into separate subthreads.
793 + 003cfcde3fd3901c1279ba1db3db3a14536248b4:
794 Allow use of JSON protocol in multiplex workers.
795 + 308bce36cba46095fe41866e703710035ddddada:
796 Actively kill off still-active workers when stopping work on
797 interrupt.
798 + 8959dff512fe4505af786bcf2ef981ec7082a913:
799 Add sanitizer support to Apple platforms
800 + 32f16e9360f3e1856db1775eb5014b930da2a303:
801 Fix a Google-internal broken link.
802 + c9e2be52a067dd9abf5efa4f5f55bb5b98cf5d3b:
803 Add SHA-1 to subresource integrity format for download()
804 checksums
805 + 3b3e6424c6fbd51d4c4ebb6aa25f1d1f4720221c:
806 Remove fallback strategy support for workers, add flag for it in
807 sandbox.
808 + 3457f2ae11e4543de0a5e6e8e37c3aff067891fd:
809 Update to java_tools javac11 10.6 (#13245)
810 + 4928295b236ec8f590a7e9d863502bc2f50a77d9:
811 Allow .S files in C++ Starlark cc_common.compile.
812 + 1b18d65227c127fe946d3fcde4586158bc7e5fcb:
813 Automatic code cleanup.
814 + b5d6c38535c7f6f1eab3fd4c8d3d2da91d0b0f8a:
815 Change short output of worker type to have the same logic as the
816 worker creation for sandboxing vs. multiplex.
817 + e7a0a71f50b69df5d38a8a85fefd36d211e12e8d:
818 More properly destroy workers on interrupt.
819 + 7056711eb11b672133274eb29fc93b01dcf088d5:
820 Make WorkRequestHandler do a GC after some amount of CPU time
821 has been used on requests. For Bazel and Blaze, defaults to 10s
822 based on benchmarking.
823 + 596653d3cf76e7b208da343e1fde5fe20273a5ff:
824 Allow tree artifacts to be source or header inputs to
825 cc_common.compile()
826 + 055c93d11ab20cc4479539b24bbdfa5cab78a342:
827 Switch to path autocompletion after -- for bazel run commands.
828 + 807f2a1929e23b60b237c63fadb25af81de2e3c3:
829 Fix Incompatible Target Skipping for test args
830 + 9a5cd854e0613f91d52075973e2454b1e009e1ef:
831 Fix order of build request id and command id
832 + 706f5acd02363e48076dc97e37613fd968932d03:
833 Fix bazel crash when passing config_setting to
834 target_compatible_with
835 + 61da1d2bf10eabba4c75de959b0374f302d89d70:
836 Support multiple --bazelrc on command line
837 + 5593358a58b66f06c4e421bb48856de94c3fd625:
838 Update ConfiguredTargetFunction.computeUnloadedToolchainContexts
839 to
840 + 662cf54de7a103db30e04ebae2d2b919437c4846:
841 Remote: Fix an issue that a failed action could lead to
842 RuntimeException caused by InterruptedException thrown when
843 acquiring gRPC connections.
844 https://github.com/bazelbuild/bazel/issues/13239
845 + a3a1763212f29932618b9b9b2f929976ae0e3b6e:
846 Pass more `--add-exports=` flags
847 + d2b942879471786e82f1c96eea8722bbe7919fc1:
848 Remote: Fixed a bug that remote cache is missed due to
849 executable bit is changed
850 + 616dc264f02907d7b7887285d22307dfe6d097b6:
851 Fix Bazel Coverage with C++ to work with Remote Execution
852 + 5f40d12e741aa30d506eaa15673fb2ae76d29468:
853 Fix external_path_test with newer Xcode versions.
854 + b416193075642017e13c774422b49cb07fb65c23:
855 Allow using embedded tools in sandboxed spawn runners.
856 + eb762d4e7431637e607146b1c191485795047ef9:
857 Fix racy write of temporary files while staging virtual inputs
858 for the sandbox.
859 + f31e86768579ad7ec57ba13f4c3c1348f5c2702e:
860 Update platforms_test to not rely on filegroup not using
861 toolchain
862 + 13031e5b3bd7c8f29b96b2fee1b380160e0e27fc:
863 Update SkyframeTests to not rely on filegroup not using toolchain
864 + 11651824a9d0ffb9adb9611dcd39f4c95a59d750:
865 Update ConfigurableAttributesTest to not rely on filegroup not
866 using …
867 + 4b68532e7ea5eb80c926b7b8e2ec2be300004628:
868 Make WorkerExecRoot not be a subclass of SandboxedSpawn.
869 + 31db460a45767de0bcd664a6efbe9d163b85b802:
870 Make WorkerExecRoot not be re-created on each createFileSystem()
871 call. Preparation for holding a map of existing links, but also
872 just nicer.
873 + a2cc0460dc84ad2dc88019af2fe2a65ce80c61e5:
874 Start the file existence check traversal from the execroot base
875 instead of execroot so that external repo files at
876 "<execroot>/../<path>" are correctly handled when the sibling
877 repository layout is enabled.
878 + b048282c7893231d3a7191b251804973917b07a4:
879 Use readdir for cleanExisting in WorkerExecRoot.
880 + 270f00dd01fa06cf3e813da5a406be3446de7377:
881 Add native support for Apple Silicon
882 + 8e56b9423e8ad2f7323fb90b19b73858def81e39:
883 Explicitly state that embedding macOS OpenJDK is for x86_64
884 + 09c621e4cf5b968f4c6cdf905ab142d5961f9ddc:
885 Remote: Fix a race that AsyncTaskCache#Execution could be reused
886 after disposed which results in
887 CancellationException("disposed") propagated to downstream.
888 + 0299cd7e17203a4ce0ea947b62a7c55f1afb8225:
889 Remove wrapped_clang params files after use
890 + 47edc57806056f3c8764241ed41b8acc72bd2ebf:
891 Silence swiftmodule timestamp warnings
892 + f6e1074b09ebefba185c0531e9cea26b9596c8a9:
893 Remote: Use shutdownNow() instead of shutdown() in
894 ChannelConnection#close() as a workaround to a gRPC bug.
895 + 71be4ea9e3d20bf90129e34a6a2899fe8401be36:
896 And mnemonic and label to remote metadata
897 + 615e1b16a81b0defc15699ec8027d6ddd70366d1:
898 Change `set -x` in coverage to be set by var
899 + fe4daea99c8cd163793eca84bfb12c8fc437616b:
900 Bump minimal JDK install base maximum size from 290 to 295 MB.
901 + 4840a68cd273a429e46d4114a3973fd11d0e3583:
902 Remote: Check the return value of ActionOwner.getLabel() since
903 it could be `null`.
904 + 14abe4fd7c3967686a3536939fdc3882e691bca2:
905 Allow `DiffAwareness` to share precomputed information about the
906 workspace and propagate it to the `WorkspaceStatusAction`.
907 + 082d98772690946ed29c157e60640c97a6e1195b:
908 Implement available() method for Windows subprocesses.
909 + c2bdd034014f66ce14529cc353cda18a32320f6c:
910 Move --repo_env to common options
911 + e09f2743738044095b9d784ea62df16b7f5750e6:
912 Revert "Documentation for #13110"
913 + a165baa250652fdc865ae0df39160be1f7f74c47:
914 Revert "Clean up RuleContext to use a Table instead of a Map of
915 Maps."
916 + 51fb9e13a864f4f704ae378ea632433bae7ddc31:
917 Revert "Support execution constraints per exec group"
918 + cb6e5c24b82e0e20a243145fb6ea32b09e3d1de3:
919 Revert "Allow exec groups to inherit from the rule or other exec
920 groups."
921 + 2ac6581aeaab33ba506fce96dfa6a75eaa819233:
922 Release 4.1.0 (2021-05-21)
923 + 7a0f36e3f0a21fed8857efbaa51ded2dbdeefab6:
924 Change gceMachineType of highcpu platform from n1-highcpu-32 to
925 e2-highcpu-32
926 + 19491a91143f0c6132aca62c5ae40ab72e9dc0e2:
927 Fix #10127: Remove Python 2 dependency from tools/android.
928 + 80c59dea59d4dce39d4b5d21665c3d7313197358:
929 fix main repo starlark options parsing - now flags passed on the
930 command line as --@main_workspace//flag and --//flag will both
931 parse to --//flag. Before this CL, the former maintained its
932 workspace prefix and we would get different entries for these
933 two formats.
934 + 451b296c3aceb127ebb4a313b6e9608854fa68fa:
935 Update threshold for long path shortening to be MAX_PATH - 4
936 + 671e0489a5bd6d5abb4dcd9bcfc85134cee38385:
937 Force source files to be readable before copying them from
938 sandbox.
939 + 6080c1e07f4229ea72eacd04faa9302e44955a84:
940 Let workers finish lost races without delaying dynamic execution.
941 + ee738dacb5d0089d3f57b15305057cb9ba675e74:
942 Fix label_flag and label_setting to not have a dependency on the
943 default
944 + 74de0ba4e79341c77b8b85ff4485f92287b6854c:
945 Java coverage: fix handling of external files
946 + 48eee8b4b447a2ad11df28dd81a2ccb65562b5f5:
947 [Bazel] Fix mobile-install for python2
948 + 763dd0ce6e1644bf895231432f616427a11d385a:
949 Add `stub_shebang` to `py_runtime`
950 + b2231c56d78c6d37bcb6f11e1e50fe68ee336b4a:
951 Move use of legacy sandbox -> local fallback to only be used
952 after all strategies have been tried, and improve messages
953 around it.
954 + 6dc941e58dfc1d4a9714a76b921fbe11fce658ed:
955 Remove restriction on generate_pdb_file to be only used in dbg
956 and fastbuild mode
957 + 5b95d9162b56b51c8e8f66258981ddf3c5d96765:
958 Check the result of Future.cancel() when cancelling the other
959 branch of dynamic execution.
960 + aaae8ce2881c8c1a5d4ad64f20d6e71aa372cf2e:
961 Update DEFAULT_MACOS_CPU to match host
962 + 2f0927a4fd9342f4dcfd43475d3f1c90c523584f:
963 Fix symlink creation on older Windows versions
964 + fd9cffdcaf05551126e66f1cd62815eaa1af6bd9:
965 Suppress interrupted status during pool closure
966 + 33903d28bcea0005adf9b2a8cc4659c5e2999bbe:
967 Fix Windows developer mode symlinks
968 + 0cd1666721bdbe988dc361c085bb43cbd41a27f3:
969 Respect Starlark options with values in `removeStarlarkOptions()`
970 + 7920ffef472b25db3f4e564e5a3a28a4664c666e:
971 cquery inherits from `test` not `build`
972 + 1e258d2a7a5221613047e5cee0aaec5b56045d2b:
973 Allow exec groups to inherit from the rule or other exec groups.
974 + d0676693310215407224c1b8e8aea9e3eddc183d:
975 Support execution constraints per exec group
976 + f1e0d346c8235c855e61afc2adb870e4b895e002:
977 Clean up RuleContext to use a Table instead of a Map of Maps.
978 + 8186fbb47ab964a9affa9a0fc6315fcdbde2b5aa:
979 Documentation for #13110
980 + e376580ae4e9ad5bddc196bfb6ad3127e3ff561b:
981 Split ExecGroup into a new target.
982 + 0cbb8a863522d2f77ab6b67a01e39b19a9a81807:
983 Create a new interface to allow Starlark objects to get a thread
984 when getIndex is called.
985 + d2e21cec31f09b27ef3589f47b0779f34077ca7e:
986 Renamed ExecGroupCollection to clarify that it is only for
987 Starlark usage.
988 + b9519f92f8ce096107164ca5075feced0e989de7:
989 Make StarlarkExecGroupContext use AutoValue.
990 + 52b1b748b2368820bac2ca94323fb82c39c00e51:
991 Use a dummy toolchain context for rules that don't have one.
992 + 41877d0fefe3f021f3ff6d4ce398d0deb27157e6:
993 Extract a separate StarlarkToolchainContext for starlark-only
994 operations.
995 + b120d4febc571f17e12501ad87fbff32ef94e9bb:
996 Fix toolchains to support type lookup.
997 + dc140d0b6119950dd4a7d71b125b15a78bacc8ce:
998 Move DEFAULT_EXEC_GROUP_NAME from ToolchainCollection to
999 ExecGroup.
1000 + 9b18d951a52819f1998ddfdc1739fa1b5bf0353d:
1001 Rename ToolchainCollection.getExecGroups to getExecGroupNames.
1002 + 10d4473bf476a587e3d9f9b2214581ec420c1919:
1003 BuildViewForTesting should directly call into
1004 ConfiguredTargetFunction.
1005 + 58a6fb1f8739e39125cc8c647f28cff2e79fe9aa:
1006 Move exec group tests out of platforms_test and into integration.
1007 + 7d5493d922761c3ce0037f0025912cc532c55ad7:
1008 Update creating exec groups that explicitly copy from defaults.
1009 + 8c6382a81237e72dbec24b3850df9481461e0015:
1010 Create a new ExecGroupCollection container to manage exec group
1011 inheritance and exec property parsing.
1012 + b4b0c321910bc968736ef48e8140528ea7d323cd:
1013 Fix unix toolchain for macos arm64 platform
1014 + f64f071f44394a33a1be40cb7642e2c881d1e9bb:
1015 Add `required_providers` attribute to Starlark defined aspects.
1016 + f2cbdcf67ac1990f05a8241ba8dae65795edac82:
1017 Don't ever claim /dev/null is an execpath.
1018 + ceec93c35ead1bd487e96a5fee46e8d080f88858:
1019 Don't ever claim /dev/null is an execpath.
1020 + 1f3f9f4c4b2eded90518aacd1b0b80c1b0dfd1c5:
1021 Use the parent directory of the exec root as the input root on
1022 RBE.
1023 + 4efeac9cb5f85325ed73f64e133a078c483cac01:
1024 Make the Merkle tree computation work in the wake of
1025 https://github.com/bazelbuild/bazel/commit/7149f578006a4ad0d51df6
1026 9830a6986749b34df5 .
1027 + b56a2aa709dcb681cfc3faa148a702015ec631d5:
1028 Remote: Use execRoot as input root and do NOT set working
1029 directory by default.
1030 + ae53991f2e207edacd1352ba94261e2473b79f14:
1031 Remote: Add RemoteExecutionService as a layer between spawn
1032 execution and remote execution.
1033 + 0c07c2e6571dd4806552213b2237ecb7a908afa4:
1034 Remote: Add remoteCacheable key to execution log
1035 + 5e617d83f3aab1fd36b07be4b58aba58604cc46e:
1036 Remote: Register "remote" strategy even if remote execution is
1037 not available.
1038 + 4ca8946a8e1c4c2fd48d8fb8ce38adb8b282fef0:
1039 Remote: Add --experimental_capture_corrupted_outputs flag.
1040 + 97d7b4c277814d73b50450b03f4bb160ce7e99b4:
1041 Remote: Report checking cache status before the action is
1042 scheduled to run remotely.
1043 + ba5b2a7c9448a3681a0d86d80670447e338a06dc:
1044 when writing to local disk cache, open files later in order to
1045 avoid "too many open files"
1046 + 3551898849a93306ad9b4dfdd7d4667913098efe:
1047 Propagate test envs to xml generation action
1048 + 9f8c678d7054548865f56f3464f778c751657074:
1049 Remote: Fix a bug that the XML generation is executed even if
1050 test.xml is generated when build with --remote_download_minimal.
1051 + af42653e6f6bd229142f4678bb256a8c397b4d8d:
1052 Automatic code cleanup.
1053 + 07a84ce31d9b09853c63c7e373418696dd285dc5:
1054 Remote: Another attempt to fix the CancellationException error
1055 in AsyncTaskCache caused by a race condition.
1056 + 0f812eb5e561cc5415d0c9931675e58dc37a5850:
1057 Remote: Display download progress when actions are downloading
1058 outputs from remote cache.
1059 + 18c82168433719b400a705a4a0222969a7a026ba:
1060 Remote: Do not upload empty output to remote cache.
1061 + 6a138a60e562beeef36003c4814a6b8ce9f253f6:
1062 Fix compiling errors
1063 + bcce6dd026e90336e80616a8c1004a79a2f8640c:
1064 Add the TEMP_FAILURE_RETRY macro to linux-sandbox-pid1.cc.
1065 + c8c0d94a49e1b865d95c6d245c2d152c7c7c9722:
1066 Export proguard specs from aar_import
1067 + 1a0285c3b64b121268ced3eb9ad9d5ba396b4905:
1068 Fix stripping of macOS loadable bundles
1069 + 0d3c231f5a08861d28e987703e9196890e6164bf:
1070 Roll forward config_setting visibility enforcement behind a flag.
1071 + bb7a01027242390da1c18fbf87c274cc34c11b79:
1072 Fix merge conflicts.
1073 + 8b8e77ea226aaa12e79580422bc5984e80ce048b:
1074 Remove redundant declaration.
1075 + 7c92cfcf9a88933c29334f6271ad3f086f7f36f4:
1076 Ignore empty virtual artifacts when spawn-logging inputs.
1077 + 4158b61211e099db780565d064a1c1a80c91bd2a:
1078 Use correct exit code on invalid aquery --output
1079 + b51b31dbe75a5bc73227fccb4484f3454df81b42:
1080 Remote: Fix a race when reporting action progresses.
1081 + 0e652737988e3c115e98e1552f6fada52bc2b9a2:
1082 Change MIN_BUILD_TOOLS_REVISION to 30.0.0
1083 + 6f9909c04b1e00faa510b38ccabac78821046cf9:
1084 Update Android remote tools to ensure Bazel uses the latest
1085 Android tooling that has been updated to support AndroidX
1086 databinding generation.
1087 + 31d88c629dff2c5f8e8a4baf8c89fd3349c9783e:
1088 Automated rollback of commit
1089 9a1d428e33bfae1ec5b68250d4732b72346b8b39.
1090 + 951a3023fbcdbe025e350590e6fa86097da3fe05:
1091 Increase allowed size of the install_base.
1092 + a7845f65befbeb65a28ec53e62458211a7bc3f8e:
1093 Increase allowed size for install base again.
1094 + affc27f9d18f9781437e91a3f36c73962a56f261:
1095 Bump version of java allocation instrumenter.
1096 + 7efabba19cf6400bf9e707f53b40a6dd7110fafb:
1097 Reference the correct version of the java allocation
1098 instrumenter.
1099 + 9055c67b17abf5fed487ae44d0e22f1c6ea1e50c:
1100 Support extracting aar files.
1101 + 861c3caa85e47da35a8a4f1512e57d43b9263c37:
1102 Revert "Remote: Fix a race when reporting action progresses."
1103 + 92ec798ddc1f38fb4868af08c1d818639283f501:
1104 Revert "Remote: Display download progress when actions are
1105 downloading outputs from remote cache."
1106 + ce091abb290d1d753f480cdee0e69748eb20db52:
1107 Revert "Fix compiling errors"
1108 + 1b19cd310418b850e8e0ca2086ffe50755c9ed7e:
1109 Revert "Remote: Fix a bug that the XML generation is executed
1110 even if test.xml is generated when build with
1111 --remote_download_minimal."
1112 + 988b56f5916e024d10695797a7f963b30fc998c7:
1113 Revert "Remote: Report checking cache status before the action
1114 is scheduled to run remotely."
1115 + 35c98d07b21785efae57a7c4230cc1e452f74fd2:
1116 Revert "Let workers finish lost races without delaying dynamic
1117 execution."
1118 + c4e22b9ace07f5d360c5327a38f9ae4ab24b7109:
1119 Migrate ExampleWorker to use WorkRequestHandler.
1120 + 230be161176bd6f1251077af7674f80d38ff1e25:
1121 Do not interleave readdir() calls with deletion of directory
1122 entries.
1123 + 3cc8ce6ba0934b1a4d9db184daf055c1207ef105:
1124 Propagate OOME if NewByteArray allocation failed
1125 + 19fc15ebbf6c63fcce90a038e91c5ec726852848:
1126 Create helper method for sandbox tests, transform existing tests
1127 into using it.
1128 + deb1006c0778692f7eaef4cbcf7eeb8112b55e91:
1129 Cleanup: Replace NULL with nullptr
1130 + f4b5e0233341977aaa76593ca032d9ac4eba7444:
1131 Let workers finish lost races without delaying dynamic execution.
1132 + 186decab01ee247c7453baf19dac778545ec4937:
1133 Interface and flag specification for worker cancellation.
1134 + 5894a8544d51c99f1356130b8b487bc93299fedd:
1135 Create BUILD file in worker tests directory instead of running
1136 tests from the parent directory.
1137 + e9e6978809b0214e336fee05047d5befe4f4e0c3:
1138 Server-side implementation of worker cancellation.
1139 + 5103662238f2df2038c7dff079e9c655e08ba654:
1140 Add builder for WorkRequestHandler.
1141 + 1a519bb66c3fa3e4ef3b9a9a556597920751fbcd:
1142 Makes singleplex requests be handled in separate threads in
1143 WorkRequestHandler.
1144 + 779d66019210f54e10a1343ee004df72a8dec812:
1145 Only allow worker async finishing when sandboxed.
1146 + a698bef6146a807fd82ee4402d89c23c83802e33:
1147 Support for cancellation in WorkRequestHandler.
1148 + 9dc95af4c7ef10979f21173260f5433006116096:
1149 Make workers restart on flags that affect their
1150 creation/behaviour.
1151 + 7e5cd529e9f8c9cb67900af36182f00ef7316654:
1152 Remote: Report checking cache status before the action is
1153 scheduled to run remotely.
1154 + 6e134a1b68418fba9992692901efa77a80c346f7:
1155 Remote: Fix a bug that the XML generation is executed even if
1156 test.xml is generated when build with --remote_download_minimal.
1157 + d4d071401acadb0d8977850a9439474e60fd7bb9:
1158 Fix compiling errors
1159 + 2579c9a18360955699d028426b45d381ff53783c:
1160 Eagerly initialize JNI copies of Java classes: doing lazy
1161 initialization on a per-method basis doesn't save anything and
1162 adds a tiny bit of overhead to every one of these calls.
1163 + 0f812eb5e561cc5415d0c9931675e58dc37a5850:
1164 Remote: Display download progress when actions are downloading
1165 outputs from remote cache.
1166 + 3835d9b21ad524d06873dfbf465ffd2dfb635ba8:
1167 Update the WorkRequestHandler to use callbacks of type:
1168 BiFunction<WorkRequest, PrintWriter, Integer>: - Mark
1169 constructors that use BiFunction<List<String>, PrintWriter,
1170 Integer> callback as deprecated. - Use a wrapper class for the
1171 BiFunction<WorkRequest, PrintWriter, Integer>. Suggesting this
1172 to avoid having two constructors that takes a BiFunction, as it
1173 creates a confusion between the deprecated and new constructor
1174 when given a lambda expressions.
1175 + 5e352afe2b35487ea2ced85ca79bd9f79858e648:
1176 Fix bug in WorkRequestHandler's handling of singleplex requests
1177 that would cause occasional hangs.
1178 + b51b31dbe75a5bc73227fccb4484f3454df81b42:
1179 Remote: Fix a race when reporting action progresses.
1180 + c9d823e42796962eed039b8122528c2a1541190f:
1181 Disable flaky test.
1182 + e6809c90ecc0ef5783faa39e63188fc33a79b80e:
1183 Revert "Check the result of Future.cancel() when cancelling the
1184 other branch of dynamic execution."
1185 + be4cbc7a67196414e3d3f323be8ab55fb5e530f7:
1186 Revert "Move use of legacy sandbox -> local fallback to only be
1187 used after all strategies have been tried, and improve messages
1188 around it."
1189 + b32349f50ff3d958613aef9275751ad9d50d344c:
1190 Set a fallback dynamic local strategy even when the
1191 dynamic_local_strategy flag is passed.
1192 + f395157c95692565bc220c7ccf788974fe0885fd:
1193 Allow running an extra spawn for local branch of dynamic
1194 execution.
1195 + 039461c76113ab3f165132dd26d0c58eb3e45cae:
1196 Adding debugging information for case when two branches
1197 apparently cancel each other.
1198 + b2231c56d78c6d37bcb6f11e1e50fe68ee336b4a:
1199 Move use of legacy sandbox -> local fallback to only be used
1200 after all strategies have been tried, and improve messages
1201 around it.
1202 + 5b95d9162b56b51c8e8f66258981ddf3c5d96765:
1203 Check the result of Future.cancel() when cancelling the other
1204 branch of dynamic execution.
1205 + 1962a59a5478f5ad374700b0abf0a718b1b3a7d3:
1206 Fix the case where if all strategies for one branch of `dynamic`
1207 execution fail to accept (that is, refuse to even take) the
1208 action given, the whole action fails. Instead of seeing whether
1209 the other branch can run and the action that that it succeeded.
1210 + b7c1ad2aff91105659299723a712b72eea943040:
1211 Fix rare crash in dynamic execution where both branches got
1212 cancelled.
1213 + 2c3cff5422b115d7bb86ed28a056f3d368ebceeb:
1214 Check if `treeDeleter` is actually async before casting it.
1215 Fixes #13240.
1216 + 1a89ce1757e75f8ba9bda76d7373a7e8527bcfc5:
1217 Make worker JSON protocol properly ignore unknown fields.
1218 + 4b12fc80abf4152815f09e473a972e52a1fe8b51:
1219 Fix test_source_file_does_not_override_standard_library to work
1220 with Python 3.9.
1221 + f4e10367df2d881f05e3ddd5bd0531b390a845fe:
1222 Removing line ending matches in tests to be compatible on Windows
1223 + ba74df07ced96226d78851e11d1df03147f1cc1f:
1224 Refactors CompilationSupport for objc to use existing API
1225 + a04cb1bfad4734f801c48bae3070a799067bda4e:
1226 Release 4.2.0 (2021-08-18)
1227 + ba8678077024e1b4e5d7419c758a97e8dc9fceea:
1228 Revert "fix main repo starlark options parsing.
1229 + 9f67cdf3d51c05bc2209786aa24b72658b61362c:
1230 cquery: disable `--build_tests_only`.
1231 + 02ad3e3bc6970db11fe80f966da5707a6c389fdd:
1232 Release 4.2.1 (2021-08-30)
1233 + ae0a6c98d4f94abedbedb2d51c27de5febd7df67:
1234 Enable user_link_flags_feature for macosx cc_toolchain_config
1235 + af74287f125b93119415ba35429b8638d7a986ea:
1236 Remote: Limit max number of gRPC connections by
1237 --remote_max_connections. (#14318)
1238 + 639f89d7682cadff723ac210fa37101f37762a9d:
1239 Fix [Prepa] actions stuck in active state
1240 + 3069ac4e33dcca6f3d1abf55940cdd764d03bdbf:
1241 Delete marker file before fetching an external repository
1242 + e6c8e8d1ba89df5cf624e7147cee6b8246a9a490:
1243 CI configs: switch centos to centos7_java11_devtoolset10
1244```
1245
1246Important changes:
1247
1248 - Multiplex persistent workers can now use the JSON protocol.
1249 - enforce config_setting visibility. See
1250 https://github.com/bazelbuild/bazel/issues/12932 for details.
1251 - The minimum Android build tools version for the Android rules is
1252 now 30.0.0
1253 - Updates worker protocol with cancellation fields, and adds
1254 experimental_worker_cancellation flag to control cancellation.
1255 - If all strategies of one branch (the local or remote execution
1256 branch) of the `dynamic` strategy fail to even accept (via the
1257 response they give from `canExec`) the action, `dynamic` will now
1258 try to see if the other branch can accept it. (Trying to run it
1259 and it failing will still cause a failure if it was the first
1260 result, this is about strategies claiming they can't even try the
1261 action)
1262
1263This release contains contributions from many people at Google, as well as Alex Eagle, Austin Schuh, Benjamin Peterson, Christopher Peterson Sauer, Christopher Sauer, Cristian Hancila, Daniel Wagner-Hall, Denys Kurylenko, Ed Schouten, Fabian Meumertzheim, Finn Ball, George Gensure, Greg Estren, Johannes Abt, Keith Smiley, Kevin Hogeland, Lauri Peltonen, Noa Resare, Philipp Schrader, Ryan Beasley, Thi Doan, ThomasCJY, Timothy Klim, Trustin Lee, Ulf Adams, Vaidas Pilkauskas, Vertexwahn, Xavier Bonaventura, Yannic Bonenberger, Yuval, Yuval Kaplan, bjacklyn, bromano, wisechengyi.
1264
Bazel Release System32fb9c682021-11-19 01:26:48 +01001265## Release 6.0.0-pre.20211110.1 (2021-11-19)
1266
1267```
1268Baseline: 5149408a6c2500cb1701880575c41640d4fd1c2f
1269
1270Cherry picks:
1271
1272 + b371a986bdb60caf2bb07da0732e8870f2f81ef5:
1273 Properly account for StarlarkOptions at their default (=null)
1274 when calculating ST-hash
1275```
1276
1277Important changes:
1278
1279 - Treat py_*.srcs_version="PY2" the same as "PY2ONLY".
1280
1281This release contains contributions from many people at Google, as well as Andrew Katson, Benedek Thaler, Brandon Jacklyn, Keith Smiley.
1282
Bazel Release Systemc0050dd2021-11-11 21:26:22 +01001283## Release 6.0.0-pre.20211101.2 (2021-11-11)
1284
1285```
1286Baseline: 9c65356cedcf4e68077219c10f5a7bb39d38054b
1287
1288Cherry picks:
1289
1290 + 2c9721f9ba11979eee1fd95fe793b52369df99ac:
1291 Automated rollback of commit
1292 9c65356cedcf4e68077219c10f5a7bb39d38054b.
1293```
1294
1295Important changes:
1296
1297 - Deprecate --incompatible_applicable_licenses flag, in preparation
1298 for removal in Bazel 6.x.
1299
1300This release contains contributions from many people at Google, as well as Alex Eagle, Benjamin Peterson, Ben Lee, Fabian Meumertzheim, Fredrik Medley, Keith Smiley, Rahul Butani, Ulf Adams, William Muir.
1301
Bazel Release System9d6fd6d2021-11-03 17:44:05 +01001302## Release 6.0.0-pre.20211025.1 (2021-11-03)
1303
1304```
1305Baseline: 5c04973b000b6e1819d6b51d238498a0b507c7af
1306```
1307
1308Important changes:
1309
1310 - Bazel no longer supports Java 8. From this version on, the
1311 minimum required JDK is OpenJDK 11.
1312
1313This release contains contributions from many people at Google, as well as Benjamin Peterson, John Laxson, Keith Smiley, Thi Don.
1314
Bazel Release System276aef32021-10-26 17:40:43 +02001315## Release 6.0.0-pre.20211019.1 (2021-10-26)
1316
1317```
1318Baseline: 406fc1ba5fae98843c99f89a43dcbdbca0d90274
1319```
1320
1321Incompatible changes:
1322
1323 - Remove `--experimental_profile_cpu_usage`.
1324 - flipped --incompatible_java_common_parameters (see #12373)
1325
1326This release contains contributions from many people at Google, as well as ecngtng, Fabian Meumertzheim, Keith Smiley, Mauricio Galindo, Thaler Benedek.
1327
Bazel Release System15a09392021-10-20 21:00:46 +02001328## Release 5.0.0-pre.20211011.2 (2021-10-20)
1329
1330```
1331Baseline: 3b3bad9e774891856c198738c46d547de954b84a
1332
1333Cherry picks:
1334
1335 + d8c23189c9118f99cfc3eaac98976b7c6fdacae0:
1336 Automated rollback of commit
1337 2571ce2d9e72ee60326ef524fee1702cb2dd07e7.
1338```
1339
1340Incompatible changes:
1341
1342 - Removed --action_graph from the dump command.
1343 - Remove `--{experimental_,}json_trace_compression` option.
1344
1345Important changes:
1346
1347 - The --experimental_existing_rules_immutable_view flag has been
1348 renamed to --incompatible_existing_rules_immutable_view
1349
1350This release contains contributions from many people at Google, as well as Alex Eagle, hvadehra, Keith Smiley, Torgil Svensson, Yuval.
1351
Bazel Release System6c21d272021-10-19 16:14:18 +02001352## Release 5.0.0-pre.20211006.1 (2021-10-19)
1353
1354```
1355Baseline: 681886de2901a2f7920288253674927cf13f1585
1356```
1357
1358Important changes:
1359
1360 - incompatible_disable_depset_items is flipped
1361
1362This release contains contributions from many people at Google, as well as Fabian Meumertzheim, Keith Smiley, Thomas Carmet, Timothe Peignier.
1363
Bazel Release System60eb0012021-10-07 17:43:31 +02001364## Release 5.0.0-pre.20210929.1 (2021-10-07)
1365
1366```
1367Baseline: 61a5fae1b49ed067350d93578da268715031df06
1368```
1369
1370Important changes:
1371
1372 - The deprecated "relative_to_caller_repository" parameter has been
1373 removed from the Label constructor.
1374 - The toolchain transition is now enabled for all toolchains.
1375
1376This release contains contributions from many people at Google, as well as Artem V. Navrotskiy, hvadehra, Ikko Ashimine, Paul Gschwendtner, ron-stripe, Yuval K.
1377
Bazel Release Systemc2d6def2021-09-30 19:26:44 +02001378## Release 5.0.0-pre.20210923.7 (2021-09-30)
1379
1380```
1381Baseline: 9a765c8b498a72e20af6c391bef01e794913c317
1382
1383Cherry picks:
1384
1385 + f959a22bc59229b723cfca8c987da210b03b8a8d:
1386 Rollback.
1387```
1388
1389Important changes:
1390
1391 - Add support to length-delimited protos as undeclared output
1392 annotations []
1393
1394This release contains contributions from many people at Google, as well as Benjamin Peterson, Brandon Jacklyn, Rabi Shanker Guha.
1395
Bazel Release System1b7bb2fd2021-09-27 13:05:45 +02001396## Release 5.0.0-pre.20210921.1 (2021-09-27)
1397
1398```
1399Baseline: 11f1a6d3ce529a63d4b7111c62ae504ceac2a019
1400```
1401
1402Incompatible changes:
1403
1404 - Remove --bep_publish_used_heap_size_post_build
1405 - JSON trace profile: rename counter names.
1406
1407Important changes:
1408
1409 - Adds --experimental_existing_rules_immutable_view flag to make the
1410 native.existing_rule and native.existing_rules functions more
1411 efficient by
1412 returning immutable, lightweight dict-like view objects instead
1413 of mutable
1414 dicts.
1415
1416This release contains contributions from many people at Google, as well as Wren Turkal.
1417
Bazel Release System865f0f42021-09-23 13:40:49 +02001418## Release 5.0.0-pre.20210916.1 (2021-09-23)
1419
1420```
1421Baseline: e4a26b6391fd2d3112a29bf81b4397055c854184
1422```
1423
1424This release contains contributions from many people at Google, as well as Peter Kasting, Ulrik Falklof.
1425
Bazel Release System717b2352021-09-17 18:49:37 +02001426## Release 5.0.0-pre.20210913.1 (2021-09-17)
1427
1428```
1429Baseline: 0017fd23e1ff9aea7241c92a503024e3f2a3425b
1430```
1431
1432This release contains contributions from many people at Google, as well as Keith Smiley, Mathieu Olivari, Yannic Bonenberger.
1433
Bazel Release System139abf42021-09-14 20:51:20 +02001434## Release 5.0.0-pre.20210907.1 (2021-09-14)
1435
1436```
1437Baseline: 9cb59369a84d9328c2929eefcb58c1b972ab15f2
1438```
1439
1440Important changes:
1441
1442 - The `--toolchain_resolution_debug` flag now accepts regexes
1443 matching targets, as well as toolchain types, when choosing what
1444 debug messages to print.
1445
1446This release contains contributions from many people at Google, as well as Benjamin Peterson, frazze-jobb, Tetsuo Kiso.
1447
Bazel Release System50550962021-09-10 17:35:37 +02001448## Release 5.0.0-pre.20210831.2 (2021-09-10)
1449
1450```
1451Baseline: 14fe5dff967cf91f130746f646d1bb1cfc1053f2
1452
1453Cherry picks:
1454
1455 + 6f5c4bb4d17abd6b9654f255c12775eb35638000:
1456 Automated rollback of commit
1457 8181f0abe6591bc14957e6a941a6556fb040ca9f.
1458```
1459
1460Important changes:
1461
1462 - The --all_incompatible_changes flag is now a no-op
1463
1464This release contains contributions from many people at Google, as well as Keith Smiley, kekxv, ron-stripe, Sergey Tyurin.
1465
Bazel Release Systemd13f58b2021-09-03 20:30:13 +02001466## Release 5.0.0-pre.20210826.1 (2021-09-03)
1467
1468```
1469Baseline: f53c389dbd4b0ae66307e9bd4a72b36b3d284ec3
1470```
1471
1472Incompatible changes:
1473
1474 - Removing java_common.javac_jar Starlark call.
1475 - native.existing_rule now returns select values in a form that is
1476 accepted by rule instantiation. This is a breaking API change
1477 because there is some code that relies on the precise type
1478 returned, including brittle workarounds for this bug specifically
1479 and insufficiently flexible workarounds for other issues with the
1480 intersection of select and native.existing_rule.
1481 - flipped incompatible_use_toolchain_resolution_for_java_rules, see
1482 #7849
1483 - Query output=xml/proto/location for source files will now show
1484 the location of line 1 of the source file (as the new default)
1485 instead of its location in the BUILD file.
1486 - Specifying a target pattern underneath a directory specified by
1487 .bazelignore will now emit a warning, not an error.
1488 - Query `--order_output=auto` will now sort lexicographically.
1489 However, when `somepath` is used as a top level function (e.g.
1490 `query 'somepath(a, b)'`), it will continue to output in
1491 dependency order. If you do not want the lexicographical output
1492 ordering, specify another `--order_output` value (`no`, `deps` or
1493 `full`) based on what ordering you require.
1494 - In the build event stream,
1495 BuildMetrics.TargetMetrics.targets_loaded is no longer populated.
1496 Its value was always mostly meaningless.
1497 BuildMetrics.TargetMetrics.targets_configured and
1498 BuildMetrics.ActionSummary.actions_created now include configured
1499 aspect data.
1500 - //visibility:legacy_public has been removed.
1501 - Flip and remove incompatible_dont_collect_so_artifacts
1502 (https://github.com/bazelbuild/bazel/issues/13043).
1503 - Remove flag --experimental_no_product_name_out_symlink: it is
1504 always true.
1505 - The Starlark method generate_dsym in objc fragment has
1506 been deleted. Please use the equivalent apple_generate_dsym in
1507 cpp
1508 fragment instead.
1509 - Native libraries in data attribute are not collected. See
1510 https://github.com/bazelbuild/bazel/issues/13550 for details
1511 - Enforce the `--profile` path to be absolute.
1512 - Enforce the --memory_profile path to be absolute.
1513 - JavaToolchainInfo.jvm_opt returns Depset instead of a list.
1514 - --apple_sdk has been deleted. It is a no-op.
1515 - --bep_publish_used_heap_size_post_build is now a no-op and will
1516 be deleted in a future release. Use --memory_profile=/dev/null
1517 instead.
1518 - Flipped --incompatible_disallow_resource_jars (see
1519 https://github.com/bazelbuild/bazel/issues/13221).
1520
1521New features:
1522
1523 - Args.add_all and Args.add_joined can now accept closures in
1524 map_each if explicitly enabled via allow_closure.
1525 - Add `--bes_header` flag to pass extra headers to the BES server.
1526
1527Important changes:
1528
1529 - Flag --incompatible_objc_compile_info_migration is removed. See
1530 #10854.
1531 - Flag --incompatible_objc_compile_info_migration is removed. See
1532 #10854.
1533 - Flag --incompatible_objc_compile_info_migration is removed. See
1534 #10854.
1535 - none
1536 PAIR=cmita
1537 - The --incompatible_load_python_rules_from_bzl flag is now a no-op.
1538 - Filter all (instead of just C++) source files for coverage output
1539 according to --instrumentation_filter and
1540 --instrument_test_targets.
1541 - The `--incompatible_disable_native_apple_binary_rule` flag has
1542 been added which disables the native `apple_binary` rule. Users
1543 who need to use `apple_binary` directly (if they cannot use one
1544 of the more specific Apple rules) should load it from
1545 https://github.com/bazelbuild/rules_apple.
1546 - The Android rules' --use_singlejar_apkbuilder is now a no-op.
1547 SingleJar will always be used to build APKs.
1548 - dict.setdefault(key, ...) now fails if dict is frozen, even if it
1549 already contains key. This is an incompatible API change.
1550 - Flag --incompatible_objc_provider_remove_compile_info is removed.
1551 See #11359.
1552 - Starlark now permits def statements to be nested (closures).
1553 - native.existing_rule now returns select values in a form that is
1554 accepted by rule instantiation. This is a breaking API change,
1555 though the fallout is expected to be small.
1556 - Starlark now supports lambda (anonymous function) expressions.
1557 - The "test" and "coverage" commands no longer return 3 when a
1558 test action fails because of a system error. Instead, the exit
1559 code
1560 reflects the type of system error.
1561 - The undocumented ctx.expand feature no longer exists.
1562 - Make --legacy_dynamic_scheduler a no-op flag.
1563 - Multiplex persistent workers can now use the JSON protocol.
1564 - native.existing_rule now returns a mutable list, not a tuple, for
1565 a list-valued attributes. This is an incompatible API change.
1566 - Roll back change to have native.existing_rules use list instead
1567 of tuple.
1568 - BEP includes test suite expansions.
1569 - config_setting now honors `visibility` attribute (and defaults to
1570 `//visibility:public`)
1571 - Change the MultiArchSplitTransitionProvider to be based on
1572 platform type + CPU instead of fixed "ios_" + cpu.
1573 - enforce config_setting visibility. See
1574 https://github.com/bazelbuild/bazel/issues/12932 for details.
1575 - add a flag to build v4 signature file
1576 - Added _direct_source_jars output group to Java related targets.
1577 END_PUBLIC
1578 - pkg_deb is no longer part of @bazel_tools//build_defs/pkg:pkg.bzl.
1579 Use https://github.com/bazelbuild/rules_pkg/tree/main/pkg instead
1580 - Allowing the lipo operations to be conditional in the
1581 linkMultiArchBinary API for Apple binaries. Single architecture
1582 slices are now returned through AppleBinaryOutput and the
1583 Starlark API.
1584 - Release restriction for "-" in the package name for Python
1585 sources. Now `py_binary` and `py_test` targets can have main
1586 source file with "-" in the path.
1587 - Users consuming BEP may assume that a `named_set_of_files` event
1588 will
1589 appear before any event referencing that `named_set` by ID. This
1590 allows consumers
1591 to process the files for such events (eg. `TargetCompleted`)
1592 immediately.
1593 - BEP includes all files from successful actions in requested
1594 output groups.
1595 Previously, an output group's files were excluded if any file in
1596 the output group
1597 was not produced due to a failing action. Users can expect BEP
1598 output to be larger
1599 for failed builds.
1600 - In BEP, TargetComplete.output_group has a new field `incomplete`
1601 indicating that the file_sets field is missing one or more
1602 declared artifacts
1603 whose generating actions failed.
1604 - The flag `--toolchain_resolution_debug` now takes a regex
1605 argument, which is used to check which toolchain types should
1606 have debug info printed. You may use `.*` as an argument to keep
1607 the current behavior of debugging every toolchain type.
1608 - Add runfiles.merge_all() for merging a sequence of runfiles
1609 objects.
1610 - runfiles.merge() and merge_all() now respect
1611 --nested_set_depth_limit.
1612 If you hit the depth limit because you were calling merge() in a
1613 loop, use
1614 merge_all() on a sequence of runfiles objects instead.
1615 - Bazel will no longer create a bazel-out symlink if
1616 --symlink_prefix is specified: the directory pointed to via the
1617 bazel-out symlink is accessible via ${symlink_prefix}-out. If
1618 this causes problems for you, set
1619 --experimental_no_product_name_out_symlink=false in your builds
1620 and file an issue.
1621 - Updates worker protocol with cancellation fields, and adds
1622 experimental_worker_cancellation flag to control cancellation.
1623 - Simplify build failure output by always using `NNN arguments`.
1624 - trim_test_configuration now defaults to on
1625 - Mark genrule.srcs as a source attribute for coverage.
1626 - When using --allow_analysis_failures (for example, via
1627 bazel-skylib's
1628 analysistest with `expect_failure = True`), analysis-time
1629 failures in aspect
1630 implementation functions will now be propagated and saved in
1631 AnalysisFailureInfo, just like analysis-time failures in rules.
1632 - cquery --noimplicit_deps now correctly filters out resolved
1633 cc_toolchains
1634 - Sign apks deterministically.
1635 - Make gcov optional in cc_toolchain tools.
1636 - If --experimental_prefer_mutual_xcode is passed, Bazel will
1637 choose the local default (instead of the newest mutually
1638 available version) if it's available both locally and remotely.
1639 - Remove java_lite_proto_library.strict_deps attribute.
1640 - Generate proguard configurations deterministically.
1641 - Adds a new flag, `--incompatible_enable_cc_test_feature` which
1642 switches from the use of build variables to the feature of the
1643 same name.
1644 - Dropped fragile xz support from built in pkg_tar. Users requiring
1645 xz
1646 compression should switch to bazlebuild/rules_pkg.
1647 - If all strategies of one branch (the local or remote execution
1648 branch) of the `dynamic` strategy fail to even accept (via the
1649 response they give from `canExec`) the action, `dynamic` will now
1650 try to see if the other branch can accept it. (Trying to run it
1651 and it failing will still cause a failure if it was the first
1652 result, this is about strategies claiming they can't even try the
1653 action)
1654 - Add `disable_annotation_processing` option to
1655 `java_common.compile`, which disables any annotation processors
1656 passed to `plugins` or in `exported_plugins` of `deps`
1657 - Remove obsolete --incompatible_prohibit_aapt1
1658 - The minimum Android build tools version for the Android rules is
1659 now 30.0.0
1660 - Adds --experimental_reuse_sandbox_directories flag to reuse
1661 already-created non-worker sandboxes with cleanup.
1662 - --experimental_force_gc_after_build is deprecated and will be
1663 removed soon. Use --bep_publish_used_heap_size_post_build instead
1664 - Forward coverage-instrumented files from non-tool dependencies by
1665 default.
1666 - The used_heap_size_post_build field in BEP is populated when the
1667 --memory_profile flag is set
1668 - --run_validations defaults to true.
1669 - Consider label_keyed_string_dict attributes when gathering
1670 instrumented files for coverage.
1671 - Remove flag
1672 --experimental_forward_instrumented_files_info_by_default, now
1673 that this behavior is the default.
1674 - When using MemoryProfiler with multiple GCs via the
1675 --memory_profile_stable_heap_parameters flag, we do a more
1676 precise calculation of heap used at the end of the build. This
1677 will generally result in lower values.
1678 - --bep_publish_used_heap_size_post_build is deprecated. Use
1679 --memory_profile=/dev/null instead.
1680 - Disable --all_incompatible_changes flag.
1681
1682This release contains contributions from many people at Google, as well as Adam Liddell, Alex Eagle, Andrew Katson, Anthony Pratti, Austin Schuh, Benedek Thaler, Benjamin Lee, Benjamin Peterson, Benjamin Peterson, Ben Lee, Brentley Jones, bromano, Cameron Mulhern, Christopher Peterson Sauer, Christopher Sauer, Cristian Hancila, Dan Bamikiya, Daniel McCarney, Daniel Wagner-Hall, Danny Wolf, Dave MacLachlan, Dave Nicponski, David Cummings, David, David Ostrovsky, Delwin9999, Denys Kurylenko, Dmitry Ivankov, dorranh, Ed Schouten, Eitan Adler, Elliotte Rusty Harold, erenon, Eric Cousineau, Ethan Steinberg, Fabian Meumertzheim, FaBrand, Felix Ehrenpfort, Finn Ball, Fredrik Medley, Garrett Holmstrom, Gautam Korlam, George Gensure, goodspark, Greg Estren, Grzegorz Lukasik, Grzegorz Lukasik, Ikko Ashimine, Jesse Chan, Joe Lencioni, Johannes Abt, John Laxson, Jonathan Schear, Justus Tumacder, Keith Smiley, Kevin Hogeland, Lauri Peltonen, Liu Liu, Lszl Csomor, m, Marc Zych, Mark Karpov, Masoud Koleini, Matt Mackay, Max Liu, Menny Even Danan, menny, Michael Chinen, Nathaniel Brough, Nick Korostelev, Niek Peeters, Nikolay Shelukhin, odisseus, Oleh Stolyar, Olek Wojnar, Olle Lundberg, Omar Zuniga, Philipp Schrader, Pras Velagapudi, Qais Patankar, Rai, Ryan Beasley, samhowes, Samuel Giddins, Sebastian Olsson, Steve Siano, steve-the-bayesian, Stiopa Koltsov, susinmotion, tatiana, Thi Doan, ThomasCJY, Timothy Klim, Tobi, Torgil Svensson, Trustin Lee, Ulf Adams, Uri Baghin, Vaidas Pilkauskas, Vertexwahn, wisechengyi, Xavier Bonaventura, Yannic Bonenberger, Yannic Bonenberger, Yannic, Yury Evtikhov, Yuval Kaplan, Yuval, [zqzzq].
1683
Bazel Release Systeme92e04d2021-08-30 09:37:05 -04001684## Release 4.2.1 (2021-08-30)
Bazel Release System6962b0d2021-08-27 17:50:42 +02001685
1686```
Bazel Release Systeme92e04d2021-08-30 09:37:05 -04001687Baseline: 37a429ad12b4c9e6a62dbae4881a1ff03b81ab40
Bazel Release System6962b0d2021-08-27 17:50:42 +02001688
1689Cherry picks:
1690
Bazel Release Systeme92e04d2021-08-30 09:37:05 -04001691 + a689d673abadf80f1efaf8ddaeee92d56fc2847b:
1692 Use getRunfilesPath for run_under executable path generation.
1693 getRootRelativePath doesn't return a valid runfiles path for
1694 external source files anymore after the recent external source
1695 root change. Also, it won't work for external labels either once
1696 the --nolegacy_external_runfiles becomes default. This fixes
1697 issue #12545.
1698 + d90ec67fdab9710f649a3c1d374fb6b938b9271a:
1699 Fix NPE when coveragerunner is not set on the toolchain.
1700 + 8555789dd239a5ac229c1d9cee80b2a9f30b3bf7:
1701 Fix the classic query package-loading cutoff optimization with
1702 external workspaces.
1703 + 57672aca01b3be895382c952b550c9f8edf6c9f2:
1704 Update turbine
1705 + bef4bbbb47d47befe3711d06f358782ee12554f9:
1706 Update turbine
1707 + d113d7454127bba78aa618dac81e5d164920b662:
1708 Update turbine
1709 + 1489f0f4cae3e9247a70e4003ab76bef45c5b986:
1710 Support Scala3 .tasty files
1711 + 0d2d95cd7e34b4061c8e5fdfd21ba0ab8818c685:
1712 Update to java_tools javac11 release 10.5 (#12647)
1713 + a9419f38d5f29af31a6c8ebda09a6e0303a6ba54:
1714 Fix common prefix for instrumentation filter
1715 + 84fadcf81f81b2d7343ca4151a5639be7f2263ee:
1716 Fix builds for filegroup targets with incompatible dependencies
1717 + e43825d0bef359f645e1cabf2164fd2db6ee4a35:
1718 Revert "Remove
1719 --incompatible_blacklisted_protos_requires_proto_info"
1720 + 082d58de852ebaa640bcf13cf419cbb94eec2b26:
1721 Transform roots along with paths during output deletion.
1722 + e8835c1c221d76a2d5532d18083eaa04401619b3:
1723 AttributeContainer.Large now handles more than 127 attributes.
1724 + e1e87349335ac59f9b3df47cee8b999faeaa6d11:
1725 Add an env attribute to all test and binary rule classes
1726 + a87d7ed2411d5382bac58a20b79e09c464ad13b9:
1727 Take no action to prefetch empty artifacts.
1728 + 3e969ff24a6a0e03139b9f288c88451a7dfa97cd:
1729 Fix a couple of bugs with Incompatible Target Skipping
1730 + e6670825b1e183f81f5c864aafd425d512fa9ff5:
1731 Pass --host_action_env to host options hostActionEnvironment
1732 attribute
1733 + 07400c0392e7be163f8a3396fa5cf89ce6705412:
1734 Add --{no,}autodetect_server_javabase.
1735 + c83366064621d5a265eba14d93a03deff58fe6d8:
1736 Only treat "env" and "env_inherit" attrs specially for native
1737 rules
1738 + 6a60b30cd0f22d0ab84b2ddd658d5ccb899a8a76:
1739 Fix coverage support when using default_java_toolchain. (#12801)
1740 + 4158a6f512e52516437e00f8d9609a91be7fc195:
1741 Revert JacocoCoverage target to remote_java_tools_java_import
1742 and add a new target for remore_java_tools_filegroup. (#12813)
1743 + f6d30cf5ef9a8a39fea7072317f89a872387b790:
1744 Add windows_msvc back to conditions in bazel_tools.
1745 + 6b33bdb1e22514304c0e35ce8e067f2175685245:
1746 Release 4.0.0 (2021-01-21)
1747 + 8811e27353c2c10980faf7e4c5e44b431d2d4f1c:
1748 Fix error message from getPrerequisites to not print internal
1749 details.
1750 + 27e15ad11410eb1014f5247fd0eeb31a46733c07:
1751 Clean up ConfiguredTargetValueAccessor and
1752 ConfiguredTargetAccessor
1753 + e87feb8ac9573cef993824f82370d0389570521d:
1754 Move getConfigConditions into ConfiguredTarget.
1755 + 34d98234324da83e93ba0d5ef5702880d5ac7c5c:
1756 Change ConfiguredTargetQuery to use KeyedConfiguredTarget as a
1757 value.
1758 + 079bb7d69931705bb2b092c9017090e224ef3043:
1759 Clean up old dependencies that are unused since
1760 https://github.com/bazelbuild/bazel/commit/34d98234324da83e93ba0d
1761 5ef5702880d5ac7c5c.
1762 + e03cb63e059420847d6578d7cbfe93f05615c95e:
1763 Update bazelbuild/platforms to a current release. - Roll forward
1764 https://github.com/bazelbuild/bazel/commit/0a4533420a3de467fd211d
1765 7f925cf88e0cd5b76a with kythe fix.
1766 + 2eb1bf53d5fef13b89ee440af4f83003d1d0b50a:
1767 Update docs and tests to use the @platforms//:incompatible
1768 constraint
1769 + c71697cf33b0fbbb42fc2910bac83960edc7e855:
1770 Clarify test_suite behaviour in the Platforms docs
1771 + dfb70ea4cae2ffffb76e9741d86c96505a6d05ad:
1772 Enable toolchain resolution for filegroup targets.
1773 + 24d086446f74606819dc53c3a436caa056ff05b7:
1774 PlatformProviderUtils should ignore targets that don't have the
1775 needed
1776 + ba60c0b3f9bbd00975c984244839b155e84b4c5d:
1777 ijar: fix manifest sections handling
1778 + 58bb42ad7ca263a75c6eeef51482f805726663a5:
1779 Revert "Switch to -fdebug-compilation-dir"
1780 + 57672aca01b3be895382c952b550c9f8edf6c9f2:
1781 Update turbine
1782 + bef4bbbb47d47befe3711d06f358782ee12554f9:
1783 Update turbine
1784 + d113d7454127bba78aa618dac81e5d164920b662:
1785 Update turbine
1786 + ad241fbebd90a9f0ad65ccd0658838f57030db68:
1787 Allow cquery to filter out incompatible targets
1788 + 1782f0ae751569607ef88930c822ac460a1f8bb3:
1789 Patch grpc to fix cares selecting the wrong source when building
1790 for darwin_arm64 cpu.
1791 + 8f7bc2f67fafcaa8d25cfc77eaaedbf8eed2984a:
1792 [1/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
1793 blobs
1794 + 848a51747a460ab4c5185e4c61ab522a9981cbea:
1795 [2/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
1796 blobs
1797 + 9b30172547f2093acb56aedf159a77d5dceffda2:
1798 [3/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
1799 blobs
1800 + 1e258d2a7a5221613047e5cee0aaec5b56045d2b:
1801 Allow exec groups to inherit from the rule or other exec groups.
1802 + d0676693310215407224c1b8e8aea9e3eddc183d:
1803 Support execution constraints per exec group
1804 + f1e0d346c8235c855e61afc2adb870e4b895e002:
1805 Clean up RuleContext to use a Table instead of a Map of Maps.
1806 + 8186fbb47ab964a9affa9a0fc6315fcdbde2b5aa:
1807 Documentation for #13110
1808 + 321fe3b6b4e892821ee7dbf2d17dd8ae6a541913:
1809 Prevent --repo_env from triggering unnecessary fetches
1810 + 3ebf658cba43bbab1efc36518f0795a7d65e2d46:
1811 Prevent a crash when using --repo_env=VAR without a value
1812 + 913a985a5c2fc3842b12c6e5f29af0fa1bccfd6a:
1813 Report digest of failed uploads
1814 + 5122617b8a22fee7acd86c9c48f2c2737709ca3f:
1815 Status error presentation with details
1816 + 9a70805db543e2fb910e1c55ef3b3567362adf30:
1817 Fix double shutdown of BuildEventArtifactUploader when BES+File
1818 output enabled.
1819 + 325eb956c92530bdfda54a36a186cae4245a4f7b:
1820 Add rxjava3 to third_party
1821 + ceaac966a7b977461b69ce9501df6a467f4a93b2:
1822 remote: set executable bit of an input file based on its real
1823 value
1824 + 5b786da75837c5e29714e1d708c3cdf9a67ed32d:
1825 Remote: correctly implement equals and hashCode.
1826 + 48648503729d53fdee1322fde2c8e6c05e99cff9:
1827 Fixed an error that bazel binary is not executable when testing
1828 with remote execution.
1829 + bc54c648aa1f99509c7c36d5e6b570d066689209:
1830 Remote: Use parameters instead of thread-local storage to
1831 provide tracing metadata.
1832 + 92955e617b5c41713a5163dc0437c2a024b31815:
1833 Remote: Use parameters instead of thread-local storage to
1834 provide tracing metadata. (Part 2)
1835 + 75bd1ff8ab56d241916bde36291301fa026b2bab:
1836 Remote: Use parameters instead of thread-local storage to
1837 provide tracing metadata. (Part 3)
1838 + 37ee252f3744abc4511f55b5089cc52abd3ba09d:
1839 Remote: Use parameters instead of thread-local storage to
1840 provide tracing metadata. (Part 4)
1841 + 71e35b165f924e2649a078fcf6007645d58039af:
1842 Remote: Use parameters instead of thread-local storage to
1843 provide tracing metadata. (Part 5)
1844 + 32fc451600b6e94a015263eb1c8a63e974f6f4cc:
1845 Write/QueryWriteStatus logging refinement/addition
1846 + 97963c5bb24ac79eb3646dd61bfcf2f8a648af54:
1847 Remote: gRPC load balancing. (Part 1)
1848 + e2b9a42a61596b0d24f0cadd6b7157b7f1efb221:
1849 Remote: gRPC load balancing. (Part 2)
1850 + 6667ad7dd77f8d97952133052c17e7779c1430ec:
1851 Remote: gRPC load balancing. (Part 3)
1852 + 7c081eb020186bfb16d4ef1c3832a8e946e99da1:
1853 Remote: gRPC load balancing. (Part 4)
1854 + 17afbe4e224b359fee6415a5bd71bbedaa7843eb:
1855 Implement getMessage for BulkTransferException
1856 + a6293b3df521aea9075b2ebbcdb675a7d02d3c32:
1857 Remote: gRPC load balancing. (Part 5)
1858 + 7a62c2d4e27e398f440910c81eacc384f38ca8be:
1859 Remote: Add interoperability between Rx and ListenableFuture.
1860 + 1fcb18a0b455bfcb8e9940778f37d8c82c5ed5a0:
1861 Update to latest remote-execution proto
1862 + dad96301d12aa77eb67399e08265a5f30f5ffd6a:
1863 Set Platform on Action not just Command
1864 + 6c5a3ee0dcbb4b804f4aa85c038a378fb70eb1f9:
1865 Remote: Add AsyncTaskCache which is used to deduplicate task
1866 executions and cache the results.
1867 + 9d0c7325ac810febe565a62fdd875ae0c240b274:
1868 Remote: Use AsyncTaskCache inside RemoteActionInputFetcher.
1869 + f54fe07209acc25340df8d2e02993b1add2deafa:
1870 Add --experimental_repository_disable_download to allow users
1871 disable download for external repos
1872 + b243584a479eb4481a9bf4f69acc899610a3b630:
1873 Report errors parsing rewriter config file
1874 + 63bc1c7d0853dc187e4b96a490d733fb29f79664:
1875 Downloader rewriter config has all_blocked_message
1876 + 495ac923f398443be45c20ab29d183fe47e08911:
1877 Allow UrlRewriter to change protocol, i.e. https->http, and
1878 http->https
1879 + 8dbbde0037264c1db4b229a09f98a61ab4ca06b0:
1880 Allow overriding the hostname and instance name in bytestream://
1881 URIs
1882 + 0881c80d29acecdfbb58c49156f805e8c50db117:
1883 Don't set requestId on non-multiplex requests.
1884 + e3b7e17b05f13ff183a4d7efec8ec797f3f5eaa3:
1885 When generating a symlink in _virtual_includes, add the original
1886 header to the 'allowed to use' set too
1887 + f8f66f36ad299a0ea019c94100d5a8e2018f5ab5:
1888 Make SimpleLogHandler not swallow interrupts.
1889 + f8606e5e76579442a1c6563e718ea54c673f1a04:
1890 linux-sandbox: don't assume -lrt, -D__STDC_FORMAT_MACROS
1891 + dac0d40d0eb903f5cb70341398d1a333c19adf3a:
1892 Improve "Common Attributes" section
1893 + a607d9dc70ac67f1aa2c32ca954177f9c77860be:
1894 Never create more than one process per WorkerMultiplexer.
1895 + 80c03ef14a1842d1e3475b1adf98adeb05df33f9:
1896 Move sending requests and reading responses for multiplex
1897 workers into separate subthreads.
1898 + 003cfcde3fd3901c1279ba1db3db3a14536248b4:
1899 Allow use of JSON protocol in multiplex workers.
1900 + 308bce36cba46095fe41866e703710035ddddada:
1901 Actively kill off still-active workers when stopping work on
1902 interrupt.
1903 + 8959dff512fe4505af786bcf2ef981ec7082a913:
1904 Add sanitizer support to Apple platforms
1905 + 32f16e9360f3e1856db1775eb5014b930da2a303:
1906 Fix a Google-internal broken link.
1907 + c9e2be52a067dd9abf5efa4f5f55bb5b98cf5d3b:
1908 Add SHA-1 to subresource integrity format for download()
1909 checksums
1910 + 3b3e6424c6fbd51d4c4ebb6aa25f1d1f4720221c:
1911 Remove fallback strategy support for workers, add flag for it in
1912 sandbox.
1913 + 3457f2ae11e4543de0a5e6e8e37c3aff067891fd:
1914 Update to java_tools javac11 10.6 (#13245)
1915 + 4928295b236ec8f590a7e9d863502bc2f50a77d9:
1916 Allow .S files in C++ Starlark cc_common.compile.
1917 + 1b18d65227c127fe946d3fcde4586158bc7e5fcb:
1918 Automatic code cleanup.
1919 + b5d6c38535c7f6f1eab3fd4c8d3d2da91d0b0f8a:
1920 Change short output of worker type to have the same logic as the
1921 worker creation for sandboxing vs. multiplex.
1922 + e7a0a71f50b69df5d38a8a85fefd36d211e12e8d:
1923 More properly destroy workers on interrupt.
1924 + 7056711eb11b672133274eb29fc93b01dcf088d5:
1925 Make WorkRequestHandler do a GC after some amount of CPU time
1926 has been used on requests. For Bazel and Blaze, defaults to 10s
1927 based on benchmarking.
1928 + 596653d3cf76e7b208da343e1fde5fe20273a5ff:
1929 Allow tree artifacts to be source or header inputs to
1930 cc_common.compile()
1931 + 055c93d11ab20cc4479539b24bbdfa5cab78a342:
1932 Switch to path autocompletion after -- for bazel run commands.
1933 + 807f2a1929e23b60b237c63fadb25af81de2e3c3:
1934 Fix Incompatible Target Skipping for test args
1935 + 9a5cd854e0613f91d52075973e2454b1e009e1ef:
1936 Fix order of build request id and command id
1937 + 706f5acd02363e48076dc97e37613fd968932d03:
1938 Fix bazel crash when passing config_setting to
1939 target_compatible_with
1940 + 61da1d2bf10eabba4c75de959b0374f302d89d70:
1941 Support multiple --bazelrc on command line
1942 + 5593358a58b66f06c4e421bb48856de94c3fd625:
1943 Update ConfiguredTargetFunction.computeUnloadedToolchainContexts
1944 to
1945 + 662cf54de7a103db30e04ebae2d2b919437c4846:
1946 Remote: Fix an issue that a failed action could lead to
1947 RuntimeException caused by InterruptedException thrown when
1948 acquiring gRPC connections.
1949 https://github.com/bazelbuild/bazel/issues/13239
1950 + a3a1763212f29932618b9b9b2f929976ae0e3b6e:
1951 Pass more `--add-exports=` flags
1952 + d2b942879471786e82f1c96eea8722bbe7919fc1:
1953 Remote: Fixed a bug that remote cache is missed due to
1954 executable bit is changed
1955 + 616dc264f02907d7b7887285d22307dfe6d097b6:
1956 Fix Bazel Coverage with C++ to work with Remote Execution
1957 + 5f40d12e741aa30d506eaa15673fb2ae76d29468:
1958 Fix external_path_test with newer Xcode versions.
1959 + b416193075642017e13c774422b49cb07fb65c23:
1960 Allow using embedded tools in sandboxed spawn runners.
1961 + eb762d4e7431637e607146b1c191485795047ef9:
1962 Fix racy write of temporary files while staging virtual inputs
1963 for the sandbox.
1964 + f31e86768579ad7ec57ba13f4c3c1348f5c2702e:
1965 Update platforms_test to not rely on filegroup not using
1966 toolchain
1967 + 13031e5b3bd7c8f29b96b2fee1b380160e0e27fc:
1968 Update SkyframeTests to not rely on filegroup not using toolchain
1969 + 11651824a9d0ffb9adb9611dcd39f4c95a59d750:
1970 Update ConfigurableAttributesTest to not rely on filegroup not
1971 using …
1972 + 4b68532e7ea5eb80c926b7b8e2ec2be300004628:
1973 Make WorkerExecRoot not be a subclass of SandboxedSpawn.
1974 + 31db460a45767de0bcd664a6efbe9d163b85b802:
1975 Make WorkerExecRoot not be re-created on each createFileSystem()
1976 call. Preparation for holding a map of existing links, but also
1977 just nicer.
1978 + a2cc0460dc84ad2dc88019af2fe2a65ce80c61e5:
1979 Start the file existence check traversal from the execroot base
1980 instead of execroot so that external repo files at
1981 "<execroot>/../<path>" are correctly handled when the sibling
1982 repository layout is enabled.
1983 + b048282c7893231d3a7191b251804973917b07a4:
1984 Use readdir for cleanExisting in WorkerExecRoot.
1985 + 270f00dd01fa06cf3e813da5a406be3446de7377:
1986 Add native support for Apple Silicon
1987 + 8e56b9423e8ad2f7323fb90b19b73858def81e39:
1988 Explicitly state that embedding macOS OpenJDK is for x86_64
1989 + 09c621e4cf5b968f4c6cdf905ab142d5961f9ddc:
1990 Remote: Fix a race that AsyncTaskCache#Execution could be reused
1991 after disposed which results in
1992 CancellationException("disposed") propagated to downstream.
1993 + 0299cd7e17203a4ce0ea947b62a7c55f1afb8225:
1994 Remove wrapped_clang params files after use
1995 + 47edc57806056f3c8764241ed41b8acc72bd2ebf:
1996 Silence swiftmodule timestamp warnings
1997 + f6e1074b09ebefba185c0531e9cea26b9596c8a9:
1998 Remote: Use shutdownNow() instead of shutdown() in
1999 ChannelConnection#close() as a workaround to a gRPC bug.
2000 + 71be4ea9e3d20bf90129e34a6a2899fe8401be36:
2001 And mnemonic and label to remote metadata
2002 + 615e1b16a81b0defc15699ec8027d6ddd70366d1:
2003 Change `set -x` in coverage to be set by var
2004 + fe4daea99c8cd163793eca84bfb12c8fc437616b:
2005 Bump minimal JDK install base maximum size from 290 to 295 MB.
2006 + 4840a68cd273a429e46d4114a3973fd11d0e3583:
2007 Remote: Check the return value of ActionOwner.getLabel() since
2008 it could be `null`.
2009 + 14abe4fd7c3967686a3536939fdc3882e691bca2:
2010 Allow `DiffAwareness` to share precomputed information about the
2011 workspace and propagate it to the `WorkspaceStatusAction`.
2012 + 082d98772690946ed29c157e60640c97a6e1195b:
2013 Implement available() method for Windows subprocesses.
2014 + c2bdd034014f66ce14529cc353cda18a32320f6c:
2015 Move --repo_env to common options
2016 + e09f2743738044095b9d784ea62df16b7f5750e6:
2017 Revert "Documentation for #13110"
2018 + a165baa250652fdc865ae0df39160be1f7f74c47:
2019 Revert "Clean up RuleContext to use a Table instead of a Map of
2020 Maps."
2021 + 51fb9e13a864f4f704ae378ea632433bae7ddc31:
2022 Revert "Support execution constraints per exec group"
2023 + cb6e5c24b82e0e20a243145fb6ea32b09e3d1de3:
2024 Revert "Allow exec groups to inherit from the rule or other exec
2025 groups."
2026 + 2ac6581aeaab33ba506fce96dfa6a75eaa819233:
2027 Release 4.1.0 (2021-05-21)
2028 + 7a0f36e3f0a21fed8857efbaa51ded2dbdeefab6:
2029 Change gceMachineType of highcpu platform from n1-highcpu-32 to
2030 e2-highcpu-32
2031 + 19491a91143f0c6132aca62c5ae40ab72e9dc0e2:
2032 Fix #10127: Remove Python 2 dependency from tools/android.
2033 + 80c59dea59d4dce39d4b5d21665c3d7313197358:
2034 fix main repo starlark options parsing - now flags passed on the
2035 command line as --@main_workspace//flag and --//flag will both
2036 parse to --//flag. Before this CL, the former maintained its
2037 workspace prefix and we would get different entries for these
2038 two formats.
2039 + 451b296c3aceb127ebb4a313b6e9608854fa68fa:
2040 Update threshold for long path shortening to be MAX_PATH - 4
2041 + 671e0489a5bd6d5abb4dcd9bcfc85134cee38385:
2042 Force source files to be readable before copying them from
2043 sandbox.
2044 + 6080c1e07f4229ea72eacd04faa9302e44955a84:
2045 Let workers finish lost races without delaying dynamic execution.
2046 + ee738dacb5d0089d3f57b15305057cb9ba675e74:
2047 Fix label_flag and label_setting to not have a dependency on the
2048 default
2049 + 74de0ba4e79341c77b8b85ff4485f92287b6854c:
2050 Java coverage: fix handling of external files
2051 + 48eee8b4b447a2ad11df28dd81a2ccb65562b5f5:
2052 [Bazel] Fix mobile-install for python2
2053 + 763dd0ce6e1644bf895231432f616427a11d385a:
2054 Add `stub_shebang` to `py_runtime`
2055 + b2231c56d78c6d37bcb6f11e1e50fe68ee336b4a:
2056 Move use of legacy sandbox -> local fallback to only be used
2057 after all strategies have been tried, and improve messages
2058 around it.
2059 + 6dc941e58dfc1d4a9714a76b921fbe11fce658ed:
2060 Remove restriction on generate_pdb_file to be only used in dbg
2061 and fastbuild mode
2062 + 5b95d9162b56b51c8e8f66258981ddf3c5d96765:
2063 Check the result of Future.cancel() when cancelling the other
2064 branch of dynamic execution.
2065 + aaae8ce2881c8c1a5d4ad64f20d6e71aa372cf2e:
2066 Update DEFAULT_MACOS_CPU to match host
2067 + 2f0927a4fd9342f4dcfd43475d3f1c90c523584f:
2068 Fix symlink creation on older Windows versions
2069 + fd9cffdcaf05551126e66f1cd62815eaa1af6bd9:
2070 Suppress interrupted status during pool closure
2071 + 33903d28bcea0005adf9b2a8cc4659c5e2999bbe:
2072 Fix Windows developer mode symlinks
2073 + 0cd1666721bdbe988dc361c085bb43cbd41a27f3:
2074 Respect Starlark options with values in `removeStarlarkOptions()`
2075 + 7920ffef472b25db3f4e564e5a3a28a4664c666e:
2076 cquery inherits from `test` not `build`
2077 + 1e258d2a7a5221613047e5cee0aaec5b56045d2b:
2078 Allow exec groups to inherit from the rule or other exec groups.
2079 + d0676693310215407224c1b8e8aea9e3eddc183d:
2080 Support execution constraints per exec group
2081 + f1e0d346c8235c855e61afc2adb870e4b895e002:
2082 Clean up RuleContext to use a Table instead of a Map of Maps.
2083 + 8186fbb47ab964a9affa9a0fc6315fcdbde2b5aa:
2084 Documentation for #13110
2085 + e376580ae4e9ad5bddc196bfb6ad3127e3ff561b:
2086 Split ExecGroup into a new target.
2087 + 0cbb8a863522d2f77ab6b67a01e39b19a9a81807:
2088 Create a new interface to allow Starlark objects to get a thread
2089 when getIndex is called.
2090 + d2e21cec31f09b27ef3589f47b0779f34077ca7e:
2091 Renamed ExecGroupCollection to clarify that it is only for
2092 Starlark usage.
2093 + b9519f92f8ce096107164ca5075feced0e989de7:
2094 Make StarlarkExecGroupContext use AutoValue.
2095 + 52b1b748b2368820bac2ca94323fb82c39c00e51:
2096 Use a dummy toolchain context for rules that don't have one.
2097 + 41877d0fefe3f021f3ff6d4ce398d0deb27157e6:
2098 Extract a separate StarlarkToolchainContext for starlark-only
2099 operations.
2100 + b120d4febc571f17e12501ad87fbff32ef94e9bb:
2101 Fix toolchains to support type lookup.
2102 + dc140d0b6119950dd4a7d71b125b15a78bacc8ce:
2103 Move DEFAULT_EXEC_GROUP_NAME from ToolchainCollection to
2104 ExecGroup.
2105 + 9b18d951a52819f1998ddfdc1739fa1b5bf0353d:
2106 Rename ToolchainCollection.getExecGroups to getExecGroupNames.
2107 + 10d4473bf476a587e3d9f9b2214581ec420c1919:
2108 BuildViewForTesting should directly call into
2109 ConfiguredTargetFunction.
2110 + 58a6fb1f8739e39125cc8c647f28cff2e79fe9aa:
2111 Move exec group tests out of platforms_test and into integration.
2112 + 7d5493d922761c3ce0037f0025912cc532c55ad7:
2113 Update creating exec groups that explicitly copy from defaults.
2114 + 8c6382a81237e72dbec24b3850df9481461e0015:
2115 Create a new ExecGroupCollection container to manage exec group
2116 inheritance and exec property parsing.
2117 + b4b0c321910bc968736ef48e8140528ea7d323cd:
2118 Fix unix toolchain for macos arm64 platform
2119 + f64f071f44394a33a1be40cb7642e2c881d1e9bb:
2120 Add `required_providers` attribute to Starlark defined aspects.
2121 + f2cbdcf67ac1990f05a8241ba8dae65795edac82:
2122 Don't ever claim /dev/null is an execpath.
2123 + ceec93c35ead1bd487e96a5fee46e8d080f88858:
2124 Don't ever claim /dev/null is an execpath.
2125 + 1f3f9f4c4b2eded90518aacd1b0b80c1b0dfd1c5:
2126 Use the parent directory of the exec root as the input root on
2127 RBE.
2128 + 4efeac9cb5f85325ed73f64e133a078c483cac01:
2129 Make the Merkle tree computation work in the wake of
2130 https://github.com/bazelbuild/bazel/commit/7149f578006a4ad0d51df6
2131 9830a6986749b34df5 .
2132 + b56a2aa709dcb681cfc3faa148a702015ec631d5:
2133 Remote: Use execRoot as input root and do NOT set working
2134 directory by default.
2135 + ae53991f2e207edacd1352ba94261e2473b79f14:
2136 Remote: Add RemoteExecutionService as a layer between spawn
2137 execution and remote execution.
2138 + 0c07c2e6571dd4806552213b2237ecb7a908afa4:
2139 Remote: Add remoteCacheable key to execution log
2140 + 5e617d83f3aab1fd36b07be4b58aba58604cc46e:
2141 Remote: Register "remote" strategy even if remote execution is
2142 not available.
2143 + 4ca8946a8e1c4c2fd48d8fb8ce38adb8b282fef0:
2144 Remote: Add --experimental_capture_corrupted_outputs flag.
2145 + 97d7b4c277814d73b50450b03f4bb160ce7e99b4:
2146 Remote: Report checking cache status before the action is
2147 scheduled to run remotely.
2148 + ba5b2a7c9448a3681a0d86d80670447e338a06dc:
2149 when writing to local disk cache, open files later in order to
2150 avoid "too many open files"
2151 + 3551898849a93306ad9b4dfdd7d4667913098efe:
2152 Propagate test envs to xml generation action
2153 + 9f8c678d7054548865f56f3464f778c751657074:
2154 Remote: Fix a bug that the XML generation is executed even if
2155 test.xml is generated when build with --remote_download_minimal.
2156 + af42653e6f6bd229142f4678bb256a8c397b4d8d:
2157 Automatic code cleanup.
2158 + 07a84ce31d9b09853c63c7e373418696dd285dc5:
2159 Remote: Another attempt to fix the CancellationException error
2160 in AsyncTaskCache caused by a race condition.
2161 + 0f812eb5e561cc5415d0c9931675e58dc37a5850:
2162 Remote: Display download progress when actions are downloading
2163 outputs from remote cache.
2164 + 18c82168433719b400a705a4a0222969a7a026ba:
2165 Remote: Do not upload empty output to remote cache.
2166 + 6a138a60e562beeef36003c4814a6b8ce9f253f6:
2167 Fix compiling errors
2168 + bcce6dd026e90336e80616a8c1004a79a2f8640c:
2169 Add the TEMP_FAILURE_RETRY macro to linux-sandbox-pid1.cc.
2170 + c8c0d94a49e1b865d95c6d245c2d152c7c7c9722:
2171 Export proguard specs from aar_import
2172 + 1a0285c3b64b121268ced3eb9ad9d5ba396b4905:
2173 Fix stripping of macOS loadable bundles
2174 + 0d3c231f5a08861d28e987703e9196890e6164bf:
2175 Roll forward config_setting visibility enforcement behind a flag.
2176 + bb7a01027242390da1c18fbf87c274cc34c11b79:
2177 Fix merge conflicts.
2178 + 8b8e77ea226aaa12e79580422bc5984e80ce048b:
2179 Remove redundant declaration.
2180 + 7c92cfcf9a88933c29334f6271ad3f086f7f36f4:
2181 Ignore empty virtual artifacts when spawn-logging inputs.
2182 + 4158b61211e099db780565d064a1c1a80c91bd2a:
2183 Use correct exit code on invalid aquery --output
2184 + b51b31dbe75a5bc73227fccb4484f3454df81b42:
2185 Remote: Fix a race when reporting action progresses.
2186 + 0e652737988e3c115e98e1552f6fada52bc2b9a2:
2187 Change MIN_BUILD_TOOLS_REVISION to 30.0.0
2188 + 6f9909c04b1e00faa510b38ccabac78821046cf9:
2189 Update Android remote tools to ensure Bazel uses the latest
2190 Android tooling that has been updated to support AndroidX
2191 databinding generation.
2192 + 31d88c629dff2c5f8e8a4baf8c89fd3349c9783e:
2193 Automated rollback of commit
2194 9a1d428e33bfae1ec5b68250d4732b72346b8b39.
2195 + 951a3023fbcdbe025e350590e6fa86097da3fe05:
2196 Increase allowed size of the install_base.
2197 + a7845f65befbeb65a28ec53e62458211a7bc3f8e:
2198 Increase allowed size for install base again.
2199 + affc27f9d18f9781437e91a3f36c73962a56f261:
2200 Bump version of java allocation instrumenter.
2201 + 7efabba19cf6400bf9e707f53b40a6dd7110fafb:
2202 Reference the correct version of the java allocation
2203 instrumenter.
2204 + 9055c67b17abf5fed487ae44d0e22f1c6ea1e50c:
2205 Support extracting aar files.
2206 + 861c3caa85e47da35a8a4f1512e57d43b9263c37:
2207 Revert "Remote: Fix a race when reporting action progresses."
2208 + 92ec798ddc1f38fb4868af08c1d818639283f501:
2209 Revert "Remote: Display download progress when actions are
2210 downloading outputs from remote cache."
2211 + ce091abb290d1d753f480cdee0e69748eb20db52:
2212 Revert "Fix compiling errors"
2213 + 1b19cd310418b850e8e0ca2086ffe50755c9ed7e:
2214 Revert "Remote: Fix a bug that the XML generation is executed
2215 even if test.xml is generated when build with
2216 --remote_download_minimal."
2217 + 988b56f5916e024d10695797a7f963b30fc998c7:
2218 Revert "Remote: Report checking cache status before the action
2219 is scheduled to run remotely."
2220 + 35c98d07b21785efae57a7c4230cc1e452f74fd2:
2221 Revert "Let workers finish lost races without delaying dynamic
2222 execution."
2223 + c4e22b9ace07f5d360c5327a38f9ae4ab24b7109:
2224 Migrate ExampleWorker to use WorkRequestHandler.
2225 + 230be161176bd6f1251077af7674f80d38ff1e25:
2226 Do not interleave readdir() calls with deletion of directory
2227 entries.
2228 + 3cc8ce6ba0934b1a4d9db184daf055c1207ef105:
2229 Propagate OOME if NewByteArray allocation failed
2230 + 19fc15ebbf6c63fcce90a038e91c5ec726852848:
2231 Create helper method for sandbox tests, transform existing tests
2232 into using it.
2233 + deb1006c0778692f7eaef4cbcf7eeb8112b55e91:
2234 Cleanup: Replace NULL with nullptr
2235 + f4b5e0233341977aaa76593ca032d9ac4eba7444:
2236 Let workers finish lost races without delaying dynamic execution.
2237 + 186decab01ee247c7453baf19dac778545ec4937:
2238 Interface and flag specification for worker cancellation.
2239 + 5894a8544d51c99f1356130b8b487bc93299fedd:
2240 Create BUILD file in worker tests directory instead of running
2241 tests from the parent directory.
2242 + e9e6978809b0214e336fee05047d5befe4f4e0c3:
2243 Server-side implementation of worker cancellation.
2244 + 5103662238f2df2038c7dff079e9c655e08ba654:
2245 Add builder for WorkRequestHandler.
2246 + 1a519bb66c3fa3e4ef3b9a9a556597920751fbcd:
2247 Makes singleplex requests be handled in separate threads in
2248 WorkRequestHandler.
2249 + 779d66019210f54e10a1343ee004df72a8dec812:
2250 Only allow worker async finishing when sandboxed.
2251 + a698bef6146a807fd82ee4402d89c23c83802e33:
2252 Support for cancellation in WorkRequestHandler.
2253 + 9dc95af4c7ef10979f21173260f5433006116096:
2254 Make workers restart on flags that affect their
2255 creation/behaviour.
2256 + 7e5cd529e9f8c9cb67900af36182f00ef7316654:
2257 Remote: Report checking cache status before the action is
2258 scheduled to run remotely.
2259 + 6e134a1b68418fba9992692901efa77a80c346f7:
2260 Remote: Fix a bug that the XML generation is executed even if
2261 test.xml is generated when build with --remote_download_minimal.
2262 + d4d071401acadb0d8977850a9439474e60fd7bb9:
2263 Fix compiling errors
2264 + 2579c9a18360955699d028426b45d381ff53783c:
2265 Eagerly initialize JNI copies of Java classes: doing lazy
2266 initialization on a per-method basis doesn't save anything and
2267 adds a tiny bit of overhead to every one of these calls.
2268 + 0f812eb5e561cc5415d0c9931675e58dc37a5850:
2269 Remote: Display download progress when actions are downloading
2270 outputs from remote cache.
2271 + 3835d9b21ad524d06873dfbf465ffd2dfb635ba8:
2272 Update the WorkRequestHandler to use callbacks of type:
2273 BiFunction<WorkRequest, PrintWriter, Integer>: - Mark
2274 constructors that use BiFunction<List<String>, PrintWriter,
2275 Integer> callback as deprecated. - Use a wrapper class for the
2276 BiFunction<WorkRequest, PrintWriter, Integer>. Suggesting this
2277 to avoid having two constructors that takes a BiFunction, as it
2278 creates a confusion between the deprecated and new constructor
2279 when given a lambda expressions.
2280 + 5e352afe2b35487ea2ced85ca79bd9f79858e648:
2281 Fix bug in WorkRequestHandler's handling of singleplex requests
2282 that would cause occasional hangs.
2283 + b51b31dbe75a5bc73227fccb4484f3454df81b42:
2284 Remote: Fix a race when reporting action progresses.
2285 + c9d823e42796962eed039b8122528c2a1541190f:
2286 Disable flaky test.
2287 + e6809c90ecc0ef5783faa39e63188fc33a79b80e:
2288 Revert "Check the result of Future.cancel() when cancelling the
2289 other branch of dynamic execution."
2290 + be4cbc7a67196414e3d3f323be8ab55fb5e530f7:
2291 Revert "Move use of legacy sandbox -> local fallback to only be
2292 used after all strategies have been tried, and improve messages
2293 around it."
2294 + b32349f50ff3d958613aef9275751ad9d50d344c:
2295 Set a fallback dynamic local strategy even when the
2296 dynamic_local_strategy flag is passed.
2297 + f395157c95692565bc220c7ccf788974fe0885fd:
2298 Allow running an extra spawn for local branch of dynamic
2299 execution.
2300 + 039461c76113ab3f165132dd26d0c58eb3e45cae:
2301 Adding debugging information for case when two branches
2302 apparently cancel each other.
2303 + b2231c56d78c6d37bcb6f11e1e50fe68ee336b4a:
2304 Move use of legacy sandbox -> local fallback to only be used
2305 after all strategies have been tried, and improve messages
2306 around it.
2307 + 5b95d9162b56b51c8e8f66258981ddf3c5d96765:
2308 Check the result of Future.cancel() when cancelling the other
2309 branch of dynamic execution.
2310 + 1962a59a5478f5ad374700b0abf0a718b1b3a7d3:
2311 Fix the case where if all strategies for one branch of `dynamic`
2312 execution fail to accept (that is, refuse to even take) the
2313 action given, the whole action fails. Instead of seeing whether
2314 the other branch can run and the action that that it succeeded.
2315 + b7c1ad2aff91105659299723a712b72eea943040:
2316 Fix rare crash in dynamic execution where both branches got
2317 cancelled.
2318 + 2c3cff5422b115d7bb86ed28a056f3d368ebceeb:
2319 Check if `treeDeleter` is actually async before casting it.
2320 Fixes #13240.
2321 + 1a89ce1757e75f8ba9bda76d7373a7e8527bcfc5:
2322 Make worker JSON protocol properly ignore unknown fields.
2323 + 4b12fc80abf4152815f09e473a972e52a1fe8b51:
2324 Fix test_source_file_does_not_override_standard_library to work
2325 with Python 3.9.
2326 + f4e10367df2d881f05e3ddd5bd0531b390a845fe:
2327 Removing line ending matches in tests to be compatible on Windows
2328 + ba74df07ced96226d78851e11d1df03147f1cc1f:
2329 Refactors CompilationSupport for objc to use existing API
2330 + a04cb1bfad4734f801c48bae3070a799067bda4e:
2331 Release 4.2.0 (2021-08-18)
2332 + ba8678077024e1b4e5d7419c758a97e8dc9fceea:
2333 Revert "fix main repo starlark options parsing.
2334 + 9f67cdf3d51c05bc2209786aa24b72658b61362c:
2335 cquery: disable `--build_tests_only`.
Bazel Release System6962b0d2021-08-27 17:50:42 +02002336```
2337
Bazel Release System6962b0d2021-08-27 17:50:42 +02002338Important changes:
2339
Bazel Release Systeme92e04d2021-08-30 09:37:05 -04002340 - Multiplex persistent workers can now use the JSON protocol.
2341 - enforce config_setting visibility. See
2342 https://github.com/bazelbuild/bazel/issues/12932 for details.
2343 - The minimum Android build tools version for the Android rules is
2344 now 30.0.0
2345 - Updates worker protocol with cancellation fields, and adds
2346 experimental_worker_cancellation flag to control cancellation.
2347 - If all strategies of one branch (the local or remote execution
2348 branch) of the `dynamic` strategy fail to even accept (via the
2349 response they give from `canExec`) the action, `dynamic` will now
2350 try to see if the other branch can accept it. (Trying to run it
2351 and it failing will still cause a failure if it was the first
2352 result, this is about strategies claiming they can't even try the
2353 action)
Bazel Release System6962b0d2021-08-27 17:50:42 +02002354
Bazel Release Systeme92e04d2021-08-30 09:37:05 -04002355This release contains contributions from many people at Google, as well as Alex Eagle, Austin Schuh, Benjamin Peterson, bromano, Christopher Peterson Sauer, Christopher Sauer, Cristian Hancila, Daniel Wagner-Hall, Denys Kurylenko, Ed Schouten, Finn Ball, George Gensure, Greg Estren, Johannes Abt, Keith Smiley, Kevin Hogeland, Lauri Peltonen, Philipp Schrader, Ryan Beasley, Thi Doan, ThomasCJY, Timothy Klim, Trustin Lee, Ulf Adams, Vaidas Pilkauskas, Vertexwahn, wisechengyi, Xavier Bonaventura, Yannic Bonenberger, Yuval Kaplan, Yuval.
Bazel Release System2f2a4372021-08-25 13:07:14 +02002356
Bazel Release Systemb3feb612021-08-19 15:32:21 +02002357## Release 5.0.0-pre.20210810.4 (2021-08-19)
2358
2359```
2360Baseline: ead44955c5cf02d94152f2cf3462c40ee6659594
2361
2362Cherry picks:
2363
2364 + 99a85e79a11cef98d0e08db21ab94833398381af:
2365 Automated rollback of commit
2366 92f7b58672baffe5a230f675d7197c2a10892284.
2367 + 16523615ba04c2697f436ca02d957809e6fe8dbf:
2368 Fix a race condition in scheduling code in
2369 `FileSystemValueCheckerInferringAncestors`.
2370 + ed251187b078c4262bbbc1da72015ce12f9964f4:
2371 Add incompatible flag to guard top-level aspects dependencies
2372```
2373
2374Incompatible changes:
2375
2376 - Removing java_common.javac_jar Starlark call.
2377 - native.existing_rule now returns select values in a form that is
2378 accepted by rule instantiation. This is a breaking API change
2379 because there is some code that relies on the precise type
2380 returned, including brittle workarounds for this bug specifically
2381 and insufficiently flexible workarounds for other issues with the
2382 intersection of select and native.existing_rule.
2383 - flipped incompatible_use_toolchain_resolution_for_java_rules, see
2384 #7849
2385 - Query output=xml/proto/location for source files will now show
2386 the location of line 1 of the source file (as the new default)
2387 instead of its location in the BUILD file.
2388 - Specifying a target pattern underneath a directory specified by
2389 .bazelignore will now emit a warning, not an error.
2390 - Query `--order_output=auto` will now sort lexicographically.
2391 However, when `somepath` is used as a top level function (e.g.
2392 `query 'somepath(a, b)'`), it will continue to output in
2393 dependency order. If you do not want the lexicographical output
2394 ordering, specify another `--order_output` value (`no`, `deps` or
2395 `full`) based on what ordering you require.
2396 - In the build event stream,
2397 BuildMetrics.TargetMetrics.targets_loaded is no longer populated.
2398 Its value was always mostly meaningless.
2399 BuildMetrics.TargetMetrics.targets_configured and
2400 BuildMetrics.ActionSummary.actions_created now include configured
2401 aspect data.
2402 - //visibility:legacy_public has been removed.
2403 - Flip and remove incompatible_dont_collect_so_artifacts
2404 (https://github.com/bazelbuild/bazel/issues/13043).
2405 - Remove flag --experimental_no_product_name_out_symlink: it is
2406 always true.
2407 - The Starlark method generate_dsym in objc fragment has
2408 been deleted. Please use the equivalent apple_generate_dsym in
2409 cpp
2410 fragment instead.
2411 - Native libraries in data attribute are not collected. See
2412 https://github.com/bazelbuild/bazel/issues/13550 for details
2413 - Enforce the `--profile` path to be absolute.
2414 - Enforce the --memory_profile path to be absolute.
2415 - JavaToolchainInfo.jvm_opt returns Depset instead of a list.
2416 - --apple_sdk has been deleted. It is a no-op.
2417
2418Important changes:
2419
2420 - Flag --incompatible_objc_compile_info_migration is removed. See
2421 #10854.
2422 - Flag --incompatible_objc_compile_info_migration is removed. See
2423 #10854.
2424 - Flag --incompatible_objc_compile_info_migration is removed. See
2425 #10854.
2426 - none
2427 PAIR=cmita
2428 - The --incompatible_load_python_rules_from_bzl flag is now a no-op.
2429 - Filter all (instead of just C++) source files for coverage output
2430 according to --instrumentation_filter and
2431 --instrument_test_targets.
2432 - The `--incompatible_disable_native_apple_binary_rule` flag has
2433 been added which disables the native `apple_binary` rule. Users
2434 who need to use `apple_binary` directly (if they cannot use one
2435 of the more specific Apple rules) should load it from
2436 https://github.com/bazelbuild/rules_apple.
2437 - The Android rules' --use_singlejar_apkbuilder is now a no-op.
2438 SingleJar will always be used to build APKs.
2439 - dict.setdefault(key, ...) now fails if dict is frozen, even if it
2440 already contains key. This is an incompatible API change.
2441 - Flag --incompatible_objc_provider_remove_compile_info is removed.
2442 See #11359.
2443 - Starlark now permits def statements to be nested (closures).
2444 - native.existing_rule now returns select values in a form that is
2445 accepted by rule instantiation. This is a breaking API change,
2446 though the fallout is expected to be small.
2447 - Starlark now supports lambda (anonymous function) expressions.
2448 - The "test" and "coverage" commands no longer return 3 when a
2449 test action fails because of a system error. Instead, the exit
2450 code
2451 reflects the type of system error.
2452 - The undocumented ctx.expand feature no longer exists.
2453 - Make --legacy_dynamic_scheduler a no-op flag.
2454 - Multiplex persistent workers can now use the JSON protocol.
2455 - native.existing_rule now returns a mutable list, not a tuple, for
2456 a list-valued attributes. This is an incompatible API change.
2457 - Roll back change to have native.existing_rules use list instead
2458 of tuple.
2459 - BEP includes test suite expansions.
2460 - config_setting now honors `visibility` attribute (and defaults to
2461 `//visibility:public`)
2462 - Change the MultiArchSplitTransitionProvider to be based on
2463 platform type + CPU instead of fixed "ios_" + cpu.
2464 - enforce config_setting visibility. See
2465 https://github.com/bazelbuild/bazel/issues/12932 for details.
2466 - add a flag to build v4 signature file
2467 - Added _direct_source_jars output group to Java related targets.
2468 END_PUBLIC
2469 - pkg_deb is no longer part of @bazel_tools//build_defs/pkg:pkg.bzl.
2470 Use https://github.com/bazelbuild/rules_pkg/tree/main/pkg instead
2471 - Allowing the lipo operations to be conditional in the
2472 linkMultiArchBinary API for Apple binaries. Single architecture
2473 slices are now returned through AppleBinaryOutput and the
2474 Starlark API.
2475 - Release restriction for "-" in the package name for Python
2476 sources. Now `py_binary` and `py_test` targets can have main
2477 source file with "-" in the path.
2478 - Users consuming BEP may assume that a `named_set_of_files` event
2479 will
2480 appear before any event referencing that `named_set` by ID. This
2481 allows consumers
2482 to process the files for such events (eg. `TargetCompleted`)
2483 immediately.
2484 - BEP includes all files from successful actions in requested
2485 output groups.
2486 Previously, an output group's files were excluded if any file in
2487 the output group
2488 was not produced due to a failing action. Users can expect BEP
2489 output to be larger
2490 for failed builds.
2491 - In BEP, TargetComplete.output_group has a new field `incomplete`
2492 indicating that the file_sets field is missing one or more
2493 declared artifacts
2494 whose generating actions failed.
2495 - The flag `--toolchain_resolution_debug` now takes a regex
2496 argument, which is used to check which toolchain types should
2497 have debug info printed. You may use `.*` as an argument to keep
2498 the current behavior of debugging every toolchain type.
2499 - Add runfiles.merge_all() for merging a sequence of runfiles
2500 objects.
2501 - runfiles.merge() and merge_all() now respect
2502 --nested_set_depth_limit.
2503 If you hit the depth limit because you were calling merge() in a
2504 loop, use
2505 merge_all() on a sequence of runfiles objects instead.
2506 - Bazel will no longer create a bazel-out symlink if
2507 --symlink_prefix is specified: the directory pointed to via the
2508 bazel-out symlink is accessible via ${symlink_prefix}-out. If
2509 this causes problems for you, set
2510 --experimental_no_product_name_out_symlink=false in your builds
2511 and file an issue.
2512 - Updates worker protocol with cancellation fields, and adds
2513 experimental_worker_cancellation flag to control cancellation.
2514 - Simplify build failure output by always using `NNN arguments`.
2515 - trim_test_configuration now defaults to on
2516 - Mark genrule.srcs as a source attribute for coverage.
2517 - When using --allow_analysis_failures (for example, via
2518 bazel-skylib's
2519 analysistest with `expect_failure = True`), analysis-time
2520 failures in aspect
2521 implementation functions will now be propagated and saved in
2522 AnalysisFailureInfo, just like analysis-time failures in rules.
2523 - cquery --noimplicit_deps now correctly filters out resolved
2524 cc_toolchains
2525 - Sign apks deterministically.
2526 - Make gcov optional in cc_toolchain tools.
2527 - If --experimental_prefer_mutual_xcode is passed, Bazel will
2528 choose the local default (instead of the newest mutually
2529 available version) if it's available both locally and remotely.
2530 - Remove java_lite_proto_library.strict_deps attribute.
2531 - Generate proguard configurations deterministically.
2532 - Adds a new flag, `--incompatible_enable_cc_test_feature` which
2533 switches from the use of build variables to the feature of the
2534 same name.
2535 - Dropped fragile xz support from built in pkg_tar. Users requiring
2536 xz
2537 compression should switch to bazlebuild/rules_pkg.
2538 - If all strategies of one branch (the local or remote execution
2539 branch) of the `dynamic` strategy fail to even accept (via the
2540 response they give from `canExec`) the action, `dynamic` will now
2541 try to see if the other branch can accept it. (Trying to run it
2542 and it failing will still cause a failure if it was the first
2543 result, this is about strategies claiming they can't even try the
2544 action)
2545 - Add `disable_annotation_processing` option to
2546 `java_common.compile`, which disables any annotation processors
2547 passed to `plugins` or in `exported_plugins` of `deps`
2548 - Remove obsolete --incompatible_prohibit_aapt1
2549 - The minimum Android build tools version for the Android rules is
2550 now 30.0.0
2551 - Adds --experimental_reuse_sandbox_directories flag to reuse
2552 already-created non-worker sandboxes with cleanup.
2553 - --experimental_force_gc_after_build is deprecated and will be
2554 removed soon. Use --bep_publish_used_heap_size_post_build instead
2555 - Forward coverage-instrumented files from non-tool dependencies by
2556 default.
2557 - The used_heap_size_post_build field in BEP is populated when the
2558 --memory_profile flag is set
2559 - --run_validations defaults to true.
2560 - Consider label_keyed_string_dict attributes when gathering
2561 instrumented files for coverage.
2562 - Remove flag
2563 --experimental_forward_instrumented_files_info_by_default, now
2564 that this behavior is the default.
2565 - When using MemoryProfiler with multiple GCs via the
2566 --memory_profile_stable_heap_parameters flag, we do a more
2567 precise calculation of heap used at the end of the build. This
2568 will generally result in lower values.
2569 - --bep_publish_used_heap_size_post_build is deprecated. Use
2570 --memory_profile=/dev/null instead.
2571
2572This release contains contributions from many people at Google, as well as Adam Liddell, Alex Eagle, Andrew Katson, Anthony Pratti, Austin Schuh, Benedek Thaler, Benjamin Lee, Benjamin Peterson, Benjamin Peterson, bromano, Cameron Mulhern, Christopher Peterson Sauer, Christopher Sauer, Cristian Hancila, Dan Bamikiya, Daniel McCarney, Daniel Wagner-Hall, Danny Wolf, Dave MacLachlan, Dave Nicponski, David Cummings, David, David Ostrovsky, Delwin9999, Denys Kurylenko, Dmitry Ivankov, dorranh, Ed Schouten, Eitan Adler, Elliotte Rusty Harold, erenon, Eric Cousineau, Ethan Steinberg, FaBrand, Felix Ehrenpfort, Finn Ball, Fredrik Medley, Garrett Holmstrom, Gautam Korlam, George Gensure, goodspark, Greg Estren, Grzegorz Lukasik, Jesse Chan, Joe Lencioni, Johannes Abt, John Laxson, Jonathan Schear, Justus Tumacder, Keith Smiley, Kevin Hogeland, Lauri Peltonen, Liu Liu, Lszl Csomor, m, Marc Zych, Mark Karpov, Masoud Koleini, Matt Mackay, Max Liu, Menny Even Danan, menny, Michael Chinen, Nathaniel Brough, Nick Korostelev, Niek Peeters, Nikolay Shelukhin, odisseus, Oleh Stolyar, Olek Wojnar, Olle Lundberg, Philipp Schrader, Pras Velagapudi, Qais Patankar, Rai, Ryan Beasley, samhowes, Samuel Giddins, Sebastian Olsson, Steve Siano, steve-the-bayesian, Stiopa Koltsov, susinmotion, tatiana, Thi Doan, ThomasCJY, Timothy Klim, Tobi, Torgil Svensson, Trustin Lee, Ulf Adams, Uri Baghin, Vaidas Pilkauskas, Vertexwahn, wisechengyi, Xavier Bonaventura, Yannic Bonenberger, Yannic Bonenberger, Yannic, Yury Evtikhov, Yuval Kaplan, Yuval, [zqzzq].
2573
Bazel Release System497a8482021-08-18 08:44:59 -04002574## Release 4.2.0 (2021-08-18)
Bazel Release System9ec8fb12021-08-13 14:57:53 +02002575
2576```
Bazel Release System497a8482021-08-18 08:44:59 -04002577Baseline: 37a429ad12b4c9e6a62dbae4881a1ff03b81ab40
Bazel Release System9ec8fb12021-08-13 14:57:53 +02002578
2579Cherry picks:
2580
Bazel Release System497a8482021-08-18 08:44:59 -04002581 + a689d673abadf80f1efaf8ddaeee92d56fc2847b:
2582 Use getRunfilesPath for run_under executable path generation.
2583 getRootRelativePath doesn't return a valid runfiles path for
2584 external source files anymore after the recent external source
2585 root change. Also, it won't work for external labels either once
2586 the --nolegacy_external_runfiles becomes default. This fixes
2587 issue #12545.
2588 + d90ec67fdab9710f649a3c1d374fb6b938b9271a:
2589 Fix NPE when coveragerunner is not set on the toolchain.
2590 + 8555789dd239a5ac229c1d9cee80b2a9f30b3bf7:
2591 Fix the classic query package-loading cutoff optimization with
2592 external workspaces.
2593 + 57672aca01b3be895382c952b550c9f8edf6c9f2:
2594 Update turbine
2595 + bef4bbbb47d47befe3711d06f358782ee12554f9:
2596 Update turbine
2597 + d113d7454127bba78aa618dac81e5d164920b662:
2598 Update turbine
2599 + 1489f0f4cae3e9247a70e4003ab76bef45c5b986:
2600 Support Scala3 .tasty files
2601 + 0d2d95cd7e34b4061c8e5fdfd21ba0ab8818c685:
2602 Update to java_tools javac11 release 10.5 (#12647)
2603 + a9419f38d5f29af31a6c8ebda09a6e0303a6ba54:
2604 Fix common prefix for instrumentation filter
2605 + 84fadcf81f81b2d7343ca4151a5639be7f2263ee:
2606 Fix builds for filegroup targets with incompatible dependencies
2607 + e43825d0bef359f645e1cabf2164fd2db6ee4a35:
2608 Revert "Remove
2609 --incompatible_blacklisted_protos_requires_proto_info"
2610 + 082d58de852ebaa640bcf13cf419cbb94eec2b26:
2611 Transform roots along with paths during output deletion.
2612 + e8835c1c221d76a2d5532d18083eaa04401619b3:
2613 AttributeContainer.Large now handles more than 127 attributes.
2614 + e1e87349335ac59f9b3df47cee8b999faeaa6d11:
2615 Add an env attribute to all test and binary rule classes
2616 + a87d7ed2411d5382bac58a20b79e09c464ad13b9:
2617 Take no action to prefetch empty artifacts.
2618 + 3e969ff24a6a0e03139b9f288c88451a7dfa97cd:
2619 Fix a couple of bugs with Incompatible Target Skipping
2620 + e6670825b1e183f81f5c864aafd425d512fa9ff5:
2621 Pass --host_action_env to host options hostActionEnvironment
2622 attribute
2623 + 07400c0392e7be163f8a3396fa5cf89ce6705412:
2624 Add --{no,}autodetect_server_javabase.
2625 + c83366064621d5a265eba14d93a03deff58fe6d8:
2626 Only treat "env" and "env_inherit" attrs specially for native
2627 rules
2628 + 6a60b30cd0f22d0ab84b2ddd658d5ccb899a8a76:
2629 Fix coverage support when using default_java_toolchain. (#12801)
2630 + 4158a6f512e52516437e00f8d9609a91be7fc195:
2631 Revert JacocoCoverage target to remote_java_tools_java_import
2632 and add a new target for remore_java_tools_filegroup. (#12813)
2633 + f6d30cf5ef9a8a39fea7072317f89a872387b790:
2634 Add windows_msvc back to conditions in bazel_tools.
2635 + 6b33bdb1e22514304c0e35ce8e067f2175685245:
2636 Release 4.0.0 (2021-01-21)
2637 + 8811e27353c2c10980faf7e4c5e44b431d2d4f1c:
2638 Fix error message from getPrerequisites to not print internal
2639 details.
2640 + 27e15ad11410eb1014f5247fd0eeb31a46733c07:
2641 Clean up ConfiguredTargetValueAccessor and
2642 ConfiguredTargetAccessor
2643 + e87feb8ac9573cef993824f82370d0389570521d:
2644 Move getConfigConditions into ConfiguredTarget.
2645 + 34d98234324da83e93ba0d5ef5702880d5ac7c5c:
2646 Change ConfiguredTargetQuery to use KeyedConfiguredTarget as a
2647 value.
2648 + 079bb7d69931705bb2b092c9017090e224ef3043:
2649 Clean up old dependencies that are unused since
2650 https://github.com/bazelbuild/bazel/commit/34d98234324da83e93ba0d
2651 5ef5702880d5ac7c5c.
2652 + e03cb63e059420847d6578d7cbfe93f05615c95e:
2653 Update bazelbuild/platforms to a current release. - Roll forward
2654 https://github.com/bazelbuild/bazel/commit/0a4533420a3de467fd211d
2655 7f925cf88e0cd5b76a with kythe fix.
2656 + 2eb1bf53d5fef13b89ee440af4f83003d1d0b50a:
2657 Update docs and tests to use the @platforms//:incompatible
2658 constraint
2659 + c71697cf33b0fbbb42fc2910bac83960edc7e855:
2660 Clarify test_suite behaviour in the Platforms docs
2661 + dfb70ea4cae2ffffb76e9741d86c96505a6d05ad:
2662 Enable toolchain resolution for filegroup targets.
2663 + 24d086446f74606819dc53c3a436caa056ff05b7:
2664 PlatformProviderUtils should ignore targets that don't have the
2665 needed
2666 + ba60c0b3f9bbd00975c984244839b155e84b4c5d:
2667 ijar: fix manifest sections handling
2668 + 58bb42ad7ca263a75c6eeef51482f805726663a5:
2669 Revert "Switch to -fdebug-compilation-dir"
2670 + 57672aca01b3be895382c952b550c9f8edf6c9f2:
2671 Update turbine
2672 + bef4bbbb47d47befe3711d06f358782ee12554f9:
2673 Update turbine
2674 + d113d7454127bba78aa618dac81e5d164920b662:
2675 Update turbine
2676 + ad241fbebd90a9f0ad65ccd0658838f57030db68:
2677 Allow cquery to filter out incompatible targets
2678 + 1782f0ae751569607ef88930c822ac460a1f8bb3:
2679 Patch grpc to fix cares selecting the wrong source when building
2680 for darwin_arm64 cpu.
2681 + 8f7bc2f67fafcaa8d25cfc77eaaedbf8eed2984a:
2682 [1/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
2683 blobs
2684 + 848a51747a460ab4c5185e4c61ab522a9981cbea:
2685 [2/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
2686 blobs
2687 + 9b30172547f2093acb56aedf159a77d5dceffda2:
2688 [3/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
2689 blobs
2690 + 1e258d2a7a5221613047e5cee0aaec5b56045d2b:
2691 Allow exec groups to inherit from the rule or other exec groups.
2692 + d0676693310215407224c1b8e8aea9e3eddc183d:
2693 Support execution constraints per exec group
2694 + f1e0d346c8235c855e61afc2adb870e4b895e002:
2695 Clean up RuleContext to use a Table instead of a Map of Maps.
2696 + 8186fbb47ab964a9affa9a0fc6315fcdbde2b5aa:
2697 Documentation for #13110
2698 + 321fe3b6b4e892821ee7dbf2d17dd8ae6a541913:
2699 Prevent --repo_env from triggering unnecessary fetches
2700 + 3ebf658cba43bbab1efc36518f0795a7d65e2d46:
2701 Prevent a crash when using --repo_env=VAR without a value
2702 + 913a985a5c2fc3842b12c6e5f29af0fa1bccfd6a:
2703 Report digest of failed uploads
2704 + 5122617b8a22fee7acd86c9c48f2c2737709ca3f:
2705 Status error presentation with details
2706 + 9a70805db543e2fb910e1c55ef3b3567362adf30:
2707 Fix double shutdown of BuildEventArtifactUploader when BES+File
2708 output enabled.
2709 + 325eb956c92530bdfda54a36a186cae4245a4f7b:
2710 Add rxjava3 to third_party
2711 + ceaac966a7b977461b69ce9501df6a467f4a93b2:
2712 remote: set executable bit of an input file based on its real
2713 value
2714 + 5b786da75837c5e29714e1d708c3cdf9a67ed32d:
2715 Remote: correctly implement equals and hashCode.
2716 + 48648503729d53fdee1322fde2c8e6c05e99cff9:
2717 Fixed an error that bazel binary is not executable when testing
2718 with remote execution.
2719 + bc54c648aa1f99509c7c36d5e6b570d066689209:
2720 Remote: Use parameters instead of thread-local storage to
2721 provide tracing metadata.
2722 + 92955e617b5c41713a5163dc0437c2a024b31815:
2723 Remote: Use parameters instead of thread-local storage to
2724 provide tracing metadata. (Part 2)
2725 + 75bd1ff8ab56d241916bde36291301fa026b2bab:
2726 Remote: Use parameters instead of thread-local storage to
2727 provide tracing metadata. (Part 3)
2728 + 37ee252f3744abc4511f55b5089cc52abd3ba09d:
2729 Remote: Use parameters instead of thread-local storage to
2730 provide tracing metadata. (Part 4)
2731 + 71e35b165f924e2649a078fcf6007645d58039af:
2732 Remote: Use parameters instead of thread-local storage to
2733 provide tracing metadata. (Part 5)
2734 + 32fc451600b6e94a015263eb1c8a63e974f6f4cc:
2735 Write/QueryWriteStatus logging refinement/addition
2736 + 97963c5bb24ac79eb3646dd61bfcf2f8a648af54:
2737 Remote: gRPC load balancing. (Part 1)
2738 + e2b9a42a61596b0d24f0cadd6b7157b7f1efb221:
2739 Remote: gRPC load balancing. (Part 2)
2740 + 6667ad7dd77f8d97952133052c17e7779c1430ec:
2741 Remote: gRPC load balancing. (Part 3)
2742 + 7c081eb020186bfb16d4ef1c3832a8e946e99da1:
2743 Remote: gRPC load balancing. (Part 4)
2744 + 17afbe4e224b359fee6415a5bd71bbedaa7843eb:
2745 Implement getMessage for BulkTransferException
2746 + a6293b3df521aea9075b2ebbcdb675a7d02d3c32:
2747 Remote: gRPC load balancing. (Part 5)
2748 + 7a62c2d4e27e398f440910c81eacc384f38ca8be:
2749 Remote: Add interoperability between Rx and ListenableFuture.
2750 + 1fcb18a0b455bfcb8e9940778f37d8c82c5ed5a0:
2751 Update to latest remote-execution proto
2752 + dad96301d12aa77eb67399e08265a5f30f5ffd6a:
2753 Set Platform on Action not just Command
2754 + 6c5a3ee0dcbb4b804f4aa85c038a378fb70eb1f9:
2755 Remote: Add AsyncTaskCache which is used to deduplicate task
2756 executions and cache the results.
2757 + 9d0c7325ac810febe565a62fdd875ae0c240b274:
2758 Remote: Use AsyncTaskCache inside RemoteActionInputFetcher.
2759 + f54fe07209acc25340df8d2e02993b1add2deafa:
2760 Add --experimental_repository_disable_download to allow users
2761 disable download for external repos
2762 + b243584a479eb4481a9bf4f69acc899610a3b630:
2763 Report errors parsing rewriter config file
2764 + 63bc1c7d0853dc187e4b96a490d733fb29f79664:
2765 Downloader rewriter config has all_blocked_message
2766 + 495ac923f398443be45c20ab29d183fe47e08911:
2767 Allow UrlRewriter to change protocol, i.e. https->http, and
2768 http->https
2769 + 8dbbde0037264c1db4b229a09f98a61ab4ca06b0:
2770 Allow overriding the hostname and instance name in bytestream://
2771 URIs
2772 + 0881c80d29acecdfbb58c49156f805e8c50db117:
2773 Don't set requestId on non-multiplex requests.
2774 + e3b7e17b05f13ff183a4d7efec8ec797f3f5eaa3:
2775 When generating a symlink in _virtual_includes, add the original
2776 header to the 'allowed to use' set too
2777 + f8f66f36ad299a0ea019c94100d5a8e2018f5ab5:
2778 Make SimpleLogHandler not swallow interrupts.
2779 + f8606e5e76579442a1c6563e718ea54c673f1a04:
2780 linux-sandbox: don't assume -lrt, -D__STDC_FORMAT_MACROS
2781 + dac0d40d0eb903f5cb70341398d1a333c19adf3a:
2782 Improve "Common Attributes" section
2783 + a607d9dc70ac67f1aa2c32ca954177f9c77860be:
2784 Never create more than one process per WorkerMultiplexer.
2785 + 80c03ef14a1842d1e3475b1adf98adeb05df33f9:
2786 Move sending requests and reading responses for multiplex
2787 workers into separate subthreads.
2788 + 003cfcde3fd3901c1279ba1db3db3a14536248b4:
2789 Allow use of JSON protocol in multiplex workers.
2790 + 308bce36cba46095fe41866e703710035ddddada:
2791 Actively kill off still-active workers when stopping work on
2792 interrupt.
2793 + 8959dff512fe4505af786bcf2ef981ec7082a913:
2794 Add sanitizer support to Apple platforms
2795 + 32f16e9360f3e1856db1775eb5014b930da2a303:
2796 Fix a Google-internal broken link.
2797 + c9e2be52a067dd9abf5efa4f5f55bb5b98cf5d3b:
2798 Add SHA-1 to subresource integrity format for download()
2799 checksums
2800 + 3b3e6424c6fbd51d4c4ebb6aa25f1d1f4720221c:
2801 Remove fallback strategy support for workers, add flag for it in
2802 sandbox.
2803 + 3457f2ae11e4543de0a5e6e8e37c3aff067891fd:
2804 Update to java_tools javac11 10.6 (#13245)
2805 + 4928295b236ec8f590a7e9d863502bc2f50a77d9:
2806 Allow .S files in C++ Starlark cc_common.compile.
2807 + 1b18d65227c127fe946d3fcde4586158bc7e5fcb:
2808 Automatic code cleanup.
2809 + b5d6c38535c7f6f1eab3fd4c8d3d2da91d0b0f8a:
2810 Change short output of worker type to have the same logic as the
2811 worker creation for sandboxing vs. multiplex.
2812 + e7a0a71f50b69df5d38a8a85fefd36d211e12e8d:
2813 More properly destroy workers on interrupt.
2814 + 7056711eb11b672133274eb29fc93b01dcf088d5:
2815 Make WorkRequestHandler do a GC after some amount of CPU time
2816 has been used on requests. For Bazel and Blaze, defaults to 10s
2817 based on benchmarking.
2818 + 596653d3cf76e7b208da343e1fde5fe20273a5ff:
2819 Allow tree artifacts to be source or header inputs to
2820 cc_common.compile()
2821 + 055c93d11ab20cc4479539b24bbdfa5cab78a342:
2822 Switch to path autocompletion after -- for bazel run commands.
2823 + 807f2a1929e23b60b237c63fadb25af81de2e3c3:
2824 Fix Incompatible Target Skipping for test args
2825 + 9a5cd854e0613f91d52075973e2454b1e009e1ef:
2826 Fix order of build request id and command id
2827 + 706f5acd02363e48076dc97e37613fd968932d03:
2828 Fix bazel crash when passing config_setting to
2829 target_compatible_with
2830 + 61da1d2bf10eabba4c75de959b0374f302d89d70:
2831 Support multiple --bazelrc on command line
2832 + 5593358a58b66f06c4e421bb48856de94c3fd625:
2833 Update ConfiguredTargetFunction.computeUnloadedToolchainContexts
2834 to
2835 + 662cf54de7a103db30e04ebae2d2b919437c4846:
2836 Remote: Fix an issue that a failed action could lead to
2837 RuntimeException caused by InterruptedException thrown when
2838 acquiring gRPC connections.
2839 https://github.com/bazelbuild/bazel/issues/13239
2840 + a3a1763212f29932618b9b9b2f929976ae0e3b6e:
2841 Pass more `--add-exports=` flags
2842 + d2b942879471786e82f1c96eea8722bbe7919fc1:
2843 Remote: Fixed a bug that remote cache is missed due to
2844 executable bit is changed
2845 + 616dc264f02907d7b7887285d22307dfe6d097b6:
2846 Fix Bazel Coverage with C++ to work with Remote Execution
2847 + 5f40d12e741aa30d506eaa15673fb2ae76d29468:
2848 Fix external_path_test with newer Xcode versions.
2849 + b416193075642017e13c774422b49cb07fb65c23:
2850 Allow using embedded tools in sandboxed spawn runners.
2851 + eb762d4e7431637e607146b1c191485795047ef9:
2852 Fix racy write of temporary files while staging virtual inputs
2853 for the sandbox.
2854 + f31e86768579ad7ec57ba13f4c3c1348f5c2702e:
2855 Update platforms_test to not rely on filegroup not using
2856 toolchain
2857 + 13031e5b3bd7c8f29b96b2fee1b380160e0e27fc:
2858 Update SkyframeTests to not rely on filegroup not using toolchain
2859 + 11651824a9d0ffb9adb9611dcd39f4c95a59d750:
2860 Update ConfigurableAttributesTest to not rely on filegroup not
2861 using …
2862 + 4b68532e7ea5eb80c926b7b8e2ec2be300004628:
2863 Make WorkerExecRoot not be a subclass of SandboxedSpawn.
2864 + 31db460a45767de0bcd664a6efbe9d163b85b802:
2865 Make WorkerExecRoot not be re-created on each createFileSystem()
2866 call. Preparation for holding a map of existing links, but also
2867 just nicer.
2868 + a2cc0460dc84ad2dc88019af2fe2a65ce80c61e5:
2869 Start the file existence check traversal from the execroot base
2870 instead of execroot so that external repo files at
2871 "<execroot>/../<path>" are correctly handled when the sibling
2872 repository layout is enabled.
2873 + b048282c7893231d3a7191b251804973917b07a4:
2874 Use readdir for cleanExisting in WorkerExecRoot.
2875 + 270f00dd01fa06cf3e813da5a406be3446de7377:
2876 Add native support for Apple Silicon
2877 + 8e56b9423e8ad2f7323fb90b19b73858def81e39:
2878 Explicitly state that embedding macOS OpenJDK is for x86_64
2879 + 09c621e4cf5b968f4c6cdf905ab142d5961f9ddc:
2880 Remote: Fix a race that AsyncTaskCache#Execution could be reused
2881 after disposed which results in
2882 CancellationException("disposed") propagated to downstream.
2883 + 0299cd7e17203a4ce0ea947b62a7c55f1afb8225:
2884 Remove wrapped_clang params files after use
2885 + 47edc57806056f3c8764241ed41b8acc72bd2ebf:
2886 Silence swiftmodule timestamp warnings
2887 + f6e1074b09ebefba185c0531e9cea26b9596c8a9:
2888 Remote: Use shutdownNow() instead of shutdown() in
2889 ChannelConnection#close() as a workaround to a gRPC bug.
2890 + 71be4ea9e3d20bf90129e34a6a2899fe8401be36:
2891 And mnemonic and label to remote metadata
2892 + 615e1b16a81b0defc15699ec8027d6ddd70366d1:
2893 Change `set -x` in coverage to be set by var
2894 + fe4daea99c8cd163793eca84bfb12c8fc437616b:
2895 Bump minimal JDK install base maximum size from 290 to 295 MB.
2896 + 4840a68cd273a429e46d4114a3973fd11d0e3583:
2897 Remote: Check the return value of ActionOwner.getLabel() since
2898 it could be `null`.
2899 + 14abe4fd7c3967686a3536939fdc3882e691bca2:
2900 Allow `DiffAwareness` to share precomputed information about the
2901 workspace and propagate it to the `WorkspaceStatusAction`.
2902 + 082d98772690946ed29c157e60640c97a6e1195b:
2903 Implement available() method for Windows subprocesses.
2904 + c2bdd034014f66ce14529cc353cda18a32320f6c:
2905 Move --repo_env to common options
2906 + e09f2743738044095b9d784ea62df16b7f5750e6:
2907 Revert "Documentation for #13110"
2908 + a165baa250652fdc865ae0df39160be1f7f74c47:
2909 Revert "Clean up RuleContext to use a Table instead of a Map of
2910 Maps."
2911 + 51fb9e13a864f4f704ae378ea632433bae7ddc31:
2912 Revert "Support execution constraints per exec group"
2913 + cb6e5c24b82e0e20a243145fb6ea32b09e3d1de3:
2914 Revert "Allow exec groups to inherit from the rule or other exec
2915 groups."
2916 + 2ac6581aeaab33ba506fce96dfa6a75eaa819233:
2917 Release 4.1.0 (2021-05-21)
2918 + 7a0f36e3f0a21fed8857efbaa51ded2dbdeefab6:
2919 Change gceMachineType of highcpu platform from n1-highcpu-32 to
2920 e2-highcpu-32
2921 + 19491a91143f0c6132aca62c5ae40ab72e9dc0e2:
2922 Fix #10127: Remove Python 2 dependency from tools/android.
2923 + 80c59dea59d4dce39d4b5d21665c3d7313197358:
2924 fix main repo starlark options parsing - now flags passed on the
2925 command line as --@main_workspace//flag and --//flag will both
2926 parse to --//flag. Before this CL, the former maintained its
2927 workspace prefix and we would get different entries for these
2928 two formats.
2929 + 451b296c3aceb127ebb4a313b6e9608854fa68fa:
2930 Update threshold for long path shortening to be MAX_PATH - 4
2931 + 671e0489a5bd6d5abb4dcd9bcfc85134cee38385:
2932 Force source files to be readable before copying them from
2933 sandbox.
2934 + 6080c1e07f4229ea72eacd04faa9302e44955a84:
2935 Let workers finish lost races without delaying dynamic execution.
2936 + ee738dacb5d0089d3f57b15305057cb9ba675e74:
2937 Fix label_flag and label_setting to not have a dependency on the
2938 default
2939 + 74de0ba4e79341c77b8b85ff4485f92287b6854c:
2940 Java coverage: fix handling of external files
2941 + 48eee8b4b447a2ad11df28dd81a2ccb65562b5f5:
2942 [Bazel] Fix mobile-install for python2
2943 + 763dd0ce6e1644bf895231432f616427a11d385a:
2944 Add `stub_shebang` to `py_runtime`
2945 + b2231c56d78c6d37bcb6f11e1e50fe68ee336b4a:
2946 Move use of legacy sandbox -> local fallback to only be used
2947 after all strategies have been tried, and improve messages
2948 around it.
2949 + 6dc941e58dfc1d4a9714a76b921fbe11fce658ed:
2950 Remove restriction on generate_pdb_file to be only used in dbg
2951 and fastbuild mode
2952 + 5b95d9162b56b51c8e8f66258981ddf3c5d96765:
2953 Check the result of Future.cancel() when cancelling the other
2954 branch of dynamic execution.
2955 + aaae8ce2881c8c1a5d4ad64f20d6e71aa372cf2e:
2956 Update DEFAULT_MACOS_CPU to match host
2957 + 2f0927a4fd9342f4dcfd43475d3f1c90c523584f:
2958 Fix symlink creation on older Windows versions
2959 + fd9cffdcaf05551126e66f1cd62815eaa1af6bd9:
2960 Suppress interrupted status during pool closure
2961 + 33903d28bcea0005adf9b2a8cc4659c5e2999bbe:
2962 Fix Windows developer mode symlinks
2963 + 0cd1666721bdbe988dc361c085bb43cbd41a27f3:
2964 Respect Starlark options with values in `removeStarlarkOptions()`
2965 + 7920ffef472b25db3f4e564e5a3a28a4664c666e:
2966 cquery inherits from `test` not `build`
2967 + 1e258d2a7a5221613047e5cee0aaec5b56045d2b:
2968 Allow exec groups to inherit from the rule or other exec groups.
2969 + d0676693310215407224c1b8e8aea9e3eddc183d:
2970 Support execution constraints per exec group
2971 + f1e0d346c8235c855e61afc2adb870e4b895e002:
2972 Clean up RuleContext to use a Table instead of a Map of Maps.
2973 + 8186fbb47ab964a9affa9a0fc6315fcdbde2b5aa:
2974 Documentation for #13110
2975 + e376580ae4e9ad5bddc196bfb6ad3127e3ff561b:
2976 Split ExecGroup into a new target.
2977 + 0cbb8a863522d2f77ab6b67a01e39b19a9a81807:
2978 Create a new interface to allow Starlark objects to get a thread
2979 when getIndex is called.
2980 + d2e21cec31f09b27ef3589f47b0779f34077ca7e:
2981 Renamed ExecGroupCollection to clarify that it is only for
2982 Starlark usage.
2983 + b9519f92f8ce096107164ca5075feced0e989de7:
2984 Make StarlarkExecGroupContext use AutoValue.
2985 + 52b1b748b2368820bac2ca94323fb82c39c00e51:
2986 Use a dummy toolchain context for rules that don't have one.
2987 + 41877d0fefe3f021f3ff6d4ce398d0deb27157e6:
2988 Extract a separate StarlarkToolchainContext for starlark-only
2989 operations.
2990 + b120d4febc571f17e12501ad87fbff32ef94e9bb:
2991 Fix toolchains to support type lookup.
2992 + dc140d0b6119950dd4a7d71b125b15a78bacc8ce:
2993 Move DEFAULT_EXEC_GROUP_NAME from ToolchainCollection to
2994 ExecGroup.
2995 + 9b18d951a52819f1998ddfdc1739fa1b5bf0353d:
2996 Rename ToolchainCollection.getExecGroups to getExecGroupNames.
2997 + 10d4473bf476a587e3d9f9b2214581ec420c1919:
2998 BuildViewForTesting should directly call into
2999 ConfiguredTargetFunction.
3000 + 58a6fb1f8739e39125cc8c647f28cff2e79fe9aa:
3001 Move exec group tests out of platforms_test and into integration.
3002 + 7d5493d922761c3ce0037f0025912cc532c55ad7:
3003 Update creating exec groups that explicitly copy from defaults.
3004 + 8c6382a81237e72dbec24b3850df9481461e0015:
3005 Create a new ExecGroupCollection container to manage exec group
3006 inheritance and exec property parsing.
3007 + b4b0c321910bc968736ef48e8140528ea7d323cd:
3008 Fix unix toolchain for macos arm64 platform
3009 + f64f071f44394a33a1be40cb7642e2c881d1e9bb:
3010 Add `required_providers` attribute to Starlark defined aspects.
3011 + f2cbdcf67ac1990f05a8241ba8dae65795edac82:
3012 Don't ever claim /dev/null is an execpath.
3013 + ceec93c35ead1bd487e96a5fee46e8d080f88858:
3014 Don't ever claim /dev/null is an execpath.
3015 + 1f3f9f4c4b2eded90518aacd1b0b80c1b0dfd1c5:
3016 Use the parent directory of the exec root as the input root on
3017 RBE.
3018 + 4efeac9cb5f85325ed73f64e133a078c483cac01:
3019 Make the Merkle tree computation work in the wake of
3020 https://github.com/bazelbuild/bazel/commit/7149f578006a4ad0d51df6
3021 9830a6986749b34df5 .
3022 + b56a2aa709dcb681cfc3faa148a702015ec631d5:
3023 Remote: Use execRoot as input root and do NOT set working
3024 directory by default.
3025 + ae53991f2e207edacd1352ba94261e2473b79f14:
3026 Remote: Add RemoteExecutionService as a layer between spawn
3027 execution and remote execution.
3028 + 0c07c2e6571dd4806552213b2237ecb7a908afa4:
3029 Remote: Add remoteCacheable key to execution log
3030 + 5e617d83f3aab1fd36b07be4b58aba58604cc46e:
3031 Remote: Register "remote" strategy even if remote execution is
3032 not available.
3033 + 4ca8946a8e1c4c2fd48d8fb8ce38adb8b282fef0:
3034 Remote: Add --experimental_capture_corrupted_outputs flag.
3035 + 97d7b4c277814d73b50450b03f4bb160ce7e99b4:
3036 Remote: Report checking cache status before the action is
3037 scheduled to run remotely.
3038 + ba5b2a7c9448a3681a0d86d80670447e338a06dc:
3039 when writing to local disk cache, open files later in order to
3040 avoid "too many open files"
3041 + 3551898849a93306ad9b4dfdd7d4667913098efe:
3042 Propagate test envs to xml generation action
3043 + 9f8c678d7054548865f56f3464f778c751657074:
3044 Remote: Fix a bug that the XML generation is executed even if
3045 test.xml is generated when build with --remote_download_minimal.
3046 + af42653e6f6bd229142f4678bb256a8c397b4d8d:
3047 Automatic code cleanup.
3048 + 07a84ce31d9b09853c63c7e373418696dd285dc5:
3049 Remote: Another attempt to fix the CancellationException error
3050 in AsyncTaskCache caused by a race condition.
3051 + 0f812eb5e561cc5415d0c9931675e58dc37a5850:
3052 Remote: Display download progress when actions are downloading
3053 outputs from remote cache.
3054 + 18c82168433719b400a705a4a0222969a7a026ba:
3055 Remote: Do not upload empty output to remote cache.
3056 + 6a138a60e562beeef36003c4814a6b8ce9f253f6:
3057 Fix compiling errors
3058 + bcce6dd026e90336e80616a8c1004a79a2f8640c:
3059 Add the TEMP_FAILURE_RETRY macro to linux-sandbox-pid1.cc.
3060 + c8c0d94a49e1b865d95c6d245c2d152c7c7c9722:
3061 Export proguard specs from aar_import
3062 + 1a0285c3b64b121268ced3eb9ad9d5ba396b4905:
3063 Fix stripping of macOS loadable bundles
3064 + 0d3c231f5a08861d28e987703e9196890e6164bf:
3065 Roll forward config_setting visibility enforcement behind a flag.
3066 + bb7a01027242390da1c18fbf87c274cc34c11b79:
3067 Fix merge conflicts.
3068 + 8b8e77ea226aaa12e79580422bc5984e80ce048b:
3069 Remove redundant declaration.
3070 + 7c92cfcf9a88933c29334f6271ad3f086f7f36f4:
3071 Ignore empty virtual artifacts when spawn-logging inputs.
3072 + 4158b61211e099db780565d064a1c1a80c91bd2a:
3073 Use correct exit code on invalid aquery --output
3074 + b51b31dbe75a5bc73227fccb4484f3454df81b42:
3075 Remote: Fix a race when reporting action progresses.
3076 + 0e652737988e3c115e98e1552f6fada52bc2b9a2:
3077 Change MIN_BUILD_TOOLS_REVISION to 30.0.0
3078 + 6f9909c04b1e00faa510b38ccabac78821046cf9:
3079 Update Android remote tools to ensure Bazel uses the latest
3080 Android tooling that has been updated to support AndroidX
3081 databinding generation.
3082 + 31d88c629dff2c5f8e8a4baf8c89fd3349c9783e:
Bazel Release System9ec8fb12021-08-13 14:57:53 +02003083 Automated rollback of commit
Bazel Release System497a8482021-08-18 08:44:59 -04003084 9a1d428e33bfae1ec5b68250d4732b72346b8b39.
3085 + 951a3023fbcdbe025e350590e6fa86097da3fe05:
3086 Increase allowed size of the install_base.
3087 + a7845f65befbeb65a28ec53e62458211a7bc3f8e:
3088 Increase allowed size for install base again.
3089 + affc27f9d18f9781437e91a3f36c73962a56f261:
3090 Bump version of java allocation instrumenter.
3091 + 7efabba19cf6400bf9e707f53b40a6dd7110fafb:
3092 Reference the correct version of the java allocation
3093 instrumenter.
3094 + afb819697a6c3daca71a0105d723f54d42fe129f:
3095 Support extracting aar files.
3096 + 861c3caa85e47da35a8a4f1512e57d43b9263c37:
3097 Revert "Remote: Fix a race when reporting action progresses."
3098 + 92ec798ddc1f38fb4868af08c1d818639283f501:
3099 Revert "Remote: Display download progress when actions are
3100 downloading outputs from remote cache."
3101 + ce091abb290d1d753f480cdee0e69748eb20db52:
3102 Revert "Fix compiling errors"
3103 + 1b19cd310418b850e8e0ca2086ffe50755c9ed7e:
3104 Revert "Remote: Fix a bug that the XML generation is executed
3105 even if test.xml is generated when build with
3106 --remote_download_minimal."
3107 + 988b56f5916e024d10695797a7f963b30fc998c7:
3108 Revert "Remote: Report checking cache status before the action
3109 is scheduled to run remotely."
3110 + 35c98d07b21785efae57a7c4230cc1e452f74fd2:
3111 Revert "Let workers finish lost races without delaying dynamic
3112 execution."
3113 + c4e22b9ace07f5d360c5327a38f9ae4ab24b7109:
3114 Migrate ExampleWorker to use WorkRequestHandler.
3115 + 230be161176bd6f1251077af7674f80d38ff1e25:
3116 Do not interleave readdir() calls with deletion of directory
3117 entries.
3118 + 3cc8ce6ba0934b1a4d9db184daf055c1207ef105:
3119 Propagate OOME if NewByteArray allocation failed
3120 + 19fc15ebbf6c63fcce90a038e91c5ec726852848:
3121 Create helper method for sandbox tests, transform existing tests
3122 into using it.
3123 + deb1006c0778692f7eaef4cbcf7eeb8112b55e91:
3124 Cleanup: Replace NULL with nullptr
3125 + f4b5e0233341977aaa76593ca032d9ac4eba7444:
3126 Let workers finish lost races without delaying dynamic execution.
3127 + 186decab01ee247c7453baf19dac778545ec4937:
3128 Interface and flag specification for worker cancellation.
3129 + 5894a8544d51c99f1356130b8b487bc93299fedd:
3130 Create BUILD file in worker tests directory instead of running
3131 tests from the parent directory.
3132 + e9e6978809b0214e336fee05047d5befe4f4e0c3:
3133 Server-side implementation of worker cancellation.
3134 + 5103662238f2df2038c7dff079e9c655e08ba654:
3135 Add builder for WorkRequestHandler.
3136 + 1a519bb66c3fa3e4ef3b9a9a556597920751fbcd:
3137 Makes singleplex requests be handled in separate threads in
3138 WorkRequestHandler.
3139 + 779d66019210f54e10a1343ee004df72a8dec812:
3140 Only allow worker async finishing when sandboxed.
3141 + a698bef6146a807fd82ee4402d89c23c83802e33:
3142 Support for cancellation in WorkRequestHandler.
3143 + 9dc95af4c7ef10979f21173260f5433006116096:
3144 Make workers restart on flags that affect their
3145 creation/behaviour.
3146 + 7e5cd529e9f8c9cb67900af36182f00ef7316654:
3147 Remote: Report checking cache status before the action is
3148 scheduled to run remotely.
3149 + 6e134a1b68418fba9992692901efa77a80c346f7:
3150 Remote: Fix a bug that the XML generation is executed even if
3151 test.xml is generated when build with --remote_download_minimal.
3152 + d4d071401acadb0d8977850a9439474e60fd7bb9:
3153 Fix compiling errors
3154 + 2579c9a18360955699d028426b45d381ff53783c:
3155 Eagerly initialize JNI copies of Java classes: doing lazy
3156 initialization on a per-method basis doesn't save anything and
3157 adds a tiny bit of overhead to every one of these calls.
3158 + 0f812eb5e561cc5415d0c9931675e58dc37a5850:
3159 Remote: Display download progress when actions are downloading
3160 outputs from remote cache.
3161 + 3835d9b21ad524d06873dfbf465ffd2dfb635ba8:
3162 Update the WorkRequestHandler to use callbacks of type:
3163 BiFunction<WorkRequest, PrintWriter, Integer>: - Mark
3164 constructors that use BiFunction<List<String>, PrintWriter,
3165 Integer> callback as deprecated. - Use a wrapper class for the
3166 BiFunction<WorkRequest, PrintWriter, Integer>. Suggesting this
3167 to avoid having two constructors that takes a BiFunction, as it
3168 creates a confusion between the deprecated and new constructor
3169 when given a lambda expressions.
3170 + 5e352afe2b35487ea2ced85ca79bd9f79858e648:
3171 Fix bug in WorkRequestHandler's handling of singleplex requests
3172 that would cause occasional hangs.
3173 + b51b31dbe75a5bc73227fccb4484f3454df81b42:
3174 Remote: Fix a race when reporting action progresses.
3175 + c9d823e42796962eed039b8122528c2a1541190f:
3176 Disable flaky test.
3177 + e6809c90ecc0ef5783faa39e63188fc33a79b80e:
3178 Revert "Check the result of Future.cancel() when cancelling the
3179 other branch of dynamic execution."
3180 + be4cbc7a67196414e3d3f323be8ab55fb5e530f7:
3181 Revert "Move use of legacy sandbox -> local fallback to only be
3182 used after all strategies have been tried, and improve messages
3183 around it."
3184 + b32349f50ff3d958613aef9275751ad9d50d344c:
3185 Set a fallback dynamic local strategy even when the
3186 dynamic_local_strategy flag is passed.
3187 + f395157c95692565bc220c7ccf788974fe0885fd:
3188 Allow running an extra spawn for local branch of dynamic
3189 execution.
3190 + 039461c76113ab3f165132dd26d0c58eb3e45cae:
3191 Adding debugging information for case when two branches
3192 apparently cancel each other.
3193 + b2231c56d78c6d37bcb6f11e1e50fe68ee336b4a:
3194 Move use of legacy sandbox -> local fallback to only be used
3195 after all strategies have been tried, and improve messages
3196 around it.
3197 + 5b95d9162b56b51c8e8f66258981ddf3c5d96765:
3198 Check the result of Future.cancel() when cancelling the other
3199 branch of dynamic execution.
3200 + 1962a59a5478f5ad374700b0abf0a718b1b3a7d3:
3201 Fix the case where if all strategies for one branch of `dynamic`
3202 execution fail to accept (that is, refuse to even take) the
3203 action given, the whole action fails. Instead of seeing whether
3204 the other branch can run and the action that that it succeeded.
3205 + b7c1ad2aff91105659299723a712b72eea943040:
3206 Fix rare crash in dynamic execution where both branches got
3207 cancelled.
3208 + 2c3cff5422b115d7bb86ed28a056f3d368ebceeb:
3209 Check if `treeDeleter` is actually async before casting it.
3210 Fixes #13240.
3211 + 1a89ce1757e75f8ba9bda76d7373a7e8527bcfc5:
3212 Make worker JSON protocol properly ignore unknown fields.
3213 + 7bbff61d9486eeb6b7cd0b6cfb619a9b6e08967b:
3214 Fix test_source_file_does_not_override_standard_library to work
3215 with Python 3.9.
3216 + f4e10367df2d881f05e3ddd5bd0531b390a845fe:
3217 Removing line ending matches in tests to be compatible on Windows
3218 + ba74df07ced96226d78851e11d1df03147f1cc1f:
3219 Refactors CompilationSupport for objc to use existing API
Bazel Release System16293d52021-07-29 13:40:11 +02003220```
3221
3222Important changes:
3223
Bazel Release System497a8482021-08-18 08:44:59 -04003224 - Multiplex persistent workers can now use the JSON protocol.
3225 - enforce config_setting visibility. See
3226 https://github.com/bazelbuild/bazel/issues/12932 for details.
3227 - The minimum Android build tools version for the Android rules is
3228 now 30.0.0
3229 - Updates worker protocol with cancellation fields, and adds
3230 experimental_worker_cancellation flag to control cancellation.
3231 - If all strategies of one branch (the local or remote execution
3232 branch) of the `dynamic` strategy fail to even accept (via the
3233 response they give from `canExec`) the action, `dynamic` will now
3234 try to see if the other branch can accept it. (Trying to run it
3235 and it failing will still cause a failure if it was the first
3236 result, this is about strategies claiming they can't even try the
3237 action)
Bazel Release System16293d52021-07-29 13:40:11 +02003238
Bazel Release System497a8482021-08-18 08:44:59 -04003239This release contains contributions from many people at Google, as well as Alex Eagle, Austin Schuh, Benjamin Peterson, bromano, Christopher Peterson Sauer, Christopher Sauer, Cristian Hancila, Daniel Wagner-Hall, Denys Kurylenko, Ed Schouten, Finn Ball, George Gensure, Greg Estren, Johannes Abt, Keith Smiley, Kevin Hogeland, Lauri Peltonen, Philipp Schrader, Ryan Beasley, Thi Doan, ThomasCJY, Timothy Klim, Trustin Lee, Ulf Adams, Vaidas Pilkauskas, Vertexwahn, wisechengyi, Xavier Bonaventura, Yannic Bonenberger, Yuval Kaplan, Yuval.
Bazel Release System6810a322021-07-27 17:54:50 +02003240
Bazel Release Systemf3be7b12021-07-16 14:23:53 +02003241## Release 5.0.0-pre.20210708.4 (2021-07-16)
3242
3243```
3244Baseline: ca1d20fdfa95dad533c64aba08ba9d7d98be41b7
3245
3246Cherry picks:
3247
3248 + 802901e697015ee6a56ac36cd0000c1079207d12:
3249 Add flags parameter to attr.label for use in builtins only.
3250 + aa768ada9ef6bcd8de878a5ca2dbd9932f0868fc:
3251 Automated rollback of commit
3252 ca1d20fdfa95dad533c64aba08ba9d7d98be41b7.
3253 + 4bcf2e83c5cb4f459aae815b38f1edd823286a29:
3254 Automated rollback of commit
3255 ff38dbfc65b8ffe92833e67f12ce616739a3d213.
3256 + 706483fd6398f00fd4faba73812de9bf15728086:
3257 Resolve merge conflict
3258 + 3821db8725b9ea3267cddfd0bbad55f50e96527e:
3259 Fix merge conflict properly
3260```
3261
3262Important changes:
3263
3264 - The used_heap_size_post_build field in BEP is populated when the
3265 --memory_profile flag is set
3266
3267This release contains contributions from many people at Google, as well as Daniel Wagner-Hall, Grzegorz Lukasik, Keith Smiley, Kevin Hogeland, Yannic Bonenberger.
3268
Bazel Release System1f1aec12021-07-02 16:12:06 +02003269## Release 5.0.0-pre.20210623.2 (2021-07-02)
3270
3271```
3272Baseline: 8b453331163378071f1cfe0ae7c74d551c21b834
3273
3274Cherry picks:
3275
3276 + 223113c9202e8f338b183d1736d97327d28241ea:
3277 Automated rollback of commit
3278 ae2a6a2dc909e468a284913c410fde995cf51095.
3279```
3280
3281Important changes:
3282
3283 - Adds --experimental_reuse_sandbox_directories flag to reuse
3284 already-created non-worker sandboxes with cleanup.
3285 - --experimental_force_gc_after_build is deprecated and will be
3286 removed soon. Use --bep_publish_used_heap_size_post_build instead
3287 - Forward coverage-instrumented files from non-tool dependencies by
3288 default.
3289
3290This release contains contributions from many people at Google, as well as David Ostrovsky, Johannes Abt, Masoud Koleini, Pras Velagapudi.
3291
Bazel Release System30f0ca72021-06-25 19:40:13 +02003292## Release 5.0.0-pre.20210615.3 (2021-06-25)
3293
3294```
3295Baseline: e7bd0947ab552a26ec032d0f1a50ee15c8810f6c
3296
3297Cherry picks:
3298
3299 + 04bed291c9f56163ae4da3a358d71cf8399b47a4:
3300 Disable shadowed_action part of action_aspect_test
3301 + 367b19eb8821b4de738c6c994ba275c695f4726b:
3302 Fix starlark action with shadowed_action inputs cache test
3303 + 4acb9ae67a7135b2365b92e91601d4797adc2ad5:
3304 Automated rollback of commit
3305 03f6af623ae3de4a9b756b5235ebd31cc2faf762.
3306```
3307
3308Incompatible changes:
3309
3310 - Native libraries in data attribute are not collected. See
3311 https://github.com/bazelbuild/bazel/issues/13550 for details
3312
3313Important changes:
3314
3315 - Remove obsolete --incompatible_prohibit_aapt1
3316 - The minimum Android build tools version for the Android rules is
3317 now 30.0.0
3318
3319This release contains contributions from many people at Google, as well as Cameron Mulhern, Delwin9999, Keith Smiley.
3320
Bazel Release System7ad949b2021-06-11 15:03:28 +02003321## Release 5.0.0-pre.20210604.6 (2021-06-11)
3322
3323```
3324Baseline: d571c8976f279e4d485498d0875c85ae73aecc42
3325
3326Cherry picks:
3327
3328 + c367a7e027f351e8ffefabf919563abbb8c7d0e1:
3329 Fix places where nodes were still being enqueued at
3330 `Integer.MAX_VALUE` and add checks for overflow conditions.
3331 + 260015df1524543d56b0dbff00958320cd58d166:
3332 Automated rollback of commit
3333 f1b37b5d610728634d92ef4ebd4d1435c0c8605d.
3334```
3335
3336Important changes:
3337
3338 - Add `disable_annotation_processing` option to
3339 `java_common.compile`, which disables any annotation processors
3340 passed to `plugins` or in `exported_plugins` of `deps`
3341
3342This release contains contributions from many people at Google, as well as Dave MacLachlan, FaBrand, George Gensure, Jesse Chan, Keith Smiley, Kevin Hogeland, Uri Baghin, Xavier Bonaventura.
3343
Bazel Release Systemf24ceb62021-06-09 20:59:14 +02003344## Release 5.0.0-pre.20210520.7 (2021-06-09)
3345
3346```
3347Baseline: e2ae73fe16cbedf095b9e6d5687b06ecf765d794
3348
3349Cherry picks:
3350
3351 + 0fdb485421f9d134f11103a36c48182769fb40d3:
3352 Automated rollback of commit
3353 f2230d8494e70f02b1e4fb082fcf8550aa684a40.
3354 + 1f52e9a58dd814f203797c5fbab44d9f4d53a43c:
3355 Support rolling releases in Bazel release scripts.
3356 + 2f72244183c8c3de722ff1d9e8b0b745d12cd528:
3357 Fix syntax error in Bazel release scripts
3358 + 4ef9c566c861848fef7907cf07a6e7d9d15cee7a:
3359 Fix location of -prerelease option
3360 + a6dfd927c58c63275159858ac661a9b669594a0c:
3361 Add --experimental_shadowed_action to graveyard options for all
3362 commands.
3363```
3364
3365Important changes:
3366
3367 - If all strategies of one branch (the local or remote execution
3368 branch) of the `dynamic` strategy fail to even accept (via the
3369 response they give from `canExec`) the action, `dynamic` will now
3370 try to see if the other branch can accept it. (Trying to run it
3371 and it failing will still cause a failure if it was the first
3372 result, this is about strategies claiming they can't even try the
3373 action)
3374
3375This release contains contributions from many people at Google, as well as Benedek Thaler.
3376
Bazel Release System6af9fa62021-06-09 19:45:15 +02003377## Release 5.0.0-pre.20210516.1 (2021-06-09)
3378
3379```
3380Baseline: 275c54c982468b97611dc764c68daed8d7c45004
3381
3382Cherry picks:
3383
3384 + 1f52e9a58dd814f203797c5fbab44d9f4d53a43c:
3385 Support rolling releases in Bazel release scripts.
3386 + 2f72244183c8c3de722ff1d9e8b0b745d12cd528:
3387 Fix syntax error in Bazel release scripts
3388 + 4ef9c566c861848fef7907cf07a6e7d9d15cee7a:
3389 Fix location of -prerelease option
3390```
3391
3392This release contains contributions from many people at Google, as well as Keith Smiley, Niek Peeters.
3393
Bazel Release System57d167b2021-06-01 12:52:54 +02003394## Release 5.0.0-pre.20210510.2.2 (2021-06-01)
3395
3396```
3397Baseline: 8a42645ec500874b0440475763ab680d5efc1e6a
3398
3399Cherry picks:
3400
3401 + e3c78c4eeaf4e8db3c22aa71c6c1578cb48c8dcc:
3402 Ensure that test status artifacts are reported as top-level
3403 artifacts.
3404 + 1f52e9a58dd814f203797c5fbab44d9f4d53a43c:
3405 Support rolling releases in Bazel release scripts.
3406 + 2f72244183c8c3de722ff1d9e8b0b745d12cd528:
3407 Fix syntax error in Bazel release scripts
3408 + 4ef9c566c861848fef7907cf07a6e7d9d15cee7a:
3409 Fix location of -prerelease option
3410```
3411
3412This release contains contributions from many people at Google, as well as .
3413
Bazel Release Systemf7049e52021-05-31 22:10:26 +02003414## Release 5.0.0-pre.20210510.2.1 (2021-05-31)
3415
3416```
3417Baseline: 8a42645ec500874b0440475763ab680d5efc1e6a
3418
3419Cherry picks:
3420
3421 + e3c78c4eeaf4e8db3c22aa71c6c1578cb48c8dcc:
3422 Ensure that test status artifacts are reported as top-level
3423 artifacts.
3424 + 1f52e9a58dd814f203797c5fbab44d9f4d53a43c:
3425 Support rolling releases in Bazel release scripts.
3426 + 2f72244183c8c3de722ff1d9e8b0b745d12cd528:
3427 Fix syntax error in Bazel release scripts
3428```
3429
3430This release contains contributions from many people at Google, as well as .
3431
Bazel Release Systeme7d34802021-05-31 20:35:38 +02003432## Release 5.0.0-pre.20210510.2 (2021-05-31)
3433
3434```
3435Baseline: 8a42645ec500874b0440475763ab680d5efc1e6a
3436
3437Cherry picks:
3438
3439 + e3c78c4eeaf4e8db3c22aa71c6c1578cb48c8dcc:
3440 Ensure that test status artifacts are reported as top-level
3441 artifacts.
3442 + 1f52e9a58dd814f203797c5fbab44d9f4d53a43c:
3443 Support rolling releases in Bazel release scripts.
3444```
3445
3446Incompatible changes:
3447
3448 - Removing java_common.javac_jar Starlark call.
3449 - native.existing_rule now returns select values in a form that is
3450 accepted by rule instantiation. This is a breaking API change
3451 because there is some code that relies on the precise type
3452 returned, including brittle workarounds for this bug specifically
3453 and insufficiently flexible workarounds for other issues with the
3454 intersection of select and native.existing_rule.
3455 - flipped incompatible_use_toolchain_resolution_for_java_rules, see
3456 #7849
3457 - Query output=xml/proto/location for source files will now show
3458 the location of line 1 of the source file (as the new default)
3459 instead of its location in the BUILD file.
3460 - Specifying a target pattern underneath a directory specified by
3461 .bazelignore will now emit a warning, not an error.
3462 - Query `--order_output=auto` will now sort lexicographically.
3463 However, when `somepath` is used as a top level function (e.g.
3464 `query 'somepath(a, b)'`), it will continue to output in
3465 dependency order. If you do not want the lexicographical output
3466 ordering, specify another `--order_output` value (`no`, `deps` or
3467 `full`) based on what ordering you require.
3468 - In the build event stream,
3469 BuildMetrics.TargetMetrics.targets_loaded is no longer populated.
3470 Its value was always mostly meaningless.
3471 BuildMetrics.TargetMetrics.targets_configured and
3472 BuildMetrics.ActionSummary.actions_created now include configured
3473 aspect data.
3474 - //visibility:legacy_public has been removed.
3475 - Flip and remove incompatible_dont_collect_so_artifacts
3476 (https://github.com/bazelbuild/bazel/issues/13043).
3477 - Remove flag --experimental_no_product_name_out_symlink: it is
3478 always true.
3479 - The Starlark method generate_dsym in objc fragment has
3480 been deleted. Please use the equivalent apple_generate_dsym in
3481 cpp
3482 fragment instead.
3483
3484Important changes:
3485
3486 - Flag --incompatible_objc_compile_info_migration is removed. See
3487 #10854.
3488 - Flag --incompatible_objc_compile_info_migration is removed. See
3489 #10854.
3490 - Flag --incompatible_objc_compile_info_migration is removed. See
3491 #10854.
3492 - none
3493 PAIR=cmita
3494 - The --incompatible_load_python_rules_from_bzl flag is now a no-op.
3495 - Filter all (instead of just C++) source files for coverage output
3496 according to --instrumentation_filter and
3497 --instrument_test_targets.
3498 - The `--incompatible_disable_native_apple_binary_rule` flag has
3499 been added which disables the native `apple_binary` rule. Users
3500 who need to use `apple_binary` directly (if they cannot use one
3501 of the more specific Apple rules) should load it from
3502 https://github.com/bazelbuild/rules_apple.
3503 - The Android rules' --use_singlejar_apkbuilder is now a no-op.
3504 SingleJar will always be used to build APKs.
3505 - dict.setdefault(key, ...) now fails if dict is frozen, even if it
3506 already contains key. This is an incompatible API change.
3507 - Flag --incompatible_objc_provider_remove_compile_info is removed.
3508 See #11359.
3509 - Starlark now permits def statements to be nested (closures).
3510 - native.existing_rule now returns select values in a form that is
3511 accepted by rule instantiation. This is a breaking API change,
3512 though the fallout is expected to be small.
3513 - Starlark now supports lambda (anonymous function) expressions.
3514 - The "test" and "coverage" commands no longer return 3 when a
3515 test action fails because of a system error. Instead, the exit
3516 code
3517 reflects the type of system error.
3518 - The undocumented ctx.expand feature no longer exists.
3519 - Make --legacy_dynamic_scheduler a no-op flag.
3520 - Multiplex persistent workers can now use the JSON protocol.
3521 - native.existing_rule now returns a mutable list, not a tuple, for
3522 a list-valued attributes. This is an incompatible API change.
3523 - Roll back change to have native.existing_rules use list instead
3524 of tuple.
3525 - BEP includes test suite expansions.
3526 - config_setting now honors `visibility` attribute (and defaults to
3527 `//visibility:public`)
3528 - Change the MultiArchSplitTransitionProvider to be based on
3529 platform type + CPU instead of fixed "ios_" + cpu.
3530 - enforce config_setting visibility. See
3531 https://github.com/bazelbuild/bazel/issues/12932 for details.
3532 - add a flag to build v4 signature file
3533 - Added _direct_source_jars output group to Java related targets.
3534 END_PUBLIC
3535 - pkg_deb is no longer part of @bazel_tools//build_defs/pkg:pkg.bzl.
3536 Use https://github.com/bazelbuild/rules_pkg/tree/main/pkg instead
3537 - Allowing the lipo operations to be conditional in the
3538 linkMultiArchBinary API for Apple binaries. Single architecture
3539 slices are now returned through AppleBinaryOutput and the
3540 Starlark API.
3541 - Release restriction for "-" in the package name for Python
3542 sources. Now `py_binary` and `py_test` targets can have main
3543 source file with "-" in the path.
3544 - Users consuming BEP may assume that a `named_set_of_files` event
3545 will
3546 appear before any event referencing that `named_set` by ID. This
3547 allows consumers
3548 to process the files for such events (eg. `TargetCompleted`)
3549 immediately.
3550 - BEP includes all files from successful actions in requested
3551 output groups.
3552 Previously, an output group's files were excluded if any file in
3553 the output group
3554 was not produced due to a failing action. Users can expect BEP
3555 output to be larger
3556 for failed builds.
3557 - In BEP, TargetComplete.output_group has a new field `incomplete`
3558 indicating that the file_sets field is missing one or more
3559 declared artifacts
3560 whose generating actions failed.
3561 - The flag `--toolchain_resolution_debug` now takes a regex
3562 argument, which is used to check which toolchain types should
3563 have debug info printed. You may use `.*` as an argument to keep
3564 the current behavior of debugging every toolchain type.
3565 - Add runfiles.merge_all() for merging a sequence of runfiles
3566 objects.
3567 - runfiles.merge() and merge_all() now respect
3568 --nested_set_depth_limit.
3569 If you hit the depth limit because you were calling merge() in a
3570 loop, use
3571 merge_all() on a sequence of runfiles objects instead.
3572 - Bazel will no longer create a bazel-out symlink if
3573 --symlink_prefix is specified: the directory pointed to via the
3574 bazel-out symlink is accessible via ${symlink_prefix}-out. If
3575 this causes problems for you, set
3576 --experimental_no_product_name_out_symlink=false in your builds
3577 and file an issue.
3578 - Updates worker protocol with cancellation fields, and adds
3579 experimental_worker_cancellation flag to control cancellation.
3580 - Simplify build failure output by always using `NNN arguments`.
3581 - trim_test_configuration now defaults to on
3582 - Mark genrule.srcs as a source attribute for coverage.
3583 - When using --allow_analysis_failures (for example, via
3584 bazel-skylib's
3585 analysistest with `expect_failure = True`), analysis-time
3586 failures in aspect
3587 implementation functions will now be propagated and saved in
3588 AnalysisFailureInfo, just like analysis-time failures in rules.
3589 - cquery --noimplicit_deps now correctly filters out resolved
3590 cc_toolchains
3591 - Sign apks deterministically.
3592 - Make gcov optional in cc_toolchain tools.
3593 - If --experimental_prefer_mutual_xcode is passed, Bazel will
3594 choose the local default (instead of the newest mutually
3595 available version) if it's available both locally and remotely.
3596 - Remove java_lite_proto_library.strict_deps attribute.
3597 - Generate proguard configurations deterministically.
3598 - Adds a new flag, `--incompatible_enable_cc_test_feature` which
3599 switches from the use of build variables to the feature of the
3600 same name.
3601 - Dropped fragile xz support from built in pkg_tar. Users requiring
3602 xz
3603 compression should switch to bazlebuild/rules_pkg.
3604
3605This release contains contributions from many people at Google, as well as Adam Liddell, Alex Eagle, Anthony Pratti, Austin Schuh, Benedek Thaler, Benjamin Lee, Benjamin Peterson, bromano, Christopher Sauer, Cristian Hancila, Daniel McCarney, Daniel Wagner-Hall, Danny Wolf, Dave Nicponski, David Cummings, David, David Ostrovsky, Denys Kurylenko, Dmitry Ivankov, dorranh, Ed Schouten, Elliotte Rusty Harold, erenon, Eric Cousineau, Ethan Steinberg, Felix Ehrenpfort, Finn Ball, Fredrik Medley, Garrett Holmstrom, Gautam Korlam, George Gensure, goodspark, Greg Estren, Grzegorz Lukasik, John Laxson, Jonathan Schear, Justus Tumacder, Keith Smiley, Lauri Peltonen, Liu Liu, Lszl Csomor, m, Marc Zych, Mark Karpov, Matt Mackay, Max Liu, Menny Even Danan, menny, Michael Chinen, Nathaniel Brough, Nick Korostelev, Nikolay Shelukhin, odisseus, Oleh Stolyar, Olek Wojnar, Olle Lundberg, Philipp Schrader, Qais Patankar, Ryan Beasley, samhowes, Samuel Giddins, Sebastian Olsson, Steve Siano, steve-the-bayesian, Stiopa Koltsov, susinmotion, tatiana, Thi Doan, ThomasCJY, Timothy Klim, Tobi, Torgil Svensson, Trustin Lee, Ulf Adams, Vaidas Pilkauskas, Vertexwahn, wisechengyi, Xavier Bonaventura, Yannic Bonenberger, Yannic, Yury Evtikhov, Yuval Kaplan, Yuval, [zqzzq].
3606
Bazel Release System2ac65812021-05-21 13:07:43 +02003607## Release 4.1.0 (2021-05-21)
3608
3609```
3610Baseline: 37a429ad12b4c9e6a62dbae4881a1ff03b81ab40
3611
3612Cherry picks:
3613
3614 + a689d673abadf80f1efaf8ddaeee92d56fc2847b:
3615 Use getRunfilesPath for run_under executable path generation.
3616 getRootRelativePath doesn't return a valid runfiles path for
3617 external source files anymore after the recent external source
3618 root change. Also, it won't work for external labels either once
3619 the --nolegacy_external_runfiles becomes default. This fixes
3620 issue #12545.
3621 + d90ec67fdab9710f649a3c1d374fb6b938b9271a:
3622 Fix NPE when coveragerunner is not set on the toolchain.
3623 + 8555789dd239a5ac229c1d9cee80b2a9f30b3bf7:
3624 Fix the classic query package-loading cutoff optimization with
3625 external workspaces.
3626 + 57672aca01b3be895382c952b550c9f8edf6c9f2:
3627 Update turbine
3628 + bef4bbbb47d47befe3711d06f358782ee12554f9:
3629 Update turbine
3630 + d113d7454127bba78aa618dac81e5d164920b662:
3631 Update turbine
3632 + 1489f0f4cae3e9247a70e4003ab76bef45c5b986:
3633 Support Scala3 .tasty files
3634 + 0d2d95cd7e34b4061c8e5fdfd21ba0ab8818c685:
3635 Update to java_tools javac11 release 10.5 (#12647)
3636 + a9419f38d5f29af31a6c8ebda09a6e0303a6ba54:
3637 Fix common prefix for instrumentation filter
3638 + 84fadcf81f81b2d7343ca4151a5639be7f2263ee:
3639 Fix builds for filegroup targets with incompatible dependencies
3640 + e43825d0bef359f645e1cabf2164fd2db6ee4a35:
3641 Revert "Remove
3642 --incompatible_blacklisted_protos_requires_proto_info"
3643 + 082d58de852ebaa640bcf13cf419cbb94eec2b26:
3644 Transform roots along with paths during output deletion.
3645 + e8835c1c221d76a2d5532d18083eaa04401619b3:
3646 AttributeContainer.Large now handles more than 127 attributes.
3647 + e1e87349335ac59f9b3df47cee8b999faeaa6d11:
3648 Add an env attribute to all test and binary rule classes
3649 + a87d7ed2411d5382bac58a20b79e09c464ad13b9:
3650 Take no action to prefetch empty artifacts.
3651 + 3e969ff24a6a0e03139b9f288c88451a7dfa97cd:
3652 Fix a couple of bugs with Incompatible Target Skipping
3653 + e6670825b1e183f81f5c864aafd425d512fa9ff5:
3654 Pass --host_action_env to host options hostActionEnvironment
3655 attribute
3656 + 07400c0392e7be163f8a3396fa5cf89ce6705412:
3657 Add --{no,}autodetect_server_javabase.
3658 + c83366064621d5a265eba14d93a03deff58fe6d8:
3659 Only treat "env" and "env_inherit" attrs specially for native
3660 rules
3661 + 6a60b30cd0f22d0ab84b2ddd658d5ccb899a8a76:
3662 Fix coverage support when using default_java_toolchain. (#12801)
3663 + 4158a6f512e52516437e00f8d9609a91be7fc195:
3664 Revert JacocoCoverage target to remote_java_tools_java_import
3665 and add a new target for remore_java_tools_filegroup. (#12813)
3666 + f6d30cf5ef9a8a39fea7072317f89a872387b790:
3667 Add windows_msvc back to conditions in bazel_tools.
3668 + 6b33bdb1e22514304c0e35ce8e067f2175685245:
3669 Release 4.0.0 (2021-01-21)
3670 + 8811e27353c2c10980faf7e4c5e44b431d2d4f1c:
3671 Fix error message from getPrerequisites to not print internal
3672 details.
3673 + 27e15ad11410eb1014f5247fd0eeb31a46733c07:
3674 Clean up ConfiguredTargetValueAccessor and
3675 ConfiguredTargetAccessor
3676 + e87feb8ac9573cef993824f82370d0389570521d:
3677 Move getConfigConditions into ConfiguredTarget.
3678 + 34d98234324da83e93ba0d5ef5702880d5ac7c5c:
3679 Change ConfiguredTargetQuery to use KeyedConfiguredTarget as a
3680 value.
3681 + 079bb7d69931705bb2b092c9017090e224ef3043:
3682 Clean up old dependencies that are unused since
3683 https://github.com/bazelbuild/bazel/commit/34d98234324da83e93ba0d
3684 5ef5702880d5ac7c5c.
3685 + e03cb63e059420847d6578d7cbfe93f05615c95e:
3686 Update bazelbuild/platforms to a current release. - Roll forward
3687 https://github.com/bazelbuild/bazel/commit/0a4533420a3de467fd211d
3688 7f925cf88e0cd5b76a with kythe fix.
3689 + 2eb1bf53d5fef13b89ee440af4f83003d1d0b50a:
3690 Update docs and tests to use the @platforms//:incompatible
3691 constraint
3692 + c71697cf33b0fbbb42fc2910bac83960edc7e855:
3693 Clarify test_suite behaviour in the Platforms docs
3694 + dfb70ea4cae2ffffb76e9741d86c96505a6d05ad:
3695 Enable toolchain resolution for filegroup targets.
3696 + 24d086446f74606819dc53c3a436caa056ff05b7:
3697 PlatformProviderUtils should ignore targets that don't have the
3698 needed
3699 + ba60c0b3f9bbd00975c984244839b155e84b4c5d:
3700 ijar: fix manifest sections handling
3701 + 58bb42ad7ca263a75c6eeef51482f805726663a5:
3702 Revert "Switch to -fdebug-compilation-dir"
3703 + 57672aca01b3be895382c952b550c9f8edf6c9f2:
3704 Update turbine
3705 + bef4bbbb47d47befe3711d06f358782ee12554f9:
3706 Update turbine
3707 + d113d7454127bba78aa618dac81e5d164920b662:
3708 Update turbine
3709 + ad241fbebd90a9f0ad65ccd0658838f57030db68:
3710 Allow cquery to filter out incompatible targets
3711 + 1782f0ae751569607ef88930c822ac460a1f8bb3:
3712 Patch grpc to fix cares selecting the wrong source when building
3713 for darwin_arm64 cpu.
3714 + 8f7bc2f67fafcaa8d25cfc77eaaedbf8eed2984a:
3715 [1/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
3716 blobs
3717 + 848a51747a460ab4c5185e4c61ab522a9981cbea:
3718 [2/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
3719 blobs
3720 + 9b30172547f2093acb56aedf159a77d5dceffda2:
3721 [3/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS
3722 blobs
3723 + 1e258d2a7a5221613047e5cee0aaec5b56045d2b:
3724 Allow exec groups to inherit from the rule or other exec groups.
3725 + d0676693310215407224c1b8e8aea9e3eddc183d:
3726 Support execution constraints per exec group
3727 + f1e0d346c8235c855e61afc2adb870e4b895e002:
3728 Clean up RuleContext to use a Table instead of a Map of Maps.
3729 + 8186fbb47ab964a9affa9a0fc6315fcdbde2b5aa:
3730 Documentation for #13110
3731 + 321fe3b6b4e892821ee7dbf2d17dd8ae6a541913:
3732 Prevent --repo_env from triggering unnecessary fetches
3733 + 3ebf658cba43bbab1efc36518f0795a7d65e2d46:
3734 Prevent a crash when using --repo_env=VAR without a value
3735 + 913a985a5c2fc3842b12c6e5f29af0fa1bccfd6a:
3736 Report digest of failed uploads
3737 + 5122617b8a22fee7acd86c9c48f2c2737709ca3f:
3738 Status error presentation with details
3739 + 9a70805db543e2fb910e1c55ef3b3567362adf30:
3740 Fix double shutdown of BuildEventArtifactUploader when BES+File
3741 output enabled.
3742 + 325eb956c92530bdfda54a36a186cae4245a4f7b:
3743 Add rxjava3 to third_party
3744 + ceaac966a7b977461b69ce9501df6a467f4a93b2:
3745 remote: set executable bit of an input file based on its real
3746 value
3747 + 5b786da75837c5e29714e1d708c3cdf9a67ed32d:
3748 Remote: correctly implement equals and hashCode.
3749 + 48648503729d53fdee1322fde2c8e6c05e99cff9:
3750 Fixed an error that bazel binary is not executable when testing
3751 with remote execution.
3752 + bc54c648aa1f99509c7c36d5e6b570d066689209:
3753 Remote: Use parameters instead of thread-local storage to
3754 provide tracing metadata.
3755 + 92955e617b5c41713a5163dc0437c2a024b31815:
3756 Remote: Use parameters instead of thread-local storage to
3757 provide tracing metadata. (Part 2)
3758 + 75bd1ff8ab56d241916bde36291301fa026b2bab:
3759 Remote: Use parameters instead of thread-local storage to
3760 provide tracing metadata. (Part 3)
3761 + 37ee252f3744abc4511f55b5089cc52abd3ba09d:
3762 Remote: Use parameters instead of thread-local storage to
3763 provide tracing metadata. (Part 4)
3764 + 71e35b165f924e2649a078fcf6007645d58039af:
3765 Remote: Use parameters instead of thread-local storage to
3766 provide tracing metadata. (Part 5)
3767 + 32fc451600b6e94a015263eb1c8a63e974f6f4cc:
3768 Write/QueryWriteStatus logging refinement/addition
3769 + 97963c5bb24ac79eb3646dd61bfcf2f8a648af54:
3770 Remote: gRPC load balancing. (Part 1)
3771 + e2b9a42a61596b0d24f0cadd6b7157b7f1efb221:
3772 Remote: gRPC load balancing. (Part 2)
3773 + 6667ad7dd77f8d97952133052c17e7779c1430ec:
3774 Remote: gRPC load balancing. (Part 3)
3775 + 7c081eb020186bfb16d4ef1c3832a8e946e99da1:
3776 Remote: gRPC load balancing. (Part 4)
3777 + 17afbe4e224b359fee6415a5bd71bbedaa7843eb:
3778 Implement getMessage for BulkTransferException
3779 + a6293b3df521aea9075b2ebbcdb675a7d02d3c32:
3780 Remote: gRPC load balancing. (Part 5)
3781 + 7a62c2d4e27e398f440910c81eacc384f38ca8be:
3782 Remote: Add interoperability between Rx and ListenableFuture.
3783 + 1fcb18a0b455bfcb8e9940778f37d8c82c5ed5a0:
3784 Update to latest remote-execution proto
3785 + dad96301d12aa77eb67399e08265a5f30f5ffd6a:
3786 Set Platform on Action not just Command
3787 + 6c5a3ee0dcbb4b804f4aa85c038a378fb70eb1f9:
3788 Remote: Add AsyncTaskCache which is used to deduplicate task
3789 executions and cache the results.
3790 + 9d0c7325ac810febe565a62fdd875ae0c240b274:
3791 Remote: Use AsyncTaskCache inside RemoteActionInputFetcher.
3792 + f54fe07209acc25340df8d2e02993b1add2deafa:
3793 Add --experimental_repository_disable_download to allow users
3794 disable download for external repos
3795 + b243584a479eb4481a9bf4f69acc899610a3b630:
3796 Report errors parsing rewriter config file
3797 + 63bc1c7d0853dc187e4b96a490d733fb29f79664:
3798 Downloader rewriter config has all_blocked_message
3799 + 495ac923f398443be45c20ab29d183fe47e08911:
3800 Allow UrlRewriter to change protocol, i.e. https->http, and
3801 http->https
3802 + 8dbbde0037264c1db4b229a09f98a61ab4ca06b0:
3803 Allow overriding the hostname and instance name in bytestream://
3804 URIs
3805 + 0881c80d29acecdfbb58c49156f805e8c50db117:
3806 Don't set requestId on non-multiplex requests.
3807 + e3b7e17b05f13ff183a4d7efec8ec797f3f5eaa3:
3808 When generating a symlink in _virtual_includes, add the original
3809 header to the 'allowed to use' set too
3810 + f8f66f36ad299a0ea019c94100d5a8e2018f5ab5:
3811 Make SimpleLogHandler not swallow interrupts.
3812 + f8606e5e76579442a1c6563e718ea54c673f1a04:
3813 linux-sandbox: don't assume -lrt, -D__STDC_FORMAT_MACROS
3814 + dac0d40d0eb903f5cb70341398d1a333c19adf3a:
3815 Improve "Common Attributes" section
3816 + a607d9dc70ac67f1aa2c32ca954177f9c77860be:
3817 Never create more than one process per WorkerMultiplexer.
3818 + 80c03ef14a1842d1e3475b1adf98adeb05df33f9:
3819 Move sending requests and reading responses for multiplex
3820 workers into separate subthreads.
3821 + 003cfcde3fd3901c1279ba1db3db3a14536248b4:
3822 Allow use of JSON protocol in multiplex workers.
3823 + 308bce36cba46095fe41866e703710035ddddada:
3824 Actively kill off still-active workers when stopping work on
3825 interrupt.
3826 + 8959dff512fe4505af786bcf2ef981ec7082a913:
3827 Add sanitizer support to Apple platforms
3828 + 32f16e9360f3e1856db1775eb5014b930da2a303:
3829 Fix a Google-internal broken link.
3830 + c9e2be52a067dd9abf5efa4f5f55bb5b98cf5d3b:
3831 Add SHA-1 to subresource integrity format for download()
3832 checksums
3833 + 3b3e6424c6fbd51d4c4ebb6aa25f1d1f4720221c:
3834 Remove fallback strategy support for workers, add flag for it in
3835 sandbox.
3836 + 3457f2ae11e4543de0a5e6e8e37c3aff067891fd:
3837 Update to java_tools javac11 10.6 (#13245)
3838 + 4928295b236ec8f590a7e9d863502bc2f50a77d9:
3839 Allow .S files in C++ Starlark cc_common.compile.
3840 + 1b18d65227c127fe946d3fcde4586158bc7e5fcb:
3841 Automatic code cleanup.
3842 + b5d6c38535c7f6f1eab3fd4c8d3d2da91d0b0f8a:
3843 Change short output of worker type to have the same logic as the
3844 worker creation for sandboxing vs. multiplex.
3845 + e7a0a71f50b69df5d38a8a85fefd36d211e12e8d:
3846 More properly destroy workers on interrupt.
3847 + 7056711eb11b672133274eb29fc93b01dcf088d5:
3848 Make WorkRequestHandler do a GC after some amount of CPU time
3849 has been used on requests. For Bazel and Blaze, defaults to 10s
3850 based on benchmarking.
3851 + 596653d3cf76e7b208da343e1fde5fe20273a5ff:
3852 Allow tree artifacts to be source or header inputs to
3853 cc_common.compile()
3854 + 055c93d11ab20cc4479539b24bbdfa5cab78a342:
3855 Switch to path autocompletion after -- for bazel run commands.
3856 + 807f2a1929e23b60b237c63fadb25af81de2e3c3:
3857 Fix Incompatible Target Skipping for test args
3858 + 9a5cd854e0613f91d52075973e2454b1e009e1ef:
3859 Fix order of build request id and command id
3860 + 706f5acd02363e48076dc97e37613fd968932d03:
3861 Fix bazel crash when passing config_setting to
3862 target_compatible_with
3863 + 61da1d2bf10eabba4c75de959b0374f302d89d70:
3864 Support multiple --bazelrc on command line
3865 + 5593358a58b66f06c4e421bb48856de94c3fd625:
3866 Update ConfiguredTargetFunction.computeUnloadedToolchainContexts
3867 to
3868 + 662cf54de7a103db30e04ebae2d2b919437c4846:
3869 Remote: Fix an issue that a failed action could lead to
3870 RuntimeException caused by InterruptedException thrown when
3871 acquiring gRPC connections.
3872 https://github.com/bazelbuild/bazel/issues/13239
3873 + a3a1763212f29932618b9b9b2f929976ae0e3b6e:
3874 Pass more `--add-exports=` flags
3875 + d2b942879471786e82f1c96eea8722bbe7919fc1:
3876 Remote: Fixed a bug that remote cache is missed due to
3877 executable bit is changed
3878 + 616dc264f02907d7b7887285d22307dfe6d097b6:
3879 Fix Bazel Coverage with C++ to work with Remote Execution
3880 + 5f40d12e741aa30d506eaa15673fb2ae76d29468:
3881 Fix external_path_test with newer Xcode versions.
3882 + b416193075642017e13c774422b49cb07fb65c23:
3883 Allow using embedded tools in sandboxed spawn runners.
3884 + eb762d4e7431637e607146b1c191485795047ef9:
3885 Fix racy write of temporary files while staging virtual inputs
3886 for the sandbox.
3887 + f31e86768579ad7ec57ba13f4c3c1348f5c2702e:
3888 Update platforms_test to not rely on filegroup not using
3889 toolchain
3890 + 13031e5b3bd7c8f29b96b2fee1b380160e0e27fc:
3891 Update SkyframeTests to not rely on filegroup not using toolchain
3892 + 11651824a9d0ffb9adb9611dcd39f4c95a59d750:
3893 Update ConfigurableAttributesTest to not rely on filegroup not
3894 using …
3895 + 4b68532e7ea5eb80c926b7b8e2ec2be300004628:
3896 Make WorkerExecRoot not be a subclass of SandboxedSpawn.
3897 + 31db460a45767de0bcd664a6efbe9d163b85b802:
3898 Make WorkerExecRoot not be re-created on each createFileSystem()
3899 call. Preparation for holding a map of existing links, but also
3900 just nicer.
3901 + a2cc0460dc84ad2dc88019af2fe2a65ce80c61e5:
3902 Start the file existence check traversal from the execroot base
3903 instead of execroot so that external repo files at
3904 "<execroot>/../<path>" are correctly handled when the sibling
3905 repository layout is enabled.
3906 + b048282c7893231d3a7191b251804973917b07a4:
3907 Use readdir for cleanExisting in WorkerExecRoot.
3908 + 270f00dd01fa06cf3e813da5a406be3446de7377:
3909 Add native support for Apple Silicon
3910 + 8e56b9423e8ad2f7323fb90b19b73858def81e39:
3911 Explicitly state that embedding macOS OpenJDK is for x86_64
3912 + 09c621e4cf5b968f4c6cdf905ab142d5961f9ddc:
3913 Remote: Fix a race that AsyncTaskCache#Execution could be reused
3914 after disposed which results in
3915 CancellationException("disposed") propagated to downstream.
3916 + 0299cd7e17203a4ce0ea947b62a7c55f1afb8225:
3917 Remove wrapped_clang params files after use
3918 + 47edc57806056f3c8764241ed41b8acc72bd2ebf:
3919 Silence swiftmodule timestamp warnings
3920 + f6e1074b09ebefba185c0531e9cea26b9596c8a9:
3921 Remote: Use shutdownNow() instead of shutdown() in
3922 ChannelConnection#close() as a workaround to a gRPC bug.
3923 + 71be4ea9e3d20bf90129e34a6a2899fe8401be36:
3924 And mnemonic and label to remote metadata
3925 + 6d28486e8eca70f76d13922944cb567b8aa09380:
3926 Change `set -x` in coverage to be set by var
3927 + 9b9de653355864e9700889ee36a3a49a450a2607:
3928 Bump minimal JDK install base maximum size from 290 to 295 MB.
3929 + 9e7e592ca51eba1a3f120320c41c845312894d74:
3930 Remote: Check the return value of ActionOwner.getLabel() since
3931 it could be `null`.
3932 + 14abe4fd7c3967686a3536939fdc3882e691bca2:
3933 Allow `DiffAwareness` to share precomputed information about the
3934 workspace and propagate it to the `WorkspaceStatusAction`.
3935 + 082d98772690946ed29c157e60640c97a6e1195b:
3936 Implement available() method for Windows subprocesses.
3937 + c2bdd034014f66ce14529cc353cda18a32320f6c:
3938 Move --repo_env to common options
3939 + e09f2743738044095b9d784ea62df16b7f5750e6:
3940 Revert "Documentation for #13110"
3941 + a165baa250652fdc865ae0df39160be1f7f74c47:
3942 Revert "Clean up RuleContext to use a Table instead of a Map of
3943 Maps."
3944 + 51fb9e13a864f4f704ae378ea632433bae7ddc31:
3945 Revert "Support execution constraints per exec group"
3946 + cb6e5c24b82e0e20a243145fb6ea32b09e3d1de3:
3947 Revert "Allow exec groups to inherit from the rule or other exec
3948 groups."
3949```
3950
3951Important changes:
3952
3953 - Multiplex persistent workers can now use the JSON protocol.
3954
3955This release contains contributions from many people at Google, as well as Alex Eagle, Austin Schuh, Benjamin Peterson, Cristian Hancila, Daniel Wagner-Hall, Denys Kurylenko, Ed Schouten, Finn Ball, George Gensure, Keith Smiley, Lauri Peltonen, Philipp Schrader, Ryan Beasley, Thi Doan, Timothy Klim, Ulf Adams, Vaidas Pilkauskas, wisechengyi, Xavier Bonaventura, Yannic Bonenberger, Yuval Kaplan, Yuval.
3956
Bazel Release System506f3192021-01-21 08:25:01 +01003957## Release 4.0.0 (2021-01-21)
3958
3959```
3960Baseline: 37a429ad12b4c9e6a62dbae4881a1ff03b81ab40
3961
3962Cherry picks:
3963
3964 + a689d673abadf80f1efaf8ddaeee92d56fc2847b:
3965 Use getRunfilesPath for run_under executable path generation.
3966 getRootRelativePath doesn't return a valid runfiles path for
3967 external source files anymore after the recent external source
3968 root change. Also, it won't work for external labels either once
3969 the --nolegacy_external_runfiles becomes default. This fixes
3970 issue #12545.
3971 + d90ec67fdab9710f649a3c1d374fb6b938b9271a:
3972 Fix NPE when coveragerunner is not set on the toolchain.
3973 + 8555789dd239a5ac229c1d9cee80b2a9f30b3bf7:
3974 Fix the classic query package-loading cutoff optimization with
3975 external workspaces.
3976 + d113d7454127bba78aa618dac81e5d164920b662:
3977 Update turbine
3978 + 1489f0f4cae3e9247a70e4003ab76bef45c5b986:
3979 Support Scala3 .tasty files
3980 + 0d2d95cd7e34b4061c8e5fdfd21ba0ab8818c685:
3981 Update to java_tools javac11 release 10.5 (#12647)
3982 + a9419f38d5f29af31a6c8ebda09a6e0303a6ba54:
3983 Fix common prefix for instrumentation filter
3984 + 84fadcf81f81b2d7343ca4151a5639be7f2263ee:
3985 Fix builds for filegroup targets with incompatible dependencies
3986 + e43825d0bef359f645e1cabf2164fd2db6ee4a35:
3987 Revert "Remove
3988 --incompatible_blacklisted_protos_requires_proto_info"
3989 + 082d58de852ebaa640bcf13cf419cbb94eec2b26:
3990 Transform roots along with paths during output deletion.
3991 + e8835c1c221d76a2d5532d18083eaa04401619b3:
3992 AttributeContainer.Large now handles more than 127 attributes.
3993 + e1e87349335ac59f9b3df47cee8b999faeaa6d11:
3994 Add an env attribute to all test and binary rule classes
3995 + a87d7ed2411d5382bac58a20b79e09c464ad13b9:
3996 Take no action to prefetch empty artifacts.
3997 + 3e969ff24a6a0e03139b9f288c88451a7dfa97cd:
3998 Fix a couple of bugs with Incompatible Target Skipping
3999 + e6670825b1e183f81f5c864aafd425d512fa9ff5:
4000 Pass --host_action_env to host options hostActionEnvironment
4001 attribute
4002 + 07400c0392e7be163f8a3396fa5cf89ce6705412:
4003 Add --{no,}autodetect_server_javabase.
4004 + c83366064621d5a265eba14d93a03deff58fe6d8:
4005 Only treat "env" and "env_inherit" attrs specially for native
4006 rules
4007 + 6a60b30cd0f22d0ab84b2ddd658d5ccb899a8a76:
4008 Fix coverage support when using default_java_toolchain. (#12801)
4009 + 4158a6f512e52516437e00f8d9609a91be7fc195:
4010 Revert JacocoCoverage target to remote_java_tools_java_import
4011 and add a new target for remore_java_tools_filegroup. (#12813)
4012 + f6d30cf5ef9a8a39fea7072317f89a872387b790:
4013 Add windows_msvc back to conditions in bazel_tools.
4014```
4015
4016New features:
4017
4018 - Starlark-defined flags can now be shorthanded using --flag_alias.
4019
4020Important changes:
4021
4022 - Add --starlark:file option. This adds a capability to the
4023 (cquery)[https://docs.bazel.build/versions/master/cquery.html]
4024 feature in `--output=starlark` mode so that the expression to
4025 format output may
4026 be specified in a file.
4027 - Error messages emitted when an action fails are reworked to be
4028 more informative about the failing action. Some tooling may have
4029 to be updated as a result.
4030 - Querying with output=location now allows the relative_locations
4031 flag to properly display relative locations instead of the full
4032 path. Fixes https://github.com/bazelbuild/bazel/issues/3497.
4033 - --flag_alias can now be used without
4034 --experimental_enable_flag_alias
4035 - Remove no-op `--deep_execroot` flag
4036 - The BEP uses `AbortReason.OUT_OF_MEMORY` for abort events when
4037 the build tool is crashing due to OOM.
4038 - Added flag `incompatible_display_source_file_location` for `blaze
4039 query location=output` to print the location of line 1 of the
4040 actual source files instead of the source file targets. Provides
4041 a solution to https://github.com/bazelbuild/bazel/issues/8900.
4042 - The Starlark json module is now available.
4043 Use json.encode(x) to encode a Starlark value as JSON.
4044 struct.to_json(x) is deprecated and will be disabled by
4045 the --incompatible_struct_has_no_methods flag.
4046 - The flag `--incompatible_objc_compile_info_migration` is enabled
4047 by default. See #10854.
4048 - The flag `--incompatible_objc_provider_remove_compile_info` is
4049 enabled by default. See #11359.
4050 - Add `relative_ast_path` feature for darwin builds to relativize
4051 swiftmodule paths for debugging
4052 - Use proto.encode_text(x) to encode a Starlark value as textproto.
4053 struct.to_proto() is deprecated and will be disabled by
4054 the --incompatible_struct_has_no_methods flag.
4055 Both functions now reject list/dict fields that contain list/dict
4056 elements.
4057 - Add --starlark:file option. This adds a capability to the
4058 (cquery)[https://docs.bazel.build/versions/master/cquery.html]
4059 feature in `--output=starlark` mode so that the expression to
4060 format output may be specified in a file.
4061 See [Configured Query Starlark
4062 Output](//docs.google.com/document/d/1kL6Tdmp6uLBa9lq_DbUSjIC87glO
4063 zKIyPoBeF95Rs4c/edit)
4064 - Flipped --incompatble_proto_output_v2 for aquery.
4065 - The --incompatible_load_java_rules_from_bzl flag is now a no-op.
4066 - The --incompatible_load_proto_rules_from_bzl flag is now a no-op.
4067 - Flipped --incompatible_force_strict_header_check_from_starlark
4068 - --incompatible_string_replace_count is flipped and removed
4069 (#11244)
4070 - Bazel skips incompatible targets based on target platform
4071 and `target_compatible_with` contents. See
4072 https://docs.bazel.build/versions/master/platforms.html for more
4073 details.
4074 - Bazel returns exit code 36 (rather than 1) if it fails to start a
4075 subprocess in a local sandbox due to environmental issues, for
4076 example, if the argument list is too long.
4077 - //tools/build_defs/pkg:pkg_rpm is no longer built in to Bazel.
4078 See https://github.com/bazelbuild/bazel/issues/11218 for
4079 instructions
4080 on how to migrate to the replacement.
4081 - Javac now supports multiplex workers.
4082 - The `--default_ios_provisioning_profile` flag has been removed
4083 (it was a no-op).
4084 - Add support for using AndroidX dependencies in
4085 data-binding-enabled targets.
4086 - Fix data-binding generation for android_local_test.
4087 - Enable debug_prefix_map_pwd_is_dot feature by default on macOS,
4088 this passes `-fdebug-prefix-map=$PWD=.` for every compile to
4089 remove absolute paths from debug info.
4090 - --incompatible_run_shell_command_string is enabled by default
4091 (#5903)
4092 - py_binary now tolerates package paths that contain hyphens ('-').
4093 Note that such paths might not be importable from within Python
4094 code.
4095 - C++ Starlark API requires linker_inputs wrapping library_to_link.
4096 #10860
4097 - Toolchain rule is extended with target_settings attribute.
4098 - --incompatible_restrict_string_escapes=true is now the default.
4099 Unnecessary backslashes such as "\." in string literals are now
4100 an error, instead of being silently treated as "\\.".
4101 To fix the error while preserving behavior, double the backlash.
4102 However, the error is often a sign that the original code was
4103 wrong.
4104 - Propagate instrumented files for transitive sources of
4105 `android_library` and `android_binary`
4106 - --local_resources and --incompatible_remove_local_resources have
4107 been removed. If you've been setting --local resources or
4108 --incompatible_remove_local_resources=false, you must migrate to
4109 using --local_ram_resources and --local_cpu_resources instead.
4110 - Update rules_cc to commit b1c40e1de81913a3c40e5948f78719c28152486d
4111 - --incompatible_avoid_conflict_dlls=true is now the default.
4112 - Dynamic execution now uses the new scheduler by default.
4113 - Dynamic execution now uses the new scheduler by default.
4114 - The new dynamic scheduler is now the default.
4115
4116This release contains contributions from many people at Google, as well as Adam Liddell, Akira Baruah, Alexander Grund, Alex Eagle, Andrew Z Allen, Austin Schuh, Benjamin Peterson, Benson Muite, Brentley Jones, Cristian Hancila, Dan Halperin, Daniel Wagner-Hall, Dmitry Ivankov, Dmitry Ivankov, erenon, Eric Cousineau, Greg Estren, Gregor Jasny, Grzegorz Lukasik, Grzegorz Lukasik, hollste, Joe Lencioni, johnjbarton, Jonathan Perry, Jonathon Belotti, Keith Smiley, Kevin Gessner, Matt Davis, Matt Mackay, Menny Even Danan, Neeraj Gupta, Philipp Schrader, Ricardo Delfin, Ryan Beasley, Samuel Giddins, Simon Bjorklen, Simon Stewart, Stiopa Koltsov, Thi Doan, ThomasCJY, Timothy Klim, Tom de Goede, vectoralpha, V Vn Ngha, William A Rowe Jr, Xavier Bonaventura, Yannic Bonenberger, Yannic.
4117
Bazel Release System58c80412020-12-17 11:04:01 -05004118## Release 3.7.2 (2020-12-17)
4119
4120```
4121Baseline: a991db7c2f66a354666388d888dcef9b0d0f70c0
4122
4123Cherry picks:
4124
4125 + 0d14ec84a06c4da628a7f6d9d1c5f9314392ab15:
4126 Release 3.7.0 (2020-10-20)
4127 + d563446a77b906807cea86f5c2abafa5900d901a:
4128 Add `-XDcompilePolicy=simple` to default javacopts
4129 + 6336264e4b0d8cc422ec73e1b923bf8014ace778:
4130 Update rules_cc reference to head of rules_cc as of 2020-11-11.
4131 + b3f934680554515aa312b5dd4453df5cd38f0aea:
4132 Bump rules_cc to support llvm 11.0.0 clang-cl compiler on Windows
4133 + e055b433efdccb28b9c21082e72d8e79d9b34e0f:
4134 Remove accidentally re-added
4135 tools/jdk/java_toolchain_default.bzl.
4136 + 02838a1b2aa2f6d03980536ab2ac6840c3c98e84:
4137 Avoid the spawn cache if executing dynamically.
4138 + d0efd7b9e5109ff5ac6d13c91f58c3fc4dc3afd8:
4139 Release 3.7.1 (2020-11-24)
4140 + a689d673abadf80f1efaf8ddaeee92d56fc2847b:
4141 Use getRunfilesPath for run_under executable path generation.
4142 getRootRelativePath doesn't return a valid runfiles path for
4143 external source files anymore after the recent external source
4144 root change. Also, it won't work for external labels either once
4145 the --nolegacy_external_runfiles becomes default. This fixes
4146 issue #12545.
4147```
4148
4149Important changes:
4150
4151 - Update rules_cc to commit b1c40e1de81913a3c40e5948f78719c28152486d
4152
4153This release contains contributions from many people at Google, as well as William A Rowe Jr.
4154
Bazel Release Systemd0efd7b2020-11-24 12:34:38 -05004155## Release 3.7.1 (2020-11-24)
4156
4157```
4158Baseline: a991db7c2f66a354666388d888dcef9b0d0f70c0
4159
4160Cherry picks:
4161
4162 + 0d14ec84a06c4da628a7f6d9d1c5f9314392ab15:
4163 Release 3.7.0 (2020-10-20)
4164 + d563446a77b906807cea86f5c2abafa5900d901a:
4165 Add `-XDcompilePolicy=simple` to default javacopts
4166 + 6336264e4b0d8cc422ec73e1b923bf8014ace778:
4167 Update rules_cc reference to head of rules_cc as of 2020-11-11.
4168 + b3f934680554515aa312b5dd4453df5cd38f0aea:
4169 Bump rules_cc to support llvm 11.0.0 clang-cl compiler on Windows
4170 + e055b433efdccb28b9c21082e72d8e79d9b34e0f:
4171 Remove accidentally re-added
4172 tools/jdk/java_toolchain_default.bzl.
4173 + 02838a1b2aa2f6d03980536ab2ac6840c3c98e84:
4174 Avoid the spawn cache if executing dynamically.
4175```
4176
4177Important changes:
4178
4179 - Update rules_cc to commit b1c40e1de81913a3c40e5948f78719c28152486d
4180
4181This release contains contributions from many people at Google, as well as William A Rowe Jr.
4182
Bazel Release System8cffdf12020-10-20 09:22:27 -04004183## Release 3.7.0 (2020-10-20)
4184
4185```
4186Baseline: a991db7c2f66a354666388d888dcef9b0d0f70c0
4187```
4188
4189Incompatible changes:
4190
4191 - The syntax //foo/BUILD can no longer be used on the command line
4192 to refer to the //foo:BUILD target. Use //foo:BUILD (preferred)
4193 or foo/BUILD instead. This does not affect BUILD/bzl files, where
4194 that syntax already didn't work.
4195 - This removes `--objc_header_scanner_tool`. The flag was primarily
4196 used internally, and to our knowledge, a compatible tool was
4197 never released. Therefore this flag is believed to be unused.
4198
4199New features:
4200
4201 - select() directly supports constraint_value (no need for an
4202 intermediate config_setting).
4203
4204Important changes:
4205
4206 - Non-android targets can again be built when
4207 android_sdk_repository is present but invalid.
4208 - Add a build variable for -install_name / -soname.
4209 - Add a build variable for -install_name / -soname.
4210 - Include "resources" attr in dependency attributes for java_*
4211 coverage configuration.
4212 - --trim_test_configuration should work for almost all cases when a
4213 non-test target depends on a test.
4214 - Javac now supports multiplex workers.
4215 - Javac now supports multiplex workers.
4216 - Blaze now allows symbolic links that point to their own ancestor
4217 unless they are traversed recursively by e.g. a //... recursive
4218 target pattern or a recursive glob.
4219 - Blaze now allows symbolic links that point to their own ancestor
4220 unless they are traversed recursively by e.g. a //... recursive
4221 target pattern or a recursive glob.
4222 - Blaze now allows symbolic links that point to their own ancestor
4223 unless they are traversed recursively by e.g. a //... recursive
4224 target pattern or a recursive glob.
4225 - Generated Go protobufs no longer depend on //net/proto2/go:proto
4226
4227This release contains contributions from many people at Google, as well as Benjamin Peterson, Cristian Hancila, Ed Schouten, Fredrik Medley, Greg Estren, jgehw, Jin, Kalle Johansson, Keith Smiley, Kseniia Vasilchuk, Michael Eisel, Michael Hackner, Michael Krasnyk, Mostyn Bramley-Moore, Ruixin Bao, Samuel Giddins, Simon Stewart, Torgil Svensson, Ulf Adams, Vasilios Pantazopoulos, Wenyu Zhang, Yannic Bonenberger, yoav-steinberg.
4228
Bazel Release System76152be2020-10-06 15:07:12 +02004229## Release 3.6.0 (2020-10-06)
Bazel Release System72817e32020-10-01 00:30:50 -04004230
4231```
Bazel Release System76152be2020-10-06 15:07:12 +02004232Baseline: aa0d97c0bfc4c09ec6f45303aa80052ba28afbd9
Bazel Release System72817e32020-10-01 00:30:50 -04004233
4234Cherry picks:
4235
Bazel Release System76152be2020-10-06 15:07:12 +02004236 + 32c88da98f301333dc447b75564459165368d418:
4237 Patch RuleContext for android_binary.deps to restore legacy
4238 behavior.
4239 + db9fc88fed387f09067a9250a731f8bf9ad74b05:
4240 android_test also needs the legacy behavior in
4241 RuleContext.getPrerequisites.
4242 + 144d5149a0c50e464dd1be0769fed2ce33ab26a4:
4243 Update android_sdk_repository to create a valid, but useless,
4244 repository
4245 + bb11f9235da52eb3b3e462ce0286f1a89188cb89:
Bazel Release System72817e32020-10-01 00:30:50 -04004246 Patch upb to fix build error with gcc 10
Bazel Release System76152be2020-10-06 15:07:12 +02004247 + 9f06be482aea3fcadeaf8fca6e48b32f224eba2e:
Bazel Release System72817e32020-10-01 00:30:50 -04004248 Patch upb to fix build error with gcc 10 (third_party)
Bazel Release System76152be2020-10-06 15:07:12 +02004249 + b67b75e3a62f5433d812993f3702f431b6967e86:
4250 Fix issue where libtool_check_unique isn't found for sandbox
4251 builds
Bazel Release System72817e32020-10-01 00:30:50 -04004252```
4253
Bazel Release System76152be2020-10-06 15:07:12 +02004254Incompatible changes:
4255
4256 - `--experimental_ui_limit_console_output` is removed. Users of
4257 `--experimental_ui_limit_console_output=1` for silencing terminal
4258 output should use `--ui_event_filters=` instead.
4259 - --proto:instantiation_stack must be enabled in addition to
4260 --record_rule_instantiation_callstack to see call stack in proto
4261 output from blaze query.
4262
Bazel Release System72817e32020-10-01 00:30:50 -04004263New features:
4264
4265 - cc_common.compile support for include_prefix/strip_include_prefix
Bazel Release System76152be2020-10-06 15:07:12 +02004266 - Multiplexed persistent workers: Use
4267 --experimental_worker_max_multiplex_instances to configure the
4268 number of WorkRequests that are sent concurrently to one worker
4269 process. The --worker_max_instances flag will no longer be used
4270 to determine max instances for multiplex workers, since the two
4271 have different resource requirements. Multiplex workers will by
4272 default have a max instances of 8.
Bazel Release System72817e32020-10-01 00:30:50 -04004273
4274Important changes:
4275
Bazel Release System76152be2020-10-06 15:07:12 +02004276 - The prelude file (//tools/build_rules:prelude_bazel) is now
4277 processed as a Starlark module, rather than being sourced into
4278 the BUILD file textually. This may cause slight breakages
4279 depending on the content of the prelude file. (Use of the prelude
4280 file is discouraged as it will be removed in the long term.)
4281 - Removed --experimental_ignore_deprecated_instrumentation_spec and
4282 cleaned up the old deprecated behavior.
4283 - Added CODEBASE.md, a description of the Bazel codebase.
Bazel Release System72817e32020-10-01 00:30:50 -04004284 - Removed the flag --experimental_transparent_compression.
4285 - Removed the flag --experimental_action_args.
4286 - Stop needlessly parsing WORKSPACE files from external
4287 repositories.
4288 - Dot ('.') is now allowed in workspace names. See
4289 https://github.com/bazelbuild/bazel/issues/11837.
Bazel Release System76152be2020-10-06 15:07:12 +02004290 - This change can cause memory and performance regressions for some
4291 builds with C++ dependencies, due to extra actions being executed.
4292 RELNOTES: None
4293 - Building Android apps for legacy multi-dex (pre-L) now require a
4294 main-dex list if the application does not fit into a single DEX
4295 file.
4296 - Puts the experimental_worker_multiplex flag to use.
4297 - In Starlark, the Args object supports a new parameter file format
4298 'flag_per_line', compatible with the Abseil flags library.
4299 - The flag --incompatible_no_support_tools_in_action_inputs is
4300 removed.
4301 - Support for NDK 21 added
4302 - Bazel will now skip printing action stdout/stderr contents if
4303 they exceed --experimental_ui_max_stdouterr_memory_bytes.
4304 - The Starlark interpreter now correctly emits an error
4305 if the operand of the first loop in a list comprehension
4306 refers to a variable bound by a later loop, such as y in
4307 this example:
4308 [e1 for x in f(y) in e2 for y in e3] # error: undefined y
4309 ^
4310 This may cause latent dynamic errors to become static errors.
4311 - Added support for a 'supports-graceful-termination' execution
4312 requirement and tag, which causes Bazel to send a SIGTERM to any
4313 tagged
4314 actions before sending a delayed SIGKILL. This is to give
4315 actions, and more
4316 specifically tests, a chance to clean up after themselves.
4317 - Non-android targets can again be built when
4318 android_sdk_repository is present but invalid.
Bazel Release System72817e32020-10-01 00:30:50 -04004319
Bazel Release System76152be2020-10-06 15:07:12 +02004320This release contains contributions from many people at Google, as well as Benjamin Peterson, Daniel Wagner-Hall, Dave MacLachlan, David Ostrovsky, Emil Kattainen, George Gensure, Greg Estren, Keith Smiley, mai12, Mai Hussien, Michael Eisel, Per Halvor Tryggeseth, Ruixin Bao, Samuel Giddins, Steeve Morin, Thi Doan, Tom de Goede, Ulf Adams, Zhongpeng Lin.
Bazel Release System72817e32020-10-01 00:30:50 -04004321
Bazel Release System2b051be2020-09-02 15:41:41 -04004322## Release 3.5.0 (2020-09-02)
4323
4324```
4325Baseline: 889bc0b523b47eeb38a72bf9bb6858ee525a7c7e
4326
4327Cherry picks:
4328
Bazel Release System57f0b7c2020-09-02 16:07:55 -04004329 + a7a0d48fbeb059ee60e77580e5d05baeefdd5699:
4330 Make no-op starlark transition not affect the output directory.
4331 + b37c51c7085f0aefe04034dd451acb847605ddb5:
4332 Add include_prefix and strip_include_prefix to cc_common.compile
4333 + f6ad35fcde93f92c591778ed7db38d167f5bbc03:
4334 Delete --experimental_transparent_compression
4335 + 39bc97eab295bddb35b38bfc4a2ff3d2b15d034e:
4336 Remove --experimental_action_args
4337 + b9706675a7abf6ceebb250f0b3dfa4087a0c35f6:
4338 Stop needlessly parsing WORKSPACE files from external
4339 repositories.
4340 + e574d558da17cfd0f818e7a937a07926aa270069:
4341 Allow hyphen char in workspace name
4342 + 9993785fa0c4fa4172aa31d306f3abea76833abf:
4343 Allow dot ('.') in workspace names.
4344```
4345
4346New features:
4347
4348 - cc_common.compile support for include_prefix/strip_include_prefix
4349
4350Important changes:
4351
4352 - Removed the flag --experimental_transparent_compression.
4353 - Removed the flag --experimental_action_args.
4354 - Stop needlessly parsing WORKSPACE files from external
4355 repositories.
4356 - Dot ('.') is now allowed in workspace names. See
4357 https://github.com/bazelbuild/bazel/issues/11837.
4358
4359This release contains contributions from many people at Google, as well as David Ostrovsky.
4360
4361## Release 3.5.0 (2020-09-02)
4362
4363```
4364Baseline: 889bc0b523b47eeb38a72bf9bb6858ee525a7c7e
4365
4366Cherry picks:
4367
Bazel Release System2b051be2020-09-02 15:41:41 -04004368 + d6b9469efebd200a39d7fd43876a18822fcdbe7b:
4369 Make no-op starlark transition not affect the output directory.
4370 + b37c51c7085f0aefe04034dd451acb847605ddb5:
4371 Add include_prefix and strip_include_prefix to cc_common.compile
4372 + 0ebb1d5a5388109e3f026a355c77fdf0121f3a43:
4373 Delete --experimental_transparent_compression
4374 + 312e121c70aebfaa91b0a3106fa964e0bc12d1df:
4375 Remove --experimental_action_args
4376 + 7e6e855bb82734f582e03c2c7fad3148c139d0e0:
4377 Stop needlessly parsing WORKSPACE files from external
4378 repositories.
4379 + d4049f6f85efb8f48d1f6b72764115af5b184831:
4380 Allow hyphen char in workspace name
4381 + 0a35be1843a2e4d49d5e5c3893cd6673705b7fb1:
4382 Allow dot ('.') in workspace names.
4383```
4384
4385Incompatible changes:
4386
4387 - The --experimental_process_wrapper_wait_fix flag (used
4388 purely to roll out a risky bug fix) has been removed.
4389 - Removed the --experimental_ui_deduplicate flag.
4390 - Bazel now correctly prefers Xcode versions in `/Applications`
4391 over any other paths, which resolves an issue with accidentally
4392 picking up an Xcode version from a Time Machine backup or network
4393 disk. In the improbable case that you relied on the old behavior
4394 and Bazel now picks up Xcode from the wrong location, you can fix
4395 it by moving that Xcode version to /Applications.
4396
4397New features:
4398
4399 - cquery now follows aspects with --include_aspects.
4400 - cc_common.compile support for include_prefix/strip_include_prefix
4401
4402Important changes:
4403
4404 - Add support to bazel/crosstool for building arm64 on macos aka
4405 darwin
4406 - Add opt in 'oso_prefix_is_pwd' feature for Apple builds
4407 - Add InstrumentedFilesInfo provider to Starlark globals.
4408 - Fixed resource shrinking when <overlayable/> tags are used.
4409 - Remove old incompatible flag
4410 --incompatible_symlinked_sandbox_expands_tree_artifacts_in_runfile
4411 s_tree.
4412 - Update coverage configuration for Python, filegroup, and shell
4413 script rules to distinguish between source and dependency
4414 attributes.
4415 - Add support to bazel/crosstool for building arm64e on macos aka
4416 darwin
4417 - Make filegroup always forward InstrumentedFilesProvider and not
4418 collect any sources directly.
4419 - Support signing key rotation in android_binary
4420 - Remove legacy handling of --extra_checks
4421 - Support signing key rotation in android_binary
4422 GO...
4423 - `--apple_bitcode` now takes an optional platform and only applies
4424 the Bitcode mode to that platform if present. The option may be
4425 provided multiple times.
4426 - Support signing key rotation in android_binary
4427 - NS_BLOCK_ASSERTIONS is now passed for all Apple architectures.
4428 - Major changes to reporting of Starlark errors and the call stack.
4429 (Please be alert to possible regressions, such as errors that
4430 lack relevant location information.)
4431 - Removed the flag --experimental_transparent_compression.
4432 - Removed the flag --experimental_action_args.
4433 - Stop needlessly parsing WORKSPACE files from external
4434 repositories.
4435 - Dot ('.') is now allowed in workspace names. See
4436 https://github.com/bazelbuild/bazel/issues/11837.
4437
4438This release contains contributions from many people at Google, as well as Adam Gross, Andrew Suffield, Benjamin Peterson, bnczk, David Ostrovsky, Ed Schouten, Greg Estren, Grzegorz Lukasik, Holger Freyther, Kalle Johansson, Keith Smiley, Kerrick Staley, Kyle Teske, Mostyn Bramley-Moore, Ryan Beasley, Ryan Pavlik, Siggi Simonarson, Stiopa Koltsov, Ulf Adams, Xiaoyi Shi, Yannic Bonenberger, Yesudeep Mangalapilly.
4439
Bazel Release Systemd917bf22020-07-14 08:24:10 +02004440## Release 3.4.1 (2020-07-14)
4441
4442```
4443Baseline: 7404d17ac76da876ae0b432d1fccf222a9e991fe
4444
4445Cherry picks:
4446
4447 + f31f2d787116120b2b16e9aa9a64fab171c0d954:
4448 fixup! Gracefully handle the lack of subreaper support in Linux.
4449 + 3a4f221e3c57495c1ed0d1ec8128f92323b13079:
4450 Revert "Replace the remaining dependencies for Bazel Debian
4451 build (third_party)"
4452 + c55ec0f2cb3f5b44e5025bf9d3c5dc91d94db287:
4453 Revert "Upgrade gRPC to 1.26.0"
4454```
4455
4456This release contains contributions from many people at Google, as well as Ryan Beasley.
4457
Bazel Release System93262a52020-07-13 17:23:50 +02004458## Release 3.4.0 (2020-07-13)
4459
4460```
4461Baseline: 7404d17ac76da876ae0b432d1fccf222a9e991fe
4462
4463Cherry picks:
4464
4465 + a4334be50a206bf8d676a0196af11056c48ac35b:
4466 fixup! Gracefully handle the lack of subreaper support in Linux.
4467```
4468
4469Incompatible changes:
4470
4471 - This removes the short-lived --process_wrapper_extra_flags
4472 flag, which was introduced primarily to roll out a bug fix.
4473 Unfortunately,
4474 this made us inadvertently expose all of the process-wrapper's
4475 command line
4476 interface to the public, which should not have happened. Given
4477 the corner
4478 case of the utility of this flag, the lack of documentation for
4479 it, and the
4480 fact that it only appeared in a single release, we are treating
4481 this as a
4482 bug instead of a backwards compatibility breakage.
4483
4484New features:
4485
4486 - bazel info: Allow to specify multiple keys.
4487 - Support code coverage with GCC 9.
4488
4489Important changes:
4490
4491 - Allow InstrumentedFilesInfo fields to be read from Starlark.
4492 - The --starlark_cpu_profile=<file> flag writes a profile in
4493 pprof format containing a statistical summary of CPU usage
4494 by all Starlark execution during the bazel command. Use it
4495 to identify slow Starlark functions in loading and analysis.
4496 - The --debug_depset_flag has been removed as it is in effect
4497 always on at no cost.
4498 - Rule authors should use the
4499 incompatible_use_toolchain_transition rule attribute to migrate
4500 to using
4501 the toolchain transition. jcater to udpate notes further.
4502 - `apple_binary` rules now accept the `stamp` attribute with the
4503 same
4504 semantics that it has in `cc_binary` rules.
4505 - --incompatible_objc_provider_remove_compile_info turns off
4506 the compile info/mege_zip Starlark APIs in ObjcProvider. See
4507 #11359.
4508 - The --debug_depset_flag has been removed as it is in effect
4509 always on at no cost.
4510 - Fix behavior of ctx.actions.write so content is written without
4511 an incorrect encoding to UTF-8.
4512 See https://github.com/bazelbuild/bazel/issues/10174 for details.
4513 - Collect more performance metrics for worker execution.
4514 - Add flag --incompatible_force_strict_header_check_from_starlark
4515 - Configure coverage and runfiles for sh_library.
4516 - Adds --incompatible_blacklisted_protos_requires_proto_info to
4517 indicate whether proto_lang_toolchain.blacklisted_protos requires
4518 ProtoInfo.
4519
4520This release contains contributions from many people at Google, as well as Andrzej Guszak, Benjamin Peterson, Benjamin Romano, Carlos Eduardo Seo, Claudio Bley, dannysullivan, David Ostrovsky, George Gensure, Graham Jenson, Grzegorz Lukasik, Gunnar Wagenknecht, Henk van der Laan, Jin, John Millikin, Marin Baron, Nikhil Marathe, Robin Nabel, Ryan Beasley, Samuel Giddins, Sergey Balabanov, utsav-dbx, Vo Van Nghia, Yannic Bonenberger.
4521
Bazel Release System97a53342020-06-30 11:05:57 -04004522## Release 3.3.1 (2020-06-30)
4523
4524```
4525Baseline: c063b5caf776dee665497b64c5c17d4ed7e6750a
4526
4527Cherry picks:
4528
4529 + cb798a475eb54087e1e83f8aa1dc1c54550877b5:
4530 Restore missing Building with Platforms docs.
4531 + 9be97678b02bbd45d164c8458c8fd4f7791cb7aa:
4532 Release 3.3.0 (2020-06-17)
4533 + 3b0439e37247a480e08337a6314d06231bdbafd3:
4534 Fix incorrect assumption of desugar persistent worker conditional
4535```
4536
4537This release contains contributions from many people at Google, as well as .
4538
Bazel Release System9be97672020-06-17 08:51:54 -04004539## Release 3.3.0 (2020-06-17)
4540
4541```
4542Baseline: c063b5caf776dee665497b64c5c17d4ed7e6750a
4543
4544Cherry picks:
4545
4546 + 23bd69d7499de097b15e6025cc0796bdbc9886b8:
4547 Restore missing Building with Platforms docs.
4548```
4549
4550Incompatible changes:
4551
4552 - The startup option --fatal_event_bus_exceptions is now a no-op
4553 and will be removed soon.
4554
4555New features:
4556
4557 - Bazel offers basic completion for the fish shell.
4558
4559Important changes:
4560
4561 - Add configuration_field for --custom_malloc to cpp config fragment
4562 - Flip --incompatible_objc_compile_info_migration to true. See
4563 #10854.
4564 - It is now possible to use different action mnemonics while still
4565 sharing the same pool of persistent workers. It requires setting
4566 a new property
4567 on the execution requirements (`worker-key-mnemonic`). The value
4568 overrides
4569 the action's mnemonic when it comes to reusing worker processes.
4570 - linkshared=1 in cc_binary no longer requires '.so' or '.dll' in
4571 the target name
4572 - Revert --incompatible_objc_compile_info_migration to false. See
4573 #10854.
4574 - Invoke clang with the correct -target flag when building for
4575 watchOS.
4576 - NA
4577 - Add experiment flag to forward InstrumentedFilesInfo from
4578 non-tool deps by default.
4579
4580This release contains contributions from many people at Google, as well as Abhishek Kumar, Adam Azarchs, Akira Baruah, Daniel Wagner-Hall, Derek Argueta, glukasiknuro, Greg Estren, Greg, Jason Furmanek, Jiri Dank, Keith Smiley, Kseniia Vasilchuk, Laurent Le Brun, Matt Mackay, Michael Klemm, Nikolay Shelukhin, Patrick Balestra, Rui Chen, Siggi Simonarson, sventiffe, Tobias Werth, Tom de Goede, Vladimir Chebotarev, Yannic Bonenberger.
4581
Bazel Release Systemb0ba5dc2020-05-27 19:50:27 +02004582## Release 3.2.0 (2020-05-27)
4583
4584```
4585Baseline: 1d93d26d9900328dcba0026bf21cb45cc37a4596
4586```
4587
4588Important changes:
4589
4590 - Renamed --experimental_slim_json_profile to --slim_profile.
4591 - Expose ctx.attr.write Args content for analysistest when possible
4592 - Added aquery_differ_v2 that works with the new aquery proto
4593 output format.
4594 - Add new flag, 'experimental_no_product_name_out_symlink', to omit
4595 creating '<product>-out' symlink if user specifies
4596 '--symlink_prefix' option.
4597 - --ram_utilization_factor is removed (as is
4598 --incompatible_remove_ram_utilization_factor). Please use
4599 --local_ram_resources.
4600 - Improve include scanner support for cl.exe and clang-cl command
4601 lines
4602 - ctx.split_attr now includes attributes with Starlark split
4603 transitions.
4604 - Added --incompatible_string_replace_count, to make
4605 string.replace() behave as in Python.
4606 - Bazel can now recursively delete non-executable but readable
4607 directories.
4608 - Restore case-sensitivity to -I and /I include scanning detection
4609 to avoid conflicts.
4610
4611This release contains contributions from many people at Google, as well as Alessandro Patti, Antoine Eiche, Beebs, Brian Silverman, George Gensure, Gerhard Pretorius, Gibson Fahnestock, Greg, Gregor Jasny, Gustav Westling, hannometer, Jin, Jonathan Gerrish, Josh Smith, Justin Y Wei, Laurent Le Brun, Links, liubang, Lszl Csomor, Matt Mackay, Moritz Krger, Ryan Beasley, Siddhartha Bagaria, Yannic Bonenberger, Yannic, Zhongpeng Lin.
4612
Bazel Release System3a59ab62020-04-21 17:37:54 +02004613## Release 3.1.0 (2020-04-21)
4614
4615```
4616Baseline: 17ebbf15bea3733c0c21e0376fb5906e391edb49
4617
4618Cherry picks:
4619
4620 + 71fb56b4bb669a419f473598c8722e125dbb5c9e:
4621 Suppress last-ditch download exceptions w/cleanup
4622 + fd60614c38da0db22431d91a793423904dff801f:
4623 In repo rules, don't warn about generator_* attributes being
4624 non-canonical
4625 + 2a372792f5cc09bd0e8389d5fc4bbfdd2f5d6e37:
4626 Refactor configureFeatures and prevent NPE
4627 + 777a6ee6ed95cae4ddb949d52b63ee8a66024f03:
4628 Automated rollback of commit
4629 0bbe38176e15d891a4e4cab2d8425e292de6cc5f.
4630 + 2ee53c9267eb6de8eae109950ca8f3953bf1ae66:
4631 Guard parseActionResultMetadata with bulk wrapper
4632```
4633
4634Incompatible changes:
4635
4636 - The deprecated startup options
4637 --experimental_oom_more_eagerly(_threshold) are removed.
4638
4639Important changes:
4640
4641 - Remove flag
4642 --incompatible_load_proto_toolchain_for_javalite_from_com_google_p
4643 rotobuf which has been flipped in Bazel 3.0.
4644 - Allow assembly file sources in cc_common.compile.
4645 - Set default .netrc file on Windows to %USERPROFILE%
4646 - A maximum 150 attributes per RuleClass is enforced
4647 - Increase max targets per rule class limit to 200
4648 - ctx.split_attr now includes attributes with Starlark split
4649 transitions.
4650 - The --max_computation_steps flag bounds the computation done by a
4651 BUILD file.
4652 - Native patch can handle file permission properly
4653 - Aspects may now propagate through dependencies on rule outputs by
4654 being defined with `apply_to_generating_rules = True`.
4655 - 'query --output=build' now shows where rule classes (not just
4656 rules) are created.
4657 - The flag `incompatible_bzl_disallow_load_after_statement` is
4658 removed.
4659 - ctx.split_attr now includes attributes with Starlark split
4660 transitions.
4661 - The flag `incompatible_no_output_attr_default` is removed.
4662 - Fix wall-time of the SpawnResult in WorkerSpawnRunner
4663 - Add stamp parameter for cc_common.link to enable including build
4664 info
4665 - The flag `--incompatible_restrict_named_params` is removed.
4666 - The flag `--incompatible_depset_union` is removed.
4667 - Bazel uses fewer compiler flags by default when building
4668 Objective-C. In
4669 particular, Bazel no longer sets `-O0`, `-DDEBUG=1`,
4670 `-fstack-protector`, `-fstack-protector-all`, or `-g` in dbg
4671 mode, and
4672 Bazel no longer sets `-Os`, `-DNDEBUG=1`, `-Wno-unused-variable`,
4673 `-Winit-self`, or `-Wno-extra` in opt mode. If you want to apply
4674 these
4675 flags to your project, you can reenable them in your CROSSTOOL.
4676 - A maximum attribute name length is 128 is enforced
4677
4678This release contains contributions from many people at Google, as well as Alessandro Patti, Benjamin Peterson, Benjamin Romano, Bor Kae Hwang, Chris Heisterkamp, Cristian Hancila, Dmitri G, Douglas Parker, George Gensure, Gregor Jasny, John Millikin, Keith Smiley, Leo, Mike Fourie, Patrick Balestra, Robbert Van Ginkel, Ryota, Samuel Giddins, Ulf Adams, Ulf Adams, Vertexwahn, Xavier Bonaventura, Yannic Bonenberger.
4679
Bazel Release System22018272020-04-06 08:49:47 -04004680## Release 3.0.0 (2020-04-06)
4681
4682```
4683Baseline: 3c7cc747ac653dca8b88a9e43726a794e2c27a9c
4684
4685Cherry picks:
4686
4687 + 19e214b44df9c82a8a3bd3381344f7145813c572:
4688 Use prefix encoding for paths.
4689 + 63b01f7b1cd6603a08bf2a8ae813388c201e3448:
4690 Avoid file operations in the sandbox creation critical path.
4691 + 80a2d7cc5f8a22816934dcd2ca9bdf87050f3d9f:
4692 Implementation (but not plumbing) of the gRPC remote downloader
4693 + 586eabf419972c74fdd5fef328cfe9a259e035ed:
4694 Implement RemoteDownloader w/ `--experimental_remote_downloader`
4695```
4696
4697Incompatible changes:
4698
4699 - Flip --incompatible_remove_enabled_toolchain_types, so that rules
4700 can no longer access enabled toolchain types from the platform
4701 fragment.
4702 - The --incompatible_use_jdk11_as_host_javabase flag has been
4703 removed (it was flipped in Bazel 0.25.0).
4704 - Using JDK 9 or 10 as a `--host_javabase` is no longer officially
4705 supported. As always, you can use the
4706 `@bazel_tools//tools/jdk:toolchain_vanilla` Java toolchain to use
4707 older or newer JDKs than what Bazel currently supports.
4708 - --fatal_event_bus_exceptions is deprecated and should not be
4709 used. Any crashes should be reported so that they can be fixed.
4710 - The old-style binary profile format is no longer suppported, use
4711 the new JSON trace profile instead.
4712
4713Important changes:
4714
4715 - Improve the performance of creating a sandboxed execution root
4716 for workers when the number of inputs is large (>1000).
4717 - Treat .cu and .cl files as C++ source. CUDA or OpenCL are not
4718 natively supported and will require custom flags to compile with
4719 e.g. clang.
4720 - Add actions' primary output details in JSON profile and
4721 analysis_v2.proto.
4722 - Add --cds_archive option for embedding CDS archive into deploy
4723 JAR.
4724 - Add new global attribute: applicable_licenses
4725 - Package level default with default_applicable_licenses
4726 - guarded by --incompatible_applicable_licenses (default true for
4727 Blaze, false for Bazel)
4728 - In support of
4729 https://docs.google.com/document/d/1uwBuhAoBNrw8tmFs-NxlssI6VRolid
4730 GYdYqagLqHWt8/edit#
4731 - Non-test Java rules no longer require the TestConfiguration and
4732 thus --trim_test_configuration is again usable for Java builds
4733 - The flag `--incompatible_always_check_depset_elements` is enabled
4734 by default.
4735 - --incompatible_objc_compile_info_migration determines
4736 whether native rules can assume compile info has been migrated to
4737 CcInfo. See https://github.com/bazelbuild/bazel/issues/10854.
4738 - --incompatible_remove_local_resources is true by default. Please
4739 use --local_ram_resources and --local_cpu_resources instead of
4740 --local_resources.
4741
4742This release contains contributions from many people at Google, as well as Alessandro Patti, Benjamin Peterson, Christy Norman, Dave hughes, David Haxton, David Neil, garyschulte, George Chiramel, George Gensure, Gibson Fahnestock, Greg Estren, Greg, Jason Hoch, Jin, John Millikin, Jonathan Springer, Keith Smiley, Laurent Le Brun, Ulf Adams, Yannic Bonenberger, Yannic, Yihong Wang, Yuchen Dai.
4743
Bazel Release System4b01eb52020-03-03 10:22:31 +01004744## Release 2.2.0 (2020-03-03)
Bazel Release Systeme53c0282020-02-21 15:49:31 +01004745
4746```
Bazel Release System4b01eb52020-03-03 10:22:31 +01004747Baseline: 78055efad0917b848078bf8d97b3adfddf91128d
Bazel Release Systeme53c0282020-02-21 15:49:31 +01004748```
4749
Bazel Release System4b01eb52020-03-03 10:22:31 +01004750Incompatible changes:
Bazel Release Systeme53c0282020-02-21 15:49:31 +01004751
Bazel Release System4b01eb52020-03-03 10:22:31 +01004752 - The --[no]incompatible_windows_bashless_run_command flag is no
4753 longer supported. It was flipped in Bazel 1.0
4754 - The --[no]incompatible_windows_native_test_wrapper flag is no
4755 longer supported. It was flipped in Bazel 1.0
4756
4757Important changes:
4758
4759 - Consistent target naming style in example target names.
4760 - cquery's config() now supports arbitrary configurations.
4761 - The flag --incompatible_disallow_dict_lookup_unhashable_keys is
4762 removed.
4763 - Include target label in Python version error message.
4764 - The flag --incompatible_remap_main_repo is removed.
4765 - Windows: we now discourage running Bazel from MSYS2 because of a
4766 newly found bug (#10573)
4767 - Reduced the packaging time (`package-bazel.sh`) for the
4768 `//src:bazel-dev` Bazel development build target from 14s to 6s.
4769 Use `//src:bazel-dev` if you're iterating rapidly on a local
4770 Bazel changes, and use `//src:bazel --compilation_mode=opt` for
4771 release builds.
4772 - cquery: "//foo:bar" now means "all configured targets with label
4773 //foo:bar" instead of "choose an arbitrary configured target with
4774 label //foo:bar". See cquery docs for details.
4775 - WORKSPACE and BUILD.bazel files of http_archive repositories can
4776 now be patched using the "patch_cmds" and "patches" attributes.
4777 - Actions with "parse" on the critical path should no longer finish
4778 in the future.
4779 - Flags that affect external repositories like
4780 "--override_repository" can now be addressed in bazelrc files
4781 using the "common" command, without causing commands like "bazel
4782 shutdown" to fail.
4783 - The flag --incompatible_disallow_unverified_http_downloads is
4784 removed.
4785 - Create the incompatibleApplicableLicenses flag.
4786 We plan to flip this from false to true in Bazel 4.x.
4787 Implementation to follow.
4788 - Treat .cu and .cl files as C++ source. CUDA or OpenCL are not
4789 natively supported and will require custom flags to compile with
4790 e.g. clang.
4791 - Treat .cu and .cl files as C++ source. CUDA or OpenCL are not
4792 natively supported and will require custom flags to compile with
4793 e.g. clang.
4794 - The --starlark_cpu_profile=<file> flag writes a profile in
4795 pprof format containing a statistical summary of CPU usage
4796 by all Starlark execution during the bazel command. Use it
4797 to identify slow Starlark functions in loading and analysis.
4798 - --ram_utilization_factor will be deprecated. Please use
4799 --local_ram_resources=HOST_RAM*<float>
4800 - Docs: glob() documentation is rewritten, and now it points out a
4801 pitfall of rules shadowing glob-matched files.
4802
4803This release contains contributions from many people at Google, as well as Alessandro Patti, Alex Kirchhoff, aman, Artur Dryomov, Benjamin Peterson, Benjamin Peterson, David Ostrovsky, Elliotte Rusty Harold, Eric Klein, George Chiramel, George Gensure, Guillaume Bouchard, Hui-Zhi, John Millikin, Jonathan Springer, Laurent Le Brun, Michael McLoughlin, nikola-sh, Nikolaus Wittenstein, Nikolay Shelukhin, Yannic Bonenberger, Yannic.
Bazel Release Systeme53c0282020-02-21 15:49:31 +01004804
Bazel Release Systeme6ee35f2020-02-07 13:56:14 +01004805## Release 2.1.0 (2020-02-07)
4806
4807```
4808Baseline: 41ec5a28fb30a8d6c5c60194c4bb29528352cf78
4809
4810Cherry picks:
4811
4812 + 733ac0ff7ad1e13ab68ceb2fde694d7ab71b2366:
4813 Adds an alias for d8_jar_import in android.WORKSPACE.
4814 + c94b1474b368dedf9f68f34fad90cc8664f2b0e0:
4815 Automatic code cleanup.
4816 + 2a8cc7075f741721563efd9dc050ca3458cde30b:
4817 Do not fail or print errors when Shellzelisk cannot find a
4818 requested ?
4819 + bdf34d7fd9539411e93348ba25307f34362d9a42:
4820 Fix race when extracting the install base when Bazel runs in a
4821 PID namespace.
4822 + d381c25bb7dd205c283f7ad91cac13190d2dfede:
4823 Fix wrong mode of install base directory.
4824 + eab39cc7b5a612f891fd1e5af5b45bdc1b66e6e1:
4825 Disable broken test_max_open_file_descriptors.
4826```
4827
4828Incompatible changes:
4829
4830 - The following attributes of CcToolchainProvider, which formerly
4831 were
4832 accessible both as fields (x.f) and as methods (x.f()), are now
4833 only fields:
4834
4835New features:
4836
4837 - Similar to the
4838 [.bazelignore](https://docs.bazel.build/versions/master/guide.html
4839 #.bazelignore) in the main repository, a `.bazelignore` file in
4840 external repository will cause the specified directories to be
4841 ignored by Bazel. Bazel won't try to identify any packages under
4842 the directories, but the files can still be referenced in other
4843 BUILD files.
4844 - bazelignore files now support line comments, e.g. "# this is a
4845 comment"
4846
4847Important changes:
4848
4849 - Experimental support for d8 merger is now available for use using
4850 --define=android_dexmerger_tool=d8_dexmerger.
4851 - Critical path run time should not have a longer run time than
4852 total execution run time.
4853 - Remove "please do not import" warning for cc rules.
4854 - x.f() is now equivalent to y=x.f; y(). That is, x.f should return
4855 the same
4856 attribute value regardless of whether it is accessed as a field
4857 or called
4858 like a method. Any arguments to the call are evaluated after the
4859 x.f operation.
4860 - Add desugaring support for RoleManager#addRoleHolderAsUser
4861 - Adds ctx.target_platform_has_constraint to allow rules to check
4862 the target platform's constraints.
4863 - Critical path run time should not have a longer run time than
4864 total execution run time.
4865 - Post new ConvenienceSymlinksIdentifiedEvent to the
4866 BuildEventProtocol when
4867 --experimental_convenience_symlinks_bep_event is enabled.
4868 - Keyword-only arguments are now allowed:
4869 def foo(a, *, k): pass
4870 def foo(a, *b, k): pass
4871 where k can be specified only by keyword:
4872 foo(5, k=6)
4873 - Generated Go protobufs now depend on //net/proto2/go:protodeps in
4874 addition to //net/proto2/go:proto
4875 - cquery 'somepath' returns more reliable results when the
4876 dep has a different configuration than the parent. To get a
4877 result for
4878 `somepath(//foo, //bar`) where //bar isn't in the top-level
4879 configuration,
4880 run your query with `--universe_scope=//foo`. See cquery docs for
4881 details.
4882
4883This release contains contributions from many people at Google, as well as Adam Liddell, Alessandro Patti, Andreas Herrmann, Bor Kae Hwang, Brian Silverman, Emran BatmanGhelich, George Gensure, Greg Estren, Jeff Palm, Jonathan Beverly, Mark Nevill, Patrick Niklaus, Peter, Philipp Wollermann, Ryan Beasley, Shin Yamamoto, Yen-Chi Chen.
4884
Bazel Release System59e36002019-12-19 13:26:27 +01004885## Release 2.0.0 (2019-12-19)
4886
4887```
4888Baseline: 807ed23e4f53a5e008ec823e9c23e2c9baa36d0d
4889
4890Cherry picks:
4891
4892 + db0e32ca6296e56e5314993fe9939bc7331768ec:
4893 build.sh: Fix bug in build script for RC release
4894 + 85e84f7812f04bc0dbc36376f31b6dd2d229b905:
4895 Set --incompatible_prohibit_aapt1 default to true.
4896 + 84eae2ff550c433a3d0409cf2b5525059939439d:
4897 Let shellzelisk fallback to bazel-real if it's the requested
4898 version.
4899 + d5ae460f1581ddf27514b4be18255481b47b4075:
4900 Fix a typo in bazel.sh
4901```
4902
4903Incompatible changes:
4904
4905 - --incompatible_remap_main_repo is enabled by default. Therefore,
4906 both ways of addressing the main repository, by its name and by
4907 '@' are now considered referring to the same repository.
4908 see https://github.com/bazelbuild/bazel/issues/7130
4909 - --incompatible_disallow_dict_lookup_unhashable_keys is enabled by
4910 default https://github.com/bazelbuild/bazel/issues/9184
4911 - --incompatible_remove_native_maven_jar is now enabled by default
4912 and the flag removed. See https://github.com/bazelbuild/bazel/issues/6799
4913 - --incompatible_prohibit_aapt1 is enabled by default.
4914 See https://github.com/bazelbuild/bazel/issues/10000
4915
4916Important changes:
4917
4918 - --incompatible_proto_output_v2: proto v2 for aquery proto output
4919 formats, which reduces the output size compared to v1. Note that
4920 the messages' ids in v2 are in uint64 instead of string like in
4921 v1.
4922 - Adds --incompatible_remove_enabled_toolchain_types.
4923 - Package loading now consistently fails if package loading had a
4924 glob evaluation that encountered a symlink cycle or symlink
4925 infinite expansion. Previously, such package loading with such
4926 glob evaluations would fail only in some cases.
4927 - The --disk_cache flag can now also be used together
4928 with the gRPC remote cache.
4929 - An action's discover inputs runtime metrics is now categorized as
4930 parse time on the CriticalPathComponent.
4931 - Make the formatting example more like to the written text by
4932 adding an initial description.
4933 - An action's discover inputs runtime metrics is now categorized as
4934 parse time on the CriticalPathComponent.
4935 - Bazel's Debian package and the binary installer now include an
4936 improved wrapper that understands `<WORKSPACE>/.bazelversion`
4937 files and the `$USE_BAZEL_VERSION` environment variable. This is
4938 similar to what Bazelisk offers
4939 (https://github.com/bazelbuild/bazelisk#how-does-bazelisk-know-whi
4940 ch-bazel-version-to-run-and-where-to-get-it-from), except that it
4941 works offline and integrates with apt-get.
4942 - We are planning to deprecate the runfiles manifest files, which
4943 aren't safe in the presence of whitespace, and also unnecessarily
4944 require local CPU when remote execution is used. This release
4945 adds --experimental_skip_runfiles_manifests to disable the
4946 generation of the input manifests (rule.manifest files) in most
4947 cases. Note that this flag has no effect on Windows by default or
4948 if --experimental_enable_runfiles is explicitly set to false.
4949
4950This release contains contributions from many people at Google, as well as aldersondrive, Benjamin Peterson, Bor Kae Hwang, David Ostrovsky, Jakob Buchgraber, Jin, John Millikin, Keith Smiley, Lauri Peltonen, nikola-sh, Peter Mounce, Tony Hsu.
4951
Bazel Release System5be24a82019-11-26 16:19:50 +01004952## Release 1.2.1 (2019-11-26)
4953
4954```
4955Baseline: 11deef7582dfeec7a04ee3f7236393d9b8027367
4956
4957Cherry picks:
4958
4959 + c76c3e539c73ecf6e96e3e098be7be59e17bf276:
4960 Replace macOS CC path with relative path
4961 + 63332eb556fadfe9edd0806add79942482adddef:
4962 Hardcode path to dirname on macOS
4963 + ceadf0a063cb97c32aced143d2447781d1dafc38:
4964 Add tool executables (from FilesToRunProvider) to action inputs.
4965 + dbe63b00954a25fa4405f7cbf273df78c16498dd:
4966 Fix some of the bazel Windows tools code to work with GCC.
4967```
4968
4969This release fixes a single regression:
4970- #10297: Bazel 1.2.0 does no longer run on macOS High Sierra.
4971
4972It is the same code as Bazel 1.2.0, except that we rebuild the macOS release
4973binaries with Xcode 10.2.1 to make them backwards compatible with older macOS
4974versions again.
4975
Bazel Release Systemef69db82019-11-20 16:01:18 +01004976## Release 1.2.0 (2019-11-20)
4977
4978```
4979Baseline: 11deef7582dfeec7a04ee3f7236393d9b8027367
4980
4981Cherry picks:
4982
4983 + c76c3e539c73ecf6e96e3e098be7be59e17bf276:
4984 Replace macOS CC path with relative path
4985 + 63332eb556fadfe9edd0806add79942482adddef:
4986 Hardcode path to dirname on macOS
4987 + ceadf0a063cb97c32aced143d2447781d1dafc38:
4988 Add tool executables (from FilesToRunProvider) to action inputs.
4989 + dbe63b00954a25fa4405f7cbf273df78c16498dd:
4990 Fix some of the bazel Windows tools code to work with GCC.
4991```
4992
4993Incompatible changes:
4994
4995 - Tree artifacts and regular artifact paths can no longer overlap.
4996
4997New features:
4998
4999 - Added a special "_validation" output group to enable moving
5000 "validation actions" off the critical path of builds.
5001
5002Important changes:
5003
5004 - The query flag "--host_deps" (commonly used as "--nohost_deps")
5005 has been renamed to "--tool_deps", and now also removes
5006 dependencies in any execution configuration from being reported
5007 in the query output. The previous flag name is deprecated and
5008 will be removed in a future release.
5009 - The `cc_common.{compile,link}` APIs can now be used without
5010 passing the `--experimental_cc_skylark_api_enabled_packages` flag.
5011 - A list of log paths will be provided in build output.
5012 - Improve runfiles documentation.
5013 - Improve documentation on rule outputs.
5014 - BUILD/.bzl execution errors cause execution to stop, even at
5015 top-level
5016 - Multiple Starlark validation errors are reported in a single pass.
5017 - Introduce --experimental_nested_set_as_skykey_threshold
5018 - Blaze will prevent idle sleep during test and build actions. Note
5019 that this does not affect screen savers and will not keep a
5020 laptop awake if the user forces sleep or closes the lid. This is
5021 purely to avoid idle sleeping when the user is not interacting
5022 with the device.
5023 - Improve testing docs.
5024 - Incompatible flag
5025 `--incompatible_validate_top_level_header_inclusions` has been
5026 added. See https://github.com/bazelbuild/bazel/issues/10047 for
5027 details.
5028 - Fix an aquery bug with handling malformed queries that crashes
5029 bazel.
5030 - List fields on CcLinkingOutputs.
5031 - [Python] Added flag --incomaptible_default_to_explicit_init_py to
5032 switch the default value of legacy_create_init to True. With this
5033 flag enabled, your py_binary and py_test targets will no longer
5034 behave as if empty __init__.py files were implicitly littered in
5035 your runfiles tree. See
5036 [#10076](https://github.com/bazelbuild/bazel/issues/10076).
5037 - Fix documentation on allowed target names.
5038 - --target_platform_fallback now also applies to exec/host
5039 configurations
5040 - android_binary and android_libary can now depend on targets
5041 providing
5042 CcInfos.
5043 - Add support for tracking suspensions (sleeps or SIGSTOP) on macOS.
5044 - d8 dexers (both standalone and incremental) are now available for
5045 use.
5046 - Add Desugar support for FreezePeriod#<init>
5047
5048This release contains contributions from many people at Google, as well as Alex Kirchhoff, Andrew Suffield, Asaf Flescher, Austin Schuh, Benjamin Peterson, Bor Kae Hwang, Brian Richardson, Christy Norman, Clint Harrison, Dan Halperin, Daniel Martn, Dave Lee, David Neil, David Ostrovsky, George Gensure, Greg Estren, Greg, Ira Shikhman, Jacob Parker, Jakub Bujny, John Millikin, John Millikin, Keith Smiley, Laurent Le Brun, marcohu, Marwan Tammam, Mostyn Bramley-Moore, Peter Mounce, Ruben Das, Stepan Koltsov, Thi Don, Thi, Tomasz Strejczek, Walt Panfil, Yannic Bonenberger, Zackary Lowery.
5049
Bazel Release Systemf15bfb32019-10-21 12:49:43 +02005050## Release 1.0.1 (2019-10-21)
Bazel Release Systeme693c192019-10-21 10:40:19 +02005051
5052```
Bazel Release Systemf15bfb32019-10-21 12:49:43 +02005053Baseline: 97a82646dadd93bf52d47828bda42e3383b657c6
Bazel Release Systeme693c192019-10-21 10:40:19 +02005054
5055Cherry picks:
5056
Bazel Release Systemf15bfb32019-10-21 12:49:43 +02005057 + a0e3bb207fe2044120a2555a37162ee1f2b17500:
5058 Remove support for authentication and .netrc
5059 + ada2c55dcc106cd55bafbbe5d9a966e21e4770e0:
5060 Add explicit --sdk argument to xcrun calls
5061 + 847df729528f6e5919ec8374247eadf792cba544:
5062 toolchain_vanilla: Unset source and target language level
5063 versions
5064 + 5cfa0303d6ac3b5bd031ff60272ce80a704af8c2:
5065 Update java_tools version to javac11-v5.1.
5066 + 9c257df5b9b1de5459fc066e77c435ae085957a7:
5067 Release 1.0.0 (2019-10-10)
5068 + f7a31b30f5319639c36a6c6b1c14f358597d98d2:
5069 Prevent action-cache duplicate suppression
5070 + 618e5a28f7f735c37724377b15775a4975349c74:
5071 Use FileSystemUtils.moveFile instead of renameTo function of Path
Bazel Release Systeme693c192019-10-21 10:40:19 +02005072```
5073
Bazel Release Systemf15bfb32019-10-21 12:49:43 +02005074This release contains contributions from many people at Google, as well as David Ostrovsky, George Gensure, Keith Smiley.
Bazel Release Systeme693c192019-10-21 10:40:19 +02005075
Bazel Release Systemb9067c42019-10-10 11:55:50 +02005076## Release 1.0.0 (2019-10-10)
Bazel Release System4f9cd082019-09-10 09:39:08 -04005077
5078```
Bazel Release Systemb9067c42019-10-10 11:55:50 +02005079Baseline: 97a82646dadd93bf52d47828bda42e3383b657c6
Bazel Release System4f9cd082019-09-10 09:39:08 -04005080
5081Cherry picks:
5082
Bazel Release System4f9cd082019-09-10 09:39:08 -04005083 + a0e3bb207fe2044120a2555a37162ee1f2b17500:
5084 Remove support for authentication and .netrc
Bazel Release Systemb9067c42019-10-10 11:55:50 +02005085 + ada2c55dcc106cd55bafbbe5d9a966e21e4770e0:
5086 Add explicit --sdk argument to xcrun calls
5087 + 847df729528f6e5919ec8374247eadf792cba544:
5088 toolchain_vanilla: Unset source and target language level
5089 versions
5090 + 5cfa0303d6ac3b5bd031ff60272ce80a704af8c2:
5091 Update java_tools version to javac11-v5.1.
Bazel Release System4f9cd082019-09-10 09:39:08 -04005092```
5093
Bazel Release Systemb9067c42019-10-10 11:55:50 +02005094Incompatible changes:
5095
5096 - Python, Windows: the
5097 --[no]incompatible_windows_escape_python_args is no longer
5098 supported. (It was flipped to true in Bazel 0.27.0)
5099 - --incompatible_use_native_patch is enabled by default
5100 - Windows: --incompatible_windows_bashless_run_command is now true
5101 by default, meaning "bazel run //foo:bin" will run the binary as
5102 a subprocess of the Bazel client. (When the flag is false, the
5103 binary is executed as a subprocess of Bash.)
5104 - Windows: --incompatible_windows_native_test_wrapper is enabled by
5105 default
5106
5107New features:
5108
5109 - Genrule now supports `cmd_bash`, `cmd_ps`, `cmd_bat` attributes.
5110 More details at
5111 https://docs.bazel.build/versions/master/be/general.html#genrule.c
5112 md
5113 - config_setting can now check multiple values on "--foo=firstVal
5114 --foo=secondVal ..."-style flags
5115 - tags: use `--experimental_allow_tags_propagation` flag to
5116 propagate tags to the action's execution requirements from
5117 targets. Such tags should start with: `no-`, `requires-`,
5118 `supports-`, `block-`, `disable-`, `cpu:`. See #8830 for details.
5119 - Users can now get generated def file from cc_library via
5120 "def_file" output group on Windows.
5121 - Platform-specific bazelrc: with --enable_platform_specific_config
5122 you can
5123 enable flags in bazelrc according to your host platform.
5124 - tags: use `--experimental_allow_tags_propagation` flag to
5125 propagate tags to the action's execution requirements from
5126 cc_library or cc_binary targets. Such tags should start with:
5127 `no-`, `requires-`, `supports-`, `block-`, `disable-`, `cpu:`.
5128 See #8830 for details.
5129 - tags: use --experimental_allow_tags_propagation flag to propagate
5130 tags to the action's execution requirements from java targets.
5131 Such tags should start with: no-, requires-, supports-, block-,
5132 disable-, cpu:. See #8830 for details.
5133
5134Important changes:
5135
5136 - Bazel Android builds now use aapt2 by default. To revert to aapt,
5137 set `--android_aapt=aapt`.
5138 - Make either --subcommands or --verbose_failures imply
5139 --materialize_param_files
5140 - Bazel Android builds now use aapt2 by default. To revert to aapt,
5141 set `--an...
5142 RELNOTES: None
5143 - by default all remote connections considered to be via `gRPC`
5144 with TLS enabled, unless other specified. To disable TLS use
5145 `grpc://` prefix for you endpoints. All remote connections via
5146 `gRPC` affected - `--remote_cache`, `--remote_executor` or
5147 `--bes_backend`. http cache/executor is not affected. See #8061
5148 for details.
5149 - cc_* rules support non-transitive defines through a
5150 'local_defines' attribute.
5151 - Enable
5152 incompatible_disallow_rule_execution_platform_constraints_allowed
5153 by default (https://github.com/bazelbuild/bazel/issues/8136).
5154 - incompatible_disallow_split_empty_separator is enabled by default
5155 - Fixed Android build issues with aapt2 on Windows. See the [GitHub
5156 issue](https://github.com/bazelbuild/bazel/issues/9102) for more
5157 information.
5158 - --incompatible_disable_static_cc_toolchains has been flipped. See
5159 https://github.com/bazelbuild/bazel/issues/8546.
5160 - --remote_default_platform_properties has been deprecated in favor
5161 of --remote_default_exec_properties.
5162 - The --incompatible_make_thinlto_command_lines_standalone flag has
5163 been flipped, see https://github.com/bazelbuild/bazel/issues/6791
5164 for more information.
5165 - The --incompatible_use_specific_tool_files flag has been flipped.
5166 See https://github.com/bazelbuild/bazel/pull/9126 for more
5167 information.
5168 - Clarify default visibility.
5169 - Enables incompatible_auto_configure_host_platform
5170 - New incompatible flag --incompatible_disable_depset_items
5171 disables the "items" parameter in the Starlark depset
5172 constructor. Use "direct" and "transitive" parameters instead.
5173 - --incompatible_assignment_identifiers_have_local_scope is enabled
5174 - incompatible_disable_partition_default_parameter is enabled by
5175 default ()
5176 - incompatible_restrict_attribute_names is enabled
5177 (https://github.com/bazelbuild/bazel/issues/6437)
5178 - The --incompatible_disable_nocopts flag has been flipped. See
5179 https://github.com/bazelbuild/bazel/issues/8546 for more
5180 information.
5181 - Deprecated Java-Starlark API java_common.create_provider is
5182 removed. JavaInfo() legacy args (actions, sources, source_jars,
5183 use_ijar, java_toolchain, host_javabase) are removed.
5184 - The flag incompatible_disallow_hashing_frozen_mutables is enabled
5185 (https://github.com/bazelbuild/bazel/issues/7800)
5186 - `maven_jar` and `maven_server` now disallow using plain HTTP URLs
5187 without a specified checksum. If you are still using `maven_jar`,
5188 consider migrating to
5189 [`rules_jvm_external`](https://github.com/bazelbuild/rules_jvm_ext
5190 ernal) for transitive dependency management. See
5191 [#8607](https://github.com/bazelbuild/bazel/issues/8607) for more
5192 information.
5193 - Added `sha256` and `sha256_src` attributes to `maven_jar`. Please
5194 consider migrating to SHA-256 as SHA-1 has been deemed
5195 cryptographically insecure ([https://shattered.io]()). Or, use
5196 [`rules_jvm_external`](https://github.com/bazelbuild/rules_jvm_ext
5197 ernal) to manage your transitive Maven dependencies with artifact
5198 pinning and SHA-256 verification support.
5199 - introducing per-target exec_properties
5200 - Bazel now supports ThinLTO builds on Linux for Clang versions >=
5201 6.0. ThinLTO can be enabled through --features=thin_lto
5202 - The Target.output_group field in Starlark is removed. Use
5203 OutputGroupInfo instead. See
5204 https://github.com/bazelbuild/bazel/issues/7949 for details.
5205 - Make a number of parameters of Starlark builtin functions
5206 positional-only (as opposed to specifiable by keyword). See
5207 https://github.com/bazelbuild/bazel/issues/8147 for details.
5208 - incompatible_skip_genfiles_symlink is enabled by default (#8651)
5209 - Change Pruned events will fire immediately after being checked.
5210 - --incompatible_remove_legacy_whole_archive has been flipped. See
5211 https://github.com/bazelbuild/bazel/issues/7362 for more
5212 information
5213
5214This release contains contributions from many people at Google, as well as Adam Liddell, Alessandro Patti, Arshabh Kumar Agarwal, Artem Pelenitsyn, Artem Zinnatullin, Benjamin Peterson, David Ostrovsky, Emmanuel Goh, Farhim Ferdous, George Gensure, iirina, Keith Smiley, Kiril Videlov, Laurent Le Brun, Mantas Sakalauskas, Marwan Tammam, Matt Mukerjee, panzhongxian, Shachar Anchelovich, Stepan Koltsov, Stephan Wolski, Travis Clarke, Yannic Bonenberger, Yuta Saito.
Bazel Release System4f9cd082019-09-10 09:39:08 -04005215
Bazel Release Systemf791df02019-08-28 10:29:12 -04005216## Release 0.29.0 (2019-08-28)
5217
5218```
5219Baseline: 6c5ef5369a3ffceb8a65cc159a2fff1401242810
5220
5221Cherry picks:
5222
5223 + 338829f2633e91ae0492ee4169446465e10b5994:
5224 Fix retrying of SocketTimeoutExceptions in HttpConnector
5225 + 14651cd86b6fc1d48f56a208a9b5278b3e2dcf75:
5226 Fallback to next urls if download fails in HttpDownloader
5227 + b7d300c6be3e130dec0e62a4f19493105f595d57:
5228 Fix incorrect stdout/stderr in remote action cache. Fixes #9072
5229 + 960217631abdcab0a7ed95e2ab10acd55f636639:
5230 Automated rollback of commit
5231 0f0a0d58725603cf2f1c175963360b525718a195.
5232 + da557f96c697102ad787e57bbf7db2460f6a60a8:
5233 Windows: fix "bazel run" argument quoting
5234 + ef8b6f68cc8ffd2e6523a894034ae383e87ec74c:
5235 Return JavaInfo from java proto aspects.
5236 + 209175ff8ffeb05628ed8a187dd414a3d2935c55:
5237 Revert back to the old behavior of not creating a proto source
5238 root for generated .proto files.
5239 + 644060b7a4bc98384b66e3d2343b950b875b5e35:
5240 Fix PatchUtil for parsing special patch format
5241 + 067040d7bcb3b24a88432e210a96adacee3f37b4:
5242 Put the removal of the legacy repository-relative proto path
5243 behind the --incompatible_generated_protos_in_virtual_imports
5244 flag.
5245 + 76ed014e77d7b862f6eb2894600ae525ea570f11:
5246 repository mapping lookup: convert to canonical name first
5247```
5248
5249Important changes:
5250
5251 - rule_test: fix Bazel 0.27 regression ("tags" attribute was
5252 ingored, https://github.com/bazelbuild/bazel/issues/8723
5253 - Adds --incompatible_enable_execution_transition, which enables
5254 incremental migration of host attributes to exec attributes.
5255 - objc_proto_library rule has been deleted from Bazel.
5256 - repository_ctx.read is no longer restricted to files
5257 in the repository contructed.
5258 - tags 'no-remote', 'no-cache', 'no-remote-cache',
5259 'no-remote-exec', 'no-sandbox' are propagated now to the actions
5260 from targets when '--ncompatible_allow_tags_propagation' flag set
5261 to true. See #8830.
5262 - Adds flag
5263 --//tools/build_defs/pkg:incompatible_no_build_defs_pkg. This
5264 flag turns off the rules //tools/build_defs/pkg:{pkg_deb,
5265 pkg_rpm, pkg_tar}.
5266 - The Android NDK is now integrated with toolchains. To use them,
5267 pass the `--extra_toolchains=@androidndk//:all` flag or register
5268 them in your WORKSPACE with
5269 `register_toolchains("@androidndk//:all")`.
5270 - Stdout and stderr are checked to determine if output is going to a
5271 terminal. `--is_stderr_atty` is deprecated and `--isatty` is
5272 undeprecated.
5273 - --incompatible_load_proto_rules_from_bzl was added to forbid
5274 loading the native proto rules directly. See more on tracking
5275 issue #8922
5276 - Docker Sandbox now respects remote_default_platform_properties
5277 - pkg_deb, pkg_rpm & pkg_tar deprecation plan announced in the
5278 documentation.
5279 - The new java_tools release:
5280 * fixes https://github.com/bazelbuild/bazel/issues/8614
5281 * exposes a new toolchain `@java_tools//:prebuilt_toolchain`
5282 which is using all the pre-built tools, including singlejar and
5283 ijar, even on remote execution. This toolchain should be used
5284 only when host and execution platform are the same, otherwise the
5285 binaries will not work on the execution platform.
5286 - java_common.compile supports specifying
5287 annotation_processor_additional_inputs and
5288 annotation_processor_additional_outputs for the Java compilation
5289 action for supporting annotation processors that consume or
5290 produce artifacts. Fixes #6415
5291 - There is now documentation on optimizing Android app build
5292 performance. Read it at
5293 https://docs.bazel.build/versions/0.29.0/android-build-performance
5294 .html
5295 - Execution log now respects --remote_default_platform_properties
5296 - Include a link to the relevant documenation on transitive Python
5297 version errors.
5298 - New incompatible flag
5299 --incompatible_disable_target_provider_fields removes the ability
5300 (in Starlark) to access a target's providers via the field syntax
5301 (for example, `ctx.attr.dep.my_provider`). The provider-key
5302 syntax should be used instead (for example,
5303 `ctx.attr.dep[MyProvider]`). See
5304 https://github.com/bazelbuild/bazel/issues/9014 for details.
5305 - A new platform exec_properties is added to replace
5306 remote_execution_properties.
5307 - Added --incompatible_load_python_rules_from_bzl, which will be
5308 flipped in Bazel 1.0. See
5309 https://github.com/bazelbuild/bazel/issues/9006.
5310 - add --break_build_on_parallel_dex2oat_failure to shortcut tests
5311 on dex2oat errors
5312
5313This release contains contributions from many people at Google, as well as Alexander Ilyin, Arek Sredzki, Artem Zinnatullin, Benjamin Peterson, Fan Wu, John Millikin, Loo Rong Jie, Marwan Tammam, Oscar Bonilla, Peter Mounce, Sergio Rodriguez Orellana, Takeo Sawada, and Yannic Bonenberger.
5314
Bazel Release System3fd8c412019-07-19 17:14:15 +02005315## Release 0.28.1 (2019-07-19)
5316
5317```
5318Baseline: 2e374a9c6e3d4ed71f0145de287c4b2fe43c76d6
5319
5320Cherry picks:
5321
5322 + 6d0b14b95a71175362030b4811ca74512b00a890:
5323 rule_test: apply "tags" to all rules in the macro
5324 + 18cd9048526f067a4950c6ddbf4b1b3604760af0:
5325 Release 0.28.0 (2019-07-10)
5326 + 2260b970cb2a10c21a2fde116aa82c79be52991f:
5327 When copying dynamic libraries to binary, copy them into the
5328 runfiles as well.
5329 + a0af170f87c8230fcd8860599b983df097b646bd:
5330 Undo breaking change of hiding android_common behind
5331 --experimental_google_legacy_api
5332 + c6ca6c2ccd9e11a87f837341ae05d2ba037975b1:
5333 Ignore external/ directory in users' source tree when creating
5334 execroot symlink tree.
5335```
5336
5337Important changes:
5338
5339 - rule_test: fix Bazel 0.27 regression ("tags" attribute was
5340 ingored, https://github.com/bazelbuild/bazel/issues/8723
5341
5342This release contains contributions from many people at Google, as well as .
5343
Bazel Release Systemf4a08032019-07-10 18:11:04 +02005344## Release 0.28.0 (2019-07-10)
Bazel Release System7e809492019-07-10 17:50:43 +02005345
5346```
Bazel Release Systemf4a08032019-07-10 18:11:04 +02005347Baseline: 2e374a9c6e3d4ed71f0145de287c4b2fe43c76d6
Bazel Release System7e809492019-07-10 17:50:43 +02005348
5349Cherry picks:
5350
Bazel Release System7e809492019-07-10 17:50:43 +02005351 + 6d0b14b95a71175362030b4811ca74512b00a890:
5352 rule_test: apply "tags" to all rules in the macro
5353```
5354
Bazel Release Systemf4a08032019-07-10 18:11:04 +02005355Incompatible changes:
5356
5357 - Add --incompatible_enable_profile_by_default to enable the JSON
5358 profile by default.
5359 - The --incompatible_windows_style_arg_escaping flag is flipped to
5360 "true", and the "false" case unsupported. Bazel no longer accepts
5361 this flag.
5362
Bazel Release System7e809492019-07-10 17:50:43 +02005363Important changes:
5364
Bazel Release Systemf4a08032019-07-10 18:11:04 +02005365 - Bazel now supports hiding compiler warnings for targets that
5366 you're not explicitly building (see
5367 https://docs.bazel.build/versions/master/user-manual.html#flag--au
5368 to_output_filter).
5369 - Flag `--incompatible_restrict_escape_sequences` is added. See
5370 https://github.com/bazelbuild/bazel/issues/8380
5371 - The "info" command now supports the "starlark-semantics"
5372 argument, which outputs a representation of the effective Starlark
5373 semantics option values.
5374 - The `outputs` parameter of the `rule()` function is deprecated
5375 and attached to flag `--incompatible_no_rule_outputs_param`.
5376 Migrate rules to use `OutputGroupInfo` or `attr.output` instead.
5377 See https://github.com/bazelbuild/bazel/issues/7977 for more info.
Bazel Release System7e809492019-07-10 17:50:43 +02005378 - When `--incompatible_strict_action_env` is enabled, the default
5379 `PATH` now includes `/usr/local/bin`.
5380 - Turn on --experimental_build_setting_api by default for starlark
5381 build settings (see
5382 https://docs.bazel.build/versions/master/skylark/config.html#user-
5383 defined-build-settings for more info)
Bazel Release Systemf4a08032019-07-10 18:11:04 +02005384 - `@bazel_tools//tools/jdk:toolchain_java10` and
5385 `@bazel_tools//tools/jdk:toolchain_java11` are now available to
5386 enable java 10, respectively java 11 language level support.
5387 - The `command` parameter of the `actions.run_shell()` function
5388 will be restricted to only accept strings (and not string
5389 sequences). This check is attached to flag
5390 `--incompatible_run_shell_command_string`. One may migrate by
5391 using the `arguments` parameter of `actions.run()` instead. See
5392 https://github.com/bazelbuild/bazel/issues/5903 for more info.
5393 - Incompatible change
5394 `--incompatible_use_platforms_repo_for_constraints` has been
5395 added. See https://github.com/bazelbuild/bazel/issues/8622 for
5396 details.
5397 - Incompatible change
5398 `--incompatible_use_platforms_repo_for_constraints` has been
5399 added. See https://github.com/bazelbuild/bazel/issues/8622 f...
5400 - Bazel's C++ autoconfiguration now understands `BAZEL_LINKLIBS`
5401 environment variable to specify system libraries that should be
5402 appended to the link command line.
5403 - paths under the execution root starting with "." or "_" will be
5404 re-linked across builds
5405 - execution_log_json_file now allows actions without outputs.
5406 - Labels aapt as deprecated for aapt_version, and heavily endorses
5407 aapt2.
5408 - Update doc links still pointing to cc_binary.features to point to
5409 common features
5410 - Incompatible change
5411 `--incompatible_use_platforms_repo_for_constraints` has been
5412 added. See https://github.com/bazelbuild/bazel/issues/8622 for
5413 details.
5414 RELNOTES:
5415 - --incompatible_disable_nocopts flag has been added. See
5416 https://github.com/bazelbuild/bazel/issues/8706 for details.
5417 - Fixed treatment of <dist:module /> tags in AndroidManifest.xml
5418 - Fixed asset precedence for android_binary rules with aapt2.
5419 - Bazel now officially supports running on CentOS 7.
5420 - The runtime dynamic libraries are no longer in default output
5421 group of cc_binary.
5422 - set the FDOBuildType as CSFDO for binaries built with
5423 --cs_fdo_absolute_path.
5424 - Bazel can now be bootstrapped and built on arm64 platforms
5425 without requiring any flags or patches.
5426 - Fixed treatment of AndroidManifest.xml attributes which contained
5427 XML escaping
5428 - Retire experimental blaze flag
5429 experimental_link_compile_output_separately. The same behavior is
5430 available through the feature dynamic_link_test_srcs.
5431 - --incompatible_load_java_rules_from_bzl was added to forbid
5432 loading the native java rules directly. See more on tracking
5433 issue #8746
5434 - Turn on --experimental_build_setting_api by default for starlark
5435 build settings (see
5436 https://docs.bazel.build/versions/master/skylark/config.html#user-
5437 defined-build-settings for more info)
5438 - Attribute names are going to be restricted and must be
5439 syntactically valid identifiers.
5440 https://github.com/bazelbuild/bazel/issues/6437
Bazel Release System7e809492019-07-10 17:50:43 +02005441 - rule_test: fix Bazel 0.27 regression ("tags" attribute was
5442 ingored, https://github.com/bazelbuild/bazel/issues/8723
5443
Bazel Release Systemf4a08032019-07-10 18:11:04 +02005444This release contains contributions from many people at Google, as well as Ben Diuguid, Benjamin Peterson, Dave Lee, Loo Rong Jie, Mark Butcher, Marwan Tammam, Pedro Alvarez.
Bazel Release System7e809492019-07-10 17:50:43 +02005445
Bazel Release System316cb9b2019-07-02 19:45:51 +02005446## Release 0.27.1 (2019-07-02)
5447
5448```
5449Baseline: 8c3b3fba3f68833bd97d3df2db9c48f0539efc3b
5450
5451Cherry picks:
5452
5453 + 123c68daed17b19927372e4df7f7a2256db6b80e:
5454 Warn in more cases of possible Python version mismatch in host
5455 config
5456 + 052167e907373ac7ea43238c3049739f6e94a9d1:
5457 Add a non-strict autodetecting Python toolchain
5458 + 6ef6d879ab69225d54ecab3db847fb4eff33bbeb:
5459 Default java toolchain target
5460 + 50fa3ec27efdd95771c70faa38a4543d4fed44f2:
5461 Fix problems with the non-strict Python toolchain
5462 + e2a626c4f61fe4ceb79a5675d09a6f25ca7b5b22:
5463 Automated rollback of commit
5464 bc6f7cb330bb531f062bb301f3703876051191f5.
5465 + 6efc5b787ad3164cc2fb779c73377695032b4524:
5466 Treat existence of managed directories as a part of repository
5467 dirtiness.
5468 + 3a4be3c93813987a27a97dade3f9ebbc5770e349:
5469 Add /usr/local/bin to default PATH under strict action env
5470 + 5c1005c0947b010ee36ca851b8ba07c9479cf682:
5471 Automated rollback of commit
5472 536a166270590a8dbc701718550383f3a07cc763.
5473 + c82eb4878c7dc829455caeb915affe36c89df06f:
5474 Release 0.27.0 (2019-06-17)
5475 + d4589630428c1c1bc08a9baf36257e636fe9d746:
5476 Check for both :lcov_merger and $lcov_merger attributes in
5477 TestActionBuilder.
5478```
5479
5480Important changes:
5481
5482 - Add new options --cs_fdo_absolute_path= to support the absolute
5483 path
5484 profile for LLVM's context-sensitive FDO.
5485 - When `--incompatible_strict_action_env` is enabled, the default
5486 `PATH` now includes `/usr/local/bin`.
5487 - Turn on --experimental_build_setting_api by default for starlark
5488 build settings (see
5489 https://docs.bazel.build/versions/master/skylark/config.html#user-
5490 defined-build-settings for more info)
5491
5492This release contains contributions from many people at Google, as well as Ricky Pai.
5493
Bazel Release Systemaecb1e82019-06-17 14:57:36 +02005494## Release 0.27.0 (2019-06-17)
Bazel Release Systeme6976fb2019-06-06 13:01:57 +02005495
5496```
Bazel Release Systemaecb1e82019-06-17 14:57:36 +02005497Baseline: 5935259724bebd1c4bdebc90e159d0f655c8c219
Bazel Release Systeme6976fb2019-06-06 13:01:57 +02005498
5499Cherry picks:
5500
Bazel Release Systemaecb1e82019-06-17 14:57:36 +02005501 + fe81b49e727efdcc90a270520af193af75f4e31d:
5502 Support of using the absolute path profile for LLVM's Context
5503 Sensitive FDO
5504 + ce5e7180d98e1244fdfba0349952727826cbd173:
5505 Demote OptionProcessor from globals
5506 + 3ed9d3681c3e130aafcf3c405ff1795c601bdf95:
5507 Properly wire up BES half-close. The lack thereof was a simple
5508 oversight.
5509 + 4ca768e9f87701fb92598d0a8325a5fc8881a852:
5510 standardize graph output indentation with 2 spaces
5511 + aff189a7c514a0171a53a2dcdd37c93ecaa672ad:
5512 Make sure default Linux artifacts have an associated action,
5513 even when artifact names are altered.
5514 + 8c3b3fba3f68833bd97d3df2db9c48f0539efc3b:
5515 Failures early in package loading will now fail all --keep_going
5516 builds.
5517 + 123c68daed17b19927372e4df7f7a2256db6b80e:
5518 Warn in more cases of possible Python version mismatch in host
5519 config
5520 + 052167e907373ac7ea43238c3049739f6e94a9d1:
5521 Add a non-strict autodetecting Python toolchain
5522 + 6ef6d879ab69225d54ecab3db847fb4eff33bbeb:
5523 Default java toolchain target
5524 + 50fa3ec27efdd95771c70faa38a4543d4fed44f2:
5525 Fix problems with the non-strict Python toolchain
5526 + e2a626c4f61fe4ceb79a5675d09a6f25ca7b5b22:
5527 Automated rollback of commit
5528 bc6f7cb330bb531f062bb301f3703876051191f5.
5529 + 6efc5b787ad3164cc2fb779c73377695032b4524:
5530 Treat existence of managed directories as a part of repository
5531 dirtiness.
5532 + 3a4be3c93813987a27a97dade3f9ebbc5770e349:
5533 Add /usr/local/bin to default PATH under strict action env
5534 + 5c1005c0947b010ee36ca851b8ba07c9479cf682:
5535 Automated rollback of commit
5536 536a166270590a8dbc701718550383f3a07cc763.
Bazel Release Systeme6976fb2019-06-06 13:01:57 +02005537```
5538
Bazel Release Systemaecb1e82019-06-17 14:57:36 +02005539Incompatible changes:
5540
5541 - --incompatible_disable_objc_provider_resources no longer has
5542 effect. Use of deprecated resource fields on the Objc provider is
5543 now disallowed regardless of this flag.
5544 - deleted deprecated --experimental-remote-retry* flags, please use
5545 --remote_retries instead
5546 - flipped --incompatible_list_based_execution_strategy_selection
5547 flag to be true by default. See
5548 https://github.com/bazelbuild/bazel/issues/7480 for details.
5549 - Octal integer literals in Starlark are required to start with
5550 "Oo".
5551 - The "native" module is no longer available in BUILD files, all
5552 its members can be accessed directly as global symbols. This can
5553 be temporarily reverted by providing
5554 --incompatible_disallow_native_in_build_file=false as a flag to
5555 Blaze.
5556 - The "native" module is no longer available in BUILD files, all
5557 its members can be accessed directly as global symbols. This can
5558 be temporarily reverted by providing
5559 --incompatible_disallow_native_in_build_file=false as a flag to
5560 Blaze.
5561 - Turn off binary style profile format.
5562 - The "native" module is no longer available in BUILD files, all
5563 its members can be accessed directly as global symbols. This can
5564 be temporarily reverted by providing
5565 --incompatible_disallow_native_in_build_f...
5566 - cleanup that affects user provided apple frameworks is
5567 now enabled by default. See
5568 https://github.com/bazelbuild/bazel/issues/7944 for more info.
5569 - Python rules now determine the Python runtime using toolchains
5570 rather than `--python_top` and `--python_path`, which are
5571 deprecated. See
5572 [#7899](https://github.com/bazelbuild/bazel/issues/7899) for
5573 information on declaring Python toolchains and migrating your
5574 code. As a side-benefit, this addresses
5575 [#4815](https://github.com/bazelbuild/bazel/issues/4815)
5576 (incorrect interpreter version used) on non-Windows platforms.
5577 Note however that some builds break due to getting the version
5578 they asked for -- consider setting `python_version = "PY2"` on
5579 Python 2 targets and `--host_force_python=PY2` if any Python 2
5580 targets are used in the host configuration. You can temporarily
5581 opt out of this change with
5582 `--incompatible_use_python_toolchains=false`.
5583 - Depsets can't be iterated over unless they're converted to lists
5584 using the .to_list() method. Use
5585 --incompatible_depset_is_not_iterable=false to
5586 temporarily restore the previous behaviour.
5587
5588New features:
5589
5590 - Bash, runfiles: the copy-pasted init code of the Bash runfiles
5591 library is now shorter, see `tools/bash/runfiles/runfiles.bash`.
5592 The rlocation() implementation is the same.
5593 - Bash, runfiles: the copy-pasted init code of the Bash runfiles
5594 library is now shorter, see `tools/bash/runfiles/runfiles.bash`.
5595 The rlocation() implementation is the same.
5596 - Bash, runfiles: the copy-pasted init code of the Bash runfiles
5597 library is now shorter, see `tools/bash/runfiles/runfiles.bash`.
5598 To use the new init code, you need Bazel 0.27 or newer. The old
5599 (longer) init code still works.
5600
5601Important changes:
5602
5603 - The `outputs` parameter of the `rule()` function is deprecated
5604 and attached to flag `--incompatible_no_rule_outputs_param`.
5605 Migrate rules to use `OutputGroupInfo` or `attr.output` instead.
5606 See https://github.com/bazelbuild/bazel/issues/7977 for more info.
5607 - The --incompatible_disable_objc_library_resources flag is being
5608 removed. Please remove it from your configs as it otherwise will
5609 fail the build.
5610 - Add a generic additional_linker_inputs attribute on cc_binary
5611 rules.
5612 - Windows, C++ autoconfigure: BAZEL_VC and BAZEL_VS may now have
5613 quotes, so if you set these envvars' values in cmd.exe via
5614 TAB-completion then you no longer need to remove the surrounding
5615 quotes.
5616 - pkg_deb has new attributes: `config` and `templates` that can be
5617 used for integration with debconf
5618 - Allow cc_import() of a DLL with no interface library on Windows,
5619 used to document runtime dependencies.
5620 - All host-configured Python tools that are built for the wrong
5621 Python version will now emit a warning message when they exit
5622 with non-zero status. See #7899.
5623 - deprecated --remote_local_fallback_strategy. Use
5624 `--strategy=remote,local` instead. See
5625 https://github.com/bazelbuild/bazel/issues/7480.
5626 - Introduce --incompatible_disable_native_android_rules flag
5627 - The Android desugaring actions now support a persistent worker
5628 mode for faster local build performance. Enable it with
5629 `--strategy=Desugar=worker`.
5630 - --incompatible_static_name_resolution_in_build_files is now
5631 enabled by default
5632 - --incompatible_disable_deprecated_attr_params is now enabled by
5633 default (#5818)
5634 - Repository containing autoconfigured C++ toolchain
5635 `@local_config_cc` has been split in 2 - see
5636 `local_config_cc_toolchains`.
5637 - --incompatible_string_join_requires_strings is now enabled by
5638 default
5639 - Flag --incompatible_new_actions_api is enabled by dewfault (#5825)
5640 - New flag `--incompatible_disallow_empty_glob`. See
5641 https://github.com/bazelbuild/bazel/issues/8195
5642 - --incompatible_no_kwargs_in_build_files is enabled by default
5643 - Incompatible flag
5644 `--incompatible_require_ctx_in_configure_features` has been
5645 flipped. See https://github.com/bazelbuild/bazel/issues/7793 for
5646 more information.
5647 - `BAZEL_USE_XCODE_TOOLCHAIN=1` tells Bazel not to look for Xcode to
5648 decide whether to enable toolchains for Apple rules, but to
5649 assume Xcode is
5650 available. Can be also used when building on Darwin and no C++ or
5651 ObjC is being
5652 built, so there is no need to detect Xcode.
5653 - Android desugaring actions now use persistent workers by default.
5654 This has been measured to provide up to 20% reduction in build
5655 times. To disable it, use the `--strategy=Desugar=sandboxed`
5656 flag. See https://github.com/bazelbuild/bazel/issues/8342 and
5657 https://github.com/bazelbuild/bazel/issues/8427 for more details
5658 on local build speed optimization for Android apps.
5659 - Fixed an issue with Android builds where `--fat_apk_cpu` doesn't
5660 pack all selected shared libraries from `aar_import` targets into
5661 the APK. See
5662 [#8283](https://github.com/bazelbuild/bazel/issues/8283).
5663 - Turn on --experimental_starlark_config_transitions by default for
5664 starlark transitions (see
5665 https://docs.bazel.build/versions/master/skylark/config.html#user-
5666 defined-transitions for more info)
5667 - Turn on --experimental_build_setting_api by default for starlark
5668 build settings (see
5669 https://docs.bazel.build/versions/master/skylark/config.html#user-
5670 defined-build-settings for more info)
5671 - Incompatible flag
5672 `--incompatible_dont_enable_host_nonhost_crosstool_features` has
5673 been flipped. See https://github.com/bazelbuild/bazel/issues/7407
5674 for more information.
5675 - Added support for Android NDK 19 and 20.
5676 - Flip --incompatible_no_support_tools_in_action_inputs
5677 - --remote_executor, --remote_cache or --bes_backend=someurl.com
5678 would be treated as grpcs://someurl.com, if the
5679 --incompatible_tls_enabled_removed flag enabled. See
5680 https://github.com/bazelbuild/bazel/issues/8061 for details.
5681 - Add new options --cs_fdo_absolute_path= to support the absolute
5682 path
5683 profile for LLVM's context-sensitive FDO.
5684 - When `--incompatible_strict_action_env` is enabled, the default
5685 `PATH` now includes `/usr/local/bin`.
5686 - Turn on --experimental_build_setting_api by default for starlark
5687 build settings (see
5688 https://docs.bazel.build/versions/master/skylark/config.html#user-
5689 defined-build-settings for more info)
5690
5691This release contains contributions from many people at Google, as well as Alex Thompson, Andy Scott, Benjamin Peterson, David McNett, Drew Gassaway, Ira Shikhman, James deBoer, Jay Vercellone, Jingwen Chen, Josh Rosen, Keith Smiley, Laurent Le Brun, Lee Mracek, Marwan Tammam, Matt Passell, Michael Hackner, Michal Majcherski, Patrick Niklaus, Peter Mounce, Ricky Pai, Steeve Morin, szakmary, Takuto Ikuta, Vladimir Chebotarev, Yen-Chi Chen.
Bazel Release Systeme6976fb2019-06-06 13:01:57 +02005692
Klaus Aehligc84f7d32019-06-17 15:26:27 +02005693## Release 0.26.1 (2019-06-06)
5694
5695```
5696Baseline: cb82ed84d44db0169a8fbf15f9cee434b77002bb
5697
5698Cherry picks:
5699
5700 + d1c0d205945f5a765efb0a48593b1cd82699ce32:
5701 Allow WORKSPACE file to be a symlink if no managed directories
5702 is used.
5703 + c3d2aa74ccd23dfb8a8173c2b3e2955f0c5892cb:
5704 Fix ios, tvos and watchos arm64 constraints
5705 + 55e42052a22a60b68d88a89932b2a068311b1a95:
5706 Bump java_tools_javac10 from 3.1 to 3.2
5707```
5708
5709Patch release on top of 0.26.0, fixing
5710- https://github.com/bazelbuild/bazel/issues/8475
5711- https://github.com/bazelbuild/bazel/issues/8520
5712- https://github.com/bazelbuild/intellij/issues/845
5713
Bazel Release System8089b272019-05-28 10:31:53 +02005714## Release 0.26.0 (2019-05-28)
Bazel Release System48845c32019-05-23 15:21:53 -04005715
5716```
Bazel Release System8089b272019-05-28 10:31:53 +02005717Baseline: daa8ae565ab2023e49134f0aad233b0a8bd7a5d0
Bazel Release System48845c32019-05-23 15:21:53 -04005718
5719Cherry picks:
5720
Bazel Release System8089b272019-05-28 10:31:53 +02005721 + 61c7ffa60ae9c1937dd6d8ee30a8c0471094ee71:
5722 Automated rollback of commit
5723 87388e24814b177f54ca7697b4233489f90c587e.
5724 + 898d7b6138af73f03daf35b767d252560087de70:
5725 Add test for repository overrides, conflicting with managed
5726 directories being added when Bazel server is already started.
5727 + c2001a4569483596d9dc74ba9cabcbe4b6f1887f:
5728 Automated rollback of commit
5729 bbe47a1564a832e1a175206f2dfbc92af94c120b.
5730 + e67c961905792cd63950c6f6efc33275ad243c49:
5731 Fix a non-determinism in create_embedded_tools.py.
Bazel Release System48845c32019-05-23 15:21:53 -04005732 + 81aefe7ee01cc73646a53f9c72ed40ead09f9f5a:
5733 Remove unsupported cpu attribute from cc_toolchains.
Bazel Release System8089b272019-05-28 10:31:53 +02005734 + 597e289b097d3bfed8eea1cb0924bbeb04877e42:
5735 remote: made CombinedCache a composition of Disk and Http Cache
5736 + 942f7cf6a0da0a4ecc804615424f039e50963933:
5737 C++: Fixes bug in C++ API with external repo aspects
Bazel Release System48845c32019-05-23 15:21:53 -04005738 + 85a5a2bd569a5274950fc7327a044c395248c024:
5739 Configure @androidsdk//:emulator_x86 and :emulator_arm to point
5740 to the unified emulator binary
Bazel Release System8089b272019-05-28 10:31:53 +02005741 + 9835cb4135503768cdf1161746b95d7969ccb938:
5742 Automated rollback of commit
5743 844e4e297b404d6ff28b818d8150d4b9c47de887.
5744 + c963ba21073b514961946b8b4b45b091f08fdaa1:
5745 Windows, Python: fix arg. esc. also in host config
5746 + a1ea487e0a9e180a36fa4aab57f7c746ddcf367a:
5747 Do not pre-cache changed files under managed directories
5748 + 7dc78cdd04eedf2f4373b170053ba5fc2a990929:
5749 Add explicit execution and target constraints for autodiscovered
5750 cc t?
5751 + dd9ac13f7e3b71bdf2eca717bc7681bdd12389a2:
5752 Fix a bug when a relative path is used for the execution log
Bazel Release System48845c32019-05-23 15:21:53 -04005753 + 0ff19c6d0adf3c0df94fff59ca3bd13cbcf99897:
5754 Fix StandaloneTestStrategy.appendStderr
Bazel Release System8089b272019-05-28 10:31:53 +02005755 + 7f495315749478e75a3424726cc273a535b7c3b8:
5756 Fix the autodetecting Python toolchain on Mac
5757 + ddce7235ef29a0aba727c265eae865d15af4ed09:
5758 Avoid exporting PATH unnecessarily
5759 + 35dd05a059fa7fddfdd888cfc69102994e3c04dc:
5760 Allow Starlark rules to be able to use the `exec_compatible_with`
Bazel Release System48845c32019-05-23 15:21:53 -04005761```
5762
Klaus Aehlig63bf1152019-05-28 10:41:12 +02005763### Incompatible changes
5764
5765- [`--incompatible_windows_escape_jvm_flags`](https://github.com/bazelbuild/bazel/issues/7486)
5766 is enabled by default, and removed.
5767
5768- [`--incompatible_windows_style_arg_escaping`](https://github.com/bazelbuild/bazel/issues/7454)
5769 is enabled by default.
5770
5771- [`--incompatible_no_output_attr_default`](https://github.com/bazelbuild/bazel/issues/7950)
5772 is enabled by default.
5773
5774- [`--incompatible_depset_union`](https://github.com/bazelbuild/bazel/issues/5817)
5775 is enabled by default.
5776
5777- [`--incompatible_disable_genrule_cc_toolchain_dependency`](https://github.com/bazelbuild/bazel/issues/6867) removed
5778
5779- [`--Incompatible_disallow_rule_execution_platform_constraints_allowed`](https://github.com/bazelbuild/bazel/issues/8136):
5780 When enabled, disallows the use of the `execution_platform_constraints_allowed`
5781 attribute when defining new rules.
5782
5783- [`--incompatible_disable_objc_provider_resources`](https://github.com/bazelbuild/bazel/issues/5710)
5784 is now enabled by default.
5785
5786### Apple
5787
5788- The `--ios_multi_cpus`, `--watchos_cpus`, `--macos_cpus` and `--tvos_cpus` are
5789 now additive. This means that you can now split the `--ios_multi_cpus=arm64,armv7`
5790 into `--ios_multi_cpus=arm64` and `--ios_multi_cpus=armv7`.
5791
5792- Add `--incompatible_objc_framework_cleanup` to control whether to enable some
5793 objc framework cleanup that changes the API. Specifically, the cleanup changes
5794 the objc provider API pertaining to frameworks. This change is expected to be
5795 transparent to most users unless they write their own Starlark rules to handle
5796 frameworks. See https://github.com/bazelbuild/bazel/issues/7594 for details.
5797
5798- `objc_library` does not support resource attributes any more. Please read
5799 [#7594](https://github.com/bazelbuild/bazel/issues/7594) for more info.
5800
5801### Android
5802
5803- Android resource conflicts will no longer be reported between a strong attr
5804 resource and a weak attr resource, if the weak attr does not have format
5805 specified.
5806
5807### C++
5808
5809- [Allow debugging C++ features logic](https://github.com/bazelbuild/bazel/commit/53156db1e30fe7197889c3cbc8d1321ff9b85143
5810
5811- Add new options [`--cs_fdo_instrument`](https://docs.bazel.build/versions/master/command-line-reference.html#flag--cs_fdo_instrument)
5812 and [`--cs_fdo_profile`](https://docs.bazel.build/versions/master/command-line-reference.html#flag--cs_fdo_profile)
5813 to support LLVM's context-sensitive FDO (CSFDO).
5814
5815- [Bazel C++ compile/link Starlark API](https://github.com/bazelbuild/bazel/issues/4570).
5816 Can be used with experimental flag `--experimental_cc_skylark_api_enabled_packages`.
5817
5818- `cc_toolchain.static_runtime_lib` and `cc_toolchain.dynamic_runtime_lib` are
5819 now exposed to Starlark.
5820
5821- C++ Starlark API for compilation and linking is no longer whitelisted
5822
5823- Incompatible flag `--incompatible_make_thinlto_command_lines_standalone` has
5824 been added. See https://github.com/bazelbuild/bazel/issues/6791 for details.
5825
5826- Feature `disable_whole_archive_for_static_lib` has been added to allow turning
5827 off legacy_whole_archive for individual targets.
5828 https://github.com/bazelbuild/bazel/issues/7362
5829
5830### Python
5831
5832- Fixed an issue where some `py_runtimes` were incompatible with using
5833 `--build_python_zip` ([#5104](https://github.com/bazelbuild/bazel/issues/5104)).
5834
5835### Starlark
5836
5837- The flag [`--incompatible_restrict_named_params`](https://github.com/bazelbuild/bazel/issues/8147)
5838 is added. [Buildifier](https://github.com/bazelbuild/buildtools) will soon be
5839 updated to automatically fix this in your code.
5840
5841- The flag [`--incompatible_no_kwargs_in_build_files`](https://github.com/bazelbuild/bazel/issues/8021)
5842 is added. It fixes a bug where the `**kwarg` notation was allowed in `BUILD`
5843 files.
5844
5845- The flag [`--incompatible_static_name_resolution_in_build_files`](https://github.com/bazelbuild/bazel/issues/8022)
5846 is added. This fixes a bug where invalid code was silently accepted.
5847
5848- The flag [`--incompatible_disallow_old_octal_notation`](https://github.com/bazelbuild/bazel/issues/8059)
5849 is added. It removes a deprecated notation for octal numbers.
5850 [Buildifier](https://github.com/bazelbuild/buildtools) can update your code
5851 automatically.
5852
5853- [`struct.to_proto()`](https://docs.bazel.build/versions/master/skylark/lib/struct.html#to_proto)
5854 can now convert dictionaries into proto3 text message.
5855
5856- The [`glob`](https://docs.bazel.build/versions/master/be/functions.html#glob)
5857 function has a new argument `allow_empty`. When set to `False` (this will be
5858 the default in the future), the glob fails when it doesn't match anything.
5859 Please explicitly set `allow_empty = True` to the globs that need it.
5860
5861### Windows
5862
5863- Windows, Python: the new `--incompatible_windows_escape_python_args` flag
5864 (`false` by default) builds `py_binary` and `py_test` targets with correct
5865 command line argument escaping. Similar to
5866 https://github.com/bazelbuild/bazel/issues/7486 but for `py_*` rules.
5867
5868### Other changes
5869
5870- cquery supports `--output=build`
5871
5872- Generated Go protobufs now depend on `//net/proto2/go:proto_gendeps` instead
5873 of `//net/proto2/go:proto`
5874
5875- Added `--incompatible_remove_binary_profile` to disable the old binary
5876 profiles. Instead use the JSON profile format:
5877 https://docs.bazel.build/versions/master/skylark/performance.html#json-profile
5878
5879- Introducing `--execution_log_binary_file` and `--execution_log_json_file`
5880 that output a stable sorted execution log. They will offer a stable
5881 replacement to `--experimental_execution_log_file`.
5882
5883- New platform_mappings ability to allow gradual flag to platforms/toolchains
5884 migration. See also https://github.com/bazelbuild/bazel/issues/6426
5885
5886- Added support for compiling against fully qualified `R` classes from
5887 `aar_import` dependencies.
5888
5889- `--tls_enabled` flag is deprecated. Please provide `grpcs` as a scheme in
5890 the URLs if TLS should be used for a remote connection.
5891
5892### Community
5893
5894- Alex Eagle gave a talk at ng-conf:
5895 [The Bazel Opt-in Preview is Here!](https://www.youtube.com/watch?v=J1lnp-nU4wM)
5896
5897- The latest release of
5898 [rules_haskell](https://github.com/tweag/rules_haskell/releases/tag/v0.9)
5899 includes many new improvements, including an initial Windows support.
5900
5901- The latest
5902 [Buildifier release](https://github.com/bazelbuild/buildtools/releases/tag/0.25.1)
5903 includes Windows binaries, as well as a JSON output for diagnostics.
5904
5905- Natan Silnitsky gave the talk
5906 [How to successfully migrate to Bazel from Maven or Gradle](https://www.youtube.com/watch?v=2UOFm-Cc_cU)
5907 at the Java Eastern Europe Conference.
5908
5909This release contains contributions from many people at Google, as well as
5910Benjamin Peterson, Brian Topping, clyang82, Dave Lee, George Gensure,, Greg,
5911Guro Bokum, Keith Smiley, Max Vorobev, Michael Hackner, Robert Brown, Robert
5912Sayre, Ryan Beasley, and Yannic.
5913
5914
5915## Release 0.25.3 (2019-05-23)
5916
5917```
5918Baseline: 03662462941953dad23af88693804b8b1d4430b9
5919
5920Cherry picks:
5921
5922 + 3f7f255f9a8345b8898e3953e7e53d68106cc63d:
5923 Windows: fix native test wrapper's arg. escaping
5924 + afeb8d0b7fef619159fc8fbaaeb8bd41dd2619bd:
5925 Flip --incompatible_windows_escape_jvm_flags
5926 + 4299b6549cbc1b3e4494c91ed2f51d49b14c7980:
5927 Sort DirectoryNode children to ensure validity.
5928 + 231270c67d5aa771462245531fa9b2ee7d3d0ae8:
5929 Conditionally use deprecated signature for initWithContentsOfURL
5930 + 75a3a531b08e727ade4fa3cb0a574bd142727cce:
5931 Add http_archive entries for testing with various JDK versions.
5932 + 4a6354a3a5ca23583f8b62e3e439a04ce75b863f:
5933 Now that ubuntu1804 uses JDK 11, remove explicit
5934 ubuntu1804_java11 tests.
5935 + ae102fbde3c1ff87e4f67007a275fb30792a4e8d:
5936 Fix wrong name of ubuntu1804_javabase9 task.
5937 + 0020a97fdc20ca099ec6386771b20d3236f9890d:
5938 Remove @executable_path/Frameworks from rpaths
5939 + 130f86ded1ce84f959f0b78c065211902faed546:
5940 Download stderr/stdout to a temporary FileOutErr
5941 + 2ab38663592a9ccbcc1f6f75ed135ae315f4d9d9:
5942 Release 0.25.0 (2019-05-01)
5943 + ed48a4a5fddbd93b057c3aa726e15720d79dcf8f:
5944 Add implementation to removed methods to address
5945 https://github.com/bazelbuild/bazel/issues/8226
5946 + 81aefe7ee01cc73646a53f9c72ed40ead09f9f5a:
5947 Remove unsupported cpu attribute from cc_toolchains.
5948 + cccced1e7fc7eaf4ba8f2c9d73dbac72b2686df9:
5949 Release 0.25.1 (2019-05-07)
5950 + 0900660d67b53a56a13d1fa16a788e4cecbb1c0e:
5951 Use package identifier instead of package name
5952 + 85a5a2bd569a5274950fc7327a044c395248c024:
5953 Configure @androidsdk//:emulator_x86 and :emulator_arm to point
5954 to the unified emulator binary
5955 + 6549ac5bba3eef2b1813b5a75757437383bf38f0:
5956 Release 0.25.2 (2019-05-10)
5957 + 0ff19c6d0adf3c0df94fff59ca3bd13cbcf99897:
5958 Fix StandaloneTestStrategy.appendStderr
5959```
5960
Bazel Release System48845c32019-05-23 15:21:53 -04005961Incompatible changes:
5962
5963 - Flip --incompatible_windows_escape_jvm_flags to true. See
5964 https://github.com/bazelbuild/bazel/issues/7486
5965
Klaus Aehlig63bf1152019-05-28 10:41:12 +02005966This release contains contributions from many people at Google, as well as George Gensure, Keith Smiley, Robert Sayre.
Bazel Release System48845c32019-05-23 15:21:53 -04005967
Klaus Aehlig63bf1152019-05-28 10:41:12 +02005968## Release 0.25.2 (2019-05-10)
Bazel Release System6549ac52019-05-10 16:44:09 -04005969
Klaus Aehlig63bf1152019-05-28 10:41:12 +02005970```
5971Baseline: 03662462941953dad23af88693804b8b1d4430b9
Bazel Release System6549ac52019-05-10 16:44:09 -04005972
Klaus Aehlig63bf1152019-05-28 10:41:12 +02005973Cherry picks:
Bazel Release System6549ac52019-05-10 16:44:09 -04005974
Klaus Aehlig63bf1152019-05-28 10:41:12 +02005975 + 3f7f255f9a8345b8898e3953e7e53d68106cc63d:
5976 Windows: fix native test wrapper's arg. escaping
5977 + afeb8d0b7fef619159fc8fbaaeb8bd41dd2619bd:
5978 Flip --incompatible_windows_escape_jvm_flags
5979 + 4299b6549cbc1b3e4494c91ed2f51d49b14c7980:
5980 Sort DirectoryNode children to ensure validity.
5981 + 231270c67d5aa771462245531fa9b2ee7d3d0ae8:
5982 Conditionally use deprecated signature for initWithContentsOfURL
5983 + 75a3a531b08e727ade4fa3cb0a574bd142727cce:
5984 Add http_archive entries for testing with various JDK versions.
5985 + 4a6354a3a5ca23583f8b62e3e439a04ce75b863f:
5986 Now that ubuntu1804 uses JDK 11, remove explicit
5987 ubuntu1804_java11 tests.
5988 + ae102fbde3c1ff87e4f67007a275fb30792a4e8d:
5989 Fix wrong name of ubuntu1804_javabase9 task.
5990 + 0020a97fdc20ca099ec6386771b20d3236f9890d:
5991 Remove @executable_path/Frameworks from rpaths
5992 + 130f86ded1ce84f959f0b78c065211902faed546:
5993 Download stderr/stdout to a temporary FileOutErr
5994 + 2ab38663592a9ccbcc1f6f75ed135ae315f4d9d9:
5995 Release 0.25.0 (2019-05-01)
5996 + ed48a4a5fddbd93b057c3aa726e15720d79dcf8f:
5997 Add implementation to removed methods to address
5998 https://github.com/bazelbuild/bazel/issues/8226
5999 + 81aefe7ee01cc73646a53f9c72ed40ead09f9f5a:
6000 Remove unsupported cpu attribute from cc_toolchains.
6001 + cccced1e7fc7eaf4ba8f2c9d73dbac72b2686df9:
6002 Release 0.25.1 (2019-05-07)
6003 + 0900660d67b53a56a13d1fa16a788e4cecbb1c0e:
6004 Use package identifier instead of package name
6005 + 85a5a2bd569a5274950fc7327a044c395248c024:
6006 Configure @androidsdk//:emulator_x86 and :emulator_arm to point
6007 to the unified emulator binary
6008```
6009
6010* Add fix for https://github.com/bazelbuild/bazel/issues/8254
6011* Add fix for https://github.com/bazelbuild/bazel/issues/8280
6012
6013## Release 0.25.1 (2019-05-07)
6014
6015```
6016Baseline: 03662462941953dad23af88693804b8b1d4430b9
6017
6018Cherry picks:
6019
6020 + 3f7f255f9a8345b8898e3953e7e53d68106cc63d:
6021 Windows: fix native test wrapper's arg. escaping
6022 + afeb8d0b7fef619159fc8fbaaeb8bd41dd2619bd:
6023 Flip --incompatible_windows_escape_jvm_flags
6024 + 4299b6549cbc1b3e4494c91ed2f51d49b14c7980:
6025 Sort DirectoryNode children to ensure validity.
6026 + 231270c67d5aa771462245531fa9b2ee7d3d0ae8:
6027 Conditionally use deprecated signature for initWithContentsOfURL
6028 + 75a3a531b08e727ade4fa3cb0a574bd142727cce:
6029 Add http_archive entries for testing with various JDK versions.
6030 + 4a6354a3a5ca23583f8b62e3e439a04ce75b863f:
6031 Now that ubuntu1804 uses JDK 11, remove explicit
6032 ubuntu1804_java11 tests.
6033 + ae102fbde3c1ff87e4f67007a275fb30792a4e8d:
6034 Fix wrong name of ubuntu1804_javabase9 task.
6035 + 0020a97fdc20ca099ec6386771b20d3236f9890d:
6036 Remove @executable_path/Frameworks from rpaths
6037 + 130f86ded1ce84f959f0b78c065211902faed546:
6038 Download stderr/stdout to a temporary FileOutErr
6039 + 2ab38663592a9ccbcc1f6f75ed135ae315f4d9d9:
6040 Release 0.25.0 (2019-05-01)
6041 + ed48a4a5fddbd93b057c3aa726e15720d79dcf8f:
6042 Add implementation to removed methods to address
6043 https://github.com/bazelbuild/bazel/issues/8226
6044 + 81aefe7ee01cc73646a53f9c72ed40ead09f9f5a:
6045 Remove unsupported cpu attribute from cc_toolchains.
6046```
6047
6048Adding a commit which reintroduces the implementation for cc_common.compile and cc_common.link https://github.com/bazelbuild/bazel/issues/8226
Bazel Release Systemcccced12019-05-07 13:52:56 -04006049
Bazel Release System2ab38662019-05-01 17:41:28 -04006050## Release 0.25.0 (2019-05-01)
6051
6052```
6053Baseline: 03662462941953dad23af88693804b8b1d4430b9
6054
6055Cherry picks:
6056
6057 + 3f7f255f9a8345b8898e3953e7e53d68106cc63d:
6058 Windows: fix native test wrapper's arg. escaping
6059 + afeb8d0b7fef619159fc8fbaaeb8bd41dd2619bd:
6060 Flip --incompatible_windows_escape_jvm_flags
6061 + 4299b6549cbc1b3e4494c91ed2f51d49b14c7980:
6062 Sort DirectoryNode children to ensure validity.
6063 + 231270c67d5aa771462245531fa9b2ee7d3d0ae8:
6064 Conditionally use deprecated signature for initWithContentsOfURL
6065 + 75a3a531b08e727ade4fa3cb0a574bd142727cce:
6066 Add http_archive entries for testing with various JDK versions.
6067 + 4a6354a3a5ca23583f8b62e3e439a04ce75b863f:
6068 Now that ubuntu1804 uses JDK 11, remove explicit
6069 ubuntu1804_java11 tests.
6070 + ae102fbde3c1ff87e4f67007a275fb30792a4e8d:
6071 Fix wrong name of ubuntu1804_javabase9 task.
6072 + 0020a97fdc20ca099ec6386771b20d3236f9890d:
6073 Remove @executable_path/Frameworks from rpaths
6074 + 130f86ded1ce84f959f0b78c065211902faed546:
6075 Download stderr/stdout to a temporary FileOutErr
6076```
6077
6078Incompatible changes:
6079
6080 - (Starlark rules) The legacy "py" provider can no longer be passed
6081 to or produced by native Python rules; use
6082 [PyInfo](https://docs.bazel.build/versions/master/skylark/lib/PyIn
6083 fo.html) instead. See
6084 [#7298](https://github.com/bazelbuild/bazel/issues/7298) for more
6085 information.
6086 - (Python rules) The `default_python_version` attribute of the
6087 `py_binary` and `py_test` rules has been renamed to
6088 `python_version`. Also, the `--force_python` flag has been
6089 renamed to `--python_version`. See
6090 [#7308](https://github.com/bazelbuild/bazel/issues/7308) for more
6091 information.
6092 - (Python rules) The python version now changes to whatever version
6093 is specified in a `py_binary` or `py_test`'s `python_version`
6094 attribute, instead of being forced to the value set by a command
6095 line flag. You can temporarily revert this change with
6096 `--incompatible_allow_python_version_transitions=false`. See
6097 [#7307](https://github.com/bazelbuild/bazel/issues/7307) for more
6098 information.
6099 - --incompatible_disable_third_party_license_checking` is enabled
6100 by default
6101 - Introduced --incompatible_use_python_toolchains, which supersedes
6102 --python_top/--python_path. See #7899 and #7375 for more
6103 information.
6104 - Python 3 is now the default Python version (for `py_binary` and
6105 `py_test` targets that don't specify the `python_version`
6106 attribute). Targets that are built for Python 3 will no longer
6107 have their output put in a separate `-py3` directory; instead
6108 there is now a separate `-py2` directory for Python 2 targets.
6109 See #7359 and #7593 for more information.
6110 - objc_library resource attributes are now disabled by default.
6111 Please migrate them to data instead. See
6112 https://github.com/bazelbuild/bazel/issues/7594 for more info.
6113 - Flip --incompatible_windows_escape_jvm_flags to true. See
6114 https://github.com/bazelbuild/bazel/issues/7486
6115
6116New features:
6117
6118 - genrules now support a $(RULEDIR) variable that resolves to the
6119 directory where the outputs of the rule are put.
6120 - Added --incompatible_windows_native_test_wrapper flag: enables
6121 using the Bash-less test wrapper on Windows. (No-op on other
6122 platforms.)
6123
6124Important changes:
6125
6126 - incompatible_use_jdk11_as_host_javabase: makes JDK 11 the default
6127 --host_javabase for remote jdk
6128 (https://github.com/bazelbuild/bazel/issues/7219)
6129 - Makes genquery somepath output deterministic.
6130 - Tristate attributes of native rules now reject True/False (use
6131 1/0)
6132 - Rollback of "Tristate attributes of native rules now reject
6133 True/False (use 1/0)"
6134 - Tristate attributes of native rules now reject True/False (use
6135 1/0)
6136 - Added -incompatible_do_not_split_linking_cmdline flag. See #7670
6137 - Tristate attributes of native rules now temporarily accept
6138 True/False again
6139 - `--incompatible_disable_legacy_crosstool_fields` has been flipped
6140 (https://github.com/bazelbuild/bazel/issues/6861)
6141 `--incompatible_disable_expand_if_all_available_in_flag_set` has
6142 been flipped (https://github.com/bazelbuild/bazel/issues/7008)
6143 - `--incompatible_disable_legacy_crosstool_fields` has been flipped
6144 (https://github.com/bazelbuild/bazel/issues/6861)
6145 `--incompatible_disable_expand_if_all_available_in_flag_set...
6146 RELNOTES: None.
6147 - --incompatible_no_transitive_loads is enabled by default.
6148 - Makes TreeArtifact deterministic.
6149 - --incompatible_no_transitive_loads is enabled by default.
6150 - Android NDK C++ toolchain is now configured in Starlark. This
6151 should be a backwards compatible change, but in case of bugs
6152 blame unknown commit.
6153 - `--incompatible_disable_legacy_crosstool_fields` has been flipped
6154 (https://github.com/bazelbuild/bazel/issues/6861)
6155 `--incompatible_disable_expand_if_all_available_in_flag_set` has
6156 been flipped (https://github.com/bazelbuild/bazel/issues/7008)
6157 - --incompatible_no_transitive_loads is enabled by default.
6158 - --incompatible_bzl_disallow_load_after_statement is enabled
6159 - Added `--incompatible_require_ctx_in_configure_features`, see
6160 https://github.com/bazelbuild/bazel/issues/7793 for details.
6161 - Flag --incompatible_merge_genfiles_directory is flipped. This
6162 removes the directory `bazel-genfiles` in favor of `bazel-bin`.
6163 - previously deprecated flag --experimental_remote_spawn_cache was
6164 removed
6165 - `--incompatible_disallow_load_labels_to_cross_package_boundaries`
6166 is enabled by default
6167 - Fix an issue where the Android resource processor did not surface
6168 errors from aapt2 compile and link actions.
6169 - --incompatible_no_attr_license is enabled by default
6170 - `--incompatible_disable_crosstool_file` has been flipped
6171 (https://github.com/bazelbuild/bazel/issues/7320)
6172 - A new flag `--incompatible_string_join_requires_strings` is
6173 introduced. The sequence argument of `string.join` must contain
6174 only string elements.
6175 - --incompatible_symlinked_sandbox_expands_tree_artifacts_in_runfile
6176 s_tree has been flipped
6177 - Incompatible flag `--incompatible_disable_legacy_cc_provider` has
6178 been flipped (see https://github.com/bazelbuild/bazel/issues/7036
6179 for details).
6180 - Don't drop the analysis cache when the same --define flag is set
6181 multiple times and the last value is the same (e.g. if the
6182 current invocation was run with "--define foo=bar" and the
6183 previous one was run with "--define foo=baz --define foo=bar").
6184 - The --incompatible_disable_genrule_cc_toolchain_dependency flag
6185 has been flipped (see
6186 https://github.com/bazelbuild/bazel/issues/6867 for details).
6187 - Incompatible change
6188 `--incompatible_remove_cpu_and_compiler_attributes_from_cc_toolcha
6189 in` has been flipped (see
6190 https://github.com/bazelbuild/bazel/issues/7075 for details).
6191 - --noexperimental_java_coverage is a no-op flag.
6192 - --experimental_java_coverage/--incompatible_java_coverage flag was
6193 removed. See #7425.
6194 - incompatible_use_toolchain_providers_in_java_common: pass
6195 JavaToolchainInfo and JavaRuntimeInfo providers to java_common
6196 APIs instead of configured targets
6197 (https://github.com/bazelbuild/bazel/issues/7186.)
6198 - --incompatible_remote_symlinks has been flipped. The remote
6199 caching and execution protocol will now represent symlinks in
6200 outputs as such. See
6201 https://github.com/bazelbuild/bazel/issues/7917 for more details.
6202 - Bazel is now ~20MiB smaller, from unbundling the Android rules'
6203 runtime dependencies.
6204
6205This release contains contributions from many people at Google, as well as Andreas Herrmann, Andrew Suffield, Andy Scott, Benjamin Peterson, Ed Baunton, George Gensure, Ian McGinnis, Ity Kaul, Jingwen Chen, John Millikin, Keith Smiley, Marwan Tammam, Mike Fourie, Oscar Bonilla, perwestling, petros, Robert Sayre, Ryan Beasley, silvergasp, Stanimir Mladenov, Travis Cline, Vladimir Chebotarev, ??.
6206
Bazel Release System7f8bc5f2019-04-02 12:26:16 -04006207## Release 0.24.1 (2019-04-02)
6208
6209```
6210Baseline: 235e76b0e756d05599a6cbe1663ff8e13df84a86
6211
6212Cherry picks:
6213
6214 + badd82e4c5cda7b3232481e1c63a5550ac898cd8:
6215 Automated rollback of commit
6216 1b4c37c38804559b5c1ade6f9c93501875e231b0.
6217 + 33e571939085dd158422e1b3503cfc738e0a3165:
6218 Fix the Python version select() mechanism to handle
6219 PY3-as-default
6220 + 56366ee3a73e2c92b2fa36a9840478202b9618ca:
6221 Set non-empty values for msvc_env_* when VC not installed
6222 + 22b3fbf4800113df51d603d943bd9eb9517ef904:
6223 Windows, test wrapper: fix broken integration test
6224 + f14d447cb56aee563f6e686b8f5b086a3bb55d47:
6225 Add whitelist file for starlark transitions
6226 + d99bc478db1f3414b4f6cd3dc14ca70aacf6b375:
6227 Update BUILD
6228 + 3529ad7ccf0c26dfb20a9d67b9d96de15f309f8b:
6229 Rename tools/function_transition_whitelist/BUILD to
6230 tools/whitelists/function_transition_whitelist/BUILD
6231 + de0612ad3ef7cc8c44069261befdeb0d15b97c10:
6232 Update bazel_toolchains to latest release and add toolchain
6233 config target for BuildKite CI (rbe_ubuntu1604)
6234 + 3e660ad178926648e8e10e2ee7a1a30b12f9b3d1:
6235 Automated rollback of commit
6236 087734009801242b83655efb863b2d5a761ae3dc.
6237 + 314cf1f9e4b332955c4800b2451db4e926c3e092:
6238 Pass -undefined dynamic_lookup to dynamic library linking
6239 actions on Mac
6240 + fc586a86b614667a21e5a01aea3544ac0338de78:
6241 Move cc_flags target into @bazel_tools//tools/cpp.
6242 + ea1703b30f9ac43a0c3262f5729c34658ed8d473:
6243 C++: Fix crash reported in #7721
6244 + 803801d1494f06f0ce977a1f2241ef6a4d85df09:
6245 Pass execution info to xml generating spawn. Fixes #7794
6246 + f092ec388a4b58788285b928c86f0f81561d4be4:
6247 Release 0.24.0 (2019-03-26)
6248 + c56c489119e6587975964c44ceb9e429ad950736:
6249 Wrap StatusRuntimeExceptions from GrpcRemoteCache
6250```
6251
6252Baseline: f092ec388a4b58788285b928c86f0f81561d4be4
6253
6254Cherrypicks:
6255+ c56c489119e6587975964c44ceb9e429ad950736: Wrap StatusRuntimeExceptions from GrpcRemoteCache
6256
Bazel Release System4f5c17c2019-03-26 12:08:43 -04006257## Release 0.24.0 (2019-03-26)
Bazel Release System0e4525f2019-03-11 17:43:39 +01006258
6259```
Bazel Release System4f5c17c2019-03-26 12:08:43 -04006260Baseline: 235e76b0e756d05599a6cbe1663ff8e13df84a86
Bazel Release System0e4525f2019-03-11 17:43:39 +01006261
6262Cherry picks:
6263
Bazel Release System4f5c17c2019-03-26 12:08:43 -04006264 + badd82e4c5cda7b3232481e1c63a5550ac898cd8:
6265 Automated rollback of commit
6266 1b4c37c38804559b5c1ade6f9c93501875e231b0.
6267 + 33e571939085dd158422e1b3503cfc738e0a3165:
6268 Fix the Python version select() mechanism to handle
6269 PY3-as-default
Bazel Release System0e4525f2019-03-11 17:43:39 +01006270 + 56366ee3a73e2c92b2fa36a9840478202b9618ca:
6271 Set non-empty values for msvc_env_* when VC not installed
Bazel Release System4f5c17c2019-03-26 12:08:43 -04006272 + 22b3fbf4800113df51d603d943bd9eb9517ef904:
6273 Windows, test wrapper: fix broken integration test
6274 + f14d447cb56aee563f6e686b8f5b086a3bb55d47:
6275 Add whitelist file for starlark transitions
6276 + d99bc478db1f3414b4f6cd3dc14ca70aacf6b375:
6277 Update BUILD
6278 + 3529ad7ccf0c26dfb20a9d67b9d96de15f309f8b:
6279 Rename tools/function_transition_whitelist/BUILD to
6280 tools/whitelists/function_transition_whitelist/BUILD
6281 + de0612ad3ef7cc8c44069261befdeb0d15b97c10:
6282 Update bazel_toolchains to latest release and add toolchain
6283 config target for BuildKite CI (rbe_ubuntu1604)
6284 + 3e660ad178926648e8e10e2ee7a1a30b12f9b3d1:
6285 Automated rollback of commit
6286 087734009801242b83655efb863b2d5a761ae3dc.
6287 + 314cf1f9e4b332955c4800b2451db4e926c3e092:
6288 Pass -undefined dynamic_lookup to dynamic library linking
6289 actions on Mac
6290 + fc586a86b614667a21e5a01aea3544ac0338de78:
6291 Move cc_flags target into @bazel_tools//tools/cpp.
6292 + ea1703b30f9ac43a0c3262f5729c34658ed8d473:
6293 C++: Fix crash reported in #7721
6294 + 803801d1494f06f0ce977a1f2241ef6a4d85df09:
6295 Pass execution info to xml generating spawn. Fixes #7794
Bazel Release System0e4525f2019-03-11 17:43:39 +01006296```
6297
Bazel Release System4f5c17c2019-03-26 12:08:43 -04006298Incompatible changes:
Bazel Release System0e4525f2019-03-11 17:43:39 +01006299
Bazel Release System4f5c17c2019-03-26 12:08:43 -04006300 - Added --incompatible_py3_is_default to test switching the default
6301 Python version to PY3 for py_binary/py_test targets that do not
6302 specify a version. See #7359.
6303 - //tools/cmd_line_differ has been renamed to //tools/aquery_differ
6304 & can now compare (in addition to command lines) inputs of
6305 actions given 2 aquery results.
6306 - java_(mutable_|)proto_library: removed strict_deps attribute.
6307 - The flag --incompatible_list_based_execution_strategy_selection
6308 was added and is used to ease the migration to the new style of
6309 specifying
6310 execution strategy selection and fallback behavior. The
6311 documentation for
6312 this flag is here: https://github.com/bazelbuild/bazel/issues/7480
6313 - Added --incompatible_py2_outputs_are_suffixed, for switching the
6314 bazel-bin symlink to point to Python 3 outputs instead of Python
6315 2 outputs. See
6316 [#7593](https://github.com/bazelbuild/bazel/issues/7593).
Bazel Release Systemf28ff222019-03-04 11:12:24 +01006317
Bazel Release System4f5c17c2019-03-26 12:08:43 -04006318New features:
Bazel Release Systemf28ff222019-03-04 11:12:24 +01006319
Bazel Release System4f5c17c2019-03-26 12:08:43 -04006320 - Make actions.args() object chainable.
6321 - Added --incompatible_windows_style_arg_escaping flag: enables
6322 correct subprocess argument escaping on Windows. (No-op on other
6323 platforms.)
6324 - Added --incompatible_windows_escape_jvm_flags flag: enables
6325 correct java_binary.jvm_flags and java_test.jvm_flags
6326 tokenization and escaping on Windows. (No-op on other platforms.)
Bazel Release Systemf28ff222019-03-04 11:12:24 +01006327
Bazel Release System4f5c17c2019-03-26 12:08:43 -04006328Important changes:
Bazel Release Systemf28ff222019-03-04 11:12:24 +01006329
Bazel Release System4f5c17c2019-03-26 12:08:43 -04006330 - Allow running aquery against the current state of Skyframe
6331 - Added support for the "navigation" resource directory to Android
6332 resource processing in Bazel. This is used by the Navigation
6333 Architecture Component.
6334 - --incompatible_disable_runtimes_filegroups was flipped
6335 (https://github.com/bazelbuild/bazel/issues/6942)
6336 - Incompatible flag `--incompatible_linkopts_in_user_link_flags`
6337 has been flipped (https://github.com/bazelbuild/bazel/issues/6826)
6338 - Incompatible flag `--incompatible_dont_emit_static_libgcc` has
6339 been flipped (https://github.com/bazelbuild/bazel/issues/6825)
6340 - --incompatible_disallow_filetype is enabled by default.
6341 - Fixed issue where exceptions and stacktraces were silently
6342 swallowed in the Android resource processing pipeline.
6343 - `--incompatible_disable_expand_if_all_available_in_flag_set` has
6344 been flipped (https://github.com/bazelbuild/bazel/issues/7008)
6345 - --incompatible_disallow_dict_plus is enabled by default
6346 - Adds --incompatible_disable_objc_library_resources to disable
6347 resource attributes in objc_library. Please migrate these
6348 attributes to `data` instead.
6349 - --incompatible_disallow_old_style_args_add is enabled by default.
6350 - Using the `native` module in BUILD files is deprecated. It will
6351 be forbidden with --incompatible_disallow_native_in_build_file.
6352 - (Python rules) PyRuntimeInfo is exposed to Starlark, making it
6353 possible for Starlark rules to depend on or imitate `py_runtime`.
6354 The `files` attribute of `py_runtime` is no longer mandatory.
6355 - incompatible_use_toolchain_providers_in_java_common: pass
6356 JavaToolchainInfo and JavaRuntimeInfo providers to java_common
6357 APIs instead of configured
6358 targetshttps://github.com/bazelbuild/bazel/issues/7186.
6359 - is_using_fission crosstool variable is now exposed in all compile
6360 actions when fission is active (it used to be exposed only for
6361 linking actions).
6362 - incompatible_use_toolchain_providers_in_java_common: pass
6363 JavaToolchainInfo and JavaRuntimeInfo providers to java_common
6364 APIs instead of configured
6365 targetshttps://github.com/bazelbuild/bazel/issues/7186.
6366 - `py_runtime` gains a `python_version` attribute for specifying
6367 whether it represents a Python 2 or 3 interpreter.
6368 - `--incompatible_java_coverage` is enabled by default.
6369 - Starlark rules can safely declare attributes named "licenses"
6370 - When using
6371 --incompatible_list_based_execution_strategy_selection, Bazel
6372 will use remote execution by default (if you specify
6373 --remote_executor), otherwise persistent workers (if the action
6374 supports it), otherwise sandboxed local execution (if the action
6375 and platform supports it) and at last unsandboxed local
6376 execution. The flags --spawn_strategy and --strategy continue to
6377 work as before - this only sets new defaults for the case where
6378 you don't specify these flags.
6379 - Set default value of --incompatible_remap_main_repo to true.
6380 - Set default value of --incompatible_remap_main_repo to true.
6381
6382This release contains contributions from many people at Google, as well as Andrew Suffield, Brandon Lico, Chris Eason, Clint Harrison, Ed Schouten, Garrett Hopper, George Gensure, Greg, John Millikin, Julie, Keith Smiley, Laurent Le Brun, Ryan Beasley, Shmuel H, Travis Cline, Vladimir Chebotarev.
Bazel Release Systemf28ff222019-03-04 11:12:24 +01006383
Bazel Release Systemed104862019-02-26 18:36:00 +01006384## Release 0.23.0 (2019-02-26)
6385
6386```
6387Baseline: 441fd75d0047f8a998d784c557736ab9075db893
6388
6389Cherry picks:
6390
6391 + 6ca7763669728253606578a56a205bca3ea883e9:
6392 Fix a typo
6393 + 2310b1c2c8b2f32db238f667747e7d5672480f4a:
6394 Ignore SIGCHLD in test setup script
6395 + f9eb1b56706f91063e9d080b850fa56964e77324:
6396 Complete channel initialization in the event loop
6397```
6398
6399Incompatible changes:
6400
6401 - //src:bazel uses the minimal embedded JDK, if you want to
6402 avoid the extra steps of minimizing the JDK, use //src:bazel-dev
6403 instead.
6404 - //src:bazel uses the minimal embedded JDK, if you want to
6405 avoid the extra steps of building bazel with the minimized JDK,
6406 use //src:bazel-dev
6407 instead.
6408 - The default value of --host_platform and --platforms will be
6409 changed to not be dependent on the configuration. This means
6410 that setting
6411 --cpu or --host_cpu will not affect the target or host platform.
6412 - Toolchain resolution for cc rules is now enabled via an
6413 incompatible flag, --incompatible_enable_cc_toolchain_resolution.
6414 The previous
6415 flag, --enabled_toolchain_types, is deprecated and will be
6416 removed.
6417 - java_(mutable_|)proto_library: removed strict_deps attribute.
6418 - Python rules will soon reject the legacy "py" struct provider
6419 (preview by enabling --incompatible_disallow_legacy_py_provider).
6420 Upgrade rules to use PyInfo instead. See
6421 [#7298](https://github.com/bazelbuild/bazel/issues/7298).
6422 - java_(mutable_|)proto_library: removed strict_deps attribute.
6423 - Two changes to native Python rules: 1) `default_python_version`
6424 and `--force_python` are deprecated; use `python_version` and
6425 `--python_version` respectively instead. You can preview the
6426 removal of the deprecated names with
6427 --incompatible_remove_old_python_version_api. See
6428 [#7308](https://github.com/bazelbuild/bazel/issues/7308). 2) The
6429 version flag will no longer override the declared version of a
6430 `py_binary` or `py_test` target. You can preview this new
6431 behavior with --incompatible_allow_python_version_transitions.
6432 See [#7307](https://github.com/bazelbuild/bazel/issues/7307).
6433
6434Important changes:
6435
6436 - There is a new flag available
6437 `--experimental_java_common_create_provider_enabled_packages`
6438 that acts as a whitelist for usages of
6439 `java_common.create_provider`. The constructor will be deprecated
6440 in Bazel 0.23.
6441 - [#7024] Allow chaining of the same function type in aquery.
6442 - Introduces --local_{ram,cpu}_resources, which will take the place
6443 of --local_resources.
6444 - [#6930] Add documentation for the aquery command.
6445 - Incompatible flag `--incompatible_dont_emit_static_libgcc` has
6446 been flipped (https://github.com/bazelbuild/bazel/issues/6825)
6447 - Incompatible flag `--incompatible_linkopts_in_user_link_flags`
6448 has been flipped (https://github.com/bazelbuild/bazel/issues/6826)
6449 - Flag --incompatible_range_type is removed.
6450 - Flag --incompatible_disallow_slash_operator is removed.
6451 - Flag --incompatible_disallow_conflicting_providers is removed.
6452 - `--incompatible_disallow_data_transition` is now enabled by
6453 default
6454 - Allow inclusion of param files in aquery output
6455 - [#6985] Add test to verify aquery's behavior for Cpp action
6456 templates.
6457 - --incompatible_require_feature_configuration_for_pic was flipped
6458 (https://github.com/bazelbuild/bazel/issues/7007).
6459 - Also ignore module-info.class in multi-version Jars
6460 - objc_framework has been deleted. Please refer to
6461 apple_dynamic_framework_import and apple_static_framework_import
6462 rules available in
6463 [rules_apple](https://github.com/bazelbuild/rules_apple/blob/maste
6464 r/doc/rules-general.md)
6465 - --test_sharding_strategy=experimental_heuristic is no more
6466 - objc_bundle_library has been removed. Please migrate to
6467 rules_apple's
6468 [apple_resource_bundle](https://github.com/bazelbuild/rules_apple/
6469 blob/master/doc/rules-resources.md#apple_resource_bundle).
6470 - You can now use the attribute `aapt_version` or the flag
6471 `--android_aapt` to pick the aapt version for android_local_test
6472 tests
6473 - In --keep_going mode, Bazel now correctly returns a non-zero exit
6474 code when encountering a package loading error during target
6475 pattern parsing of patterns like "//foo:all" and "//foo/...".
6476 - The default value for --incompatible_strict_action_env has been
6477 flipped to 'false' again, as we discovered breakages for local
6478 execution users. We'll need some more time to figure out the best
6479 way to make this work for local and remote execution. Follow
6480 https://github.com/bazelbuild/bazel/issues/7026 for more details.
6481 - Locally-executed spawns tagged "no-cache" no longer upload their
6482 outputs to the remote cache.
6483 - Introduces --host_compiler flag to allow setting a compiler for
6484 host compilation when --host_crosstool_top is specified.
6485 - --incompatible_expand_directories is enabled by default
6486 - [aquery] Handle the case of aspect-on-aspect.
6487 - Fixed a longstanding bug in the http remote cache where the value
6488 passed to
6489 --remote_timeout would be interpreted as milliseconds instead of
6490 seconds.
6491 - Enable --incompatible_use_jdk10_as_host_javabase by default, see
6492 https://github.com/bazelbuild/bazel/issues/6661
6493 - Add --incompatible_use_jdk11_as_host_javabase: makes JDK 11 the
6494 default --host_javabase for remote jdk
6495 (https://github.com/bazelbuild/bazel/issues/7219)
6496 - Highlight TreeArtifact in aquery text output.
6497 - Locally-executed spawns tagged "no-cache" no longer upload their
6498 outputs to the remote cache.
6499 - java_common APIs now accept JavaToolchainInfo and JavaRuntimeInfo
6500 instead of configured targets for java_toolchain and java_runtime
6501 - cc_common.create_cc_toolchain_config_info is stable and available
6502 for production use
6503 - incompatible_use_toolchain_providers_in_java_common: pass
6504 JavaToolchainInfo and JavaRuntimeInfo providers to java_common
6505 APIs instead of configured targets
6506 (https://github.com/bazelbuild/bazel/issues/7186)
6507 - --incompatible_strict_argument_ordering is enabled by default.
6508 - Bazel now supports reading cache hits from a repository cache,
6509 even if it doesn't have write access to the cache.
6510 - Adding arm64e to OSX CROSSTOOL.
6511 - Ignore package-level licenses on config_setting.
6512 - Add an optional output_source_jar parameter to java_common.compile
6513 - --incompatible_disable_objc_provider_resources is now enabled by
6514 default. This disables ObjcProvider's fields related to resource
6515 processing.
6516 - Explicitly set https.protocols and exclude TLSv1.3.
6517 - Bazel now validates that JAVA_HOME points to a valid JDK and
6518 falls back to auto-detection by looking up the path of `javac`.
6519 - Upgrade the embedded JDK version to 11.0.2.
6520 - Added --incompatible_disable_crosstool_file
6521 (https://github.com/bazelbuild/bazel/issues/7320)
6522 - --incompatible_disable_objc_provider_resources is now enabled by
6523 default. This disables ObjcProvider's fields related to resource
6524 processing.
6525 - --incompatible_disable_tools_defaults_package has been flipped.
6526 - For tests that do not generate a test.xml, Bazel now uses a
6527 separate action to generate one; this results in minor
6528 differences in the generated test.xml, and makes the generation
6529 more reliable overall.
6530 - incompatible_generate_javacommon_source_jar: java_common.compile
6531 now always generates a source jar, see
6532 https://github.com/bazelbuild/bazel/issues/5824.
6533 - New incompatible flag
6534 --incompatible_disallow_struct_provider_syntax removes the
6535 ability for rule implementation functions to return struct. Such
6536 functions should return a list of providers instead. Migration
6537 tracking: https://github.com/bazelbuild/bazel/issues/7347
6538
6539This release contains contributions from many people at Google, as well as Benjamin Peterson, Ed Schouten, erenon, George Gensure, Greg Estren, Igal Tabachnik, Ittai Zeidman, Jannis Andrija Schnitzer, John Millikin, Keith Smiley, Kelly Campbell, Max Vorobev, nicolov, Robin Nabel.
6540
Bazel Release System2f82b332019-01-28 13:54:53 +01006541## Release 0.22.0 (2019-01-28)
6542
6543```
6544Baseline: deb028e3fb30b4e2953df16f35ab1f55a08ea8fa
6545
6546Cherry picks:
6547
6548 + a3a5975dca3ad04c19dc7d063fcf490a8cd612fd:
6549 Fix a race condition in remote cache
6550 + b8d0e1b05c225a4b943ce498194d069d18093d9a:
6551 Use a new GitHub token and KMS key for the release process.
6552 + 3759e3895503aa2bbd6943c5b568b8c050b9448f:
6553 remote: fix unexpected IO error (not a directory)
6554 + 4473bb1a9ec4282aa8497b86580d68e82415df4a:
6555 Fix a race condition in Bazel's Windows process management.
6556 + 9137fb940886aa516f32ca8a36feccedb545c99b:
6557 undo flag flip of --incompatible_strict_action_env
6558 + 12ab12e80ad1c9a3510aa4bbfdf3fddafc0bca00:
6559 Revert "Enabling Bazel to generate input symlinks as defined by
6560 RE AP?
6561 + 6345c747d8cb1819e70c853becadbf8a989decf1:
6562 Automated rollback of commit
6563 30536baa4a410d8c0a7adab5cd58cd8a2ac7e46c.
6564```
6565
Bazel Release System2f82b332019-01-28 13:54:53 +01006566
Bazel Release System2f82b332019-01-28 13:54:53 +01006567
Klaus Aehligcb59bd22019-01-28 14:20:37 +01006568The Bazel team is happy to announce a new release of Bazel,
6569[Bazel 0.22.0](https://github.com/bazelbuild/bazel/releases/tag/0.22.0).
Bazel Release System2f82b332019-01-28 13:54:53 +01006570
Klaus Aehligcb59bd22019-01-28 14:20:37 +01006571Baseline: deb028e3fb30b4e2953df16f35ab1f55a08ea8fa
Bazel Release System2f82b332019-01-28 13:54:53 +01006572
Klaus Aehligcb59bd22019-01-28 14:20:37 +01006573### Breaking changes
6574
6575- [`--incompatible_string_is_not_iterable`](https://github.com/bazelbuild/bazel/issues/5830)
6576
6577### Upcoming changes
6578
6579This release is a [migration window for the following changes](https://github.com/bazelbuild/bazel/labels/migration-0.22).
6580
6581- [`--incompatible_disallow_data_transition`](https://github.com/bazelbuild/bazel/issues/6153)
6582- [`--incompatible_dont_emit_static_libgcc`](https://github.com/bazelbuild/bazel/issues/6825)
6583- [`--incompatible_linkopts_in_user_link_flags`](https://github.com/bazelbuild/bazel/issues/6826)
6584- [`--incompatible_disable_legacy_crosstool_fields`](https://github.com/bazelbuild/bazel/issues/6861)
6585- [`--incompatible_use_aapt2_by_default`](https://github.com/bazelbuild/bazel/issues/6907)
6586- [`--incompatible_disable_runtimes_filegroups`](https://github.com/bazelbuild/bazel/issues/6942)
6587- [`--incompatible_disable_legacy_cc_provider`](https://github.com/bazelbuild/bazel/issues/7036)
6588- [`--incompatible_require_feature_configuration_for_pic`](https://github.com/bazelbuild/bazel/issues/7007)
6589- [`--incompatible_disable_expand_if_all_available_in_flag_set`](https://github.com/bazelbuild/bazel/issues/7008)
6590- [`--incompatible_disable_legacy_proto_provider`](https://github.com/bazelbuild/bazel/issues/7152)
6591- [`--incompatible_disable_proto_source_root`](https://github.com/bazelbuild/bazel/issues/7153)
6592
6593### General Changes
6594
6595- https://docs.bazel.build now supports versioned
6596 documentation. Use the selector at the top of the navigation bar
6597 to switch between documentation for different Bazel releases.
6598
6599- set `projectId` in all `PublishBuildToolEventStreamRequest`
6600
6601### Android
6602
6603- mobile-install now works with aapt2. Try it out with `bazel
6604 mobile-install --android_aapt=aapt2 //my:target`
6605
6606- Fixed issues with mobile-install v1 when deploying to Android 9 Pie
6607 devices. https://github.com/bazelbuild/bazel/issues/6814
6608
6609- Fixed issue where error messages from Android manifest merging
6610 actions were not fully propagated.
6611
6612- New incompatible change flag `--incompatible_use_aapt2_by_default`
6613 for defaulting to aapt2 in Android builds has been added. To build with
6614 aapt2 today, pass the flag
6615 `--incompatible_use_aapt2_by_default=true` or
6616 `--android_aapt=aapt2`, or set the `aapt_version` to `aapt2` on
6617 your `android_binary` or `android_local_test` target.
6618
6619- Fixed mobile-install v1 error when installing an app with native
6620 libraries onto an Android 9 (Pie) device. See
6621 https://github.com/bazelbuild/examples/issues/77
6622
6623- Fixed a mobile-install bug where `arm64-v8a` libraries were not
6624 deployed correctly on `arm64` devices. This was done by enabling
6625 incremental native lib deployment by default. A previously
6626 undocumented `--android_incremental_native_libs` flag is removed,
6627 and is now the regular behavior. See
6628 https://github.com/bazelbuild/bazel/issues/2239
6629
6630### Apple
6631
6632- The `objc_bundle` rule has been removed. Please migrate to rules_apple's
6633 [apple_bundle_import](https://github.com/bazelbuild/rules_apple/bl
6634 ob/master/doc/rules-resources.md#apple_bundle_import).
6635
6636- The `apple_stub_binary` rule has been deleted.
6637
6638- The `--xbinary_fdo` option that passes xbinary profiles has been added.
6639
6640### C++
6641
6642- `cc_toolchain.(static|dynamic)_runtime_libs` attributes are now optional
6643
6644### Packaging
6645
6646- `build_tar.py` in `tools/build_defs/pkg` now supports a JSON manifest
6647 that can be used to add paths that have symbols that can't be
6648 specified via the command line
6649
6650### Query
6651
6652- Filtering of inputs, outputs, and mnemonic filtering have been added to
6653 aquery.
6654
6655- The aquery and cquery query2 tests have been open-sourced.
6656
6657- The Bazel query how-to recommends ":*" instead of ":all", because "all" might
6658 be the name of a target.
6659
6660### Testing
6661
6662- The `--runs_per_test` has been placed in the TESTING documentation category.
6663
6664- A a clarifying message has been added to test case summary output when all
6665 test cases pass but the target fails.
6666
6667### Contributors
6668
6669This release contains contributions from many people at Google, as well as
6670Benjamin Peterson, Dave Lee, George Gensure, Gert van Dijk, Gustavo Storti
6671Salibi, Keith Smiley, Loo Rong Jie, Lukasz Tekieli, Mikhail Mazurskiy, Thi,
6672Travis Cline, Vladimir Chebotarev, and Yannic.
Bazel Release System2f82b332019-01-28 13:54:53 +01006673
Bazel Release Systema189d422018-12-19 13:53:11 +01006674## Release 0.21.0 (2018-12-19)
6675
6676```
6677Baseline: cb9b2afbba3f8d3a1db8bf68e65d06f1b36902f5
6678
6679Cherry picks:
6680
6681 + 12b96466ee0d6ab83f7d4cd24be110bb5021281d:
6682 Windows, test wrapper: rename the associated flag
6683 + 7fc967c4d6435de2bb4e34aac00ca2e499f55fca:
6684 Use a fixed thread pool in ByteStreamBuildEventArtifactUploader
6685 + 798b9a989aa793655d29504edb5fb85f3143db84:
6686 Add --build_event_upload_max_threads option
6687 + dbe05df23ccf4c919379e0294e0701fd3f66739c:
6688 Update the version of skylib bundled in the distfile
6689```
6690
6691Incompatible changes:
6692
6693 - The --experimental_stl command line option is removed.
6694 - aquery defaults to human readable output format.
6695
6696New features:
6697
6698 - repository_ctx.download and repository_ctx.download_and_extract
6699 now return a struct.
6700 - Android Databinding v2 can be enabled with
6701 --experimental_android_databinding_v2.
6702
6703Important changes:
6704
6705 - The deprecated and unmaintained Docker rules in
6706 tools/build_defs/docker were removed. Please use
6707 https://github.com/bazelbuild/rules_docker instead.
6708 - The new --upload_query_output_using_bep query/cquery/aquery flag
6709 causes query outputs to be uploaded via BEP.
6710 - New incompatible flag --incompatible_strict_argument_ordering
6711 - --strict_android_deps and --strict_java_deps were renamed to
6712 --experimental_strict_java_deps
6713 - config_settings that select on "compiler" value instead of values
6714 = {"compiler" : "x"} should use flag_values =
6715 {"@bazel_tools//tools/cpp:compiler": "x"}.
6716 - The new --upload_query_output_using_bep query/cquery/aquery flag
6717 causes query outputs to be uploaded via BEP.
6718 - Turn on --incompatible_disable_sysroot_from_configuration
6719 - We revamped our Android with Bazel tutorial! Check it out
6720 [here](https://docs.bazel.build/versions/master/tutorial/android-a
6721 pp.html).
6722 - --incompatible_disallow_slash_operator is now on by default
6723 - Enable --experimental_check_desugar_deps by default. This flag
6724 rules out several types of invalid Android builds at compile-time.
6725 - The --max_config_changes_to_show option lists the names of
6726 options which
6727 have changed and thus caused the analysis cache to be dropped.
6728 - The --experimental_strict_action_env option has been renamed to
6729 --incompatible_strict_action_env and is now on by default. This
6730 means Bazel will no longer use the client's PATH and
6731 LD_LIBRARY_PATH environmental variables in the default action
6732 environment. If the old behavior is desired, pass
6733 --action_env=PATH and --action_env=LD_LIBRARY_PATH.
6734 --noincompatible_strict_action_env will also temporarily restore
6735 the old behavior. However, as --action_env is a more general and
6736 explicit way to pass client environmental variables into actions,
6737 --noincompatible_strict_action_env will eventually be deprecated
6738 and removed. See #6648 for more details.
6739 - XCRUNWRAPPER_LABEL has been removed. If you used this value
6740 before, please use @bazel_tools//tools/objc:xcrunwrapper instead.
6741 - --incompatible_static_name_resolution is no unable by default
6742 - We will phase out --genrule_strategy in favor of
6743 --strategy=Genrule=<value> (for genrules) or
6744 --spawn_strategy=<value> (for all actions).
6745 - --incompatible_package_name_is_a_function is now enabled by
6746 default
6747 - Dynamic execution is now available with
6748 --experimental_spawn_strategy. Dynamic execution allows a build
6749 action to run locally and remotely simultaneously, and Bazel
6750 picks the fastest action. This provides the best of both worlds:
6751 faster clean builds than pure local builds, and faster
6752 incremental builds than pure remote builds.
6753 - --incompatible_package_name_is_a_function is now enabled by
6754 default
6755 - New incompatible flag --incompatible_merge_genfiles_directory
6756 - grpc log now logs updateActionResult
6757 - CppConfiguration doesn't do package loading anymore. That means:
6758 * it's no longer needed to have C++ toolchain available when
6759 building non-C++ projects
6760 * bazel will not analyze C++ toolchain when not needed -> speedup
6761 ~2s on bazel startup when C++ rules using hermetic toolchain are
6762 not loaded
6763 - --incompatible_package_name_is_a_fu...
6764
6765This release contains contributions from many people at Google, as well as andy g scott ?, Attila Ol?h, Benjamin Peterson, Clint Harrison, Dave Lee, Ed Schouten, Greg Estren, Gregor Jasny, Jamie Snape, Jerry Marino, Loo Rong Jie, Or Shachar, Sevki Hasirci, William Chargin.
6766
Bazel Release System85378562018-11-30 15:34:16 +01006767## Release 0.20.0 (2018-11-30)
6768
6769```
6770Baseline: 7bf7f031c332dc483257248d1c1f98ad75bbc83b
6771
6772Cherry picks:
6773
6774 + fd52341505e725487c6bc6dfbe6b5e081aa037da:
6775 update bazel-toolchains pin to latest release Part of changes to
6776 allow bazelci to use 0.19.0 configs. RBE toolchain configs at or
6777 before 0.17.0 are not compatible with bazel 0.19.0 or above.
6778 + 241f28d05424db2d11ee245dc856b992258505e3:
6779 Revert "Toggle --incompatible_disable_late_bound_option_defaults
6780 flag."
6781 + f7e5aef145c33968f658eb2260e25630dc41cc67:
6782 Add cc_toolchain targets for the new entries in the default
6783 cc_toolchain_suite.
6784 + d2920e32ec7f3f8551a693d33c17b19f1b802145:
6785 Revert "WindowsFileSystem: open files with delete-sharing"
6786```
6787
6788[Breaking changes in 0.20](https://github.com/bazelbuild/bazel/issues?q=is%3Aissue+label%3Abreaking-change-0.20)
6789
6790 - [--incompatible_remove_native_http_archive](https://github.com/bazelbuild/bazel/issues/6570).
6791 - [--incompatible_remove_native_git_repository](https://github.com/bazelbuild/bazel/issues/6569).
6792 - [--incompatible_disable_cc_toolchain_label_from_crosstool_proto](https://github.com/bazelbuild/bazel/issues/6434).
6793 - [--incompatible_disable_depset_in_cc_user_flags](https://github.com/bazelbuild/bazel/issues/6384).
6794 - [--incompatible_disable_cc_configuration_make_variables](https://github.com/bazelbuild/bazel/issues/6381).
6795 - [--incompatible_disallow_conflicting_providers](https://github.com/bazelbuild/bazel/issues/5902).
6796 - [--incompatible_range_type](https://github.com/bazelbuild/bazel/issues/5264).
6797
6798[0.20 is a migration window for the following changes](https://github.com/bazelbuild/bazel/issues?q=is%3Aissue+label%3Amigration-0.20)
6799
6800 - [--incompatible_use_jdk10_as_host_javabase](https://github.com/bazelbuild/bazel/issues/6661)
6801 - [--incompatible_use_remotejdk_as_host_javabase](https://github.com/bazelbuild/bazel/issues/6656)
6802 - [--incompatible_disable_sysroot_from_configuration](https://github.com/bazelbuild/bazel/issues/6565)
6803 - [--incompatible_provide_cc_toolchain_info_from_cc_toolchain_suite](https://github.com/bazelbuild/bazel/issues/6537)
6804 - [--incompatible_disable_depset_in_cc_user_flags](https://github.com/bazelbuild/bazel/issues/6383)
6805 - [--incompatible_package_name_is_a_function](https://github.com/bazelbuild/bazel/issues/5827)
6806
6807[Breaking changes in the next release (0.21)](https://github.com/bazelbuild/bazel/issues?q=is%3Aissue+label%3Abreaking-change-0.21)
6808
6809 - [--incompatible_use_jdk10_as_host_javabase](https://github.com/bazelbuild/bazel/issues/6661)
6810 - [--incompatible_use_remotejdk_as_host_javabase](https://github.com/bazelbuild/bazel/issues/6656)
6811 - [--incompatible_disable_sysroot_from_configuration](https://github.com/bazelbuild/bazel/issues/6565)
6812 - [--incompatible_provide_cc_toolchain_info_from_cc_toolchain_suite](https://github.com/bazelbuild/bazel/issues/6537)
6813 - [--incompatible_disable_depset_in_cc_user_flags](https://github.com/bazelbuild/bazel/issues/6383)
6814 - [--incompatible_disallow_data_transition](https://github.com/bazelbuild/bazel/issues/6153)
6815 - [--incompatible_package_name_is_a_function](https://github.com/bazelbuild/bazel/issues/5827)
6816 - [--incompatible_disallow_slash_operator](https://github.com/bazelbuild/bazel/issues/5823)
6817 - [--incompatible_static_name_resolution](https://github.com/bazelbuild/bazel/issues/5637)
6818
6819Incompatible changes:
6820
6821 - the --experimental_no_dotd_scanning_with_modules command line
6822 argument is not supported anymore.
6823 - The --prune_cpp_modules command line option is not supported
6824 anymore.
6825 - the --experimental_prune_cpp_input_discovery command line option
6826 is not supported anymore.
6827
6828New features:
6829
6830 - Added support for Android NDK r18.
6831
6832Important changes:
6833
6834 - The 'default' parameter of attr.output and attr.output_list is
6835 removed. This is controlled by
6836 --incompatible_no_output_attr_default
6837 - A number of platform-related Starlark APIs which were previously
6838 marked "experimental" are now disabled by default, and may be
6839 enabled via --experimental_platforms_api
6840 - Make legacy-test-support ("legacy_test-<api-level>") from
6841 android_sdk_repository neverlink. The legacy test support
6842 libraries shouldn't be built into test binaries. To make them
6843 available at runtime, developers should declare them via
6844 uses-library:
6845 https://developer.android.com/training/testing/set-up-project#andr
6846 oid-test-base
6847 - query remote server Capabilities (per REAPI v2)
6848 - CppRules: All cc_toolchains depended on from
6849 cc_toolchain_suite.toolchains are now analyzed when not using
6850 platforms in order to select the right cc_toolchain.
6851 - removed obsolete --explicit_jre_deps flag.
6852 - Incompatible flag
6853 --incompatible_disable_legacy_cpp_toolchain_skylark_api was
6854 flipped.
6855 - Improve error messaging when unsupport proguard options are
6856 specified at the library level.
6857 - Incompatible flag
6858 --incompatible_disable_legacy_cpp_toolchain_skylark_api was
6859 flipped.
6860 - Incompatible flag
6861 --incompatible_disable_legacy_cpp_toolchain_skylark_api was
6862 flipped.
6863 - The --incompatible_disable_late_bound_option_defaults flag has
6864 been flipped (#6384)
6865 - Incompatible flag
6866 --incompatible_disable_legacy_flags_cc_toolchain_api was flipped
6867 (#6434)
6868 - Fixed issue where ctx.resolve_command created conflicting
6869 intermediate files when resolve_command was called multiple times
6870 within the same rule invocation with a long command attribute.
6871 - Incompatible flag
6872 --incompatible_disable_cc_configuration_make_variables was
6873 flipped (#6381)
6874 - If the --javabase flag is unset, it Bazel locates a JDK using
6875 the JAVA_HOME environment variable and searching the PATH. If no
6876 JDK is found --javabase will be empty, and builds targeting Java
6877 will not
6878 be supported. Previously Bazel would fall back to using the
6879 embedded
6880 JDK as a --javabase, but this is no longer default behaviour. A
6881 JDK should
6882 be explicitly installed instead to enable Java development
6883 - Bazel will now shut down when idle for 5 minutes and the system
6884 is low on RAM (linux only).
6885 - CROSSTOOL file is now read from the package of cc_toolchain, not
6886 from
6887 the package of cc_toolchain_suite. This is not expected to break
6888 anybody since
6889 cc_toolchain_suite and cc_toolchain are commonly in the same
6890 package.
6891 - All overrides of Starlark's ctx.new_file function are now
6892 deprecated.
6893 Try the `--incompatible_new_actions_api` flag to ensure your
6894 code is forward-compatible.
6895 - --incompatible_disable_cc_toolchain_label_from_crosstool_proto
6896 was flipped.
6897 - Introduce --(no)shutdown_on_low_sys_mem startup flag to toggle
6898 idle low-memory shutdown, disabled by default.
6899 - --incompatible_disable_cc_toolchain_label_from_crosstool_proto
6900 was flipped.
6901 - --incompatible_disable_cc_toolchain_label_from_crosstool_proto
6902 was flipped.
6903 - CppRules: All cc_toolchains depended on from
6904 cc_toolchain_suite.toolchains are now analyzed when not using
6905 platforms in order to select the right cc_toolchain.
6906 - The function `attr.license` is deprecated and will be removed.
6907 It can be disabled now with `--incompatible_no_attr_license`.
6908 - `range()` function now returns a lazy value
6909 (`--incompatible_range_type` is now set by default).
6910 - The code coverage report now includes the actual paths to header
6911 files instead of the ugly,
6912 Bazel generated, virtual includes path.
6913 - `--incompatible_disallow_conflicting_providers` has been switched
6914 to true
6915 - Add new flag `--incompatible_disable_systool_from_configration` to
6916 disable loading the systool from CppConfiguration.
6917 - Add new flag `--incompatible_disable_sysroot_from_configuration`
6918 to
6919 disable loading the systool from CppConfiguration.
6920 - Sorting remote Platform properties for remote execution. May
6921 affect cache keys!
6922 - Use different server log files per Bazel server process; java.log
6923 is
6924 now a symlink to the latest log.
6925
6926This release contains contributions from many people at Google, as well as a7g4 <a7g4@a7g4.net>, Alan <alan.agius@betssongroup.com>, Asaf Flescher <asafflesch@gmail.com>, Benjamin Peterson <bp@benjamin.pe>, Ed Schouten <ed.schouten@prodrive-technologies.com>, George Gensure <ggensure@uber.com>, George Kalpakas <kalpakas.g@gmail.com>, Greg <gregestren@users.noreply.github.com>, Irina Iancu <iirina@users.noreply.github.com>, Keith Smiley <keithbsmiley@gmail.com>, Loo Rong Jie <loorongjie@gmail.com>, Mark Zeren <mzeren@vmware.com>, Petros Eskinder <petroseskinder@users.noreply.github.com>, rachcatch <rachelcatchpoole@hotmail.com>, Robert Brown <robert.brown@gmail.com>, Robert Gay <robert.gay@redfin.com>, Salty Egg <2281521+zhouhao@users.noreply.github.com>.
6927
Bazel Release Systemcb3e2982018-11-19 11:19:38 -05006928## Release 0.19.2 (2018-11-19)
6929
6930```
6931Baseline: ac880418885061d1039ad6b3d8c28949782e02d6
6932
6933Cherry picks:
6934
6935 + 9bc3b20053a8b99bf2c4a31323a7f96fabb9f1ec:
6936 Fix the "nojava" platform and enable full presubmit checks for
6937 the various JDK platforms now that we have enough GCE resources.
6938 + 54c2572a8cabaf2b29e58abe9f04327314caa6a0:
6939 Add openjdk_linux_archive java_toolchain for nojava platform.
6940 + 20bfdc67dc1fc32ffebbda7088ba49ee17e3e182:
6941 Automated rollback of commit
6942 19a401c38e30ebc0879925a5caedcbe43de0028f.
6943 + 914b4ce14624171a97ff8b41f9202058f10d15b2:
6944 Windows: Fix Precondition check for addDynamicInputLinkOptions
6945 + 83d406b7da32d1b1f6dd02eae2fe98582a4556fd:
6946 Windows, test-setup.sh: Setting RUNFILES_MANIFEST_FILE only when
6947 it exists.
6948 + e025726006236520f7e91e196b9e7f139e0af5f4:
6949 Update turbine
6950 + 5f312dd1678878fb7563eae0cd184f2270346352:
6951 Fix event id for action_completed BEP events
6952 + f0c844c77a2406518c4e75c49188390d5e281d3d:
6953 Release 0.19.0 (2018-10-29)
6954 + c3fb1db9e4e817e8a911f5b347b30f2674a82f7c:
6955 Do not use CROSSTOOL to select cc_toolchain
6956 + 8e280838e8896a6b5eb5421fda435b96b6f8de60:
6957 Windows Add tests for msys gcc toolchain and mingw gcc toolchain
6958 + fd52341505e725487c6bc6dfbe6b5e081aa037da:
6959 update bazel-toolchains pin to latest release Part of changes to
6960 allow bazelci to use 0.19.0 configs. RBE toolchain configs at or
6961 before 0.17.0 are not compatible with bazel 0.19.0 or above.
6962 + eb2af0f699350ad187048bf814a95af23f562c77:
6963 Release 0.19.1 (2018-11-12)
6964 + 6bc452874ddff69cbf7f66186238032283f1195f:
6965 Also update cc_toolchain.toolchain_identifier when
6966 CC_TOOLCHAIN_NAME is set
6967 + f7e5aef145c33968f658eb2260e25630dc41cc67:
6968 Add cc_toolchain targets for the new entries in the default
6969 cc_toolchain_suite.
6970 + 683c302129b66a8999f986be5ae7e642707e978c:
6971 Read the CROSSTOOL from the package of the current cc_toolchain,
6972 not from --crosstool_top
6973```
6974
6975- Fixes regression #6662, by fixing tools/cpp/BUILD
6976- Fixes regression #6665, by setting the toolchain identifier.
6977- CROSSTOOL file is now read from the package of cc_toolchain, not from the
6978 package of cc_toolchain_suite. This is not expected to break anybody since
6979 cc_toolchain_suite and cc_toolchain are commonly in the same package.
6980
Bazel Release System684f1092018-11-12 10:26:58 -05006981## Release 0.19.1 (2018-11-12)
6982
6983```
6984Baseline: ac880418885061d1039ad6b3d8c28949782e02d6
6985
6986Cherry picks:
6987
6988 + 9bc3b20053a8b99bf2c4a31323a7f96fabb9f1ec:
6989 Fix the "nojava" platform and enable full presubmit checks for
6990 the various JDK platforms now that we have enough GCE resources.
6991 + 54c2572a8cabaf2b29e58abe9f04327314caa6a0:
6992 Add openjdk_linux_archive java_toolchain for nojava platform.
6993 + 20bfdc67dc1fc32ffebbda7088ba49ee17e3e182:
6994 Automated rollback of commit
6995 19a401c38e30ebc0879925a5caedcbe43de0028f.
6996 + 914b4ce14624171a97ff8b41f9202058f10d15b2:
6997 Windows: Fix Precondition check for addDynamicInputLinkOptions
6998 + 83d406b7da32d1b1f6dd02eae2fe98582a4556fd:
6999 Windows, test-setup.sh: Setting RUNFILES_MANIFEST_FILE only when
7000 it exists.
7001 + e025726006236520f7e91e196b9e7f139e0af5f4:
7002 Update turbine
7003 + 5f312dd1678878fb7563eae0cd184f2270346352:
7004 Fix event id for action_completed BEP events
7005 + f0c844c77a2406518c4e75c49188390d5e281d3d:
7006 Release 0.19.0 (2018-10-29)
7007 + c3fb1db9e4e817e8a911f5b347b30f2674a82f7c:
7008 Do not use CROSSTOOL to select cc_toolchain
7009 + 8e280838e8896a6b5eb5421fda435b96b6f8de60:
7010 Windows Add tests for msys gcc toolchain and mingw gcc toolchain
7011 + fd52341505e725487c6bc6dfbe6b5e081aa037da:
7012 update bazel-toolchains pin to latest release Part of changes to
7013 allow bazelci to use 0.19.0 configs. RBE toolchain configs at or
7014 before 0.17.0 are not compatible with bazel 0.19.0 or above.
7015```
7016
7017Important changes:
7018- Fix regression #6610, which prevents using the MINGW compiler on Windows.
7019
Klaus Aehlig5e5832c2018-10-31 15:45:53 +01007020## Release 0.19.0 (2018-10-29)
7021
7022```
7023Baseline: ac880418885061d1039ad6b3d8c28949782e02d6
7024
7025Cherry picks:
7026
7027 + 9bc3b20053a8b99bf2c4a31323a7f96fabb9f1ec:
7028 Fix the "nojava" platform and enable full presubmit checks for
7029 the various JDK platforms now that we have enough GCE resources.
7030 + 54c2572a8cabaf2b29e58abe9f04327314caa6a0:
7031 Add openjdk_linux_archive java_toolchain for nojava platform.
7032 + 20bfdc67dc1fc32ffebbda7088ba49ee17e3e182:
7033 Automated rollback of commit
7034 19a401c38e30ebc0879925a5caedcbe43de0028f.
7035 + 914b4ce14624171a97ff8b41f9202058f10d15b2:
7036 Windows: Fix Precondition check for addDynamicInputLinkOptions
7037 + 83d406b7da32d1b1f6dd02eae2fe98582a4556fd:
7038 Windows, test-setup.sh: Setting RUNFILES_MANIFEST_FILE only when
7039 it exists.
7040 + e025726006236520f7e91e196b9e7f139e0af5f4:
7041 Update turbine
7042 + 5f312dd1678878fb7563eae0cd184f2270346352:
7043 Fix event id for action_completed BEP events
7044```
7045
7046The Bazel team is happy to announce a new version of Bazel, [Bazel 0.19](https://github.com/bazelbuild/bazel/releases/tag/0.19.0).
7047
7048This document lists the major changes since Bazel 0.18.
7049
7050General changes
7051---------------
7052
7053* The `--incompatible_expand_directories` flag will automatically expand directories in command lines. Design doc: https://docs.google.com/document/d/11agWFiOUiz2htBLj6swPTob5z78TrCxm8DQE4uJLOwM
7054
7055* The `--loading_phase_threads` flag now defaults to `auto` (not 200, as was previously the case), which at the moment corresponds to the number of CPUs. This is appropriate for most users. However, if your sources reside on a network file system, increasing this value may yield better analysis-time performance when disk caches are cold.
7056
7057Android
7058-------
7059
7060* Fixed missing debug symbols when building native code with `--compilation_mode=dbg` that target Android ARM architectures by adding the `-g` flag.
7061
7062C++
7063---
7064
7065* Added `--incompatible_disable_legacy_flags_cc_toolchain_api` to deprecate legacy `cc_toolchain` Starlark API for legacy CROSSTOOL fields. Tracking issue is #6434. Migration docs are on the bazel website.
7066
7067* Runfiles in cc_test: the C++ runfiles library (`@bazel_tools//tools/cpp/runfiles`) can now create Runfiles objects for tests. See `//tools/cpp/runfiles/runfiles_src.h` (in the Bazel source tree) for documentation.
7068
7069* :cc_binary link action no longer hardcodes `-static-libgcc` for toolchains that support embedded runtimes (guarded by `--experimental_dont_emit_static_libgcc` temporarily).
7070
7071* The flag `--experimental_enable_cc_configuration_make_variables` is removed, use `--incompatible_disable_cc_configuration_make_variables` instead.
7072
7073Java
7074----
7075
7076* If the `--javabase` flag is unset, Bazel locates a JDK using the `JAVA_HOME` environment variable and searching the PATH. If no JDK is found `--javabase` will be empty, and builds targeting Java will not be supported. Previously Bazel would fall back to using the embedded JDK as a `--javabase`, but this is no longer default behaviour. A JDK should be explicitly installed instead to enable Java development.
7077
7078Code Coverage
7079-------------
7080
7081* LcovMerger was renamed to CoverageOutputGenerator.
7082
7083* Faster coverage collection for gcc compiled C++ code can now be tested by enabling it with `--experimental_cc_coverage`.
7084
7085Other Changes
7086-------------
7087
7088* Add `--apple_compiler` and `--apple_grte_top options`. These provide the equivalent of --compiler / --grte_top for the toolchain configured in --apple_crosstool_top.
7089
7090* There is now a `same_pkg_direct_rdeps` query function. See the query documentation for more details.
7091
7092* Propagating remote errors to the user even if `--verbose_failures=false` is set.
7093
7094* Add number of configured targets to analysis phase status output.
7095
7096* Bazel will now check stderr instead of stdout to decide if it is outputting to a terminal. `--isatty` is deprecated, use `--is_stderr_atty` instead.
7097
7098Future Changes
7099--------------
7100
7101* None of the C++ related incompatible flags mentioned in the 0.18 release were flipped, they will be flipped in the next release (0.20). We have created tracking issues for all the relevant incompatible flags:
7102 * [`--incompatible_disable_late_bound_option_defaults`](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disable-late-bound-option-defaults): #6384
7103 * [`--incompatible_disable_depset_in_cc_user_flags`](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disable-depsets-in-c-toolchain-api-in-user-flags): #6383
7104 * [`--incompatible_disable_cc_toolchain_label_from_crosstool_proto`](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disallow-using-crosstool-to-select-the-cc_toolchain-label): #6382
7105 * [`--incompatible_disable_cc_configuration_make_variables`](https://github.com/bazelbuild/bazel/issues/6381): #6381
7106 * [`--incompatible_disable_legacy_cpp_toolchain_skylark_api`](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disable-legacy-c-configuration-api): #6380
7107 * [`incompatible_disable_legacy_flags_cc_toolchain_api`](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disable-legacy-c-toolchain-api): #6434
7108
7109* In the 0.20 release the flags [`--incompatible_remove_native_git_repository`](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#remove-native-git-repository) and [`--incompatible_remove_native_http_archive`](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#remove-native-http-archive) will be turned on.
7110
7111Thank you to our contributors!
7112------------------------------
7113
7114This release contains contributions from many people at Google, as well as Andreas Herrmann, Andreas Hippler, Benjamin Peterson, David Ostrovsky, Ed Baunton, George Gensure, Igal Tabachnik, Jason Gavris, Loo Rong Jie, rmalik, and Yannic Bonenberger
7115
7116Thank you to everyone who contributed to this release!
7117
Bazel Release System92849b82018-10-31 15:41:11 +01007118## Release 0.18.1 (2018-10-31)
Bazel Release System36177972018-10-15 10:29:10 +02007119
7120```
Bazel Release System92849b82018-10-31 15:41:11 +01007121Baseline: c062b1f1730f3562d5c16a037b374fc07dc8d9a2
Bazel Release System36177972018-10-15 10:29:10 +02007122
7123Cherry picks:
7124
Bazel Release System92849b82018-10-31 15:41:11 +01007125 + 2834613f93f74e988c51cf27eac0e59c79ff3b8f:
7126 Include also ext jars in the bootclasspath jar.
7127 + 2579b791c023a78a577e8cb827890139d6fb7534:
7128 Fix toolchain_java9 on --host_javabase=<jdk9> after
7129 7eb9ea150fb889a93908d96896db77d5658e5005
7130 + faaff7fa440939d4367f284ee268225a6f40b826:
7131 Release notes: fix markdown
7132 + b073a18e3fac05e647ddc6b45128a6158b34de2c:
7133 Fix NestHost length computation Fixes #5987
7134 + bf6a63d64a010f4c363d218e3ec54dc4dc9d8f34:
7135 Fixes #6219. Don't rethrow any remote cache failures on either
7136 download or upload, only warn. Added more tests.
7137 + c1a7b4c574f956c385de5c531383bcab2e01cadd:
7138 Fix broken IdlClassTest on Bazel's CI.
7139 + 71926bc25b3b91fcb44471e2739b89511807f96b:
7140 Fix the Xcode version detection which got broken by the upgrade
7141 to Xcode 10.0.
7142 + 86a8217d12263d598e3a1baf2c6aa91b2e0e2eb5:
7143 Temporarily restore processing of workspace-wide tools/bazel.rc
7144 file.
Bazel Release System83870d62018-10-29 10:31:13 -04007145 + 914b4ce14624171a97ff8b41f9202058f10d15b2:
7146 Windows: Fix Precondition check for addDynamicInputLinkOptions
Bazel Release System83870d62018-10-29 10:31:13 -04007147 + e025726006236520f7e91e196b9e7f139e0af5f4:
7148 Update turbine
Bazel Release System36177972018-10-15 10:29:10 +02007149```
7150
Bazel Release System92849b82018-10-31 15:41:11 +01007151Important changes:
Bazel Release System83870d62018-10-29 10:31:13 -04007152
Bazel Release System92849b82018-10-31 15:41:11 +01007153 - Fix regression #6219, remote cache failures
Bazel Release System36177972018-10-15 10:29:10 +02007154
Klaus Aehlig7b417542018-10-29 15:46:36 +01007155## Release 0.18.0 (2018-10-15)
7156
7157```
7158Baseline: c062b1f1730f3562d5c16a037b374fc07dc8d9a2
7159
7160Cherry picks:
7161
7162 + 2834613f93f74e988c51cf27eac0e59c79ff3b8f:
7163 Include also ext jars in the bootclasspath jar.
7164 + 2579b791c023a78a577e8cb827890139d6fb7534:
7165 Fix toolchain_java9 on --host_javabase=<jdk9> after
7166 7eb9ea150fb889a93908d96896db77d5658e5005
7167 + faaff7fa440939d4367f284ee268225a6f40b826:
7168 Release notes: fix markdown
7169 + b073a18e3fac05e647ddc6b45128a6158b34de2c:
7170 Fix NestHost length computation Fixes #5987
7171 + bf6a63d64a010f4c363d218e3ec54dc4dc9d8f34:
7172 Fixes #6219. Don't rethrow any remote cache failures on either
7173 download or upload, only warn. Added more tests.
7174 + c1a7b4c574f956c385de5c531383bcab2e01cadd:
7175 Fix broken IdlClassTest on Bazel's CI.
7176 + 71926bc25b3b91fcb44471e2739b89511807f96b:
7177 Fix the Xcode version detection which got broken by the upgrade
7178 to Xcode 10.0.
7179 + 86a8217d12263d598e3a1baf2c6aa91b2e0e2eb5:
7180 Temporarily restore processing of workspace-wide tools/bazel.rc
7181 file.
7182```
7183
7184General changes
7185
7186- New [bazelrc file list](https://docs.bazel.build/versions/master/user-manual.html#where-are-the-bazelrc-files).
7187 If you need to keep both the old and new lists of .rc files active
7188 concurrently to support multiple versions of Bazel, you can import the old
7189 file location into the new list using `try-import`. This imports a file if it
7190 exists and silently exits if it does not. You can use this method to account
7191 for a user file that may or may not exist
7192
7193- [.bazelignore](https://docs.bazel.build/versions/master/user-manual.html#.bazelignore)
7194 is now fully functional.
7195
7196- The startup flag `--host_javabase` has been renamed to
7197 `--server_javabase` to avoid confusion with the build flag
7198 `--host_javabase`.
7199
7200Android
7201
7202- The Android resource processing pipeline now supports persistence
7203 via worker processes. Enable it with
7204 `--persistent_android_resource_processor`. We have observed a 50% increase
7205 in build speed for clean local builds and up to 150% increase in build
7206 speed for incremental local builds.
7207
7208C++
7209
7210- In-memory package //tools/defaults has been removed (controlled by
7211 `--incompatible_disable_tools_defaults_package` flag). Please see
7212 [migration instructions](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disable-inmemory-tools-defaults-package)
7213 and migrate soon, the flag will be flipped in Bazel 0.19, and the legacy
7214 behavior will be removed in Bazel 0.20.
7215
7216- Late bound option defaults (typical example was the `--compiler` flag, when
7217 it was not specified, it’s value was computed using the CROSSTOOL) are removed
7218 (controlled by `--incompatible_disable_late_bound_option_defaults` flag).
7219 Please see [migration instructions](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disable-late-bound-option-defaults)
7220 and migrate soon, the flag will be flipped in Bazel 0.19, and the legacy
7221 behavior will be removed in Bazel 0.20.
7222
7223- Depsets are no longer accepted in `user_compile_flags` and `user_link_flags`
7224 in the C++ toolchain API (controlled by
7225 `--incompatible_disable_depset_in_cc_user_flags` flag) affects C++ users.
7226 Please see [migration instructions](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disable-depsets-in-c-toolchain-api-in-user-flags)
7227 and migrate soon, the flag will be flipped in Bazel 0.19, and the legacy
7228 behavior will be removed in Bazel 0.20.
7229
7230- CROSSTOOL is no longer consulted when selecting C++ toolchain (controlled by
7231 `--incompatible_disable_cc_toolchain_label_from_crosstool_proto` flag).
7232 Please see [migration instructions](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disallow-using-crosstool-to-select-the-cc_toolchain-label)
7233 and migrate soon, the flag will be flipped in Bazel 0.19, and the legacy behavior will be removed in Bazel 0.20.
7234
7235- You can now use [`toolchain_identifier` attribute](https://github.com/bazelbuild/bazel/commit/857d4664ce939f240b1d10d8d2baca6c6893cfcb)
7236 on `cc_toolchain` to pair it with CROSSTOOL toolchain.
7237
7238- C++ specific Make variables
7239 are no longer passed from the `CppConfiguration`, but from the C++ toolchain
7240 (controlled by `--incompatible_disable_cc_configuration_make_variables` flag).
7241 Please see [migration instructions](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disallow-using-c-specific-make-variables-from-the-configuration)
7242 and migrate soon, the flag will be flipped
7243 in Bazel 0.19, and the legacy behavior will be removed in Bazel 0.20.
7244
7245- Skylark api accessing C++
7246 toolchain in `ctx.fragments.cpp` is removed (controlled by
7247 `--incompatible_disable_legacy_cpp_toolchain_skylark_api` flag).
7248 Please migrate soon, the flag will be flipped
7249 in Bazel 0.19, and the legacy behavior will be removed in Bazel 0.20.
7250
7251- cc_binary link action no longer hardcodes
7252 `-static-libgcc` for toolchains that support embedded runtimes
7253 (guarded by [`--experimental_dont_emit_static_libgcc`](https://source.bazel.build/bazel/+/2f281960b829e964526a9d292d4c3003e4d19f1c)
7254 temporarily). Proper deprecation using `--incompatible` flags will follow.
7255
7256Java
7257
7258- Future versions of Bazel will require a locally installed JDK
7259 for Java development. Previously Bazel would fall back to using
7260 the embedded `--server_javabase` if no JDK as available. Pass
7261 `--incompatible_never_use_embedded_jdk_for_javabase` to disable the
7262 legacy behaviour.
7263
7264- `--javacopt=` no longer affects compilations of tools that are
7265 executed during the build; use `--host_javacopt=` to change javac
7266 flags in the host configuration.
7267
7268Objective C
7269
7270- `objc_library` now supports the module_name attribute.
7271
7272Skylark
7273
7274- Adds `--incompatible_expand_directories` to automatically expand
7275 directories in skylark command lines. Design doc:
7276 https://docs.google.com/document/d/11agWFiOUiz2htBLj6swPTob5z78TrCxm8DQE4uJLOwM
7277
7278- Support fileset expansion in ctx.actions.args(). Controlled by
7279 `--incompatible_expand_directories`.
7280
7281Windows
7282
7283- `--windows_exe_launcher` is deprecated, this flag will be removed
7284 soon. Please make sure you are not using it.
7285
7286- Bazel now supports the symlink runfiles tree on Windows with
7287 `--experimental_enable_runfiles` flag. For more details, see
7288 [this doc](https://docs.google.com/document/d/1hnYmU1BmtCSJOUvvDAK745DSJQCapToJxb3THXYMrmQ).
7289
7290Other Changes
7291
7292- A new experimental option `--experimental_ui_deduplicate` has been added. It
7293 causes the UI to attempt to deduplicate messages from actions to keep the
7294 console output cleaner.
7295
7296- Add `--modify_execution_info`, a flag to customize action execution
7297 info.
7298
7299- Add ExecutionInfo to aquery output for ExecutionInfoSpecifier
7300 actions.
7301
7302- When computing `--instrumentation_filter`, end filter patterns with
7303 "[/:]" to match non-top-level packages exactly and treat
7304 top-level targets consistently.
7305
7306- Added the `bazel info server_log` command, which obtains the main Bazel
7307 server log file path. This can help debug Bazel issues.
7308
7309- `aapt shrink` resources now properly respect filter configurations.
7310
Bazel Release System50921e62018-09-21 12:27:04 +02007311## Release 0.17.2 (2018-09-21)
7312
7313```
7314Baseline: aa118ca818baf722aede0bc48d0a17584fa45b6e
7315
7316Cherry picks:
7317 + 0e0462589528154cb5160411991075a2000b5452:
7318 Update checker framework dataflow and javacutil versions
7319 + 3987300d6651cf0e6e91b395696afac6913a7d66:
7320 Stop using --release in versioned java_toolchains
7321 + 438b2773b8c019afa46be470b90bcf70ede7f2ef:
7322 make_deb: Add new empty line in the end of conffiles file
7323 + 504401791e0a0e7e3263940e9e127f74956e7806:
7324 Properly mark configuration files in the Debian package.
7325 + 9ed9d8ac4347408d15c8fce7c9c07e5c8e658b30:
7326 Add flag
7327 --incompatible_symlinked_sandbox_expands_tree_artifacts_in_runfil
7328 es_tree.
7329 + 22d761ab42dfb1b131f1facbf490ccdb6c17b89c:
7330 Update protobuf to 3.6.1 -- add new files
7331 + 27303d79c38f2bfa3b64ee7cd7a6ef03a9a87842:
7332 Update protobuf to 3.6.1 -- update references
7333 + ddc97ed6b0367eb443e3e09a28d10e65179616ab:
7334 Update protobuf to 3.6.1 -- remove 3.6.0 sources
7335 + ead1002d3803fdfd4ac68b4b4872076b19d511a2:
7336 Fix protobuf in the WORKSPACE
7337 + 12dcd35ef7a26d690589b0fbefb1f20090cbfe15:
7338 Revert "Update to JDK 10 javac"
7339 + 7eb9ea150fb889a93908d96896db77d5658e5005:
7340 Automated rollback of
7341 https://github.com/bazelbuild/bazel/commit/808ec9ff9b5cec14f23a4b
7342 a106bc5249cacc8c54 and
7343 https://github.com/bazelbuild/bazel/commit/4c9149d558161e7d3e363f
7344 b697f5852bc5742a36 and some manual merging.
7345 + 4566a428c5317d87940aeacfd65f1018340e52b6:
7346 Fix tests on JDK 9 and 10
7347 + 1e9f0aa89dad38eeab0bd40e95e689be2ab6e5e5:
7348 Fix more tests on JDK 9 and 10
7349 + a572c1cbc8c26f625cab6716137e2d57d05cfdf3:
7350 Add ubuntu1804_nojava, ubuntu1804_java9, ubuntu1804_java10 to
7351 postsubmit.
7352 + 29f1de099e4f6f0f50986aaa4374fc5fb7744ee8:
7353 Disable Android shell tests on the "nojava" platform.
7354 + b495eafdc2ab380afe533514b3bcd7d5b30c9935:
7355 Update bazel_toolchains to latest release.
7356 + 9323c57607d37f9c949b60e293b573584906da46:
7357 Windows: fix writing java.log
7358 + 1aba9ac4b4f68b69f2d91e88cfa8e5dcc7cb98c2:
7359 Automated rollback of commit
7360 de22ab0582760dc95f33e217e82a7b822378f625.
7361 + 2579b791c023a78a577e8cb827890139d6fb7534:
7362 Fix toolchain_java9 on --host_javabase=<jdk9> after
7363 7eb9ea150fb889a93908d96896db77d5658e5005
7364 + 2834613f93f74e988c51cf27eac0e59c79ff3b8f:
7365 Include also ext jars in the bootclasspath jar.
7366 + fdb09a260dead1e1169f94584edc837349a4f4a5:
7367 Release 0.17.1 (2018-09-14)
7368 + 1d956c707e1c843896ac58a341c335c9c149073d:
7369 Do not fail the build when gcov is not installed
7370 + 2e677fb6b8f309b63558eb13294630a91ee0cd33:
7371 Ignore unrecognized VM options in desugar.sh, such as the JVM 9
7372 flags to silence warnings.
7373```
7374
7375Important changes:
7376
7377 - In the future, Bazel will expand tree artifacts in runfiles, too,
7378 which causes the sandbox to link each file individually into the
7379 sandbox directory, instead of symlinking the entire directory. In
7380 this release, the behavior is not enabled by default yet. Please
7381 try it out via
7382 --incompatible_symlinked_sandbox_expands_tree_artifacts_in_runfile
7383 s_tree and let us know if it causes issues. If everything looks
7384 good, this behavior will become the default in a following
7385 release.
7386
Bazel Release Systemfdb09a22018-09-14 12:15:54 +02007387## Release 0.17.1 (2018-09-14)
7388
7389```
7390Baseline: aa118ca818baf722aede0bc48d0a17584fa45b6e
7391
7392Cherry picks:
7393 + 0e0462589528154cb5160411991075a2000b5452:
7394 Update checker framework dataflow and javacutil versions
7395 + 3987300d6651cf0e6e91b395696afac6913a7d66:
7396 Stop using --release in versioned java_toolchains
7397 + 438b2773b8c019afa46be470b90bcf70ede7f2ef:
7398 make_deb: Add new empty line in the end of conffiles file
7399 + 504401791e0a0e7e3263940e9e127f74956e7806:
7400 Properly mark configuration files in the Debian package.
7401 + 9ed9d8ac4347408d15c8fce7c9c07e5c8e658b30:
7402 Add flag
7403 --incompatible_symlinked_sandbox_expands_tree_artifacts_in_runfil
7404 es_tree.
7405 + 22d761ab42dfb1b131f1facbf490ccdb6c17b89c:
7406 Update protobuf to 3.6.1 -- add new files
7407 + 27303d79c38f2bfa3b64ee7cd7a6ef03a9a87842:
7408 Update protobuf to 3.6.1 -- update references
7409 + ddc97ed6b0367eb443e3e09a28d10e65179616ab:
7410 Update protobuf to 3.6.1 -- remove 3.6.0 sources
7411 + ead1002d3803fdfd4ac68b4b4872076b19d511a2:
7412 Fix protobuf in the WORKSPACE
7413 + 12dcd35ef7a26d690589b0fbefb1f20090cbfe15:
7414 Revert "Update to JDK 10 javac"
7415 + 7eb9ea150fb889a93908d96896db77d5658e5005:
7416 Automated rollback of
7417 https://github.com/bazelbuild/bazel/commit/808ec9ff9b5cec14f23a4b
7418 a106bc5249cacc8c54 and
7419 https://github.com/bazelbuild/bazel/commit/4c9149d558161e7d3e363f
7420 b697f5852bc5742a36 and some manual merging.
7421 + 4566a428c5317d87940aeacfd65f1018340e52b6:
7422 Fix tests on JDK 9 and 10
7423 + 1e9f0aa89dad38eeab0bd40e95e689be2ab6e5e5:
7424 Fix more tests on JDK 9 and 10
7425 + a572c1cbc8c26f625cab6716137e2d57d05cfdf3:
7426 Add ubuntu1804_nojava, ubuntu1804_java9, ubuntu1804_java10 to
7427 postsubmit.
7428 + 29f1de099e4f6f0f50986aaa4374fc5fb7744ee8:
7429 Disable Android shell tests on the "nojava" platform.
7430 + b495eafdc2ab380afe533514b3bcd7d5b30c9935:
7431 Update bazel_toolchains to latest release.
7432 + 9323c57607d37f9c949b60e293b573584906da46:
7433 Windows: fix writing java.log
7434 + 1aba9ac4b4f68b69f2d91e88cfa8e5dcc7cb98c2:
7435 Automated rollback of commit
7436 de22ab0582760dc95f33e217e82a7b822378f625.
7437 + 2579b791c023a78a577e8cb827890139d6fb7534:
7438 Fix toolchain_java9 on --host_javabase=<jdk9> after
7439 7eb9ea150fb889a93908d96896db77d5658e5005
7440 + 2834613f93f74e988c51cf27eac0e59c79ff3b8f:
7441 Include also ext jars in the bootclasspath jar.
7442```
7443
7444Incompatible changes:
7445
7446 - Loading @bazel_tools//tools/build_defs/repo:git_repositories.bzl
7447 no longer works. Load @bazel_tools//tools/build_defs/repo:git.bzl
7448 instead.
7449 - If the same artifact is generated by two distinct but identical
7450 actions, and a downstream action has both those actions' outputs
7451 in its inputs, the artifact will now appear twice in the
7452 downstream action's inputs. If this causes problems in Skylark
7453 actions, you can use the uniquify=True argument in Args.add_args.
7454 - If the same artifact is generated by two distinct but identical
7455 actions, and a downstream action has both those actions' outputs
7456 in its inputs, the artifact will now appear twice in the
7457 downstream action's inputs. If this causes problems in Skylark
7458 actions, you can use the uniquify=True argument in Args.add_args.
7459 - Labels in C++ rules' linkopts attribute are not expanded anymore
7460 unless they are wrapped, e.g: $(location //foo:bar)
7461 - If the same artifact is generated by two distinct but identical
7462 actions, and a downstream action has both those actions' outputs
7463 in its inputs, the artifact will now appear twice in the
7464 downstream action's inputs. If this causes problems in Skylark
7465 actions, you can use the uniquify=True argument in Args.add_args.
7466 - New bazelrc file list.
7467 - Windows: when BAZEL_SH envvar is not defined and Bazel searches
7468 for a suitable bash.exe, Bazel will no longer look for Git Bash
7469 and no longer recommend installing it as a Bash implementation.
7470 See issue #5751.
7471 - New bazelrc file list.
7472
7473New features:
7474
7475 - The aquery command now supports --output=text.
7476 - Java, runfiles: the Java runfiles library is now in
7477 @bazel_tools//tools/java/runfiles. The old target
7478 (@bazel_tools//tools/runfiles:java-runfiles) is deprecated and
7479 will be removed in Bazel 0.18.0.
7480 - Java, runfiles: the Java runfiles library is now in
7481 @bazel_tools//tools/java/runfiles. The old target
7482 (@bazel_tools//tools/runfiles:java-runfiles) is deprecated and
7483 will be removed in Bazel 0.19.0 (not 0.18.0, as stated earlier).
7484
7485Important changes:
7486
7487 - Allow @ in package names.
7488 - Remove support for java_runtime_suite; use alias() together with
7489 select() instead.
7490 - Python wrapper scripts for MSVC are removed.
7491 - [JavaInfo] Outputs are merged in java_common.merge().
7492 - Faster analysis by improved parallelization.
7493 - --experimental_shortened_obj_file_path is removed.
7494 - Introduce the --remote_cache_proxy flag,
7495 which allows for remote http caching to connect
7496 via a unix domain socket.
7497 - No longer define G3_VERSION_INFO for c++ linkstamp compiles, as
7498 it was a duplicate of G3_TARGET_NAME.
7499 - Added support for Android NDK r17. The default STL is now
7500 `libc++`, and support for targeting `mips`, `mips64` and `ARMv5`
7501 (`armeabi`) has been removed.
7502 - Add aquery command to get analysis time information about the
7503 action graph.
7504 - Fixed compatibility with aar_import when using aapt2. AAPT2 is
7505 now supported for Android app builds without resource shrinking.
7506 To use it, pass the `--android_aapt=aapt2` flag or define
7507 android_binary.aapt_version=aapt2.
7508 - Code coverage is collected for Java binaries invoked from sh_test.
7509 - java_common.compile creates the native headers jar accesible via
7510 JavaInfo.outputs.native_headers.
7511 - Deleting deprecated no-op flag --show_package_location
7512 - The JDK shipped with Bazel was updated to JDK10.
7513 - Rename the startup flag --host_javabase to --server_javabase to
7514 avoid confusion with the build flag --host_javabase
7515 - newly added options --experimental_repository_hash_file and
7516 --experimental_verify_repository_rules allow to verify for
7517 repositories
7518 the directory generated against pre-recorded hashes. See
7519 documentation
7520 for those options.
7521 - Removed the gen_jars output group
7522 - --subcommands can now take a "pretty_print" value
7523 ("--subcommands=pretty_print") to print the
7524 arguments of subcommands as a list for easier reading.
7525 - follow-up to
7526 https://github.com/bazelbuild/bazel/commit/1ac359743176e659e9c7472
7527 645e3142f3c44b9e8
7528 - A rule error is now thrown if a Skylark rule implementation
7529 function returns multiple providers of the same type.
7530 - When using Bazel's remote execution feature and Bazel has to
7531 fallback to local execution for an action, Bazel used
7532 non-sandboxed
7533 local execution until now. From this release on, you can use the
7534 new
7535 flag --remote_local_fallback_strategy=<strategy> to tell Bazel
7536 which
7537 strategy to use in that case.
7538 - Execution Log Parser can now, when printing it out, filter the
7539 log by runner type
7540 - A rule error is now thrown if a Skylark rule implementation
7541 function returns multiple providers of the same type.
7542 - Removed the gen_jars output group
7543 - Removed the gen_jars output group
7544 - Set --defer_param_files to default to true.
7545 - Sort attribute lists in proto-form query output to fix
7546 non-deterministic genquery output.
7547 - Replace 0/1 with False/True for testonly attribute
7548 - bazel now supports a .bazelignore file specifying
7549 directories to be ignored; however, these directories still
7550 have to be well founded and, in particular, may not contain
7551 symlink cycles.
7552 - Add more detailed reporting of the differences between startup
7553 options.
7554 - update data binding to 3.2.0
7555 - For Android incremental dexing actions, Bazel now persists its
7556 DexBuilder process across individual actions. From our
7557 benchmarks, this results in a 1.2x speedup for clean local builds.
7558 - The standard `xcode_VERSION` feature now always uses exactly two
7559 components in the version, even if you specify `--xcode_version`
7560 with
7561 more or fewer than two.
7562 - A rule error will be thrown if a Skylark rule implementation
7563 function returns multiple providers of the same type. Try the
7564 `--incompatible_disallow_conflicting_providers` flag to ensure
7565 your code is forward-compatible.
7566 - Removed notion of FULLY_STATIC linking mode from C++ rules.
7567 - In documentation, we've renamed Skylark into Starlark.
7568 - Execution Log Parser can now, when printing it out, reorder the
7569 actions for easier text diffs
7570 - Linkstamps are no longer recompiled after server restart.
7571 - Use VanillaJavaBuilder and disable header compilation in
7572 toolchain_hostjdk8. The default toolchain will soon drop
7573 compatibility with JDK 8. Using a JDK 8 host_javabase
7574 will only be supported when using 'VanillaJavaBuilder' (which
7575 does not support Error Prone,
7576 Strict Java Deps, or reduced classpaths) and with header
7577 compilation disabled.
7578 - In the future, Bazel will expand tree artifacts in runfiles, too,
7579 which causes the sandbox to link each file individually into the
7580 sandbox directory, instead of symlinking the entire directory. In
7581 this release, the behavior is not enabled by default yet. Please
7582 try it out via
7583 --incompatible_symlinked_sandbox_expands_tree_artifacts_in_runfile
7584 s_tree and let us know if it causes issues. If everything looks
7585 good, this behavior will become the default in a following
7586 release.
7587
Bazel Release System1bd58832018-08-13 15:41:26 +02007588## Release 0.16.1 (2018-08-13)
7589
7590```
7591Baseline: 4f64b77a3dd8e4ccdc8077051927985f9578a3a5
7592
7593Cherry picks:
7594 + 4c9a0c82d308d5df5c524e2a26644022ff525f3e:
7595 reduce the size of bazel's embedded jdk
7596 + d3228b61f633cdc5b3f740b641a0836f1bd79abd:
7597 remote: limit number of open tcp connections by default. Fixes
7598 #5491
7599 + 8ff87c164f48dbabe3b20becd00dde90c50d46f5:
7600 Fix autodetection of linker flags
7601 + c4622ac9205d2f1b42dac8c598e83113d39e7f11:
7602 Fix autodetection of -z linker flags
7603 + 10219659f58622d99034288cf9f491865f818218:
7604 blaze_util_posix.cc: fix order of #define
7605 + ab1f269017171223932e0da9bb539e8a17dd99ed:
7606 blaze_util_freebsd.cc: include path.h explicitly
7607 + 68e92b45a37f2142c768a56eb7ecfa484b8b22df:
7608 openjdk: update macOS openjdk image. Fixes #5532
7609 + f45c22407e6b00fcba706eb62141cb9036bd38d7:
7610 Set the start time of binary and JSON profiles to zero correctly.
7611 + bca1912853086b8e9a28a85a1b144ec0dc9717cc:
7612 remote: fix race on download error. Fixes #5047
7613 + 3842bd39e10612c7eef36c6048407e81bcd0a8fb:
7614 jdk: use parallel old gc and disable compact strings
7615 + 6bd0bdf5140525cb33dc2db068b210261d9df271:
7616 Add objc-fully-link to the list of actions that require the
7617 apple_env feature. This fixes apple_static_library functionality.
7618 + f330439fb970cfa17c70fc59c1458bb1c31c9522:
7619 Add the action_names_test_files target to the OSS version of
7620 tools/buils_defs/cc/BUILD.
7621 + d215b64362c4ede61c8ba87b5f3f57bce4785d15:
7622 Fix StackOverflowError on Windows. Fixes #5730
7623 + 366da4cf27b7f957ef39f89206db77fa2ac289df:
7624 In java_rules_skylark depend on the javabase through
7625 //tools/jdk:current_java_runtime
7626 + 30c601dc13d9e1b40a57434c022c888c7578cc56:
7627 Don't use @local_jdk for jni headers
7628 + c56699db5f9173739ba3ac55aa9fa69b6457a99b:
7629 'DumpPlatformClasspath' now dumps the current JDK's default
7630 platform classpath
7631```
7632
7633This release is a patch release that contains fixes for several serious
7634regressions that were found after the release of Bazel 0.16.0.
7635
7636In particular this release resolves the following issues:
7637
7638 - Bazel crashes with a StackOverflowError on Windows (See #5730)
7639 - Bazel requires a locally installed JDK and does not fall back
7640 to the embedded JDK (See #5744)
7641 - Bazel fails to build for Homebrew on macOS El Capitan (See #5777)
7642 - A regression in apple_static_library (See #5683)
7643
7644Please watch our blog for a more detailed release announcement.
7645
Bazel Release Systemb292ad12018-07-31 12:55:37 -04007646## Release 0.16.0 (2018-07-31)
Bazel Release System97564f62018-07-17 14:19:41 +02007647
7648```
Bazel Release Systemb292ad12018-07-31 12:55:37 -04007649Baseline: 4f64b77a3dd8e4ccdc8077051927985f9578a3a5
Bazel Release System97564f62018-07-17 14:19:41 +02007650
7651Cherry picks:
Bazel Release Systemb292ad12018-07-31 12:55:37 -04007652 + 4c9a0c82d308d5df5c524e2a26644022ff525f3e:
7653 reduce the size of bazel's embedded jdk
7654 + d3228b61f633cdc5b3f740b641a0836f1bd79abd:
7655 remote: limit number of open tcp connections by default. Fixes
7656 #5491
Bazel Release System97564f62018-07-17 14:19:41 +02007657 + 8ff87c164f48dbabe3b20becd00dde90c50d46f5:
7658 Fix autodetection of linker flags
7659 + c4622ac9205d2f1b42dac8c598e83113d39e7f11:
7660 Fix autodetection of -z linker flags
Bazel Release Systemb292ad12018-07-31 12:55:37 -04007661 + 10219659f58622d99034288cf9f491865f818218:
7662 blaze_util_posix.cc: fix order of #define
7663 + ab1f269017171223932e0da9bb539e8a17dd99ed:
7664 blaze_util_freebsd.cc: include path.h explicitly
7665 + 68e92b45a37f2142c768a56eb7ecfa484b8b22df:
7666 openjdk: update macOS openjdk image. Fixes #5532
7667 + f45c22407e6b00fcba706eb62141cb9036bd38d7:
7668 Set the start time of binary and JSON profiles to zero correctly.
7669 + bca1912853086b8e9a28a85a1b144ec0dc9717cc:
7670 remote: fix race on download error. Fixes #5047
7671 + 3842bd39e10612c7eef36c6048407e81bcd0a8fb:
7672 jdk: use parallel old gc and disable compact strings
Bazel Release System97564f62018-07-17 14:19:41 +02007673```
7674
Bazel Release Systemb292ad12018-07-31 12:55:37 -04007675Incompatible changes:
7676
7677 - The $(ANDROID_CPU) Make variable is not available anymore. Use
7678 $(TARGET_CPU) after an Android configuration transition instead.
7679 - The $(JAVA_TRANSLATIONS) Make variable is not supported anymore.
7680 - Skylark structs (using struct()) may no longer have to_json and
7681 to_proto overridden.
7682 - The mobile-install --skylark_incremental_res flag is no longer
7683 available, use the --skylark flag instead.
7684
7685New features:
7686
7687 - android_local_test now takes advantage of Robolectric's binary
7688 resource processing which allows for faster tests.
7689 - Allow @ in package names.
7690
Bazel Release System97564f62018-07-17 14:19:41 +02007691Important changes:
7692
Bazel Release Systemb292ad12018-07-31 12:55:37 -04007693 - Option --glibc is removed, toolchain selection relies solely on
7694 --cpu and --compiler options.
7695 - Build support for enabling cross binary FDO optimization.
7696 - The --distdir option is no longer experimental. This
7697 option allows to specify additional directories to look for
7698 files before trying to fetch them from the network. Files from
7699 any of the distdirs are only used if a checksum for the file
7700 is specified and both, the filename and the checksum, match.
7701 - Java coverage works now with multiple jobs.
7702 - Flip default value of --experimental_shortened_obj_file_path to
7703 true, Bazel now generates short object file path by default.
7704 - New rules for importing Android dependencies:
7705 `aar_import_external` and `aar_maven_import_external`.
7706 `aar_import_external` enables specifying external AAR
7707 dependencies using a list of HTTP URLs for the artifact.
7708 `aar_maven_import_external` enables specifying external AAR
7709 dependencies using the artifact coordinate and a list of server
7710 URLs.
7711 - The BAZEL_JAVAC_OPTS environment variable allows arguments, e.g.,
7712 "-J-Xmx2g", may be passed to the javac compiler during bootstrap
7713 build. This is helpful if your system chooses too small of a max
7714 heap size for the Java compiler during the bootstrap build.
7715 - --noexpand_configs_in_place is deprecated.
7716 - A tool to parse the Bazel execution log.
7717 - Support for LIPO has been fully removed.
7718 - Remove support for --discard_actions_after_execution.
7719 - Add --materialize_param_files flag to write parameter files even
7720 when actions are executed remotely.
7721 - Windows default system bazelrc is read from the user's
7722 ProgramData if present.
7723 - --[no]allow_undefined_configs no longer exists, passing undefined
7724 configs is an error.
Bazel Release System1281a022018-07-16 16:13:53 +02007725 - In remote caching we limit the number of open
7726 TCP connections to 100 by default. The number can be adjusted
7727 by specifying the --remote_max_connections flag.
7728
Bazel Release System5013a332018-06-26 14:07:47 +02007729## Release 0.15.0 (2018-06-26)
7730
7731```
7732Baseline: b93ae42e8e693ccbcc387841a17f58259966fa38
7733
7734Cherry picks:
7735 + 4b80f2455e7e49a95f3a4c9102a67a57dad52207:
7736 Add option to enable Docker sandboxing.
7737 + 6b1635279e8b33dc1ac505ac81825e38f8797a14:
7738 Allow disabling the simple blob caches via CLI flag overrides.
7739 + 4ec0a7524913ab2c4641368e3f8c09b347351a08:
7740 Use BUILD.bazel instead of BUILD for external projects
7741```
7742
7743Incompatible changes:
7744
7745 - Bazel now always runs binaries in with "bazel run" in
7746 interactive mode. The "--nodirect_run" command line option is now
7747 a no-op.
7748 - "bazel run --noas_test" is not supported anymore.
7749 - Indentation on the first line of a file was previously ignored.
7750 This is now fixed.
7751
7752New features:
7753
7754 - C++,runfiles: to access data-dependencies (runfiles) in C++
7755 programs, use the runfiles library built into Bazel. For usage
7756 info, see
7757 https://github.com/bazelbuild/bazel/blob/master/tools/cpp/runfiles
7758 /runfiles.h
7759
7760Important changes:
7761
7762 - Bazel now allows almost all 7-bit ASCII characters in labels.
7763 - Remove vestigial java_plugin.data attribute
7764 - Bazel supports including select Java 8 APIs into Android apps
7765 targeting pre-Nougat Android devices with
7766 --experimental_desugar_java8_libs
7767 - Flag `--incompatible_disable_glob_tracking` is removed.
7768 - SkyQuery's rbuildfiles now returns targets corresponding to
7769 broken packages.
7770 - Introduce build support for providing cache prefetch hints.
7771 - Update the skylark DefaultInfo documentation to spell out
7772 runfiles, data_runfiles and default_runfiles
7773 - An internal action for symlinking runfiles will use Command
7774 instead of a Spawns. This should have no functional chages; the
7775 only user visible consequence should be that the internal action
7776 is no longer be included in statistics when calculating processes
7777 count.
7778 - --batch is deprecated
7779 - execution strategies line no longer handles differently the case
7780 where all processes have the same strategy.
7781 - The --experimental_remote_spawn_cache flag is now enabled by
7782 default, and remote caching no longer needs --*_strategy=remote
7783 flags (it will fail if they are specified).
7784 - android_binary.aapt_version='aapt2' now supports en_XA and ar_XB
7785 - Added --apple_enable_auto_dsym_dbg flag.
7786 - non_propagated_deps has been removed from objc_library and
7787 apple_binary.
7788 - For Android projects, Bazel now supports building fonts as
7789 resources. See
7790 https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml
7791 for more information on the feature.
7792 - With --incompatible_no_support_tools_in_action_inputs enabled, Skylark
7793 action inputs are no longer scanned for tools. Move any such
7794 inputs to the newly introduced 'tools' attribute.
7795
Bazel Release System513bbf52018-06-08 14:15:20 +02007796## Release 0.14.1 (2018-06-08)
7797
7798```
7799Baseline: 5c3f5c9be7fa40d4fb3c35756891fab8483ca406
7800
7801Cherry picks:
7802 + f96f037f8f77335dc444844abcc31a372a3e1849:
7803 Windows, Java launcher: Support jar files under different drives
7804 + ff8162d01409db34893de98bd840a51c5f13e257:
7805 sh_configure.bzl: FreeBSD is also a known platform
7806 + 7092ed324137f03fcd34856bdb0595a1bdec3069:
7807 Remove unneeded exec_compatible_with from local_sh_toolchain
7808 + 57bc201346e61c62a921c1cbf32ad24f185c10c9:
7809 Do not autodetect C++ toolchain when
7810 BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 is present
7811 + 35a78c09cf2fbfc3de9c124d2142e3d72aac4348:
7812 remote: recursively delete incomplete downloaded output
7813 directory.
7814 + 3c9cd82b847f3ece8ec04b2029bd5e8ad0eb7502:
7815 distfile: pack the archives needed later in the build
7816 + 27487c77387e457df18be3b6833697096d074eab:
7817 Slightly refactor SpawnAction to improve env handling
7818 + 1b333a2c37add9d04fe5bc5258ee4f73c93115e2:
7819 Fix Cpp{Compile,Link}Action environment and cache key computation
7820 + 3da8929963e9c70dff5d8859d6e988e6e7f4f9d7:
7821 Make SymlinkTreeAction properly use the configuration's
7822 environment
7823 + eca7b81cf8cc51e1fe56e5ed7d4ad5cd1668a17a:
7824 Add a missing dependency from checker framework dataflow to
7825 javacutils
7826 + 10a4de954c2061258d8222961fc3bd39516db49d:
7827 Release 0.14.0 (2018-06-01)
7828 + 4b80f2455e7e49a95f3a4c9102a67a57dad52207:
7829 Add option to enable Docker sandboxing.
7830 + 6b1635279e8b33dc1ac505ac81825e38f8797a14:
7831 Allow disabling the simple blob caches via CLI flag overrides.
7832```
7833
7834Bug fix for [#5336](https://github.com/bazelbuild/bazel/issues/5336)
7835Bug fix fot [#5308](https://github.com/bazelbuild/bazel/issues/5308)
7836
Bazel Release System3a592f62018-06-01 15:04:31 +02007837## Release 0.14.0 (2018-06-01)
7838
7839```
7840Baseline: 5c3f5c9be7fa40d4fb3c35756891fab8483ca406
7841
7842Cherry picks:
7843 + f96f037f8f77335dc444844abcc31a372a3e1849:
7844 Windows, Java launcher: Support jar files under different drives
7845 + ff8162d01409db34893de98bd840a51c5f13e257:
7846 sh_configure.bzl: FreeBSD is also a known platform
7847 + 7092ed324137f03fcd34856bdb0595a1bdec3069:
7848 Remove unneeded exec_compatible_with from local_sh_toolchain
7849 + 57bc201346e61c62a921c1cbf32ad24f185c10c9:
7850 Do not autodetect C++ toolchain when
7851 BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 is present
7852 + 35a78c09cf2fbfc3de9c124d2142e3d72aac4348:
7853 remote: recursively delete incomplete downloaded output
7854 directory.
7855 + 3c9cd82b847f3ece8ec04b2029bd5e8ad0eb7502:
7856 distfile: pack the archives needed later in the build
7857 + 27487c77387e457df18be3b6833697096d074eab:
7858 Slightly refactor SpawnAction to improve env handling
7859 + 1b333a2c37add9d04fe5bc5258ee4f73c93115e2:
7860 Fix Cpp{Compile,Link}Action environment and cache key computation
7861 + 3da8929963e9c70dff5d8859d6e988e6e7f4f9d7:
7862 Make SymlinkTreeAction properly use the configuration's
7863 environment
7864 + eca7b81cf8cc51e1fe56e5ed7d4ad5cd1668a17a:
7865 Add a missing dependency from checker framework dataflow to
7866 javacutils
7867```
7868
7869Incompatible changes:
7870
7871 - Add --incompatible_disallow_legacy_javainfo flag.
7872 - Added flag --incompatible_disallow_old_style_args_add to help
7873 migrate from args.add() to args.add_all() / args.add_joined()
7874 where appropriate.
7875
7876New features:
7877
7878 - Bash,runfiles: use the new platform-independent library in
7879 `@bazel_tools//tools/bash/runfiles` to access runfiles
7880 (data-dependencies). See
7881 https://github.com/bazelbuild/bazel/blob/master/tools/bash/runfile
7882 s/runfiles.bash for usage information.
7883 - TemplateVariableInfo can now be constructed from Skylark.
7884 - The java_host_runtime_alias rule is now implemented in Java.
7885
7886Important changes:
7887
7888 - Flip default value of --experimental_shortened_obj_file_path to
7889 true, Bazel now generates short object file path by default.
7890 - Introduce fdo_profile rule that allows architecture-sensitive
7891 specification of fdo profiles.
7892 - canonicalize-flags no longer reorders the flags
7893 - CppRules: optional_compiler_flag was removed from CROSSTOOL, use
7894 features instead.
7895 - Labels of the form ////foo are disallowed.
7896 - The `/` operator is deprecated in favor of `//` (floor integer
7897 division).
7898 Try the `--incompatible_disallow_slash_operator` flag to ensure
7899 your code
7900 is forward-compatible.
7901 - Flip default value of --experimental_shortened_obj_file_path to
7902 true, Bazel now generates short object file path by default.
7903 - Exposed "mnemonic" and "env" fields on skylark "Action" objects.
7904 - Removed flag `--incompatible_disallow_toplevel_if_statement`.
7905 - Remove vestigial 'deps' and 'data' attributes from
7906 proto_lang_toolchain
7907 - Args objects (ctx.actions.args()) have new methods add_all() and
7908 add_joined() for building command lines using depsets.
7909 - `FileType` is deprecated and will be removed soon.
7910 Try the `--incompatible_disallow_filetype` flag to ensure your
7911 code
7912 is forward-compatible.
7913 - Introduce absolute_path_profile attribute that allows fdo_profile
7914 to accept absolute paths.
7915 - Support two-arg overloads for ctx.actions.args (eg.
7916 args.add("--foo", val))
7917 - Introduce 'tools' attribute to ctx.actions.run.
7918 - Fixed error message for proguard_apply_dictionary.
7919 - "bazel run" now lets one run interactive binaries. The
7920 BUILD_WORKSPACE_DIRECTORY and BUILD_WORKING_DIRECTORY environment
7921 variables indicate the working directory and the workspace root
7922 of the Bazel invocation. Tests are provided with an approximation
7923 of the official test environment.
7924 - repository rules are no longer restricted to return None.
7925 - Add --high_priority_workers flag.
7926 - CppRules: Feature configuration can be created from Skylark
7927 - Adds new-style JavaInfo provider constructor.
7928 - Make java_common.compile now uses java_toolchain javacopts by
7929 default; explicitly retrieving them using
7930 java_common.default_javac_opts is unnecessary.
7931 - CppRules: C++ command lines and env variables for C++ actions can
7932 be retrieved from feature configuration.
7933 - Skylark rule definitions may advertise providers that targets of
7934 the rule must propagate.
7935 - Bazel now supports running actions inside Docker containers.
7936 To use this feature, run "bazel build --spawn_strategy=docker
7937 --experimental_docker_image=myimage:latest".
7938 - Remote execution works for Windows binaries with launchers.
7939 - Fixing start/end lib expansion for linking. There were many cases
7940 where archive files were still being used with toolchains that
7941 support start/end lib. This change consolidates the places that
7942 make that decision so they can be more consistent.
7943 - Add support for reporting an error if
7944 android_test.binary_under_test contains incompatible versions of
7945 deps
7946 - We replaced the --experimental_local_disk_cache and
7947 --experimental_local_disk_cache_path flags into a single
7948 --disk_cache flag. Additionally, Bazel now tries to create the disk cache
7949 directory if it doesn't exist.
7950 - Save Blaze memory by not storing LinkerInput objects in
7951 LinkCommandLine
7952 - In the JavaInfo created by java_common.create_provider now
7953 includes both direct and transitive arguments in
7954 transitive_compile_time_jars and transitive_runtime_jars
7955 - Allow --worker_max_instances to take MnemonicName=value to
7956 specify max for each worker.
7957 - Allow java_toolchain.header_compiler to be an arbitrary executable
7958
Bazel Release System24c68ff2018-05-23 10:59:57 +02007959## Release 0.13.1 (2018-05-23)
7960
7961```
7962Baseline: fdee70e6e39b74bfd9144b1e350d2d8806386e05
7963
7964Cherry picks:
7965 + f083e7623cd03e20ed216117c5ea8c8b4ec61948:
7966 windows: GetOutputRoot() returns GetHomeDir()
7967 + fa36d2f48965b127e8fd397348d16e991135bfb6:
7968 Automated rollback of commit
7969 4465dae23de989f1452e93d0a88ac2a289103dd9.
7970 + 4abd2babcc50900afd0271bf30dc64055f34e100:
7971 Add error message on empty public resources
7972 + 2c957575ff24c183d48ade4345a79ffa5bec3724:
7973 test-setup: remove leading "./" from test name
7974 + e6eaf251acb3b7054c8c5ced58a49c054b5f23b1:
7975 Sort entries by segment when building a parent node to prevent
7976 unordered directory structures.
7977```
7978
7979Important changes:
7980
7981 - Remote Execution: Fixes a regression that produces directories with unsorted file/directory lists
7982
Bazel Release System1d9c6062018-04-30 10:45:38 +02007983## Release 0.13.0 (2018-04-30)
7984
7985```
7986Baseline: fdee70e6e39b74bfd9144b1e350d2d8806386e05
7987
7988Cherry picks:
7989 + f083e7623cd03e20ed216117c5ea8c8b4ec61948:
7990 windows: GetOutputRoot() returns GetHomeDir()
7991 + fa36d2f48965b127e8fd397348d16e991135bfb6:
7992 Automated rollback of commit
7993 4465dae23de989f1452e93d0a88ac2a289103dd9.
7994 + 4abd2babcc50900afd0271bf30dc64055f34e100:
7995 Add error message on empty public resources
7996 + 2c957575ff24c183d48ade4345a79ffa5bec3724:
7997 test-setup: remove leading "./" from test name
7998```
7999
8000Incompatible changes:
8001
8002 - Remove //tools/defaults:android_jar. Use
8003 @bazel_tools//tools/android:android_jar instead.
8004 - The flag --incompatible_show_all_print_messages is removed.
8005 Messages generated by `print` statements from any package will be
8006 displayed as
8007 DEBUG messages.
8008 - The --incompatible_disallow_uncalled_set_constructor flag is no
8009 longer available, the `set` constructor` is completely removed
8010 from Skylark.
8011 Use `depset` instead.
8012 - Variables PACKAGE_NAME and REPOSITORY_NAME are deprecated in
8013 favor of
8014 functions `package_name()` and `repository_name()`.
8015
8016 https://docs.bazel.build/versions/master/skylark/lib/native.html#p
8017 ackage_name
8018 - BUILD_TIMESTAMP now contains seconds (and not milliseconds) since
8019 the epoch.
8020
8021New features:
8022
8023 - Strings have a new .elems() method, that provides an iterator on
8024 the characters of the string.
8025 - Now you can access three functions in windows_cc_configure.bzl by:
8026 load("@bazel_tools/tools/cpp:windows_cc_configure.bzl",
8027 "<function_name>")
8028
8029Important changes:
8030
8031 - CppRules: Unified action_configs for static libraries
8032 - Remove support for blaze dump --vfs. It is no longer meaningful.
8033 - Enable dependency checking for aar_import targets.
8034 - internal_bootstrap_hack has been deprecated and removed.
8035 - Properly handle tree artifacts on the link command line coming
8036 from a cc_library dependency.
8037 - Allow C++ features to make proto_library emit smaller C++ code
8038 - The 'j2objc' configuration fragment is exposed to Skylark.
8039 - Remove the default content of the global bazelrc.
8040 - In int() function, do not auto-detect base if input starts with
8041 '0'.
8042 - Users can now pass --experimental_shortened_obj_file_path=true to
8043 have a shorter object file path, the object file paths (and all
8044 other related paths) will be constructed as following:
8045 If there's no two or more source files with the same base name:
8046
8047 <bazel-bin>/<target_package_path>/_objs/<target_name>/<source_base
8048 _name>.<extension>
8049 otherwise:
8050
8051 <bazel-bin>/<target_package_path>/_objs/<target_name>/N/<source_ba
8052 se_name>.<extension>
8053 N = the file?s order among the source files with the same
8054 basename, starts from 0.
8055 - Move (c/cxx)opts from legacy_compile_flags to user_compile_flags
8056 - CppRules: Remove optional_*_flag fields from CROSSTOOL, they are
8057 not
8058 used, and could be expressed using features.
8059 - Introduce --incompatible_disable_objc_provider_resources to turn
8060 off all resource-related fields of the Objc provider.
8061 - Removed the statement of "What does Bazel support?" as it's
8062 limiting/misleading. Added supported host OSes to
8063 "multi-platform" paragraph.
8064 - android_library AAR output now contains proguard.txt
8065 - Bazel now displays information about remote cache hits and
8066 execution strategies used in its UI after every build and test,
8067 and adds a corresponding line "process stats" to BuildToolLogs in
8068 BEP.
8069 - Print correct build result for builds with --aspects flag.
8070 - android_binary.manifest_merger is no longer supported.
8071
Bazel Release System546976c2018-04-11 17:34:19 +02008072## Release 0.12.0 (2018-04-11)
8073
8074```
8075Baseline: b33e5afa313322a7048044c44d854cbb666b988e
8076
8077Cherry picks:
8078 + 369409995bd75eeb0683fd24f7585d2a90320796:
8079 Automated rollback of commit
8080 c2b332b45e6ea41a14ecbd3c5f30782bcdeec301.
8081 + dbf779869751cc893ba240402d352c6e70be2978:
8082 Emit SJD errors even if we don't know the label of a dependency
8083 + 4c3098cfa6f00f90c7530b6f40d3e93062931c1d:
8084 Android tools: remove mtime-modifications
8085 + a1068c44a700ec2cff84cbd12592e9bfea25d754:
8086 NDK cc_toolchains: include bundled runtime libraries in
8087 cc_toolchain.all_files
8088 + b1be5816ec1bf8e1172c1bed4f29b4e6c6bb7202:
8089 runfiles,Python: remove library from @bazel_tools
8090 + 0a4622012ff796429220fe57d3217f262cc208a8:
8091 Fix visibility of def_parser for remote builds
8092 + 3c5373c50c7c492842f8a468906eda2c0bc90787:
8093 Remove visibility attribute from
8094 //third_party/def_parser:def_parser
8095 + f54d7e5293cc40ce3507a9adef530e46ab817585:
8096 Enable bulk writes in the HttpBlobStore
8097 + 04ce86e8ba96630f89a436167b7f3a195c5e50e7:
8098 remote/http: properly complete user promise
8099```
8100
8101Incompatible changes:
8102
8103 - The order of dict-valued attributes is now the order in the BUILD
8104 file (or in the Skylark dict they were created from) and not
8105 lexicographically sorted.
8106
8107New features:
8108
8109 - The new "--direct_run" flag on "blaze run" lets one run
8110 interactive binaries.
8111 - "blaze run --direct_run" with tests now gives the test an
8112 approximation of the official test environment.
8113 - "blaze run --direct_run" now exports the
8114 BUILD_{WORKSPACE,WORKING}_DIRECTORY variables to tell the binary
8115 about the cwd of the client and the workspace root.
8116 - New Android device test rule: android_instrumentation_test.
8117 - Add option to dump the action graph to a file: 'bazel dump
8118 --action_graph=/path/to/file'.
8119 - Pass `tags` from `java_import_external` rule to the generated
8120 `java_import` rule.
8121 - blaze query: use --proto:output_rule_attrs to filter for given
8122 attributes
8123 - Added Android NDK r15 support, including compatibility with
8124 Unified Headers.
8125 - Adds --ltobackendopt and --per_file_ltobackendopt for passing
8126 options to ThinLTO LTO backend compile actions only.
8127
8128Important changes:
8129
8130 - Fix how libraries to link is specified to archiver actions.
8131 - Fix how libraries_to_link are expanded in the archiver command
8132 line.
8133 - stop using --no-locals in android coverage builds
8134 - apple_binary can now generate dSYM outputs with the
8135 --apple_generate_dsym=true flag.
8136 - Fix FDO_STAMP_MACRO to only be set when fdoBuildStamp is not null.
8137 - Improved clarity of warning message for unsupported NDK revisions.
8138 - Add lint check for discouraging glob(["**/*.java"])
8139 - unifly lint glob(["**/*.java"]) message
8140 - Removed flags `--incompatible_checked_arithmetic`,
8141 `--incompatible_dict_literal_has_no_duplicates`,
8142 `--incompatible_disallow_keyword_only_args`, and `
8143 --incompatible_comprehension_variables_do_not_leak`.
8144 - Add "proto_source_root" flag to proto_library.
8145 - Updated default android_cpu value to armeabi-v7a
8146 - In skylark, print(target) now shows the provider keys of a
8147 target, as debug information.
8148 - The native http_archive rule is deprecated. Use the
8149 Skylark version available via
8150 load("@bazel_tools//tools/build_defs/repo:http.bzl",
8151 "http_archive")
8152 instead.
8153 - flaky_test_attempts supports the regex@attempts syntax, like
8154 runs_per_test.
8155 - Fixed include paths for NDK r13+ llvm-libc++ headers to
8156 `ndk/sources/cxx-stl/llvm-libc++/include` and
8157 `ndk/sources/cxx-stl/llvm-libc++abi/include`
8158 - --config flags now expand in place by default.
8159 - aar_import now sets java.transitive_exports.
8160 - repository_cache is no longer experimental and enabled by default.
8161 - BAZEL_LINKOPTS is now consulted when autoconfiguring c++ toolchain
8162 - The native git_repository rule is deprecated. Use the
8163 Skylark version available via
8164 load("@bazel_tools//tools/build_defs/repo:git.bzl",
8165 "git_repository")
8166 instead.
8167 - Removed flag `--incompatible_load_argument_is_label`.
8168 - CcToolchain: Introduced action_config for
8169 "c++-link-transitive-dynamic-library"
8170 - Use bazel dump --action_graph=/path/to/action.proto
8171 --action_graph:targets://foo:bar,//foo:foo to filter for certain
8172 targets in the action graph dump.
8173 - Added Android NDK r16 support. Use --cxxopt='-std=c++11` compile
8174 with the C++11 standard, and
8175 `--android_crosstool_top=@androidndk//:toolchain-libcpp` to use
8176 the `libc++` STL.
8177 - Add a --build_event_publish_all_actions flag to allow all actions
8178 to be published via the BEP.
8179 - C++: Introduced --experimental_drop_fully_static_linking_mode
8180 - Removed cc_inc_library, please use cc_library instead
8181 - CppRules: cc_binary/cc_test now enable 'static_linking_mode' or
8182 'dynamic_linking_mode'.
8183
Bazel Release Systemc86d6a02018-03-06 19:32:18 +01008184## Release 0.11.1 (2018-03-06)
8185
8186```
8187Baseline: 00d781ae78a8bd51d3c61b621d79f0bb095aff9e
8188
8189Cherry picks:
8190 + ea2d4c475febdbd59ca0e0ba46adc7be759f84e0:
8191 Update stub_finds_runfiles_test to be a real sh_test.
8192 + d855d8133f4efb73ebd5e82c54a9afb4c7565d46:
8193 java,runfiles: fix bugs in runfiles library
8194 + 56aeb04a064218b845ecc193d530c341c6ec854d:
8195 Fixing #4585: broken re-execution of orphaned actions.
8196 + cf3f81aef7c32019d70cbce218a64a03276268f0:
8197 remote: Add support for HTTP Basic Auth
8198 + 28bd997c1c8793973f63dcae4c22bbae49e7d8b7:
8199 Fixing test-setup.sh occasionally missing stdout/stderr, on
8200 systems where "tail --pid" is supported.
8201 + 109e4b4dc9e786e3a2d8d7cb245d18320dbe9216:
8202 Automated rollback of commit
8203 7e6837cc1d1aa4259f5c27ba3606b277b5f6c3e9.
8204 + b3d52b1b6d46a0f23cc91125c1d522e9d13433b4:
8205 Fix incorrect include directories when -no-canonical-prefixes is
8206 passed to clang
8207 + 1001141f0674ff4b611814edcb00a5183680ef4a:
8208 Roll forward of
8209 https://github.com/bazelbuild/bazel/commit/3904ac33a983fd8faebba1
8210 b52bcac5a3ff942029
8211 (https://github.com/bazelbuild/bazel/commit/3904ac33a983fd8faebba
8212 1b52bcac5a3ff942029). Fix #4625 by running the test process in a
8213 sub-shell.
8214 + fc98b44b6181fa4c3efd8613d887970629468d74:
8215 android,windows: bugfix in aar_resources_extractor
8216```
8217
8218Important changes:
8219
8220 - Fixes regression building Android rules on Windows.
8221
Bazel Release System09077a32018-02-23 11:09:18 -05008222## Release 0.11.0 (2018-02-23)
8223
8224```
8225Baseline: 00d781ae78a8bd51d3c61b621d79f0bb095aff9e
8226
8227Cherry picks:
8228 + ea2d4c475febdbd59ca0e0ba46adc7be759f84e0:
8229 Update stub_finds_runfiles_test to be a real sh_test.
8230 + d855d8133f4efb73ebd5e82c54a9afb4c7565d46:
8231 java,runfiles: fix bugs in runfiles library
8232 + 56aeb04a064218b845ecc193d530c341c6ec854d:
8233 Fixing #4585: broken re-execution of orphaned actions.
8234 + cf3f81aef7c32019d70cbce218a64a03276268f0:
8235 remote: Add support for HTTP Basic Auth
8236 + 28bd997c1c8793973f63dcae4c22bbae49e7d8b7:
8237 Fixing test-setup.sh occasionally missing stdout/stderr, on
8238 systems where "tail --pid" is supported.
8239 + 109e4b4dc9e786e3a2d8d7cb245d18320dbe9216:
8240 Automated rollback of commit
8241 7e6837cc1d1aa4259f5c27ba3606b277b5f6c3e9.
8242 + b3d52b1b6d46a0f23cc91125c1d522e9d13433b4:
8243 Fix incorrect include directories when -no-canonical-prefixes is
8244 passed to clang
8245 + 3904ac33a983fd8faebba1b52bcac5a3ff942029:
8246 Automated rollback of commit
8247 28bd997c1c8793973f63dcae4c22bbae49e7d8b7.
8248 + 1001141f0674ff4b611814edcb00a5183680ef4a:
8249 Roll forward of
8250 https://github.com/bazelbuild/bazel/commit/3904ac33a983fd8faebba1
8251 b52bcac5a3ff942029
8252 (https://github.com/bazelbuild/bazel/commit/3904ac33a983fd8faebba
8253 1b52bcac5a3ff942029). Fix #4625 by running the test process in a
8254 sub-shell.
8255```
8256
8257Incompatible changes:
8258
8259 - ctx.fragments.jvm is not available anymore.
8260
8261New features:
8262
8263 - java,runfiles: You can now depend on
8264 `@bazel_tools//tools/runfiles:java-runfiles` to get a
8265 platform-independent runfiles library for Java. See JavaDoc of
8266 https://github.com/bazelbuild/bazel/blob/master/src/tools/runfiles
8267 /java/com/google/devtools/build/runfiles/Runfiles.java for usage
8268 information.
8269
8270Important changes:
8271
8272 - The --[no]experimental_disable_jvm command line option is not
8273 supported anymore.
8274 - Allow expanding TreeArtifacts for libraries_to_link
8275 - Proguarded Android binaries can be built with incremental dexing.
8276 - aar_import now supports assets.
8277 - Crash in OutputJar::Close has been fixed
8278 - generator_* attributes are nonconfigurable.
8279 - Introduces --[no]keep_state_after_build
8280 - Add support for merged object files needed for -flto-unit.
8281 - Fix how libraries to link is specified to archiver actions.
8282 - Replace //tools/defaults:android_jar with
8283 @bazel_tools//tools/android:android_jar.
8284 //tools/defaults:android_jar will be removed in a future release.
8285 - java_common.compile supports neverlink
8286 - Resolved an issue where a failure in the remote cache would not
8287 trigger local re-execution of an action.
8288
Bazel Release Systeme1148362018-02-15 10:02:05 +01008289## Release 0.10.1 (2018-02-15)
8290
8291```
8292Baseline: 22c2f9a7722e8c8b7fdf8f5d30a40f1c4118e993
8293
8294Cherry picks:
8295 + f6ca78808722c8c119affdb33400838ee92d44b6:
8296 isable_presubmit
8297 + 65c13dd5a4c1b4b5a072f7680b8f1cf3c5079b52:
8298 Fix StreamResourceLeak error
8299 + e5436745e1732f5e43fc55f0deb5b19e23ce8524:
8300 windows: fix --symlink_prefix=/ throwing exception
8301 + 22ccdd1ebe1dc495e05d894a3325f6b05e681fb3:
8302 Fix turbine command lines with empty javacopts
8303 + 96c654d43eb2906177325cbc2fc2b1e90dbcc792:
8304 Remove EOL'd Linux flavours, bump CentOS to 6.9.
8305 + f0bec36864f10370cbbda4caa8beac2e0c5ee45b:
8306 Automated rollback of commit
8307 2aeaeba66857c561dd6d63c79a213f1cabc3650d.
8308 + 860af5be10b6bad68144d9d2d34173e86b40268c:
8309 Consolidate Error Prone resource handling
8310 + 2e631c99495f75270d2639542cefb531ec262d67:
8311 sandbox: properly add `tmpDir` to `writablePaths`
8312 + 5bfa5844d0d16d71e88002956e88402bfec88ef7:
8313 actions,temp: respect TMPDIR envvar
8314 + 6cc2ad8676d1ae0542b351a07a05ddbe5efac165:
8315 sandbox: add env[TMPDIR] instead of `tmpDir`
8316 + 40c757f4ab90214f95935672532a495c4551490a:
8317 Change git clone to pull all history, so all needed commits can
8318 be accessed.
8319 + 56aeb04a064218b845ecc193d530c341c6ec854d:
8320 Fixing #4585: broken re-execution of orphaned actions.
8321```
8322
8323Important changes:
8324
8325 - Resolved an issue where a failure in the remote cache would not
8326 trigger local re-execution of an action.
8327
Bazel Release System5bd27482018-02-01 09:43:33 +01008328## Release 0.10.0 (2018-02-01)
8329
8330```
8331Baseline: 22c2f9a7722e8c8b7fdf8f5d30a40f1c4118e993
8332
8333Cherry picks:
8334 + f6ca78808722c8c119affdb33400838ee92d44b6:
8335 isable_presubmit
8336 + 65c13dd5a4c1b4b5a072f7680b8f1cf3c5079b52:
8337 Fix StreamResourceLeak error
8338 + e5436745e1732f5e43fc55f0deb5b19e23ce8524:
8339 windows: fix --symlink_prefix=/ throwing exception
8340 + 22ccdd1ebe1dc495e05d894a3325f6b05e681fb3:
8341 Fix turbine command lines with empty javacopts
8342 + 96c654d43eb2906177325cbc2fc2b1e90dbcc792:
8343 Remove EOL'd Linux flavours, bump CentOS to 6.9.
8344 + f0bec36864f10370cbbda4caa8beac2e0c5ee45b:
8345 Automated rollback of commit
8346 2aeaeba66857c561dd6d63c79a213f1cabc3650d.
8347 + 860af5be10b6bad68144d9d2d34173e86b40268c:
8348 Consolidate Error Prone resource handling
8349 + 2e631c99495f75270d2639542cefb531ec262d67:
8350 sandbox: properly add `tmpDir` to `writablePaths`
8351 + 5bfa5844d0d16d71e88002956e88402bfec88ef7:
8352 actions,temp: respect TMPDIR envvar
8353 + 6cc2ad8676d1ae0542b351a07a05ddbe5efac165:
8354 sandbox: add env[TMPDIR] instead of `tmpDir`
8355 + 40c757f4ab90214f95935672532a495c4551490a:
8356 Change git clone to pull all history, so all needed commits can
8357 be accessed.
8358```
8359
8360Incompatible changes:
8361
8362 - In order to access the template variables $(JAVA) and
8363 $(JAVABASE), @bazel_tools//tools/jdk:current_java_runtime needs
8364 to be added to the toolchains= attribute from now on.
8365 - The ctx.middle_man function is not supported anymore.
8366 - The flag --incompatible_list_plus_equals_inplace is removed, its
8367 default behavior is preserved. += on lists now always mutates the
8368 left hand
8369 side.
8370 - --android_sdk no longer supports filegroup targets.
8371 - android_* rules no longer support legacy_native_support attribute.
8372
8373New features:
8374
8375 - query: Add option --noproto:flatten_selects to turn off
8376 flattening of selector lists in proto output.
8377 - New android test rule, android_local_test.
8378
8379Important changes:
8380
8381 - The --remote_rest_cache flag now respects --remote_timeout.
8382 - --experimental_java_coverage is available for testing.
8383 - The deprecated builtin `set` is no longer allowed even from within
8384 unexecuted code in bzl files. It's temporarily possible to use
8385 --incompatible_disallow_uncalled_set_constructor=false if this
8386 change causes
8387 incompatibility issues.
8388 - Linkstamping is now a separate and full-blown CppCompileAction,
8389 it's
8390 no longer a part of linking command.
8391 - Using `+`, `|` or `.union` on depsets is now deprecated. Please
8392 use the new
8393 constructor instead (see
8394 https://docs.bazel.build/versions/master/skylark/depsets.html).
8395 - config_feature_flag's default_value is optional. It is
8396 only an error to have a config_feature_flag with no default_value
8397 if that config_feature_flag has not been set in the configuration
8398 it is being evaluated in.
8399 - --[no]keep_incrementality_data is gone, replaced by the
8400 enum-valued --incremental_state_retention_strategy
8401 - Linkstamping is now a separate and full-blown CppCompileAction,
8402 it's
8403 no longer a part of linking command.
8404 - Added --checkHashMismatch flag to ZipFilterAction. Valid values
8405 are IGNORE, WARN and ERROR. --errorOnHashMismatch is deprecated,
8406 please use this flag instead.
8407 - Set build jobs equivalent to number of logical processors by
8408 default. Should improve build times significantly.
8409 - Added --(no)expand_test_suites flag.
8410 - Rename --keep_incrementality_data to --track_incremental_state
8411 - --remote_rest_cache was renamed to --remote_http_cache. Both
8412 options keep working in this release, but --remote_rest_cache
8413 will be
8414 removed in the next release.
8415 - Aspects-on-aspect see and propagate over aspect attributes.
8416 - --auth_* flags were renamed to --google_* flags. The old names
8417 will continue to work for this release but will be removed in the
8418 next
8419 release.
8420 - Remote Caching and Execution support output directories.
8421 - Remove defunct flags
8422 --experimental_incremental_dexing_for_lite_proto and
8423 --experimental_incremental_dexing_error_on_missed_jars that have
8424 long been enabled by default
8425 - New version of aapt2 and Resources.proto.
8426 - Make PIC and non PIC outputs for C++ compilation with Tree
8427 Artifacts
8428
Bazel Release System7b423cc2017-12-19 10:31:05 +01008429## Release 0.9.0 (2017-12-19)
Bazel Release System3d53cb02017-12-05 15:28:40 +01008430
8431```
Bazel Release System7b423cc2017-12-19 10:31:05 +01008432Baseline: ddd5ac16aeffa6c4693c348f73e7365240b1abc5
Bazel Release System3d53cb02017-12-05 15:28:40 +01008433
8434Cherry picks:
Bazel Release System7b423cc2017-12-19 10:31:05 +01008435 + 2cf560f83922e6df9626ba3ee063c1caf6797548:
8436 Update version of re2
8437 + a2d2615362c65be98629b39ce39754a325ed1c42:
8438 Check for null build file returned from getBuildFileForPackage.
8439 + 68c577afc2fb33b5e66b820bcc9043fed1071456:
8440 Fix some broken targets and failing tests.
8441 + 766ba8adc4487f17ebfc081aeba6f34b18b53d6c:
Bazel Release System3d53cb02017-12-05 15:28:40 +01008442 Automated rollback of commit
Bazel Release System7b423cc2017-12-19 10:31:05 +01008443 337f19cc54e77c45daa1d5f61bf0a8d3daf8268f.
8444 + a22d0e9c14e58b29d81f5a83bdcc6e5fce52eafe:
8445 Fix: uploading artifacts of failed actions to remote cache
8446 stopped working.
8447 + 03964c8ccb20d673add76c7f37245e837c3899b6:
8448 [java_common.compile] Name output source jar relative to the
8449 output jar name
Bazel Release System3d53cb02017-12-05 15:28:40 +01008450```
8451
Bazel Release System7b423cc2017-12-19 10:31:05 +01008452Incompatible changes:
8453
8454 - The deprecated `set` constructor is removed, along with the
8455 migration flag --incompatible_disallow_set_constructor. It is
8456 still temporarily
8457 allowed to refer to `set` from within unexecuted code.
8458 - The flag --incompatible_disallow_set_constructor is no longer
8459 available, the deprecated `set` constructor is not available
8460 anymore.
8461 - The path to the JVM executable is not accessible anymore as
8462 ctx.{fragments,host_fragments}.jvm.java_executable. Use
8463 JavaRuntimeInfo.java_executable_exec_path instead.
8464 - --clean_style is no longer an option.
8465
8466New features:
8467
8468 - Users can use win_def_file attribute to specify a DEF file for
8469 exporting symbols when build a shared library on Windows.
8470 - Add --experimental_android_resource_cycle_shrinking option to
8471 allow for more aggressive code and resource shrinking.
8472
8473Important changes:
8474
8475 - Late-bound attributes are exposed to skylark. This is a new API
8476 (`configuration_field()`) to depend on certain
8477 configuration-defined targets from skylark rules.
8478 - Document interaction between test_suite and target exclusions
8479 - AAR manifest files will come from the processed resource APK if it
8480 exists.
8481 RELNOTES: None for Blaze users.
8482 - Document interaction between test_suite and target exclusions
8483 - --keep_incrementality_data flag allows Bazel servers to be run in
8484 memory-saving non-incremental mode independent of --batch and
8485 --discard_analysis_cache.
8486 - Add deps attribute to Skylark maven_aar and maven_jar workspace
8487 rules.
8488 - Use --expand_configs_in_place as a startup argument to change the
8489 order in which --config expansions are interpreted.
8490 - SOURCE_DATE_EPOCH
8491 (https://reproducible-builds.org/specs/source-date-epoch/) can
8492 be used to override the timestamp used for stamped target (when
8493 using --stamp).
8494 - Package specifications can now be prefixed with `-` to indicate
8495 negation
8496 - transitive_source_jars is now exposed on JavaInfo.
8497 - Add six to deps of has_services=1 py_proto_librarys.
8498 - java_tests no complain when use_testrunner is explicitly set to 1
8499 and main_class is set.
8500 - transitive_source_jars is now exposed on JavaInfo.
8501 - Debug messages generated by `print()` are not being filtered out
8502 by --output_filter anymore, it's recommended not to use them in
8503 production code.
8504 - in the Label() function, relative_to_caller_repository is now
8505 deprecated.
8506 - java_tests no complain when use_testrunner is explicitly set to 1
8507 and main_class is set.
8508 - Bazel's default hash function was changed from MD5 to SHA256.
8509 In particular, this affects users of remote caching and
8510 execution, as
8511 all hashes will be SHA256 by default.
8512 - Remove redirects for domains be.bazel.build and cr.bazel.build
8513 from the source for docs.bazel.build (because those subdomains
8514 don't resolve here; they resolve to bazel.build, which has the
8515 redirects for them)
8516 - First argument of 'load' must be a label. Path syntax is removed.
8517 (label should start with '//' or ':').
8518 - Document startup option --host_javabase
8519 - The --host_platform and --platform flags are no longer
8520 experimental.
Bazel Release System3d53cb02017-12-05 15:28:40 +01008521
Bazel Release System0838aee2017-11-27 14:16:34 +01008522## Release 0.8.0 (2017-11-27)
8523
8524```
8525Baseline: cff0dc94f6a8e16492adf54c88d0b26abe903d4c
8526
8527Cherry picks:
8528 + 8a49b156c4edf710e3e1e0acfde5a8d27cc3a086:
8529 Fix ImportError on tools.android for junction_lib
8530 + 275ae45b1228bdd0f912c4fbd634b29ba4180383:
8531 Automated rollback of commit
8532 4869c4e17d5b1410070a1570f3244148d8f97b5d.
8533 + d0bf589f2716b3d139c210930371a684c6e158eb:
8534 Add a random number to action temp dir
8535 + 9738f35abddb7ef7a7ef314b5d2a52a3be1b830a:
8536 CcProtoLibrary: Don't add dynamic librarys to filesToBuild on
8537 Windows
8538 + 0d6ff477099fdf6c8c1c7d4e2104f9184afe0a2b:
8539 Automated rollback of commit
8540 0ebb3e54fc890946ae6b3d059ecbd50e4b5ec840.
8541```
8542
8543Incompatible changes:
8544
8545 - ctx.fragments.apple.{xcode_version,ios_minimum_os} is not
8546 supported anymore. The same information is accessible through the
8547 target @bazel_tools//tools/osx:current_xcode_config: point an
8548 implicit attribute to it (i.e.
8549 attr.label(default=Label("@bazel_tools//tools/osx:current_xcode_co
8550 nfig")) then use
8551 ctx.attr._xcode_config[apple_common].XcodeVersionConfig].
8552 - ctx.fragments.apple.minimum_os_for_platform_type is not supported
8553 anymore. The same information is accessible through the target
8554 @bazel_tools//tools/osx:current_xcode_config: point an implicit
8555 attribute to it (i.e.
8556 attr.label(default=Label("@bazel_tools//tools/osx:current_xcode_co
8557 nfig")) then use
8558 ctx.attr._xcode_config[apple_common].XcodeVersionConfig].minimum_o
8559 s_for_platform_type .
8560 - ctx.fragments.apple.sdk_version_for_platform is not supported
8561 anymore. The same information is accessible through the target
8562 @bazel_tools//tools/osx:current_xcode_config: point an implicit
8563 attribute to it (i.e.
8564 attr.label(default=Label("@bazel_tools//tools/osx:current_xcode_co
8565 nfig")) then use
8566 ctx.attr._xcode_config[apple_common].XcodeVersionConfig].sdk_versi
8567 on_for_platform .
8568 - --javabase=<absolute path> and --host_javabase=<absolute path>
8569 are not supported anymore. If you need this functionality
8570 java_runtime_suite(name="suite", default=":runtime")
8571 java_runtime(name="runtime", java_home=<path to the JDK>) is an
8572 alternative.
8573 - The flag --incompatible_descriptive_string_representations is no
8574 longer available, old style string representations of objects are
8575 not supported
8576 anymore.
8577 - The flag --incompatible_disallow_set_constructor is no longer
8578 available, the deprecated `set` constructor is not available
8579 anymore.
8580 - += on lists now mutates them. `list1 += list2` is now equivalent
8581 to `list1.extend(list2)` and not equivalent to `list1 = list1 +
8582 list2` anymore.
8583 - the target_apple_env and apple_host_system_env methods on
8584 ctx.fragments.apple are not supported anymore. The same
8585 information is accessible through apple_common.target_apple_env
8586 and apple_common.apple_host_system_env . They need the Xcode
8587 configuration as an argument, which can be obtained by declaring
8588 an implicit dependency on it (i.e.
8589 attr.label(default=Label("@bazel_tools//tools/osx:current_xcode_co
8590 nfig")) and then calling e.g.
8591 apple_common.apple_host_system_env(ctx.attr._xcode_config[apple_co
8592 mmon.XcodeVersionConfig]).
8593 - C++ toolchain identifiers are not in the name of the output
8594 directory anymore.
8595 - Selecting on "xcode_version" and
8596 "{ios,tvos,macos,watchos}_sdk_version" is not supported anymore.
8597 What was config_setting(values={"$FOO_version": $VALUE}) is now
8598 config_setting(flag_values={"@bazel_tools//tools/osx:$FOO_version_
8599 flag": $VALUE}).
8600 - Selecting on "xcode_version" and
8601 "{ios,tvos,macos,watchos}_sdk_version" is not supported anymore.
8602 What was config_setting(values={"$FOO_version": $VALUE}) is now
8603 config_setting(flag_values={"@bazel_tools//tools/osx:$FOO_version_
8604 flag": $VALUE}).
8605 - The flag --incompatible_disallow_set_constructor is no longer
8606 available, the deprecated `set` constructor is not available
8607 anymore.
8608 - Selecting on "xcode_version" and
8609 "{ios,tvos,macos,watchos}_sdk_version" is not supported anymore.
8610 What was config_setting(values={"$FOO_version": $VALUE}) is now
8611 config_setting(flag_values={"@bazel_tools//tools/osx:$FOO_versi...
8612
8613New features:
8614
8615 - runfiles, sh: Shell scripts may now depend on
8616 //src/tools/runfiles:runfiles_sh_lib and source runfiles.sh. The
8617 script defines the `rlocation` function which returns runfile
8618 paths on every platform.
8619 - In addition to $(location), Bazel now also supports $(rootpath)
8620 to obtain
8621 the root-relative path (i.e., for runfiles locations), and
8622 $(execpath) to
8623 obtain the exec path (i.e., for build-time locations)
8624
8625Important changes:
8626
8627 - android_binary now supports custom debug keys via the debug_key
8628 attribute.
8629 - Updated Android proguard to 5.3.3. It now works with android-24+.
8630 - --experimental_use_parallel_android_resource_processing and
8631 --experimental_android_use_nocompress_extensions_on_apk are
8632 removed. These features are fully rolled out.
8633 - Fixes #2574
8634 - Fixes #3834
8635 - Enable experimental UI by default.
8636 - .
8637 RELNOTES: None.
8638 RELNOTES: No.
8639 - Add memory profiler.
8640 - [Bazel] {java,cc}_proto_library now look for dependencies in
8641 @com_google_protobuf, instead of in @com_google_protobuf_$LANG
8642 - Improved merge.sh script in cookbook.
8643 - Fixing regression to --experimental_remote_spawn_cache
8644 - Support for linker scripts in NativeDepsHelper (e.g.,
8645 android_binary)
8646 - Skylark semantics flags now affect WORKSPACE files and repository
8647 rules.
8648 - ctx.outputs.executable is deprecated. Use DefaultInfo(executable
8649 = ...) instead.
8650 - Update "mirror.bazel.build" urls to use https.
8651 - Improve --config logging when --announce_rc is present.
8652 - Document interaction between test_suite and target exclusions
8653 - Replace version numbers for Bazel installers with "<version>"
8654 (because this will change often)
8655 - Published command lines should have improved lists of effective
8656 options.
8657 - --incremental_dexing_binary_types has been removed. All builds
8658 are supported by incremental dexing (modulo proguard and some
8659 blacklisted dx flags).
8660 - Document --host_javabase, --host_java_toolchain
8661
Bazel Release System76b6d0a2017-10-18 14:34:11 +02008662## Release 0.7.0 (2017-10-18)
8663
8664```
8665Baseline: 5cc6246d429f7d9119b97ce263b4fd6893222e92
8666
8667Cherry picks:
8668 + e79a1107d90380501102990d82cbfaa8f51a1778:
8669 Windows,bootstrapping: fix build_windows_jni.sh
8670```
8671
8672Incompatible changes:
8673
8674 - The --output=location flag to 'bazel query' cannot be used with
8675 query expressions that involve the 'buildfiles' or 'loadfiles'
8676 operators. This also applies to 'genquery' rules.
8677 - Operators for equality, comparison, 'in' and 'not in' are no
8678 longer associative,
8679 e.g. x < y < z is now a syntax error. Before, it was parsed
8680 as: (x < y) < z.
8681 - In strings, octal sequences greater than \377 are now forbidden
8682 (e.g. "\\600").
8683 Previously, Blaze had the same behavior as Python 2, where
8684 "\\450" == "\050".
8685 - Using tabulation for identation is now fobidden in .bzl files
8686 - `load` is now a language keyword, it cannot be used as an
8687 identifier
8688 - lvalues must have define at least one variable (i.e. we forbid
8689 `[] = f()`).
8690 - Fixed a bug whereby multiple load() statements could appear on
8691 the same line
8692 - -extra_checks:off is no longer supported; use
8693 -XepDisableAllChecks instead
8694 - java_common.java_toolchain_attr is removed. Depend on the
8695 java_toolchain_alias() rule to accomplish the same thing.
8696 - cc_common.cc_toolchain_attr and java_common.java_runtime_attr are
8697 not supported anymore and were replaced with the
8698 cc_toolchain_alias() and java_runtime_alias() rules.
8699 - Noop flag --deprecated_generate_xcode_project deleted.
8700 - Objects in Skylark are converted to strings in a more descriptive
8701 and less harmful way (they don't leak information that shouldn't
8702 be accessed by Skylark code, e.g. nondeterministic memory addresses
8703 of objects).
8704 - `set` is deprecated in BUILD and .bzl files, please use `depset`
8705 instead. Ordering names have also been changed, please use "default",
8706 "postorder", "preorder", and "topological" instead of "stable",
8707 "compile", "naive_link", and "link" correspondingly.
8708 - Integer overflow (on signed 32 bit numbers) in BUILD/bzl files is
8709 an error.
8710 - Keyword-only syntax in a function definition is now forbidden
8711 e.g. `def foo(a, *, b)` or `def foo(a, *b, c)`
8712 - --incompatible_comprehension_variables_do_not_leak defaults to
8713 "true."
8714 Iteration variable becomes inaccessible after a list/dict
8715 comprehension.
8716 - @bazel_tools//tools/build_defs/docker:docker.bzl is no longer
8717 available, please see https://github.com/bazelbuild/rules_docker.
8718
8719New features:
8720
8721 - Zipped LLVM profiles are now supported.
8722 - LIPO maps to ThinLTO for LLVM builds.
8723 - Change to handle LLVM FDO zipped profile contents correctly.
8724 - Do not disable fully dynamic linking with ThinLTO when invoked
8725 via LIPO options.
8726 - There is now a 'siblings' query function. See the query
8727 documentation for more details.
8728 - Added the print_action command, which outputs the
8729 actions needed to build a given target in the form of an
8730 ExtraActionSummary proto in text format.
8731 - android_binary now supports proguard_apply_dictionary to specify
8732 a custom dictionary to use for choosing names to obfuscate
8733 classes and members to.
8734
8735Important changes:
8736
8737 - Windows: bazel clean --expunge works
8738 - First argument of 'load' should be a label. Path syntax is
8739 deprecated (label should start with '//' or ':').
8740 - Octal prefix '0' is deprecated in favor of '0o' (use 0o777
8741 instead of 0777).
8742 - The extension_safe attribute of apple_binary no longer validates
8743 transitive dependencies are compiled against extension_safe APIs.
8744 - Parentheses around the tuple are now mandatory in [a for b in c
8745 if 1, 2]
8746 - Adjust the thresholds for --test_verbose_timeout_warnings so that
8747 it can recommending timeout increases and won't recommend
8748 timeouts that are too close to the actual timeout.
8749 - Iterating on a `depset` object is deprecated. If you need an
8750 iterable, call the `.to_list()` method first.
8751 - Bazel now uses tools from action_configs in Crosstool by default
8752 (as oposed to using top level tools).
8753 - Incremental dexing errors on combination of --multidex=off and
8754 either --main-dex-list or --minimal-main-dex.
8755 - When using the dictionary literal syntax, it is now an error to
8756 have duplicated keys (e.g. {'ab': 3, 'ab': 5}).
8757 - New property on android_sdk: aapt2
8758 Choose the version of aapt on android_binary
8759 - Add idl_preprocessed attribute to android_library, so that
8760 preprocessed aidl files can be passed to android_library for
8761 compiling
8762 - Bazel's remote_worker backend for remote execution supports
8763 sandboxing on Linux now. Check
8764 https://github.com/bazelbuild/bazel/blob/master/src/tools/remote_w
8765 orker/README.md for details.
8766 - Allows flags that expand to take values.
8767 - Make querying attributes formed by selector lists of list types
8768 more efficient by no longer listing every possible combination of
8769 attribute value but by more compactly storing the possible values
8770 of the list.
8771 - writing build events to a file is no longer experimental
8772 - set --rewrite_calls_to_long_compare to false by default.
8773 - ObjC and C++ coverage feature is unified under name 'coverage'
8774 - Enable --incremental_dexing for Android builds by default. Note
8775 that some dexopts are incompatible with incremental dexing,
8776 including --force-jumbo.
8777 - Evaluation will soon use checked arithmetics and throw an error
8778 instead of overflow/underflow.
8779 - Implicit iteration in the CROSSTOOL has been removed, use
8780 explicit 'iterate_over' message.
8781 - Add option for Android specific grte_top
8782 - Crosstool patches are only applied if the toolchain doesn't define
8783 'no_legacy_features' feature.
8784 - 'platform_type' is now a mandatory attribute on apple_binary and
8785 apple_static_library rules.
8786 If this change breaks your build, feel free to add platform_type
8787 = 'ios' to any apple_binary and apple_static_library
8788 targets in your project, as this was the previous default
8789 behavior.
8790 - Remove apple_watch2_extension build rule. Users should be using
8791 the skylark watchos_application and watchos_extension rules.
8792 https://github.com/bazelbuild/rules_apple has details.
8793 - Check stderr to detect if connected to a terminal. Deprecate
8794 --isatty.
8795 - Commands that shut down the server (like "shutdown") now ensure
8796 that the server process has terminated before the client process
8797 terminates.
8798 - Remove apple_watch1_extension and apple_watch_extension_binary
8799 rules. Users should be using the skylark watchos_application and
8800 watchos_extension rules.
8801 https://github.com/bazelbuild/rules_apple has details.
8802 - Windows: Wrapper-less CROSSTOOL becomes default now.
8803 set USE_MSVC_WRAPPER=1 if you still want to use wrapper script.
8804 - Ignore --glibc in the Android transition.
8805 - Remove --experimental_android_use_singlejar_for_multidex.
8806 - nocopts now also filter copts
8807 - 'strip' action is now configured via feature configuration
8808 - The Build Event Service (BES) client now properly supports
8809 Google Applicaton Default Credentials.
8810 - Flags from action_config get added first to the command line
8811 first, before the flags from features.
8812 - update dexing tools to Android SDK 26.0.1
8813 - Bazel Android support now requires build-tools 26.0.1 or later.
8814 - `bazel info output_path` no longer relies on the root directory
8815 filename being equal to the workspace name.
8816 - The `print` function now prints debug messages instead of
8817 warnings.
8818 - speedup of incremental dexing tools
8819 - --announce_rc now controls whether bazelrc startup options are
8820 printed to stderr.
8821 - Removing a few unused objc_provider keys.
8822 - Improved logging when workers have to be restarted due to its
8823 files having changed.
8824 - Top-level `if` statements are now forbidden.
8825 - Java protos are compiled to Java 7 bytecode.
8826 - All Android builds now use the desugar tool to support some Java
8827 8 features by default. To disable, use the --nodesugar_for_android flag.
8828 - Skylark-related options may now appear as "common" command
8829 options in the .bazelrc
8830 - Python is now required to build bazel.
8831 - New --build_runfile_manifests flag controls production of
8832 runfiles manifests.
8833 - Enable debug info for Java builds
8834 - Allow java_lite_proto_library in the deps of android rules.
8835 - .so files in APKs will be memory-page aligned when
8836 android_binary.nocompress_extensions contains ".so" and
8837 --experimental_android_use_nocompress_extensions_on_apk is
8838 specified.
8839 - Skylark providers can specify allowed fields and their
8840 documentation.
8841 - Support ctx.actions.args() for more efficient Skylark command
8842 line construction.
8843 - The remote HTTP/1.1 caching client (--remote_rest_cache) now
8844 distinquishes between action cache and CAS. The request URL for
8845 the action cache is prefixed with 'ac' and the URL for the CAS
8846 is prefixed with 'cas'.
8847 - `JavaInfo` is a preferred alias to `java_common.provider`.
8848 - J2ObjC version updated to 2.0.3.
8849 - A new Java coverage implementation is available. Makes possible
8850 coverage for Skylark JVM rules.
8851 - Make proguard_apply_dictionary also apply to class and package
8852 obfuscation, not just class members.
8853 - android_binary.nocompress_extensions now applies to all files in
8854 the APK, not just resources and assets.
8855 - The apple_genrule rule that is distributed with Bazel has been
8856 deleted. Users who wish to use genrules with Xcode's
8857 DEVELOPER_DIR set should use the rules in
8858 https://github.com/bazelbuild/rules_apple instead.
8859 - The swift_library rule that is distributed with Bazel has been
8860 deleted. Users who wish to compile Swift should use the rules in
8861 https://github.com/bazelbuild/rules_apple instead.
8862 - The Build Event Protocol's File.uri field is now properly
8863 encoded according to RFC2396.
8864 - Deprecated: Using the android_library.deps attribute to
8865 implicitly export targets to dependent rules. If your code is
8866 using this feature, Bazel will raise a warning. To fix, please
8867 use android_library.exports to explicitly specify exported
8868 targets. Run with
8869 --experimental_allow_android_library_deps_without_srcs=false to
8870 ensure forward compatibility when this feature is removed in a
8871 future release.
8872 - java_common.create_provider is now supported with creating ijars
8873 by default. This introduces incompatibilities for existing users.
8874 Please set use_ijar=False if you don't want to use ijars.
8875 - Tests can now write files to TEST_UNDECLARED_OUTPUTS_DIR and
8876 TEST_UNDECLARED_OUTPUTS_ANNOTATIONS_DIR and these will be
8877 reflected under bazel-testlogs.
8878 - remove unused --host_incremental_dexing flag
8879 - Stop using --undefined dynamic_lookup in Apple links. Enables
8880 unresolved symbol errors.
8881 - All test output files included for cached, uncached, and multiple
8882 attempt tests.
8883 - Android rules no longer restrict the manifest file to be named
8884 "AndroidManifest.xml".
8885 - Boolean flag values will now get normalized to 1 or 0 in
8886 canonicalize-flags output.
8887 - added experimental --use_new_category_enum to the help command to
8888 output options grouped by the new type of category.
8889 - Expose output jars and jdeps in java_common.provider, when
8890 available.
8891 - android_library targets are no longer allowed to use deps to
8892 export targets implicitly; please use android_library.exports
8893 instead.
8894 - New depset API
8895 - apple_binary and apple_static_library no longer support
8896 compilation attributes such as 'srcs'. If this breaks any
8897 existing targets, you may migrate all such attributes to a new
8898 objc_library target and depend on that objc_library target via
8899 the 'deps' attribute of apple_binary or apple_static_library.
8900
Bazel Release Systemed0ebc02017-10-05 23:52:25 +02008901## Release 0.6.1 (2017-10-05)
8902
8903```
8904Baseline: 87cc92e5df35d02a7c9bc50b229c513563dc1689
8905
8906Cherry picks:
8907 + a615d288b008c36c659fdc17965207bb62d95d8d:
8908 Rollback context.actions.args() functionality.
8909 + 7b091c1397a82258e26ab5336df6c8dae1d97384:
8910 Add a global failure when a test is interrupted/cancelled.
8911 + 95b0467e3eb42a8ce8d1179c0c7e1aab040e8120:
8912 Cleanups for Skylark tracebacks
8913 + cc9c2f07127a832a88f27f5d72e5508000b53429:
8914 Remove the status xml attribute from AntXmlResultWriter
8915 + 471c0e1678d0471961f1dc467666991e4cce3846:
8916 Release 0.6.0 (2017-09-28)
8917 + 8bdd409f4900d4574667fed83d86b494debef467:
8918 Only compute hostname once per server lifetime
8919 + 0bc9b3e14f305706d72180371f73a98d6bfcdf35:
8920 Fix bug in NetUtil caching.
8921```
8922
8923Important changes:
8924 - Only compute hostname once per server lifetime
8925
Bazel Release System471c0e12017-09-28 16:36:12 +02008926## Release 0.6.0 (2017-09-28)
8927
8928```
8929Baseline: 87cc92e5df35d02a7c9bc50b229c513563dc1689
8930
8931Cherry picks:
8932 + a615d288b008c36c659fdc17965207bb62d95d8d:
8933 Rollback context.actions.args() functionality.
8934 + 7b091c1397a82258e26ab5336df6c8dae1d97384:
8935 Add a global failure when a test is interrupted/cancelled.
8936 + 95b0467e3eb42a8ce8d1179c0c7e1aab040e8120:
8937 Cleanups for Skylark tracebacks
8938 + cc9c2f07127a832a88f27f5d72e5508000b53429:
8939 Remove the status xml attribute from AntXmlResultWriter
8940```
8941
8942Incompatible changes:
8943
8944 - Noop flag --deprecated_generate_xcode_project deleted.
8945 - Objects in Skylark are converted to strings in a more descriptive
8946 and less harmful way (they don't leak information that shouldn't
8947 be accessed by Skylark code, e.g. nondeterministic memory addresses
8948 of objects).
8949 - `set` is deprecated in BUILD and .bzl files, please use `depset`
8950 instead. Ordering names have also been changed, please use
8951 "default", "postorder", "preorder", and "topological" instead of
8952 "stable", "compile", "naive_link", and "link" correspondingly.
8953 - Integer overflow (on signed 32 bit numbers) in BUILD/bzl files is
8954 an error.
8955 - Keyword-only syntax in a function definition is now forbidden
8956 e.g. `def foo(a, *, b)` or `def foo(a, *b, c)`
8957 - --incompatible_comprehension_variables_do_not_leak defaults to
8958 "true."
8959 Iteration variable becomes inaccessible after a list/dict
8960 comprehension.
8961
8962New features:
8963
8964 - There is now a 'siblings' query function. See the query
8965 documentation for more details.
8966 - Added the print_action command, which outputs the
8967 actions needed to build a given target in the form of an
8968 ExtraActionSummary proto in text format.
8969 - android_binary now supports proguard_apply_dictionary to specify
8970 a custom dictionary to use for choosing names to obfuscate
8971 classes and members to.
8972
8973Important changes:
8974
8975 - 'strip' action is now configured via feature configuration
8976 - Flags from action_config get added first to the command line
8977 first,
8978 before the flags from features.
8979 - `bazel info output_path` no longer relies on the root directory
8980 filename being equal to the workspace name.
8981 - The `print` function now prints debug messages instead of
8982 warnings.
8983 - speedup of incremental dexing tools
8984 - --announce_rc now controls whether bazelrc startup options are
8985 printed to stderr.
8986 - Removing a few unused objc_provider keys.
8987 - Improved logging when workers have to be restarted due to its
8988 files having changed.
8989 - Top-level `if` statements are now forbidden.
8990 - Java protos are compiled to Java 7 bytecode.
8991 - All Android builds now use the desugar tool to support some Java
8992 8 features by default. To disable, use the
8993 --nodesugar_for_android flag.
8994 - Skylark-related options may now appear as "common" command
8995 options in the .bazelrc
8996 - Python is now required to build bazel.
8997 - When the lvalue of an augmented assignment is a list, we now
8998 throw an error
8999 before evaluating the code (e.g. `a, b += 2, 3`).
9000 - New --build_runfile_manifests flag controls production of
9001 runfiles manifests.
9002 - Enable debug info for Java builds
9003 - Allow java_lite_proto_library in the deps of android rules.
9004 - .so files in APKs will be memory-page aligned when
9005 android_binary.nocompress_extensions contains ".so" and
9006 --experimental_android_use_nocompress_extensions_on_apk is
9007 specified.
9008 - Skylark providers can specify allowed fields and their
9009 documentation.
9010 - Support ctx.actions.args() for more efficient Skylark command
9011 line construction.
9012 - The remote HTTP/1.1 caching client (--remote_rest_cache) now
9013 distinquishes between action cache and CAS. The request URL for
9014 the action cache is prefixed with 'ac' and the URL for the CAS
9015 is prefixed with 'cas'.
9016 - `JavaInfo` is a preferred alias to `java_common.provider`.
9017 - J2ObjC version updated to 2.0.3.
9018 - A new Java coverage implementation is available. Makes possible
9019 coverage for Skylark JVM rules.
9020 - Make proguard_apply_dictionary also apply to class and package
9021 obfuscation, not just class members.
9022 - When using the dictionary literal syntax, it is now an error to
9023 have duplicated keys (e.g. {'ab': 3, 'ab': 5}).
9024 - android_binary.nocompress_extensions now applies to all files in
9025 the APK, not just resources and assets.
9026 - The apple_genrule rule that is distributed with Bazel has been
9027 deleted. Users who wish to use genrules with Xcode's
9028 DEVELOPER_DIR set should use the rules in
9029 https://github.com/bazelbuild/rules_apple instead.
9030 - The swift_library rule that is distributed with Bazel has been
9031 deleted. Users who wish to compile Swift should use the rules in
9032 https://github.com/bazelbuild/rules_apple instead.
9033
Bazel Release System5371d132017-08-25 11:24:06 +02009034## Release 0.5.4 (2017-08-25)
9035
9036```
9037Baseline: 6563b2d42d29196432d5fcafa0144b8371fbb028
9038
9039Cherry picks:
9040 + d4fa181f8607c35230b7efa1ce94188b51508962:
9041 Use getExecPathString when getting bash_main_file
9042 + 837e1b3d4859140d29aaa6bbab8fbb008e6d701e:
9043 Windows, sh_bin. launcher: export runfiles envvars
9044 + fe9ba893c0ebec19228086356af5fa8d81f2809b:
9045 grpc: Consolidate gRPC code from BES and Remote Execution. Fixes
9046 #3460, #3486
9047 + e8d4366cd374fba92f1425de0d475411c8defda4:
9048 Automated rollback of commit
9049 496d3ded0bce12b7371a93e1183ba30e6aa88032.
9050 + 242a43449dd44a22857f6ce95f7cc6a7e134d298:
9051 bes,remote: update default auth scope.
9052 + 793b409eeae2b42be7fed58251afa87b5733ca4d:
9053 Windows, sh_bin. launcher: fix manifest path
9054 + 7e4fbbe4ab3915a57b2187408c3909e5cd6c6013:
9055 Add --windows_exe_launcher option
9056 + 91fb38e92ace6cf14ce5da6527d71320b4e3f3d2:
9057 remote_worker: Serialize fork() calls. Fixes #3356
9058 + b79a9fcd40f448d3aebb2b93a2ebe80d09b38408:
9059 Quote python_path and launcher in
9060 python_stub_template_windows.txt
9061 + 4a2e17f85fc8450aa084b201c5f24b30010c5987:
9062 Add build_windows_jni.sh back
9063 + ce61d638197251f71ed90db74843b55d9c2e9ae5:
9064 don't use methods and classes removed in upstream dx RELNOTES:
9065 update dexing tools to Android SDK 26.0.1
9066 + 5393a4996d701fa192964a35cbb75e558a0599c0:
9067 Make Bazel enforce requirement on build-tools 26.0.1 or later.
9068 + 5fac03570f80856c063c6019f5beb3bdc1672dee:
9069 Fix --verbose_failures w/ sandboxing to print the full command
9070 line
9071 + f7bd1acf1f96bb7e3e19edb9483d9e07eb5af070:
9072 Only patch in C++ compile features when they are not already
9073 defined in crosstool
9074 + d7f5c120417bc2d2344dfb285322355f225d9153:
9075 Bump python-gflags to 3.1.0, take two
9076 + 3cb136d5451e9d8af58f9a99990cad0592df101a:
9077 Add python to bazel's dockerfiles
9078```
9079
9080New features:
9081
9082 - Do not disable fully dynamic linking with ThinLTO when invoked
9083 via LIPO options.
9084
9085Important changes:
9086
9087 - Ignore --glibc in the Android transition.
9088 - Remove --experimental_android_use_singlejar_for_multidex.
9089 - nocopts now also filter copts
9090 - The Build Event Service (BES) client now properly supports
9091 Google Applicaton Default Credentials.
9092 - update dexing tools to Android SDK 26.0.1
9093 - Bazel Android support now requires build-tools 26.0.1 or later.
9094 - Fix a bug in the remote_worker that would at times make it crash on Linux. See #3356
9095 - The java_proto_library rule now supports generated sources. See #2265
9096
Bazel Release System195a7a82017-07-27 20:27:32 +02009097## Release 0.5.3 (2017-07-27)
9098
9099```
9100Baseline: 88518522a18df5788736be6151fc67992efe2aad
9101
9102Cherry picks:
9103 + 820a46af10808396873c36d0f331e533118cf0c6:
9104 Automated rollback of commit
9105 6d6e87297fe8818e4c374fdfabfbcf538bca898a.
9106 + ccfb2df69ecf4746f5a15e1295af995c3a45aa94:
9107 Allow py_binary to be the executable of a Skylark action or any
9108 SpawnAction on Windows.
9109 + 06534911696838e720c8681f6f568c69d28da65e:
9110 Fix string representation for the Root class
9111 + cd159bcee72a7f377621b45409807231a636f9e2:
9112 sandbox: Allow UNIX sockets on macOS even when block-network is
9113 used.
9114 + ad73cba3caa2e08ad61ea9ca63f9111cde1f48d1:
9115 Fix python_stub_template.txt to be compatible with Python 2.4.
9116 + 9a63aff8bb771af8917903fbbc9df3b708e2c0ed:
9117 Create Windows ZIP release artifact using Bazel
9118 + 5e576637b5705aff0a7bf56b5077463dffcd712f:
9119 Automated rollback of commit
9120 820a46af10808396873c36d0f331e533118cf0c6.
9121 + b6e29ca217b02c3ba499b85479a3830f59c9b9b6:
9122 Use the correct function to generate the release notes
9123 + 0f3481ba6364f24ef76b839bdde06ae7883c9bd9:
9124 Include <cinttypes> instead of <stdint.h>
9125```
9126
9127Incompatible changes:
9128
9129 - The --output=location flag to 'bazel query' cannot be used with
9130 query expressions that involve the 'buildfiles' or 'loadfiles'
9131 operators. This also applies to 'genquery' rules.
9132 - Operators for equality, comparison, 'in' and 'not in' are no
9133 longer associative, e.g. x < y < z is now a syntax error.
9134 Before, it was parsed as: (x < y) < z.
9135 - In strings, octal sequences greater than \377 are now forbidden
9136 (e.g. "\\600"). Previously, Blaze had the same behavior as Python 2,
9137 where "\\450" == "\050".
9138 - Using tabulation for identation is now fobidden in .bzl files
9139 - `load` is now a language keyword, it cannot be used as an
9140 identifier
9141 - lvalues must have define at least one variable (i.e. we forbid
9142 `[] = f()`).
9143 - Fixed a bug whereby multiple load() statements could appear on
9144 the same line
9145 - -extra_checks:off is no longer supported; use
9146 -XepDisableAllChecks instead
9147 - java_common.java_toolchain_attr is removed. Depend on the
9148 java_toolchain_alias() rule to accomplish the same thing.
9149 - cc_common.cc_toolchain_attr and java_common.java_runtime_attr are
9150 not supported anymore and were replaced with the
9151 cc_toolchain_alias() and java_runtime_alias() rules.
9152
9153New features:
9154
9155 - Zipped LLVM profiles are now supported.
9156 - LIPO maps to ThinLTO for LLVM builds.
9157 - Change to handle LLVM FDO zipped profile contents correctly.
9158
9159Important changes:
9160
9161 - Windows: bazel clean --expunge works
9162 - First argument of 'load' should be a label. Path syntax is
9163 deprecated (label should start with '//' or ':').
9164 - Octal prefix '0' is deprecated in favor of '0o' (use 0o777
9165 instead of 0777).
9166 - The extension_safe attribute of apple_binary no longer validates
9167 transitive dependencies are compiled against extension_safe APIs.
9168 - Parentheses around the tuple are now mandatory in [a for b in c
9169 if 1, 2]
9170 - Adjust the thresholds for --test_verbose_timeout_warnings so that
9171 it can recommending timeout increases and won't recommend
9172 timeouts that are too close to the actual timeout.
9173 - Iterating on a `depset` object is deprecated. If you need an
9174 iterable, call the `.to_list()` method first.
9175 - Bazel now uses tools from action_configs in Crosstool by default
9176 (as oposed to using top level tools).
9177 - Incremental dexing errors on combination of --multidex=off and
9178 either --main-dex-list or --minimal-main-dex.
9179 - When using the dictionary literal syntax, it is now an error to
9180 have duplicated keys (e.g. {'ab': 3, 'ab': 5}).
9181 - New property on android_sdk: aapt2
9182 Choose the version of aapt on android_binary
9183 - Add idl_preprocessed attribute to android_library, so that
9184 preprocessed aidl files can be passed to android_library for
9185 compiling
9186 - Bazel's remote_worker backend for remote execution supports
9187 sandboxing on Linux now. Check
9188 https://github.com/bazelbuild/bazel/blob/master/src/tools/remote_w
9189 orker/README.md for details.
9190 - Allows flags that expand to take values.
9191 - Make querying attributes formed by selector lists of list types
9192 more efficient by no longer listing every possible combination of
9193 attribute value but by more compactly storing the possible values
9194 of the list.
9195 - Writing build events to a file is no longer experimental
9196 - set --rewrite_calls_to_long_compare to false by default.
9197 - ObjC and C++ coverage feature is unified under name 'coverage'
9198 - Enable --incremental_dexing for Android builds by default. Note
9199 that some dexopts are incompatible with incremental dexing,
9200 including --force-jumbo.
9201 - Evaluation will soon use checked arithmetics and throw an error
9202 instead of overflow/underflow.
9203 - Implicit iteration in the CROSSTOOL has been removed, use
9204 explicit 'iterate_over' message.
9205 - Add option for Android specific grte_top
9206 - Crosstool patches are only applied if the toolchain doesn't define
9207 'no_legacy_features' feature.
9208 - 'platform_type' is now a mandatory attribute on apple_binary and
9209 apple_static_library rules.
9210 If this change breaks your build, feel free to add platform_type
9211 = 'ios' to any apple_binary and apple_static_library
9212 targets in your project, as this was the previous default
9213 behavior.
9214 - Remove apple_watch2_extension build rule. Users should be using
9215 the skylark watchos_application and watchos_extension rules.
9216 https://github.com/bazelbuild/rules_apple has details.
9217 - Check stderr to detect if connected to a terminal. Deprecate
9218 --isatty.
9219 - Commands that shut down the server (like "shutdown") now ensure
9220 that the server process has terminated before the client process
9221 terminates.
9222 - Remove apple_watch1_extension and apple_watch_extension_binary
9223 rules. Users should be using the skylark watchos_application and
9224 watchos_extension rules.
9225 https://github.com/bazelbuild/rules_apple has details.
9226 - Windows: Wrapper-less CROSSTOOL becomes default now.
9227 set USE_MSVC_WRAPPER=1 if you still want to use wrapper script.
9228
Bazel Release System7b851222017-06-27 15:08:47 +02009229## Release 0.5.2 (2017-06-27)
9230
9231```
9232Baseline: e78ad83ded6e9c6d639793827e27b6570e6e9f65
9233
9234Cherry picks:
9235 + 68028317c1d3d831a24f90e2b25d1410ce045c54:
9236 experimental UI: move stopUpdateThread() out of synchronized,
9237 again
9238 + 019935dfbb61e61d08d1351b0365fb4e2d0df305:
9239 Fix bug in URI computation in RemoteModule
9240 + e9424cf9b9d72b98594966d5ac0f15bb018ec639:
9241 Automated rollback of commit
9242 7dec00574aa91327693f6ba7e90bff5bc834253e.
9243 + 9eea05d068a06ab642dd9d86d46ee5fa2e36b02e:
9244 Switching to Watcher API instead of wait_for_completion, in
9245 preparation for deprecating the wait_for_completion field.
9246 + 89659810e3048782dfb5e308e39aa8a0727e464e:
9247 Set correct execroot for info
9248 + 716b527266f47f59a2b7fb2e5fc52cb45e1691b1:
9249 Only create a single per-build instance of the remote cache /
9250 executor
9251 + 1d82d199f82409f217a42bcefebb96f723f91caa:
9252 protobuf: Update protobuf jars to be binary compatible with Java
9253 6. Fixes #3198
9254 + 524b90d9e5acc4fa568f215c9415eaa902e979f8:
9255 Change CAS URI to use the "bytestream" scheme instead of being
9256 scheme-less
9257 + 4929ad79865f8c13ef3b33c827040f4a037e4afe:
9258 Automated g4 rollback of commit
9259 923d7df521f67d031b288180560848bd35e20976.
9260 + 68b9a7e2dc17e32b194238d287e79bee1ba035b9:
9261 Automated g4 rollback of commit
9262 da56606563ee9df438db93392f681bf2abb4ac97.
9263 + 2ba693ffbe824136a0ca5f47d34710612f6302c3:
9264 Automated rollback of commit
9265 ce7c4deda60a307bba5f0c9421738e2a375cf44e.
9266```
9267
9268Incompatible changes:
9269
9270 - Blaze no longer generates xcode projects. Use tulsi.bazel.build
9271 instead.
9272
9273Important changes:
9274
9275 - Keyword-only syntax in a function definition is deprecated
9276 (e.g. `def foo(a, *, b)` or `def foo(a, *b, c)`) and will be
9277 removed in the future.
9278 - Attempting to build an Android target without setting up
9279 android_sdk_repository will now produce a helpful error message.
9280 - Adds a sha256 attribute to git_repository and new_git_repository.
9281 This can only be used if the remote is a public GitHub
9282 repository. It forces
9283 Bazel to download the repository as a tarball, which will often
9284 be faster and
9285 more robust than cloning it.
9286 - Sandboxing is now enabled by default on FreeBSD (via
9287 processwrapper-sandbox).
9288 - android_test may use manifest placeholders with 'manifest_merger
9289 = "android"'.
9290 - load() statements should be called at the top of .bzl files,
9291 before any
9292 other statement. This convention will be enforced in the future.
9293 - Effectively remove sysroot from CppConfiguration and allow it to
9294 use select statements.
9295 - proto_library.strict_proto_deps no longer exists.
9296 - Flag --explicit_jre_deps is now a noop.
9297 - The 'legacy' Android manifest merger is deprecated. Please
9298 upgrade to the 'android' manifest merger, which is the same
9299 merger used by Gradle.
9300 https://developer.android.com/studio/build/manifest-merge.html
9301 - Using $(CC_FLAGS) in a GenRule adds a dependency to the c++
9302 toolchain
9303 - add one-version enforcement to android_local_test
9304 - Skylark support (apple_common.dotted_version(string)) for
9305 building DottedVersion objects to interface with native apple
9306 rules
9307 - CC_FLAGS can be defined using 'cc-flags-make-variable' action_config in
9308 CROSSTOOL
9309 - ios_framework native rule has been removed. This rule had been
9310 essentially broken for several months now; users should be using
9311 the skylark ios framework rule.
9312 https://github.com/bazelbuild/rules_apple has details.
9313 - Clean command no longer uses boolean values for --async,
9314 --expunge, and --expunge_async options.
9315 - Partially fixes external J2ObjC support.
9316 - '--aspects' can occur more than once on the command line.
9317 - --no_ prefix no longer recognized.
9318 - Use action_config in crosstool for static library archiving,
9319 remove ar_flag.
9320 - Added a new flag --sandbox_writable_path, which asks the sandbox
9321 to
9322 make an existing directory writable when running actions.
9323 - bazel test now also computes a default instrumentation filter if
9324 --collect_code_coverage is enabled
9325 - n/na
9326 - In .bzl files, top-level `if` statements are deprecated and will
9327 be forbidden
9328 in the future. Move them in a function body instead (or use a
9329 conditional
9330 expression instead: `x if condition else y`).
9331 - ios_device and ios_test are deprecated. Please use the new testing
9332 rules in https://github.com/bazelbuild/rules_apple instead.
9333 - bazel query --output package now displays packages from external
9334 repository with the format "@reponame//package". Packages in the
9335 main repository continue to have the format "package".
9336 - ctx.expand_make_variables is deprecated.
9337 - Bazel posts links to the CAS to the BEP if remote caching /
9338 execution is enabled
9339 - `bazel info execution_root` returns the corrrect directory name
9340 for the execution root.
9341
Bazel Release System63222de2017-06-06 11:32:04 +02009342## Release 0.5.1 (2017-06-06)
9343
9344```
9345Baseline: f3ae88ee043846e7acdffd645137075a4e72c573
9346
9347Cherry picks:
9348 + c58ba098526b748f9c73e6229cafd74748205aa1:
9349 Release to GCS: put the final release in its own directory
9350 + 0acead4ea3631240659836ce6ecd6d7f67fd352b:
9351 Update protobuf to latest master at a64497c and apply
9352 @laszlocsomor's latest changes from
9353 https://github.com/google/protobuf/pull/2969 on top of it.
9354 + d0242ce4a87929f2528f4602d0fb09d1ccfcea94:
9355 Make symlinks consistent
9356 + d953ca8b87a46decbce385cebb446ae0dd390881:
9357 Clean VanillaJavaBuilder output directories
9358 + 755669fb5de1f4e762f27c19776cac9f410fcb94:
9359 Pass all the environment variable to Bazel during bootstrapping
9360 + 6f041661ca159903691fcb443d86dc7b6454253d:
9361 Do not mark the JDK7 installer -without-jdk-installer
9362 + 720561113bfa702acfc2ca24ce3cc3fd7ee9c115:
9363 Fix #2958: Installer should not overwrite bazelrc
9364 + 511c35b46cead500d4e76706e0a709e50995ceba:
9365 Bootstrap: move the fail function to the top
9366 + 8470be1122825aae8ad0903dd1e1e2a90cce47d2:
9367 Clean up javac and Error Prone targets
9368 + 4a404de2c6c38735167e17ab41be45ef6fc4713a:
9369 Update javac version to 9-dev-r4023-2
9370 + 36ce4b433e19498a78c34540d5a166d4e0006b22:
9371 Update javac version to 9-dev-r4023-2
9372 + 38949b8526bdb3e6db22f3846aac87162c28c33f:
9373 Migrate off versioned javac and Error Prone targets
9374 + 1a57d298f8aa6ea8136d93223902104f2479cd2a:
9375 Re-enabling passing -sourcepath via javacopts.
9376 + eb565f408e03125e92d42b00756e519795be6593:
9377 Make make sure that msys build actually builds msys version
9378 + 39f328cf392056618d1a3ead4835a138b189a06d:
9379 Fix typo. Also do not override host_cpu for msvc.
9380 + 624802893f4fe72118f00a78452605d41a2e1c6f:
9381 Select correct JDK for windows_msys
9382 + c4f271d1a68366b6fa5ff38ea7d951b6a22af044:
9383 Automated g4 rollback of commit
9384 3e5edafa2a04a71cd3596e929e83222da725f3f9.
9385 + 926180997a0f296a5a009326aead887279ce0a90:
9386 Remove process-tools.cc which I forgot to delete during the last
9387 rollback.
9388 + baca6e4cb023649920871b74810927d304729e59:
9389 Fix #2982: Bazel installer should not check for installed JDK if
9390 using a bundled JDK.
9391 + 866ecc8c3d5e0b899e3f0c9c6b2265f16daae842:
9392 Disable msys path conversion on Windows.
9393 + cc21998c299b4d1f97df37b961552ff8168da17f:
9394 Rollforward #2 of: Basic open-source crosstool to support
9395 targeting apple platform types.
9396 + 0f0ccc4fc8229c1860a9c9b58089d6cfb2ee971f:
9397 Escape % in strings that will appear in Crosstool
9398 + 3b08f774e7938928e3a240a47a0a7554cdc8d50b:
9399 Adding feature for linking C Run-Time library on Windows
9400 + 3566474202d1978acfdcb7e5ff73ee03ea6f3df9:
9401 Do not use sed -E in bootstrap/compile.sh
9402 + c3cf7d917afd02d71de3800cd46ad8d14f1ddf55:
9403 Reverts non-xcode-available darwin crosstool generation.
9404```
9405
9406Important changes:
9407
9408 - Fixes regression in 0.5.0 requiring Xcode to build C++ on OSX.
9409
Bazel Release Systema3e26832017-05-26 14:11:07 +02009410## Release 0.5.0 (2017-05-26)
9411
9412```
9413Baseline: f3ae88ee043846e7acdffd645137075a4e72c573
9414
9415Cherry picks:
9416 + c58ba098526b748f9c73e6229cafd74748205aa1:
9417 Release to GCS: put the final release in its own directory
9418 + 0acead4ea3631240659836ce6ecd6d7f67fd352b:
9419 Update protobuf to latest master at a64497c and apply
9420 @laszlocsomor's latest changes from
9421 https://github.com/google/protobuf/pull/2969 on top of it.
9422 + d0242ce4a87929f2528f4602d0fb09d1ccfcea94:
9423 Make symlinks consistent
9424 + d953ca8b87a46decbce385cebb446ae0dd390881:
9425 Clean VanillaJavaBuilder output directories
9426 + 755669fb5de1f4e762f27c19776cac9f410fcb94:
9427 Pass all the environment variable to Bazel during bootstrapping
9428 + 6f041661ca159903691fcb443d86dc7b6454253d:
9429 Do not mark the JDK7 installer -without-jdk-installer
9430 + 720561113bfa702acfc2ca24ce3cc3fd7ee9c115:
9431 Fix #2958: Installer should not overwrite bazelrc
9432 + 511c35b46cead500d4e76706e0a709e50995ceba:
9433 Bootstrap: move the fail function to the top
9434 + 8470be1122825aae8ad0903dd1e1e2a90cce47d2:
9435 Clean up javac and Error Prone targets
9436 + 4a404de2c6c38735167e17ab41be45ef6fc4713a:
9437 Update javac version to 9-dev-r4023-2
9438 + 36ce4b433e19498a78c34540d5a166d4e0006b22:
9439 Update javac version to 9-dev-r4023-2
9440 + 38949b8526bdb3e6db22f3846aac87162c28c33f:
9441 Migrate off versioned javac and Error Prone targets
9442 + 1a57d298f8aa6ea8136d93223902104f2479cd2a:
9443 Re-enabling passing -sourcepath via javacopts.
9444 + eb565f408e03125e92d42b00756e519795be6593:
9445 Make make sure that msys build actually builds msys version
9446 + 39f328cf392056618d1a3ead4835a138b189a06d:
9447 Fix typo. Also do not override host_cpu for msvc.
9448 + 624802893f4fe72118f00a78452605d41a2e1c6f:
9449 Select correct JDK for windows_msys
9450 + c4f271d1a68366b6fa5ff38ea7d951b6a22af044:
9451 Automated g4 rollback of commit
9452 3e5edafa2a04a71cd3596e929e83222da725f3f9.
9453 + 926180997a0f296a5a009326aead887279ce0a90:
9454 Remove process-tools.cc which I forgot to delete during the last
9455 rollback.
9456 + baca6e4cb023649920871b74810927d304729e59:
9457 Fix #2982: Bazel installer should not check for installed JDK if
9458 using a bundled JDK.
9459 + 866ecc8c3d5e0b899e3f0c9c6b2265f16daae842:
9460 Disable msys path conversion on Windows.
9461 + cc21998c299b4d1f97df37b961552ff8168da17f:
9462 Rollforward #2 of: Basic open-source crosstool to support
9463 targeting apple platform types.
9464 + 0f0ccc4fc8229c1860a9c9b58089d6cfb2ee971f:
9465 Escape % in strings that will appear in Crosstool
9466 + 3b08f774e7938928e3a240a47a0a7554cdc8d50b:
9467 Adding feature for linking C Run-Time library on Windows
9468```
9469
9470Incompatible changes:
9471
9472 - Bazel's Linux sandbox no longer mounts an empty tmpfs on /tmp,
9473 instead the existing /tmp is mounted read-write. If you prefer
9474 to have a tmpfs on /tmp for sandboxed actions for increased
9475 hermeticity, please use the flag --sandbox_tmpfs_path=/tmp.
9476 - Converting artifacts to strings and printing them now return
9477 "File" instead of "Artifact" to be consistent with the type name.
9478 - The return type of depset.to_list() is now a list rather than a
9479 frozen list. (Modifying the list has no effect on the depset.)
9480 - Bazel now prints logs in single lines to java.log
9481 - --use_dash, --dash_url and --dash_secret are removed.
9482 - Remote repositories must define any remote repositories they
9483 themselves use (e.g., if @x//:foo depends on @y//:bar, @y must be
9484 defined
9485 in @x's WORKSPACE file).
9486 - Remote repositories must define any remote repositories they
9487 themselves use (e.g., if @x//:foo depends on @y//:bar, @y must be
9488 defined
9489 in @x's WORKSPACE file).
9490 - objc_xcodeproj has been removed, use tulsi.bazel.build instead.
9491
9492New features:
9493
9494 - If grte_top is a label, it can now follow non-configurable
9495 redirects.
9496 - Optional coverage_files attribute to cc_toolchain
9497 - "query --output=build" now includes select()s
9498 - Raw LLVM profiles are now supported.
9499
9500Important changes:
9501
9502 - Automatically generate Proguard mapping when resource shrinking
9503 and Proguard are enabled.
9504 - New rules in Bazel: proto_library, java_lite_proto_library,
9505 java_proto_library and cc_proto_library
9506 - Activate the "dead_strip" feature if objc binary stripping is
9507 enabled.
9508 - More stable naming scheme for lambda classes in desugared android
9509 code
9510 - Convert --use_action_cache to a regular option
9511 - Per-architecture dSYM binaries are now propagated by
9512 apple_binary's AppleDebugOutputsProvider.
9513 - Avoid factory methods when desugaring stateless lambdas for
9514 Android
9515 - desugar calls to Objects.requireNonNull(Object o) with
9516 o.getClass() for android
9517 - Add an --copy_bridges_from_classpath argument to android
9518 desugaring tool
9519 - Change how desugar finds desugared classes to have it working on
9520 Windows
9521 - Evaluation of commands on TargetsBelowDirectory patterns
9522 (e.g. //foo/...) matching packages that fail to load now report
9523 more
9524 detailed error messages in keep_going mode.
9525 - Allow to have several inputs and outputs
9526 - Repository context's execute() function can print stdout/stderr
9527 while running. To enable, pass quiet=False.
9528 - Bazel can now be built with a bundled version of the OpenJDK.
9529 This makes it possible to use Bazel on systems without a JDK, or
9530 where
9531 the installed JDK is too old.
9532 - The --jobs flag now defaults to "auto", which causes Bazel to
9533 use a reasonable degree of parallelism based on the local
9534 machine's
9535 capacity.
9536 - Bazel benchmark (perf.bazel.build) supports Java and Cpp targets.
9537 - no factory methods generated for lambda expressions on android
9538 - The Linux sandbox no longer changes the user to 'nobody' by
9539 default, instead the current user is used as is. The old behavior
9540 can be
9541 restored via the --sandbox_fake_username flag.
9542 - /tmp and /dev/shm are now writable by default inside the
9543 Linux sandbox.
9544 - Bazel can now use the process-wrapper + symlink tree based
9545 sandbox implementation in FreeBSD.
9546 - turn on --experimental_incremental_dexing_error_on_missed_jars by
9547 default.
9548 - All android_binarys are now signed with both Apk Signature V1 and
9549 V2. See https://source.android.com/security/apksigning/v2.html
9550 for more details.
9551 - Windows MSVC wrappers: Not filtering warning messages anymore,
9552 use --copt=-w and --host_copt=-w to suppress them.
9553 - A downloader bug was fixed that prevented RFC 7233 Range
9554 connection resumes from working with certain HTTP servers
9555 - Introduces experimental android_device rule for configuring and
9556 launching Android emulators.
9557 - For boolean flags, setting them to false using --no_<flag_name>
9558 is deprecated. Use --no<flag_name> without the underscore, or
9559 --<flag_name>=false instead.
9560 - Add --experimental_android_compress_java_resources flag to store
9561 java
9562 resources as compressed inside the APK.
9563 - Removed --experimental_use_jack_for_dexing and libname.jack
9564 output of
9565 android_library.
9566 - blaze canonicalize-flags now takes a --show_warnings flag
9567 - Changing --invocation_policy will no longer force a server
9568 restart.
9569 - Bazel now supports Android NDK14.
9570 - android_binary multidex should now work without additional flags.
9571 - Use action_config in crosstool for static library archiving,
9572 remove ar_flag.
9573 - new option for bazel canonicalize-flags, --canonicalize_policy
9574 - Use action_config in crosstool for static library archiving,
9575 remove ar_flag.
9576 - android_library exports_manifest now defaults to True.
9577 - Fix select condition intersections.
9578 - Adds a --override_repository option that takes a repository
9579 name and path. This forces Bazel to use the directory at that path
9580 for the repository. Example usage:
9581 `--override_repository=foo=/home/user/gitroot/foo`.
9582 - fix idempotency issue with desugaring lambdas in interface
9583 initializers for android
9584 - --experimental_android_use_singlejar_for_multidex is now a no-op
9585 and will eventually be removed.
9586 - Every local_repository now requires a WORKSPACE file.
9587 - Remove jack and jill attributes of the android_sdk rule.
9588 - Add Skylark stubs needed to remove sysroot from CppConfiguration.
9589 - Desugar try-with-resources so that this language feature is
9590 available
9591 to deveces with API level under 19.
9592 - The flag --worker_max_retries was removed. The
9593 WorkerSpawnStrategy no longer retries execution of failed Spawns,
9594 the reason being that this just masks compiler bugs and isn't
9595 done for any other execution strategy either.
9596 - Bazel will no longer gracefully restart workers that crashed /
9597 quit, instead this triggers a build failure.
9598 - All java resources are now compressed in android_binary APKs by
9599 default.
9600 - All java resources are now compressed in android_binary APKs by
9601 default.
9602 - android_ndk_repository now creates a cc_library
9603 (@androidndk//:cpufeatures) for the cpufeatures library that is
9604 bundled in the Android NDK. See
9605 https://developer.android.com/ndk/guides/cpu-features.html for
9606 more details.
9607 - 'output_groups' and 'instrumented_files' cannot be specified in
9608 DefaultInfo.
9609 - You can increase the CPU reservation for tests by adding a
9610 "cpu:<n>" (e.g. "cpu:4" for four cores) tag to their rule in a
9611 BUILD file. This can be used if tests would otherwise overwhelm
9612 your system if there's too much parallelism.
9613 - Deprecate use_singlejar_for_proguard_libraryjars and force
9614 behavior to always on.
9615
Bazel Release System8d635fc2017-03-16 13:18:30 +01009616## Release 0.4.5 (2017-03-16)
9617
9618```
9619Baseline: 2e689c29d5fc8a747216563235e905b1b62d63b0
9620
9621Cherry picks:
9622 + a28b54033227d930672ec7f2714de52e5e0a67eb:
9623 Fix Cpp action caching
9624 + 6d1d424b4c0da724e20e14235de8012f05c470f8:
9625 Fix paths of binaries in .deb packages.
9626 + 0785cbb672357d950e0c045770c4567df9fbdc43:
9627 Update to guava 21.0 and Error Prone version 2.0.18-20160224
9628 + 30490512eb0e48a3774cc4e4ef78680e77dd4e47:
9629 Update to latest javac and Error Prone
9630 + 867d16eab3bfabae070567ecd878c291978ff338:
9631 Allow ' ', '(', ')' and '$' in labels
9632 + 7b295d34f3a4f42c13aafc1cc8afba3cb4aa2985:
9633 Pass through -sourcepath to the JavaBuilder
9634 + 14e4755ce554cdfc685fc9cc2bfb5b699a3b48f4:
9635 PathFragment comparisons are now platform-aware
9636 + ed7795234ca7ccd2567007f2c502f853cd947e50:
9637 Flag to import external repositories in python import path
9638 + 81ae08bbc13f5f4a04f18caae339ca77ae2699c1:
9639 Suppress error for non-exhaustive switches
9640 + e8d1177eef9a9798d2b971630b8cea59471eec33:
9641 Correctly returns null if an environment variables is missing
9642 + 869d52f145c077e3499b88df752cebc60af51d66:
9643 Fix NPE in Android{S,N}dkRepositoryFunction.
9644 + d72bc57b60b26245e64f5ccafe023a5ede81cc7f:
9645 Select the good guava jars for JDK7 build
9646 + 92ecbaeaf6fa11dff161254df38d743d48be8c61:
9647 Windows: Assist JNI builds with a target for jni_md.h.
9648 + 36958806f2cd38dc51e64cd7bcc557bd143bbdb6:
9649 Add java_common.create_provider to allow creating a
9650 java_common.provider
9651 + 8c00f398d7be863c4f502bde3f5d282b1e18f504:
9652 Improve handling of unknown NDK revisions in
9653 android_ndk_repository.
9654 + b6ea0d33d3ab72922c8fb3ec1ff0e437af09584d:
9655 Add the appropriate cxx_builtin_include_directory entries for
9656 clang to the Android NDK crosstool created by
9657 android_ndk_repository.
9658```
9659
9660Incompatible changes:
9661
9662 - Depsets (former sets) are converted to strings as "depset(...)"
9663 instead of
9664 "set(...)".
9665 - Using --symlink_prefix is now applied to the output
9666 symlink (e.g. bazel-out) and the exec root symlink (e.g.
9667 bazel-workspace).
9668 - Bazel now uses the test's PATH for commands specified as
9669 --run_under; this can affect users who explicitly set PATH to
9670 a more
9671 restrictive value than the default, which is to forward the
9672 local PATH
9673 - It's not allowed anymore to compare objects of different types
9674 (i.e. a string to an integer) and objects for which comparison
9675 rules are not
9676 defined (i.e. a dict to another dict) using order operators.
9677
9678New features:
9679
9680 - environ parameter to the repository_rule function let
9681 defines a list of environment variables for which a change of
9682 value
9683 will trigger a repository refetching.
9684
9685Important changes:
9686
9687 - android_ndk_repository now supports Android NDK R13.
9688 - Android resource shrinking is now available for android_binary
9689 rules. To enable, set the attribute 'shrink_resources = 1'. See
9690 https://bazel.build/versions/master/docs/be/android.html#android_b
9691 inary.shrink_resources.
9692 - resolve_command/action's input_manifest return/parameter is now
9693 list
9694 - For increased compatibility with environments where UTS
9695 namespaces are not available, the Linux sandbox no longer hides
9696 the hostname of the local machine by default. Use
9697 --sandbox_fake_hostname to re-enable this feature.
9698 - proto_library: alias libraries produce empty files for descriptor
9699 sets.
9700 - Adds pkg_rpm rule for generating RPM packages.
9701 - Allow CROSSTOOL files to have linker flags specific to static
9702 shared libraries.
9703 - Make it mandatory for Java test suites in bazel codebase, to
9704 contain at least one test.
9705 - Support for Java 8 lambdas, method references, type annotations
9706 and repeated annotations in Android builds with
9707 --experimental_desugar_for_android.
9708 - Removed .xcodeproj automatic output from objc rules. It can still
9709 be generated by requesting it explicitly on the command line.
9710 - Flips --explicit_jre_deps flag on by default.
9711 - Activate the "dbg", "fastbuild", and "opt" features in the objc
9712 CROSSTOOL.
9713 - Remove support for configuring JDKs with filegroups; use
9714 java_runtime and java_runtime_suite instead
9715 - android_ndk_repository api_level attribute is now optional. If not
9716 specified, the highest api level in the ndk/platforms directory
9717 is used.
9718
Bazel Release System6712cac2017-02-01 19:53:37 +01009719## Release 0.4.4 (2017-02-01)
9720
9721```
9722Baseline: 4bf8cc30a
9723
9724Cherry picks:
9725 + ef1c6fd33: msvc_tools.py.tpl: Change default runtime library to
9726 static
9727```
9728
9729Incompatible changes:
9730
9731 - Only targets with public visibility can be bound to something in
9732 //external: .
9733 - The deprecated -x startup option has been removed.
9734 - docker_build: change the repository names embedded by
9735 docker_build. You can revert to the old behavior by setting
9736 legacy_repository_naming=True.
9737 - The string methods strip(), lstrip(), and rstrip() now
9738 by default remove the same whitespace characters as Python 3
9739 does, and accept
9740 None as an argument.
9741 - Deprecated globals HOST_CFG and DATA_CFG are removed. Use strings
9742 "host" and "data" instead.
9743 - repository_ctx environment is now affected by --action_env flag
9744 (value from the
9745 client environment will be replaced by value given on the command
9746 line through --action_env).
9747 - All executable labels must also have a cfg parameter specified.
9748 - Removed the cmd_helper.template function.
9749 The function was equivalent to:
9750 def template(items, template):
9751 return [template.format(path = i.path, short_path =
9752 i.short_path)
9753 for i in items]
9754 - Tuples that end with a trailing comma must now be inside parens,
9755 e.g. (1,) instead of 1,
9756 - The traversal orders for depsets have been renamed. The old names
9757 are deprecated and will be removed in the future. New names:
9758 "stable" -> "default", "compile" -> "postorder", "link" ->
9759 "topological", "naive_link" -> "preorder".
9760
9761New features:
9762
9763 - Skylark: you can now multiply a list by an integer to get the
9764 concatenation of N copies of this list, e.g. [a,b] * 3 =
9765 [a,b,a,b,a,b]
9766 - Allow Android aidl tool to add a jar to the program's classpath,
9767 such as if needed to support generated sources.
9768 - Add transitive proguard_specs when android_sdk.aidl_lib is
9769 specified
9770 - Windows: "/dev/null" is now a supported path, e.g.
9771 --bazelrc=/dev/null now works
9772
9773Important changes:
9774
9775 - Bazel Android builds use the apksigner tool from the Android SDK
9776 build-tools. Bazel Android builds now require build-tools version
9777 24.0.3 or
9778 later.
9779 - Android SDK external bindings for support libraries, e.g.
9780 //external:android/appcompat_v4, are removed because the support
9781 library JARs that they referenced no longer ship with the Android
9782 SDK.
9783 - aar_import rule is now documented.
9784 - An IE bug was fixed in repository_ctx.download_and_extract
9785 - Update "-I" to "-isystem" in documentation to reflect current
9786 behavior.
9787 - android_sdk_repository build_tools_version is now optional. The
9788 highest installed build-tools will be used if none is specified.
9789 - New flag --sandbox_add_mount_pair to specify customized
9790 source:target path pairs to bind mount inside the sandbox.
9791 - expose proto_library descriptor set to skylark via
9792 <dep>.proto.descriptor_set
9793 - The `set` constructor is deprecated in favor of `depset`
9794 - Autodetect gold linker in cc_configure.bzl
9795 - Remove build flag --experimental_j2objc_annotation_processing. It
9796 is on by default now.
9797 - Set clang's -mwatchos-version-min correctly using the value of
9798 --watchos_minimum_os, not --watchos_sdk_version.
9799 - singlejar can now create jar files larger than 4GB.
9800 - android_sdk_repository and android_ndk_repository now read
9801 $ANDROID_HOME and $ANDROID_NDK_HOME if the path attribute is not
9802 set.
9803 - Removed broken api levels 3, 4 and 5 from Android NDK 12.
9804 - Default --android_dynamic_mode to off.
9805 - android_sdk_repository no longer requires api_level. If one is
9806 not specified, the highest android platform installed will be
9807 used. Furthermore, android_sdk's are created for all android
9808 platforms installed and can be specified with the --android_sdk
9809 flag.
9810 - To iterate over or test for membership in a set, prefer using the
9811 new to_list() method. E.g., "for x in myset.to_list():", or
9812 "print(x in myset.to_list())". Iteration/membership-test on the
9813 raw set itself is deprecated.
9814 - Remove support for --javawarn; use e.g. --javacopt=-Xlint:all
9815 instead
9816
Bazel Release Systemd3b23642016-12-22 13:30:47 +01009817## Release 0.4.3 (2016-12-22)
Bazel Release System80865ff2016-11-30 13:18:54 +01009818
Damien Martin-Guillerez961e54f2016-12-22 13:33:36 +01009819```
Bazel Release Systemd3b23642016-12-22 13:30:47 +01009820Baseline: c645a45
Bazel Release System80865ff2016-11-30 13:18:54 +01009821
9822Cherry picks:
Bazel Release Systemd3b23642016-12-22 13:30:47 +01009823 + af878d0: Add coverage support for java test. (series 4/4 of
9824 open-sourcing coverage command for java test)
9825 + 09b92a8: Rollback of commit
9826 67b4d5250edcefa7220e928e529b1f385e2dc464.
9827 + b11dd48: Fix bad bug with the parallel implementation of
9828 BinaryOperatorExpression. Turns out that
9829 ForkJoinTask#adapt(Callable) returns a ForkJoinTask
9830 whose Future#get on error throws a ExecutionException
9831 wrapping a RuntimeException wrapping the thrown checked
9832 exception from the callable. This is documented
9833 behavior [1] that I incorrectly didn't know about.
9834 + 9012bf1: Fix scripts/packages/convert_changelog to read the
9835 changelog correctly
9836 + 55c97bc: Release script: if master branch does not exist, fall
9837 back on origin/master
9838 + 4fb378c: Debian repository: override section and priority fields
9839 + acbcbc2: Fix release notes in emails
9840 + 4975760: Fix PathFragment to not use Java8-only static hashCode
9841 methods.
9842 + 05fd076: Disable sandboxing for XibCompile actions.
Damien Martin-Guillerez961e54f2016-12-22 13:33:36 +01009843```
Bazel Release System80865ff2016-11-30 13:18:54 +01009844
9845Incompatible changes:
9846
Bazel Release Systemd3b23642016-12-22 13:30:47 +01009847 - Skylark maven_jar and maven_aar settings attribute is now a label
9848 so it can be checked into your workspace.
9849 - --{no}experimental_use_rclass_generator is now a nop.
9850
9851New features:
9852
9853 - Coverage support (*experimental*) for pure Java target.
9854 Use `bazel coverage //my:target` to generate coverage information
9855 from a `java_test`.
Bazel Release System80865ff2016-11-30 13:18:54 +01009856
9857Important changes:
9858
Bazel Release Systemd3b23642016-12-22 13:30:47 +01009859 - Enable fallback URLs in Skylark http rules.
9860 - cc_proto_library generates C++ code from proto_library rules.
9861 - cc_library now supports the strip_prefix and strip_include_prefix
9862 attributes for control of include paths.
9863 - Skylark dicts internally don't rely on keys order anymore and
9864 accept any hashable values (i.e. structs with immutable values)
9865 as keys. Iteration order of dictionaries is no longer specified.
Damien Martin-Guillerez961e54f2016-12-22 13:33:36 +01009866
9867## Release 0.4.2 (2016-12-02)
9868
9869```
9870Baseline: 6331a94
9871
9872Cherry picks:
9873 + 7b835d9: Do not patch WORKSPACE in the release process
9874```
9875
9876Incompatible changes:
9877
9878 - Callback functions in Skylark no longer support the cfg
9879 parameter. This is a cleanup and only affects the signatures of
9880 callbacks, since the parameter hasn't been set since September
9881 2016.
9882
9883Important changes:
9884
9885 - Alias proto_library's produce a descriptor set that contains all
9886 srcs of its dependencies.
9887 - proto_library supports strict proto deps.
9888 - Top level @androidsdk support library targets have been replaced
9889 by @androidsdk//<group id>:<artifact id>-<version> for Android
9890 SDK Support and Google Play Services libraries.
9891
Bazel Release System15402a92016-11-30 10:12:30 +01009892## Release 0.4.1 (2016-11-21)
9893
9894```
9895Baseline: 9a796de
9896
9897Cherry picks:
9898 + 88bfe85: Description redacted. -- MOS_MIGRATED_REVID=139219934
9899 + b09ea94: Rollback of commit
9900 a3f5f576cd35798140ba3e81d03d919dd4ecb847.
9901```
9902
9903New features:
9904
9905 - android_library now has a "exported_plugins" attribute just like
9906 java_library
9907 - Use --strict_system_includes to apply hdrs_check=strict also to
9908 cc_library.includes, even if sandboxing is disabled.
9909 - Bazel on Windows: java_binary can now be the executable of
9910 Skylark rule actions (ctx.action's executable argument)
9911 - Packages are defined in BUILD.bazel as well as BUILD files.
9912
9913Important changes:
9914
9915 - getattr()'s 3-arg form no longer raises an error when the
9916 retrieved field is a built-in method.
9917 - --apk_signing_method default changed to v1. Android APKs are now
9918 signed with the new ApkSignerTool by default.
9919 - New rule: proto_lang_toolchain(), to support LANG_proto_library
9920 rules on multiple platforms.
9921 - Fix for Android clang++ std::stack segfault on 32bit x86. See
9922 https://code.google.com/p/android/issues/detail?id=220159
9923 - Default android_manifest_merger is now "android" which uses the
9924 official Android manifest merger.
9925 http://tools.android.com/tech-docs/new-build-system/user-guide/man
9926 ifest-merger
9927 - Do not propagate aspect to its own attributes when using '*'.
9928 - Comparing sets (`if set1 < set2:`) is not allowed anymore in
9929 Skylark because it didn't work correctly anyway.
9930 - When --experimental_extra_action_top_level_only, Bazel reports
9931 extra-actions for actions registered by Aspects injected by a
9932 top-level rule (approximately).
9933 - Blacklists for proto_lang_toolchain() no longer have to be
9934 proto_library's.
9935 - Extra actions now contain aspect-related information.
9936 - Fix slicing bug where "abc"[:-4:-1] would give wrong answer
9937
Bazel Release Systemd0761e62016-11-02 13:36:35 -04009938## Release 0.4.0 (2016-10-26)
9939
9940```
9941Baseline: 088bbc6
9942
9943Cherry picks:
9944 + b01160c: Stamp Windows release.
9945 + 2d6736e: Add --no-tty for gpg signing
9946 + 9b1dfb8: Remove .sig file before gpg signing
9947 + 81aede1: Reimplement whole archive on Windows
9948```
9949
9950Incompatible changes:
9951
9952 - Skylark: updating list/dicts while they are being looped over is not
9953 allowed. Use an explicit copy if needed ("for x in list(mylist):").
9954 - Bazel now uses the --cpu flag to look up Jvms; it falls back
9955 to "default" if it can't find a Jvm matching the CPU value.
9956 - --command_port=-1 to use AF_UNIX for client/server communications
9957 is not supported anymore.
9958 - Sandboxed actions can access the network by default, unless their
9959 target has a "block-network" tag.
9960
9961New features:
9962
9963 - Files now have an "extension" property in Skylark.
9964
9965Important changes:
9966
9967 - Added a new flag --sandbox_tmpfs_path, which asks the sandbox to
9968 mount an empty, writable directory at a specified path when
9969 running actions. (Supported on Linux only for now.)
9970 - Update protoc-3.0.0-mingw.exe to a working (statically linked)
9971 binary
9972 - apple_static_library rule to create multi-architecture static
9973 archive files from Objc/C++/Swift dependencies on apple platforms
9974 - JS: Add support for localization with closure managed rules.
9975 - Create a flag --android_dynamic_mode to turn off dynamic mode
9976 during the Android split transition.
9977 - Darwin sandboxing is default.
9978 - Remove flag --experimental_zip_tree_artifact from j2objc Java
9979 annotation processing support.
9980 - A few functions are added to BUILD files for consistency (hash,
9981 dir,
9982 hasattr, getattr) with .bzl files, although they are not very
9983 useful.
9984 - --watchfs is now a command option; the startup option of the same
9985 name is deprecated. I.e., use bazel build --watchfs, not
9986 blaze --watchfs
9987 build.
9988
Bazel Release System33579a42016-10-07 13:05:11 -04009989## Release 0.3.2 (2016-10-07)
9990
9991```
9992Baseline: 023a7bd
9993
9994Cherry picks:
9995 + bebbbe5: Fix dependency on libtool's helper script
9996 make_hashed_objlist.py.
9997 + 8a0d45f: Add the version information to the bazel.exe file
9998 + 2bc0939: Allow new_ rules to overwrited BUILD files in
9999 downloaded repos
10000 + c5545fd: Rollback of commit
10001 96d46280bc5a4803ba2242a4ad16939f85a3b212.
10002 + eb87208: Make cc_configure on Windows more robust
10003 + c30432c: Fix cc_configure on Windows
10004 + 95b16a8: sandbox: Replace the error-prone lazy cleanup of
10005 sandbox directories by a simple synchronous cleanup.
10006 + e898023: Fix #1849: Sandboxing on OS X should be turned off by
10007 default for 0.3.2.
10008 + ffdc05d: Add action_config and feature for linking on Windows
10009```
10010
10011Incompatible changes:
10012
10013 - If you maintain a rule that uses persistent workers, you'll have
10014 to specify execution_requirements={"supports-workers": 1} in the
10015 ctx.action that intends to run a tool with workers. The
10016 WorkerSpawnStrategy will alert you with a warning message if you
10017 forget to make this change and fallback to non-worker based
10018 execution.
10019 - It is now an error to include a precompiled library (.a, .lo, .so)
10020 in a cc_library which would generate a library with the same name
10021 (e.g., libfoo.so in cc_library foo) if that library also contains
10022 other linkable
10023 sources.
10024 - The main repository's execution root is under the main
10025 repository's workspace name, not the source directory's basename.
10026 This shouldn't
10027 have any effect on most builds, but it's possible it could break
10028 someone doing
10029 weird things with paths in actions.
10030 - Blaze doesn't support Unix domain sockets for communication
10031 between its client and server anymore. Therefore, the
10032 --command_port command line argument doesn't accept -1 as a valid
10033 value anymore.
10034 - Skylark: It is an error to shadow a global variable with a local
10035 variable after the global has already been accessed in the
10036 function.
10037 - bin_dir and genfiles_dir are now properties of ctx, not
10038 configuration. That is, to access the bin or genfiles directory
10039 from a
10040 Skylark rule, use ctx.bin_dir or ctx.genfiles_dir (not
10041 ctx.configuration.{bin,genfiles}_dir). At the moment, you can
10042 access
10043 {bin,genfiles}_dir from either, but the ctx.configuration version
10044 will
10045 stop working in a future release.
10046 - filegroup-based C++ toolchains are not supported anymore.
10047 --*_crosstool_top options must always point to a
10048 cc_toolchain_suite rule (or an alias of one).
10049 - repository_ctx.{download,download_and_extract,execute} API now use
10050 named parameters for optional parameters and no
10051 longer uses argument
10052 type to distinguished between arguments
10053 (executable attribute name
10054 must be specified when preceding optional
10055 arguments are missing).
10056
10057New features:
10058
10059 - print and fail are now available in BUILD files.
10060
10061Important changes:
10062
10063 - Added @bazel_tools//tools/build_defs/repo/git.bzl as a Skylark
10064 rule for Git repositories.
10065 - Added @bazel_tools//tools/build_defs/repo/maven_rules.bzl as a
10066 Skylark rule for Maven repositories.
10067 - Add global hash() function for strings (only)
10068 - Improve Android split transition handling.
10069 - Removes exports_manifest attribute from android_binary rule.
10070 - java_proto_library: control strict-deps through a rule-level and
10071 a package-level attribute.
10072 - Persistent workers are now used by default for Java compilation
10073 in Bazel, which should speed up your Java builds by ~4x. You can
10074 switch back to the old behavior via --strategy=Javac=standalone.
10075 Check out http://www.bazel.io/blog/2015/12/10/java-workers.html
10076 for more details.
10077 - objc_* rules can now depend on any target that returns an "objc"
10078 provider.
10079 - Adds support for NDK12 to `android_ndk_repository` rule in Bazel.
10080 - Test targets can disable the JUnit4 test security manager via a
10081 property.
10082 - Disable the Android split transition if --android_cpu and
10083 fat_apk_cpu are both empty.
10084 - New sandboxing implementation for Linux in which all actions run
10085 in a separate execroot that contains input files as symlinks back
10086 to the originals in the workspace. The running action now has
10087 read-write access to its execroot and /tmp only and can no longer
10088 write in arbitrary other places in the file system.
10089 - Add worker support to single jar.
10090 - Invoke source jar action as a worker.
10091 - Sandboxed builds allow network access for builds by default.
10092 Tests will still be run without networking, unless
10093 "requires-network" is specified as a tag.
10094 - Add path.realpath() method for Skylark repositories.
10095 - On Mac devices, detect locally installed versions of xcode to:
10096 1. Use a sensible default if xcode is required but
10097 --xcode_version is unspecified.
10098 2. Use sensible default iOS SDK version for the targeted version
10099 of xcode if ios_sdk_version is unspecified.
10100 - Emacs' [C-x `], a.k.a. next-error, works again in emacsen >= 25.1
10101 - swift_library can be used to build watchOS apps.
10102 - Exposes the is_device field on Apple platform objects and adds
10103 the apple_common.platform_type(name) method to retrieve a
10104 platform_type value that can be passed to methods like the Apple
10105 fragment's multi_arch_platform.
10106 - Move Skylark git_repository rules to git.bzl
10107 - Add support for aspects to attr.label() attributes
10108 - Global varaiables HOST_CFG and DATA_CFG are deprecated in favor
10109 of strings "host"
10110 and "data.
10111 Argument `cfg = "host"` or `cfg = "data"` is mandatory if
10112 `executable = True` is provided for a label.
10113 - The deprecation attribute of all rules now causes warnings
10114 to be printed when other targets depend on a target with that
10115 attribute set.
10116 - Change default of --[no]instrument_test_targets to false, change
10117 default --instrumentation_filter (which previously tried to
10118 exclude test targets by heuristic) to only exclude targets in
10119 javatests.
10120 - Remove deprecated absolute paths in blaze IDE artifacts
10121 - When using android_binary.manifest_merger="android" the merger
10122 produces a summary log next to the merged manifest artifact.
10123 - Allow different default mallocs per configuration.
10124
Bazel Release System70c772b2016-07-29 10:28:13 +020010125## Release 0.3.1 (2016-07-29)
10126
10127```
10128Baseline: 792a9d6
10129
10130Cherry picks:
10131 + 25e5995: Rollback of commit
10132 a2770334ea3f3111026eb3e1368586921468710c.
10133 + 2479405: Fix NPE with unset maven_jar sha1
10134 + 3cf2126: Rewrite the extra action info files if the data within
10135 them changes.
10136 + 5a9c6b4: JavaBuilder: Reintroduce the -extra_checks flag.
10137```
10138
10139Incompatible changes:
10140
10141 - Removed predefined Python variable "generic_cpu".
10142 - Skylark rules: if you set "outputs" or an attribute to a
10143 function, this function must now list its required attributes as
10144 parameters (instead of an attribute map).
10145 - The host_platform and target_platform entries are not written to
10146 the master log anymore.
10147 - Bazel requires Hazelcast 3.6 or higher now for remote execution
10148 support, because we upgraded our client library and the protocol
10149 it uses is incompatible with older versions.
10150
10151New features:
10152
10153 - LIPO context (--lipo_context) can now also be a cc_test (in
10154 addition to cc_binary)
10155
10156Important changes:
10157
10158 - If --android_crosstool_top is set, native code compiled for
10159 android will always use --android_compiler and not --compiler in
10160 choosing the crosstool toolchain, and will use --android_cpu if
10161 --fat_apk_cpu is not set.
10162 - Add --instrument_test_targets option.
10163 - apple_binary supports a new platform_type attribute, which, if
10164 set to "watchos", will build dependencies for Apple's watchOS2.
10165 - objc_binary now supports late-loaded dynamic frameworks.
10166 - Native Swift rules no longer pull in module maps unconditionally.
10167 Use --experimental_objc_enable_module_maps for that.
10168 - Merged manifests are guaranteed to have the application element
10169 as the last child of the manifest element as required by Android
10170 N.
10171 - The Android manifest merger is now available as an option for
10172 android_binary rules. The merger will honor tools annotations in
10173 AndroidManifest.xml and will perform placeholder substitutions
10174 using the values specified in android_binary.manifest_values. The
10175 merger may be selected by setting the manifest_merger attribute
10176 on android_binary.
10177 - The progress message would not clear packages that need to be
10178 loaded twice.
10179 - Remove warning for high value of --jobs.
10180 - Use the correct build configuration for shared native deps during
10181 Android split transitions.
10182 - When building ObjectiveC++, pass the flag -std=gnu++11.
10183 - use xcrun simctl instead of iossim to launch the app for "blaze
10184 run".
10185 - Glob arguments 'exclude' and 'exclude_directories' must be named
10186 - Bazel no longer regards an empty file as changed if its mtime has
10187 changed.
10188
Bazel Release Systemccadf8d2016-06-10 13:28:40 +020010189## Release 0.3.0 (2016-06-10)
10190
10191```
10192Baseline: a9301fa
10193
10194Cherry picks:
10195 + ff30a73: Turn --legacy_external_runfiles back on by default
10196 + aeee3b8: Fix delete[] warning on fsevents.cc
10197```
10198
10199Incompatible changes:
10200
10201 - The --cwarn command line option is not supported anymore. Use
10202 --copt instead.
10203
10204New features:
10205
10206 - On OSX, --watchfs now uses FsEvents to be notified of changes
10207 from the filesystem (previously, this flag had no effect on OS X).
10208 - add support for the '-=', '*=', '/=', and'%=' operators to
10209 skylark. Notably, we do not support '|=' because the semantics
10210 of skylark sets are sufficiently different from python sets.
10211
10212Important changes:
10213
10214 - Use singular form when appropriate in blaze's test result summary
10215 message.
10216 - Added supported for Android NDK revision 11
10217 - --objc_generate_debug_symbols is now deprecated.
10218 - swift_library now generates an Objective-C header for its @objc
10219 interfaces.
10220 - new_objc_provider can now set the USES_SWIFT flag.
10221 - objc_framework now supports dynamic frameworks.
10222 - Symlinks in zip files are now unzipped correctly by http_archive,
10223 download_and_extract, etc.
10224 - swift_library is now able to import framework rules such as
10225 objc_framework.
10226 - Adds "jre_deps" attribute to j2objc_library.
10227 - Release apple_binary rule, for creating multi-architecture
10228 ("fat") objc/cc binaries and libraries, targeting ios platforms.
10229 - Aspects documentation added.
10230 - The --ues_isystem_for_includes command line option is not
10231 supported anymore.
10232 - global function 'provider' is removed from .bzl files. Providers
10233 can only be accessed through fields in a 'target' object.
10234
Bazel Release System9fdd6012016-05-17 11:12:31 +020010235## Release 0.2.3 (2016-05-10)
10236
10237```
10238Baseline: 5a2dd7a
10239```
10240
10241Incompatible changes:
10242
10243 - All repositories are now directly under the x.runfiles directory
10244 in the runfiles tree (previously, external repositories were at
10245 x.runfiles/main-repo/external/other-repo. This simplifies
10246 handling remote repository runfiles considerably, but will break
10247 existing references to external repository runfiles.
10248 Furthermore, if a Bazel project does not provide a workspace name
10249 in the WORKSPACE file, Bazel will now default to using __main__
10250 as the workspace name (instead of "", as previously). The
10251 repository's runfiles will appear under x.runfiles/__main__/.
10252 - Bazel does not embed protocol buffer-related rules anymore.
10253 - It is now an error for a cc rule's includes attribute to point to
10254 the workspace root.
10255 - Bazel warns if a cc rule's includes attribute points out of
10256 third_party.
10257 - Removed cc_* attributes: abi / abi_deps. Use select() instead.
10258
10259New features:
10260
10261 - select({"//some:condition": None }) is now possible (this "unsets"
10262 the attribute).
10263
10264Important changes:
10265
10266 - java_import now allows its 'jars' attribute to be empty.
10267 - adds crunch_png attribute to android_binary
10268 - Replace --java_langtools, --javabuilder_top, --singlejar_top,
10269 --genclass_top, and --ijar_top with
10270 java_toolchain.{javac,javabuilder,singlejar,genclass,ijar}
10271 - External repository correctness fix: adding a new file/directory
10272 as a child of a new_local_repository is now noticed.
10273 - iOS apps are signed with get-task-allow=1 unless building with -c
10274 opt.
10275 - Generate debug symbols (-g) is enabled for all dbg builds of
10276 objc_ rules.
10277 - Bazel's workspace name is now io_bazel. If you are using Bazel's
10278 source as an external repository, then you may want to update the
10279 name you're referring to it as or you'll begin seeing warnings
10280 about name mismatches in your code.
10281 - Fixes integer overflow in J2ObjC sources to be Java-compatible.
10282 - A FlagPolicy specified via the --invocation_policy flag will now
10283 match the current command if any of its commands matches any of
10284 the commands the current command inherits from, as opposed to
10285 just the current command.
10286 - The key for the map to cc_toolchain_suite.toolchains is now a
10287 string of the form "cpu|compiler" (previously, it was just "cpu").
10288 - Fix interaction between LIPO builds and C++ header modules.
10289 - Ctrl-C will now interrupt a download, instead of waiting for it to
10290 finish.
10291 - Proxy settings can now be specified in http_proxy and https_proxy
10292 environment variables (not just HTTP_PROXY and HTTPS_PROXY).
10293 - Skylark targets can now read include directories from
10294 ObjcProvider.
10295 - Expose parameterized aspects to Skylark.
10296 - Support alwayslink cc_library dependencies in objc binaries.
10297 - Import cc_library dependencies in generated Xcode project.
10298
Bazel Release System1aedd1f12016-04-25 09:47:50 +020010299## Release 0.2.2b (2016-04-22)
Bazel Release System951cea22016-04-21 14:10:12 +020010300
10301```
10302Baseline: 759bbfe
Bazel Release System1aedd1f12016-04-25 09:47:50 +020010303
10304Cherry picks:
Bazel Release System951cea22016-04-21 14:10:12 +020010305 + 1250fda: Rollback of commit
10306 351475627b9e94e5afdf472cbf465f49c433a25e.
10307 + ba8700e: Correctly set up build variables for the correct pic
10308 mode for fake_binary rules.
10309 + 386f242: Automated [] rollback of commit
10310 525fa71b0d6f096e9bfb180f688a4418c4974eb4.
Bazel Release System1aedd1f12016-04-25 09:47:50 +020010311 + 97e5ab0: Fix cc_configure include path for Frameworks on OS X.
10312 + a20352e: cc_configure: always add -B/usr/bin to the list of gcc
10313 option
10314 + 0b26f44: cc_configure: Add piii to the list of supported
10315 cpu_value
10316 + 3e4e416: cc_configure: uses which on the CC environment variable
10317 + aa3dbd3: cc_configure.bzl: strip end of line when looking for
10318 the cpu
10319 + 810d60a: cc_configure: Add -B to compiler flag too
Bazel Release System951cea22016-04-21 14:10:12 +020010320```
10321
Bazel Release System1aedd1f12016-04-25 09:47:50 +020010322Patch release, only includes fixes to C++ auto-configuration.
Bazel Release System951cea22016-04-21 14:10:12 +020010323
Bazel Release System950c1ab2016-03-31 17:18:55 +020010324## Release 0.2.1 (2016-03-21)
10325
10326```
10327Baseline: 19b5675
10328```
10329
10330Incompatible changes:
10331
10332 - Skylark rules that are available from their own repository will
10333 now issue a warning when accessed through @bazel_tools.
10334 - Set --legacy_bazel_java_test to off by default. java_test will
10335 now have a slightly different behaviour, correctly emitting XML
10336 file but, as a downside, it needs correct declaration of the
10337 test suite (see https://github.com/bazelbuild/bazel/issues/1017).
10338 - Labels in .bzl files in remote repositories will be resolved
10339 relative to their repository (instead of the repository the
10340 Skylark rule is used in).
10341 - Renamed proto_java_library to java_proto_library. The former
10342 is now deprecated and will print out a warning when used.
10343 - android_sdk now compiles android_jack on the fly from
10344 android_jar, which means android_jar must be a jar and
10345 android_jack is now deprecated. The Jack tools (jack, jill,
10346 resource_extractor) must be specified.
10347 - Any project that depended on the objc_options rule will be
10348 broken. Can be fixed by adding attrs (infoplists,copts) directly
10349 to rules depending on the options.
10350 - .aidl files correctly require import statements for types
10351 defined in the same package and the same android_library.
10352
10353New features:
10354
10355 - Experimental Windows support is available.
10356 - Experimental support for writing remote repository rules in
10357 Skylark is available.
10358 - iOS ipa_post_processor attribute allows for user-defined IPA
10359 edits.
10360 - Adds a to_json method to Skylark structs, providing conversion to
10361 JSON format.
10362 - Native python rule can depend on skylark rule as long as skylark
10363 rule provides 'py' provider.
10364 - When using both --verbose_failures and --sandbox_debug, Bazel
10365 prints instructions how to spawn a debugging shell inside the
10366 sandbox.
10367 - add flag --sandbox_add_path, which takes a list of additional
10368 paths as argument and mount these paths to sandbox.
10369
10370Important changes:
10371
10372 - @androidsdk//:org_apache_http_legacy added for the legacy Apache
10373 classes for android sdk version 23 and above.
10374 - Genrules correctly work when used with bazel run.
10375 - When namespace-sandbox is run with the -D (debug) flag and
10376 inside a terminal, it spawns a shell inside the sandbox to aid in
10377 debugging when the sandboxed command fails.
10378 - Added --artifact to workspace generator for generating workspace
10379 and build file rules from artifact coodrinates.
10380 - Specifying --experimental_android_resource_shrinking on the
10381 command line will enable a resource shrinking pass on
10382 android_binary targets that already use Proguard.
10383 - J2ObjC updated to 1.0.1 release.
10384 - Added "root_symlinks" and "symlinks" parameters to Skylark
10385 runfiles() method.
10386 - You can no longer use objc_binary targets for the xctest_app
10387 attribute of an ios_test rule.
10388 - Enable overriding jsonnet binaries and stdlib for Jsonnet rules.
10389 - mount target of /etc/resolv.conf if it is a symlink.
10390 - Tests that failed to build because execution was halted no longer
10391 print their status.
10392 - Bazel warns if a cc rule's includes attribute contains up-level
10393 references that escape its package.
10394 - Add repository_ctx.download and repository_ctx.download_and_extract
10395 function.
10396
Bazel Release Systemf98290d2016-02-23 13:51:16 +010010397## Release 0.2.0 (2016-02-18)
10398
10399```
10400Baseline: 9e100ac
10401```
10402
10403Incompatible changes:
10404
10405 - ObjC compile actions for J2ObjC-translated code now only has
10406 access to headers from the java deps of the associated original
10407 java rule.
10408 These compile actions no longer takes the compiler options
10409 specified in "copts" attribute on objc_binary/ios_test rules.
10410 J2ObjC dead code removal (enabled through flag
10411 "--j2objc_dead_code_removal") now happens *after* ObjC
10412 compilation.
10413 - maven_jar no longer supports separate artifact_id, group_id, and
10414 verison fields. This information should be provided in the
10415 artifact field,
10416 instead.
10417
10418New features:
10419
10420 - Better support for toolchains that don't have a dynamic linker.
10421 - build_file_content attribute added to new_git_repository,
10422 new_http_archive, and new_local_repository.
10423 - Add support for .tar.bz2 archives to http_archive rules.
10424
10425Important changes:
10426
10427 - The --skyframe flag is no longer available for the build command.
10428 - The --artifacts flag was removed from the dump command.
10429 - The sha256 attribute is now optional (although recommended!) for
10430 remote repository rules.
10431 - Add instrumented file provider support to Skylark rules.
10432 - Add imports attribute to native Python rules.
10433 - Allow overriding -gsplit-dwarf from copts.
10434 - Improved sandbox performance on XFS filesystems.
10435
Bazel Release System00cf25d2016-02-09 18:36:51 +010010436## Release 0.1.5 (2016-02-05)
10437
10438```
10439Baseline: 3a95f35
10440 + 8378cd8: Rollback of commit
10441 a9b84575a32476a5faf991da22b44661d75c19b6.
10442```
10443
10444Incompatible changes:
10445
10446 - Set stamping to false by default (i.e., --nostamp)
10447 - Removed --objc_dump_syms_binary.
10448 - Removes --objc_gcov_binary flag.
10449 - Remove JAVAC "Make" variable
10450 - The startup flag --blaze_cpu is removed,
10451
10452New features:
10453
10454 - A new java test runner that support XML output and test filtering
10455 is supported. It can be used by specifying --nolegacy_bazel_java_test
10456 or by specifying the test_class attribute on a java_test.
10457 - Skylark aspects can now specify configuration fragment
10458 dependencies with fragments and host_fragments like rules can.
10459
10460Important changes:
10461
10462 - Support for downloading remote resources through proxies by
10463 setting HTTP_PROXY (or HTTPS_PROXY).
10464 - Timestamps within Android apks are removed to make apks
10465 deterministic.
10466 - Support aggregation over existing rules in Skylark extensions
10467 through native.rules and native.rule.
10468 - A tools/bazel script in the workspace will be executed
10469 as an opportunity to use a fixed version of Bazel (not
10470 implemented for the homebrew recipe yet).
10471 - --noimplicit_deps and --nohost_deps work correctly for Aspect
10472 attributes.
10473 - JDK-related targets are now available via @local_jdk (instead of
10474 @local-jdk).
10475 - j2objc tools can now be accessed via @bazel_j2objc, not
10476 @bazel-j2objc.
10477 - Repository rules must use names that are valid workspace names.
10478 - [rust] Update to Rust 1.6
10479 - Add support for .tar.xz archives to http_archive rules.
10480 - Make C++ modules compatible with tools using
10481 --compilation_prerequisites_only
10482 - [d] Update to DMD 2.070.0
10483
Bazel Release System446d9922016-01-21 10:59:31 +010010484## Release 0.1.4 (2016-01-15)
10485
10486```
10487Baseline: e933d5e
10488 + 3d796fe: Rollback of commit
10489 ac6ed79e1a3fa6b0ca91657b28e2a35f7e49758c.
10490 + 7a02e5d: Fix installer under OS X
10491 + 848740c: Fix bazel version for debian package
10492 + 7751d43: Add a method for getting the root of a rule workspace
10493 to the Label method
10494```
10495
10496Important changes:
10497
10498 - add loadfiles() query operator, to find skylark files loaded by
10499 targets.
10500 - Added ability to declare and use aspects in Skylark.
10501 - Skylark load statements may now reference .bzl files via build
10502 labels, in addition to paths. In particular, such labels can be
10503 used to reference Skylark files in external repositories; e.g.,
10504 load("@my_external_repo//some_pkg:some_file.bzl", ...).
10505 Path-based loads are now deprecated and may be disabled in the
10506 future. Caveats: Skylark files currently do not respect package
10507 visibility; i.e., all Skylark files are effectively public. Also,
10508 loads may not reference the special //external package.
10509 - Relative paths can now be used for 'path' with
10510 new_local_repository and local_repository.
10511
Bazel Release System1518253e2016-01-11 10:10:19 +010010512## Release 0.1.3 (2016-01-07)
10513
10514```
10515Baseline: 23ad8f6
10516 + de2183d: Only depend on the WORKSPACE file for external files
10517 that are under the external/ directory, i.e. were
10518 created by Bazel.
10519 + f8f855c: Rollback of commit
10520 12bad3af0eade9c4b79d76f9e1c950ad2e3214c2.
10521 + f627562: Stop parsing the WORKSPACE file when a parse error is
10522 detected
10523 + 763f139: Add -fno-canonical-system-headers to CROSSTOOL files so
10524 that gcc doesn't resolve symlinks in .d files, which
10525 would confuse Blaze.
10526 + b95995b: Use openjdk7 as dependency for debian package of jdk7
10527 flavor
10528```
10529
10530New features:
10531
10532 - Skylark macros are now enabled in WORKSPACE file.
10533 - .bazelrc allows workspace-relative imports as "import
10534 %workspace%/path/to/rcfile"
10535 - Evaluate the query expression in a file by passing
10536 --query_file=<file> to query
10537
10538Important changes:
10539
10540 - Remove obsolete --objc_per_proto_includes flag.
10541 - iOS apps and extensions now have launch_storyboard
10542 - Passing multiple JVM options via a single --host_jvm_args flag is
10543 now deprecated. Pass each JVM option behind its own
10544 --host_jvm_args flag.
10545 - Resources defined locally on an android_library rule will respect
10546 the neverlink attribute.
10547 - Update Rust to 1.4
10548 - Fix resource handling for exported android_library rules
10549 - Files in external repositories are now treated as mutable, which
10550 will make the correctness guarantees of using external
10551 repositories stronger (existent), but may cause performance
10552 penalties.
10553
Bazel Release System0d2e4092015-12-04 23:31:41 +010010554## Release 0.1.2 (2015-11-20)
10555
10556```
10557Baseline: ee0ade3
10558 + 1e66ccd: RELNOTES: Symlink dirents of directories containing a
10559 file named
10560 "DONT_FOLLOW_SYMLINKS_WHEN_TRAVERSING_THIS_DIRECTORY_VIA
10561 _A_RECURSIVE_TARGET_PATTERN" will *not* be traversed
10562 for transitive target patterns. The motivation here is
10563 to allow directories that intentionally contain wonky
10564 symlinks (e.g. foo/bar -> foo) to opt out of being
10565 consumed by Blaze. For example, given
10566 + f5773fc: Set the ijar MAX_BUFFER_SIZE to 256 MB
10567```
10568
10569New features:
10570
10571 - java_library now supports the proguard_specs attribute for
10572 passing Proguard configuration up to Android (not Java) binaries.
10573 - http_file can specify "executable" to make the downloaded file
10574 runnable.
10575 - Debian and tar packaging is now supported
10576 (see tools/build_defs/pkg/README.md).
10577 - cpxx_builtin_include_directory specifications allow more
10578 flexibility.
10579 - accept %crosstool_top% in cxx_builtin_include_directory
10580 - android_binary now supports proguard_apply_mapping to re-use a
10581 previously generated proguard mapping.
10582
10583Important changes:
10584
10585 - remove webstatusserver (--use_webstatusserver).
10586 - Add support for objc textual headers, which will not be compiled
10587 when modules are enabled.
10588 - actoolzip, momczip and swiftstdlibtoolzip have all been made into
10589 bash scripts and have been renamed to actoolwrapper, momcwrapper
10590 and swiftstdlibtoolwrapper respectively. The old versions will be
10591 deleted in a later change.
10592 - [rust] Add rust_bench_test and rust_doc_test rules and improve
10593 usability of rust_test tule.
10594 - Java rules now support a resource_strip_prefix attribute that
10595 allows the removal of path prefixes from Java resources.
10596 - [docker_build] incremental loading is default now.
10597 Specify explicitly //package:target.tar (with the .tar extension)
10598 to obtain the full image.
10599 - --ios_signing_cert_name allows specifying a cert for iOS app
10600 signing
10601 - Go rules for Bazel.
10602 - [jsonnet] Update to Jsonnet 0.8.1.
10603 - [jsonnet] Add vars and code_vars attributes to jsonnet_to_json to
10604 allow passing external variables to Jsonnet via --var and
10605 --code_var.
10606 - Adds --override_workspace_root blaze flag to hand-set
10607 workspace_root and mainGroup in xcodeproj.
10608 - Allow dots in package names.
10609 - When used as a forwarding rule (i.e., has no sources),
10610 android_library
10611 will also forward any exported_plugins in its dependencies.
10612 - Add support for Windows-created zip files with non-posix
10613 permissions.
10614 - [jsonnet] Add jsonnet_to_json_test rule for testing Jsonnet code.
10615 - C++ compile actions run in a sandbox now on systems that support
10616 sandboxed execution.
10617 - The names of the clang compilers in the Android NDK crosstool no
10618 longer reference gcc.
10619 - 420 dpi is now a valid density for andoid_binary.densities.
10620 - Bazel does strict validation of include files now to ensure
10621 correct incremental builds. If you see compilation errors when
10622 building C++ code, please make sure that you explicitly declare
10623 all header files in the srcs or hdrs attribute of your cc_*
10624 targets and that your cc_* targets have correct "deps" on
10625 cc_library's that they use.
10626 - [jsonnet] Fix jsonnet_to_json rule to read code_vars from
10627 code_vars instead of vars.
10628 - Tests, genrules, and Skylark actions without the
10629 "requires-network" tag will no longer be able to access the
10630 network.
10631 - C++ libraries no longer need includes = ["."] (or similar copts)
10632 to include paths relative to a remote repository's root.
10633 - Support exports attribute for android_library
10634 - Symlink dirents of directories containing a file named
10635 "DONT_FOLLOW_SYMLINKS_WHEN_TRAVERSING_THIS_DIRECTORY_VIA_A_RECURSI
10636 VE_TARGET_PATTERN" will *not* be traversed for transitive target
10637 patterns. The motivation here is to allow directories that
10638 intentionally contain wonky symlinks (e.g. foo/bar -> foo) to opt
10639 out of being consumed by Blaze.
10640
Bazel Release Systemfa35b182015-10-14 12:11:51 -040010641## Release 0.1.1 (2015-10-05)
10642
10643```
10644Baseline: 22616ae
10645 + 1ef338f: Rollback of "Propagates cc_library linkopts attribute
10646 to dependent objc_libraries.": breaks certain
10647 objc_binary build targets.
10648 + 5fb1073: Reintroduce an inconsistency check (albeit, in a weaker
10649 form) removed by a previous change that was trying to
10650 optimize away a filesystem call.
10651 + 6d00468b2eb976866cfb814d562e0d53a580a46f: Add IdlClass to the embedded default android tools
10652 repository and rearrange BuildJar's JarHelper so that
10653 it too can be embedded.
10654 + a5199039934a2e399a7201adc0d74e2f2d2b0ff3: Fixes Android integration tests by wiring up idlclass
10655 rules in integration environment.
10656```
10657
10658Incompatible changes:
10659
10660 - Bazel requires JDK 8 to run.
10661 - Attribute "copts" is removed from j2objc_library.
10662
10663New features:
10664
10665 - a cc_binary rule may list '.s' and '.asm' files in the srcs
10666 - Support for build with libsass.
10667 - labels in "linkopts" may match any label in either "deps" or
10668 "srcs" to be considered valid.
10669 - Maven servers that require username & password authentication are
10670 now supported (see maven_server documentation).
10671
10672Important changes:
10673
10674 - Support empty plist files
10675 - The <compatible-screens> section of the AndroidManifest.xml will
10676 not be overwritten if it already contains a <screen> tag for each
10677 of the densities specified on the android_binary rule.
10678 - Add Jsonnet rules to Bazel
10679 - Remove deprecated xcode_options flag.
10680 - Workspace names are now restricted to being in their base
10681 directory
10682 (that is, the names cannot contain up-level references or /./).
10683 - j2objc_library on Bazel now transpiles transitive proto_library
10684 dependencies. (Note that java_* rules in Bazel do not yet support
10685 protos; currently they ignore proto dependencies.)
10686 - new_http_archive can specify a root directory.
10687 - Adds support for dylibs on devices for Xcode 7.
10688 - [d] d_docs rules now depend on a d_binary, a d_library or
10689 d_source_library.
10690 - [docker] docker_build now set the permission to 0555 to files
10691 added to the layer, use `mode = "0644"` to use the legacy behavior.
10692 - android_binary now has a main_dex_proguard_specs attribute to
10693 specify which classes should be in the main dex.
10694 - [rust] Add rust_docs rule for generating rustdoc.
Bazel Release System79e40ac2015-09-08 23:38:00 +020010695## Release 0.1.0 (2015-09-08)
10696
10697```
10698Baseline: a0881e8
10699 + 87374e6: Make android_binary use a constant, hard-coded,
10700 checked-in debug key.
10701 + 2984f1c: Adds some safety checks in the Bazel installer
10702 + 4e21d90: Remove BUILD.glob and incorporate the necessary
10703 filegroups into the android_{ndk,sdk}_repository rules
10704 themselves.
10705 + 1ee813e: Fix Groovy rules to work with sandboxing
10706 + 8741978: Add initial D rules to Bazel.
10707 + 2c2e70d: Fix the installer and fixing the package shiped into
10708 binary version of Bazel.
10709```
10710
10711Initial release.
Bazel Release System6712cac2017-02-01 19:53:37 +010010712
Bazel Release System8d635fc2017-03-16 13:18:30 +010010713
Bazel Release Systema3e26832017-05-26 14:11:07 +020010714
Bazel Release System63222de2017-06-06 11:32:04 +020010715
Bazel Release System7b851222017-06-27 15:08:47 +020010716
Bazel Release System195a7a82017-07-27 20:27:32 +020010717
Bazel Release System5371d132017-08-25 11:24:06 +020010718
Bazel Release System471c0e12017-09-28 16:36:12 +020010719
Bazel Release Systemed0ebc02017-10-05 23:52:25 +020010720
Bazel Release System76b6d0a2017-10-18 14:34:11 +020010721
Bazel Release System0838aee2017-11-27 14:16:34 +010010722
Bazel Release System3d53cb02017-12-05 15:28:40 +010010723
Bazel Release System5bd27482018-02-01 09:43:33 +010010724
Bazel Release Systeme1148362018-02-15 10:02:05 +010010725
Bazel Release System09077a32018-02-23 11:09:18 -050010726
Bazel Release Systemc86d6a02018-03-06 19:32:18 +010010727
Bazel Release System546976c2018-04-11 17:34:19 +020010728
Bazel Release System1d9c6062018-04-30 10:45:38 +020010729
Bazel Release System24c68ff2018-05-23 10:59:57 +020010730
Bazel Release System3a592f62018-06-01 15:04:31 +020010731
Bazel Release System513bbf52018-06-08 14:15:20 +020010732
Bazel Release System5013a332018-06-26 14:07:47 +020010733
Bazel Release System1281a022018-07-16 16:13:53 +020010734
Bazel Release System1bd58832018-08-13 15:41:26 +020010735
Bazel Release Systemfdb09a22018-09-14 12:15:54 +020010736
Bazel Release System50921e62018-09-21 12:27:04 +020010737
Bazel Release System36177972018-10-15 10:29:10 +020010738
Bazel Release System92849b82018-10-31 15:41:11 +010010739
Bazel Release System684f1092018-11-12 10:26:58 -050010740
Bazel Release Systemcb3e2982018-11-19 11:19:38 -050010741
Bazel Release System85378562018-11-30 15:34:16 +010010742