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