Bazel v0.29.0 Release Notes
Release Date: 2019-08-28 // over 4 years ago-
๐ Release 0.29.0 (2019-08-28)
Baseline: 6c5ef53
Cherry picks:
- 338829f:
๐ Fix retrying of SocketTimeoutExceptions in HttpConnector - 14651cd:
Fallback to next urls if download fails in HttpDownloader - b7d300c:
๐ Fix incorrect stdout/stderr in remote action cache. Fixes #9072 - 9602176:
โช Automated rollback of commit
0f0a0d5. - da557f9:
๐ Windows: fix "bazel run" argument quoting - ef8b6f6:
Return JavaInfo from java proto aspects. - 209175f:
โช Revert back to the old behavior of not creating a proto source
root for generated .proto files. - 644060b:
๐ Fix PatchUtil for parsing special patch format - 067040d:
Put the removal of the legacy repository-relative proto path
behind the --incompatible_generated_protos_in_virtual_imports
flag. - 76ed014:
repository mapping lookup: convert to canonical name first
Important changes:
- โ
rule_test: fix Bazel 0.27 regression ("tags" attribute was
ingored, #8723 - Adds --incompatible_enable_execution_transition, which enables
incremental migration of host attributes to exec attributes. - objc_proto_library rule has been deleted from Bazel.
- repository_ctx.read is no longer restricted to files
in the repository contructed. - ๐ท tags 'no-remote', 'no-cache', 'no-remote-cache',
'no-remote-exec', 'no-sandbox' are propagated now to the actions
๐ from targets when '--ncompatible_allow_tags_propagation' flag set
๐ to true. See #8830. - โ Adds flag
--//tools/build_defs/pkg:incompatible_no_build_defs_pkg. This
flag turns off the rules //tools/build_defs/pkg:{pkg_deb,
pkg_rpm, pkg_tar}. - The Android NDK is now integrated with toolchains. To use them,
pass the--extra_toolchains=@androidndk//:all
flag or register
them in your WORKSPACE with
register_toolchains("@androidndk//:all")
. - Stdout and stderr are checked to determine if output is going to a
terminal.--is_stderr_atty
is deprecated and--isatty
is
๐ undeprecated. - --incompatible_load_proto_rules_from_bzl was added to forbid
๐ loading the native proto rules directly. See more on tracking
issue #8922 - 0๏ธโฃ Docker Sandbox now respects remote_default_platform_properties
- pkg_deb, pkg_rpm & pkg_tar deprecation plan announced in the
๐ documentation. - ๐ The new java_tools release:
- fixes #8614
- exposes a new toolchain
@java_tools//:prebuilt_toolchain
which is using all the pre-built tools, including singlejar and
ijar, even on remote execution. This toolchain should be used
only when host and execution platform are the same, otherwise the
binaries will not work on the execution platform.
- ๐ java_common.compile supports specifying
๐จ annotation_processor_additional_inputs and
๐จ annotation_processor_additional_outputs for the Java compilation
๐ action for supporting annotation processors that consume or
๐ produce artifacts. Fixes #6415 - ๐ There is now documentation on optimizing Android app build
๐ performance. Read it at
๐ https://docs.bazel.build/versions/0.29.0/android-build-performance
.html - 0๏ธโฃ Execution log now respects --remote_default_platform_properties
- Include a link to the relevant documenation on transitive Python
๐ version errors. - ๐ New incompatible flag
--incompatible_disable_target_provider_fields removes the ability
(in Starlark) to access a target's providers via the field syntax
(for example,ctx.attr.dep.my_provider
). The provider-key
syntax should be used instead (for example,
๐ctx.attr.dep[MyProvider]
). See
#9014 for details. - A new platform exec_properties is added to replace
remote_execution_properties. - Added --incompatible_load_python_rules_from_bzl, which will be
๐ flipped in Bazel 1.0. See
#9006. - ๐ add --break_build_on_parallel_dex2oat_failure to shortcut tests
on dex2oat errors
๐ This 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.
๐ Notice: Bazel installers contain binaries licensed under the GPLv2 with
๐ป Classpath exception. Those installers should always be redistributed along with
the source code.Some versions of Bazel contain a bundled version of OpenJDK. The license of the
bundled OpenJDK and other open-source components can be displayed by running
the commandbazel license
. The vendor and version information of the bundled
OpenJDK can be displayed by running the commandbazel info java-runtime
.
The binaries and source-code of the bundled OpenJDK can be
๐ downloaded from our mirror server.๐ Security: All our binaries are signed with our
๐ public key 48457EE0. - 338829f: