Note: there is a known issue when using Bazel 0.28 with the IntelliJ plugin. Please see the tracking issue for updates. A patch release containing the fix will be shipped shortly.
- The flag
--incompatible_restrict_escape_sequencesis added. This will affect escape sequences in Starlark strings.
outputsparameter of the
rule()function is deprecated and attached to flag
--incompatible_no_rule_outputs_param. Migrate rules to use
attr.outputinstead. See migration notes for more information.
- Attribute names are going to be restricted and must be syntactically valid identifiers.
infocommand now supports the
starlark-semanticsargument, which outputs a representation of the effective Starlark semantics option values.
commandparameter of the
actions.run_shell()function will be restricted to only accept strings (and not string sequences). This check is attached to flag
--incompatible_run_shell_command_string. One may migrate by using the
actions.run()instead. See migration notes for more information.
aapthas been marked as a deprecated value for the
android_local_test. Please use
aapt2instead for faster incremental resource processing and smaller APKs. Bazel will switch to aapt2 by default at Bazel 1.0.
- Fixed treatment of
<dist:module />tags in AndroidManifest.xml.
- Fixed treatment of AndroidManifest.xml attributes which contained XML escaping.
- Fixed asset precedence for
android_binaryrules with aapt2.
@bazel_tools//tools/jdk:toolchain_java11are now available to enable java 10, respectively java 11 language level support.
--incompatible_load_java_rules_from_bzlwas added to forbid loading the native java rules directly. See more on tracking issue #8746
- Bazel's C++ autoconfiguration now understands
BAZEL_LINKLIBSenvironment variable to specify system libraries that should be appended to the link command line.
--incompatible_disable_nocoptsflag has been added.
- The runtime dynamic libraries are no longer in default output group of
- The experimental flag
experimental_link_compile_output_separatelyis removed. The same behavior is available through the feature
- Set the FDOBuildType as CSFDO for binaries built with
- Turn on
--experimental_build_setting_apiby default to allow user-defined build settings.
- The incompatible change
--incompatible_use_platforms_repo_for_constraintshas been added.
- All known issues (#8646, #8385) of "Builds without the Bytes" have been fixed.
- “Builds without the Bytes” now supports the Build Event Service (BES).
- The dynamic spawn strategy is now supported by remote execution.
- Bazel now supports hiding compiler warnings for targets that you're not explicitly building. See the flag
--incompatible_enable_profile_by_defaultto enable the JSON profile by default.
--incompatible_strict_action_envis enabled, the default
- Paths under the execution root starting with
_will be re-linked across builds
- Bazel now officially supports running on CentOS 7.
- Bazel can now be bootstrapped and built on arm64 platforms without requiring any flags or patches.
- Grakn published Bazel rules for assembling and deploying software distributions.
- Dan Frank created databazel - build rules for executing machine learning workflows.
- Lewis Hemens from Dataform wrote an article about Building a TypeScript monorepo with Bazel.
This release contains contributions from many people at Google, as well as Ben Diuguid, Benjamin Peterson, Dave Lee, Loo Rong Jie, Mark Butcher, Marwan Tammam, and Pedro Alvarez.