The Bazel team is happy to announce a new version of Bazel, Bazel 0.26.

--incompatible_disable_objc_provider_resources is now enabled by default.

--Incompatible_disallow_rule_execution_platform_constraints_allowed : When enabled, disallows the use of the execution_platform_constraints_allowed attribute when defining new rules.

--incompatible_windows_escape_jvm_flags is enabled by default, and removed.

objc_library does not support resource attributes any more. Please read #7594 for more info.

Add --incompatible_objc_framework_cleanup to control whether to enable some objc framework cleanup that changes the API. Specifically, the cleanup changes the objc provider API pertaining to frameworks. This change is expected to be transparent to most users unless they write their own Starlark rules to handle frameworks. See https://github.com/bazelbuild/bazel/issues/7594 for details.

The --ios_multi_cpus , --watchos_cpus , --macos_cpus and --tvos_cpus are now additive. This means that you can now split the --ios_multi_cpus=arm64,armv7 into --ios_multi_cpus=arm64 and --ios_multi_cpus=armv7 .

Added support for compiling against fully qualified R classes from aar_import dependencies.

Android resource conflicts will no longer be reported between a strong attr resource and a weak attr resource, if the weak attr does not have format specified.

Feature disable_whole_archive_for_static_lib has been added to allow turning off legacy_whole_archive for individual targets. #7362

Incompatible flag --incompatible_make_thinlto_command_lines_standalone has been added. See #6791 for details.

C++ Starlark API for compilation and linking is no longer whitelisted

cc_toolchain.static_runtime_lib and cc_toolchain.dynamic_runtime_lib are now exposed to Starlark.

Bazel C++ compile/link Starlark API . Can be used with experimental flag --experimental_cc_skylark_api_enabled_packages .

Add new options --cs_fdo_instrument and --cs_fdo_profile to support LLVM's context-sensitive FDO (CSFDO).

The flag --incompatible_restrict_named_params is added. Buildifier will soon be updated to automatically fix this in your code.

The flag --incompatible_no_kwargs_in_build_files is added. It fixes a bug where the **kwarg notation was allowed in BUILD files.

The flag --incompatible_static_name_resolution_in_build_files is added. This fixes a bug where invalid code was silently accepted.

The flag --incompatible_disallow_old_octal_notation is added. It removes a deprecated notation for octal numbers. Buildifier can update your code automatically.

struct.to_proto() can now convert dictionaries into proto3 text message.