Release 1.0.0 (2019-10-10)
Baseline: 97a82646dadd93bf52d47828bda42e3383b657c6
Cherry picks:
- a0e3bb207fe2044120a2555a37162ee1f2b17500: Remove support for authentication and .netrc
- ada2c55dcc106cd55bafbbe5d9a966e21e4770e0: Add explicit --sdk argument to xcrun calls
- 847df729528f6e5919ec8374247eadf792cba544: toolchain_vanilla: Unset source and target language level versions
- 5cfa0303d6ac3b5bd031ff60272ce80a704af8c2: Update java_tools version to javac11-v5.1.
Incompatible changes:
- Python, Windows: the --[no]incompatible_windows_escape_python_args is no longer supported. (It was flipped to true in Bazel 0.27.0)
- --incompatible_use_native_patch is enabled by default
- Windows: --incompatible_windows_bashless_run_command is now true by default, meaning "bazel run //foo:bin" will run the binary as a subprocess of the Bazel client. (When the flag is false, the binary is executed as a subprocess of Bash.)
- Windows: --incompatible_windows_native_test_wrapper is enabled by default
New features:
- Genrule now supports
cmd_bash
, cmd_ps
, cmd_bat
attributes. More details at https://docs.bazel.build/versions/master/be/general.html#genrule.c md
- config_setting can now check multiple values on "--foo=firstVal --foo=secondVal ..."-style flags
- tags: use
--experimental_allow_tags_propagation
flag to propagate tags to the action's execution requirements from targets. Such tags should start with: no-
, requires-
, supports-
, block-
, disable-
, cpu:
. See #8830 for details.
- Users can now get generated def file from cc_library via "def_file" output group on Windows.
- Platform-specific bazelrc: with --enable_platform_specific_config you can enable flags in bazelrc according to your host platform.
- tags: use
--experimental_allow_tags_propagation
flag to propagate tags to the action's execution requirements from cc_library or cc_binary targets. Such tags should start with: no-
, requires-
, supports-
, block-
, disable-
, cpu:
. See #8830 for details.
- tags: use --experimental_allow_tags_propagation flag to propagate tags to the action's execution requirements from java targets. Such tags should start with: no-, requires-, supports-, block-, disable-, cpu:. See #8830 for details.
Important changes:
- Bazel Android builds now use aapt2 by default. To revert to aapt, set
--android_aapt=aapt
.
- Make either --subcommands or --verbose_failures imply --materialize_param_files
- Bazel Android builds now use aapt2 by default. To revert to aapt, set `--an... RELNOTES: None
- by default all remote connections considered to be via
gRPC
with TLS enabled, unless other specified. To disable TLS use grpc://
prefix for you endpoints. All remote connections via gRPC
affected - --remote_cache
, --remote_executor
or --bes_backend
. http cache/executor is not affected. See #8061 for details.
- cc_* rules support non-transitive defines through a 'local_defines' attribute.
- Enable incompatible_disallow_rule_execution_platform_constraints_allowed by default (https://github.com/bazelbuild/bazel/issues/8136).
- incompatible_disallow_split_empty_separator is enabled by default
- Fixed Android build issues with aapt2 on Windows. See the GitHub issue for more information.
- --incompatible_disable_static_cc_toolchains has been flipped. See https://github.com/bazelbuild/bazel/issues/8546.
- --remote_default_platform_properties has been deprecated in favor of --remote_default_exec_properties.
- The --incompatible_make_thinlto_command_lines_standalone flag has been flipped, see https://github.com/bazelbuild/bazel/issues/6791 for more information.
- The --incompatible_use_specific_tool_files flag has been flipped. See https://github.com/bazelbuild/bazel/pull/9126 for more information.
- Clarify default visibility.
- Enables incompatible_auto_configure_host_platform
- New incompatible flag --incompatible_disable_depset_items disables the "items" parameter in the Starlark depset constructor. Use "direct" and "transitive" parameters instead.
- --incompatible_assignment_identifiers_have_local_scope is enabled
- incompatible_disable_partition_default_parameter is enabled by default ()
- incompatible_restrict_attribute_names is enabled (https://github.com/bazelbuild/bazel/issues/6437)
- The --incompatible_disable_nocopts flag has been flipped. See https://github.com/bazelbuild/bazel/issues/8546 for more information.
- Deprecated Java-Starlark API java_common.create_provider is removed. JavaInfo() legacy args (actions, sources, source_jars, use_ijar, java_toolchain, host_javabase) are removed.
- The flag incompatible_disallow_hashing_frozen_mutables is enabled (https://github.com/bazelbuild/bazel/issues/7800)
maven_jar
and maven_server
now disallow using plain HTTP URLs without a specified checksum. If you are still using maven_jar
, consider migrating to rules_jvm_external
for transitive dependency management. See #8607 for more information.
- Added
sha256
and sha256_src
attributes to maven_jar
. Please consider migrating to SHA-256 as SHA-1 has been deemed cryptographically insecure (https://shattered.io). Or, use rules_jvm_external
to manage your transitive Maven dependencies with artifact pinning and SHA-256 verification support.
- introducing per-target exec_properties
- Bazel now supports ThinLTO builds on Linux for Clang versions >= 6.0. ThinLTO can be enabled through --features=thin_lto
- The Target.output_group field in Starlark is removed. Use OutputGroupInfo instead. See https://github.com/bazelbuild/bazel/issues/7949 for details.
- Make a number of parameters of Starlark builtin functions positional-only (as opposed to specifiable by keyword). See https://github.com/bazelbuild/bazel/issues/8147 for details.
- incompatible_skip_genfiles_symlink is enabled by default (#8651)
- Change Pruned events will fire immediately after being checked.
- --incompatible_remove_legacy_whole_archive has been flipped. See https://github.com/bazelbuild/bazel/issues/7362 for more information
This 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.
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 command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel 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.
Index of files