Tags: act262/bazel
Tags
Release 0.23.2 (2019-03-11) Baseline: 441fd75 Cherry picks: + 6ca7763: Fix a typo + 2310b1c: Ignore SIGCHLD in test setup script + f9eb1b5: Complete channel initialization in the event loop + f0a1597: remote: properly reset state when using remote cache. Fixes bazelbuild#7555 + 56366ee: Set non-empty values for msvc_env_* when VC not installed Release 0.23.2
Release 0.23.1 (2019-03-04) Baseline: 441fd75 Cherry picks: + 6ca7763: Fix a typo + 2310b1c: Ignore SIGCHLD in test setup script + f9eb1b5: Complete channel initialization in the event loop + f0a1597: remote: properly reset state when using remote cache. Fixes bazelbuild#7555 Release 0.23.1rc1 (2019-02-28)
Release 0.23.0 (2019-02-26) Baseline: 441fd75 Cherry picks: + 6ca7763: Fix a typo + 2310b1c: Ignore SIGCHLD in test setup script + f9eb1b5: Complete channel initialization in the event loop Incompatible changes: - //src:bazel uses the minimal embedded JDK, if you want to avoid the extra steps of minimizing the JDK, use //src:bazel-dev instead. - //src:bazel uses the minimal embedded JDK, if you want to avoid the extra steps of building bazel with the minimized JDK, use //src:bazel-dev instead. - The default value of --host_platform and --platforms will be changed to not be dependent on the configuration. This means that setting --cpu or --host_cpu will not affect the target or host platform. - Toolchain resolution for cc rules is now enabled via an incompatible flag, --incompatible_enable_cc_toolchain_resolution. The previous flag, --enabled_toolchain_types, is deprecated and will be removed. - java_(mutable_|)proto_library: removed strict_deps attribute. - Python rules will soon reject the legacy "py" struct provider (preview by enabling --incompatible_disallow_legacy_py_provider). Upgrade rules to use PyInfo instead. See [bazelbuild#7298](bazelbuild#7298). - java_(mutable_|)proto_library: removed strict_deps attribute. - Two changes to native Python rules: 1) `default_python_version` and `--force_python` are deprecated; use `python_version` and `--python_version` respectively instead. You can preview the removal of the deprecated names with --incompatible_remove_old_python_version_api. See [bazelbuild#7308](bazelbuild#7308). 2) The version flag will no longer override the declared version of a `py_binary` or `py_test` target. You can preview this new behavior with --incompatible_allow_python_version_transitions. See [bazelbuild#7307](bazelbuild#7307). Important changes: - There is a new flag available `--experimental_java_common_create_provider_enabled_packages` that acts as a whitelist for usages of `java_common.create_provider`. The constructor will be deprecated in Bazel 0.23. - [bazelbuild#7024] Allow chaining of the same function type in aquery. - Introduces --local_{ram,cpu}_resources, which will take the place of --local_resources. - [bazelbuild#6930] Add documentation for the aquery command. - Incompatible flag `--incompatible_dont_emit_static_libgcc` has been flipped (bazelbuild#6825) - Incompatible flag `--incompatible_linkopts_in_user_link_flags` has been flipped (bazelbuild#6826) - Flag --incompatible_range_type is removed. - Flag --incompatible_disallow_slash_operator is removed. - Flag --incompatible_disallow_conflicting_providers is removed. - `--incompatible_disallow_data_transition` is now enabled by default - Allow inclusion of param files in aquery output - [bazelbuild#6985] Add test to verify aquery's behavior for Cpp action templates. - --incompatible_require_feature_configuration_for_pic was flipped (bazelbuild#7007). - Also ignore module-info.class in multi-version Jars - objc_framework has been deleted. Please refer to apple_dynamic_framework_import and apple_static_framework_import rules available in [rules_apple](https://github.com/bazelbuild/rules_apple/blob/maste r/doc/rules-general.md) - --test_sharding_strategy=experimental_heuristic is no more - objc_bundle_library has been removed. Please migrate to rules_apple's [apple_resource_bundle](https://github.com/bazelbuild/rules_apple/ blob/master/doc/rules-resources.md#apple_resource_bundle). - You can now use the attribute `aapt_version` or the flag `--android_aapt` to pick the aapt version for android_local_test tests - In --keep_going mode, Bazel now correctly returns a non-zero exit code when encountering a package loading error during target pattern parsing of patterns like "//foo:all" and "//foo/...". - The default value for --incompatible_strict_action_env has been flipped to 'false' again, as we discovered breakages for local execution users. We'll need some more time to figure out the best way to make this work for local and remote execution. Follow bazelbuild#7026 for more details. - Locally-executed spawns tagged "no-cache" no longer upload their outputs to the remote cache. - Introduces --host_compiler flag to allow setting a compiler for host compilation when --host_crosstool_top is specified. - --incompatible_expand_directories is enabled by default - [aquery] Handle the case of aspect-on-aspect. - Fixed a longstanding bug in the http remote cache where the value passed to --remote_timeout would be interpreted as milliseconds instead of seconds. - Enable --incompatible_use_jdk10_as_host_javabase by default, see bazelbuild#6661 - Add --incompatible_use_jdk11_as_host_javabase: makes JDK 11 the default --host_javabase for remote jdk (bazelbuild#7219) - Highlight TreeArtifact in aquery text output. - Locally-executed spawns tagged "no-cache" no longer upload their outputs to the remote cache. - java_common APIs now accept JavaToolchainInfo and JavaRuntimeInfo instead of configured targets for java_toolchain and java_runtime - cc_common.create_cc_toolchain_config_info is stable and available for production use - incompatible_use_toolchain_providers_in_java_common: pass JavaToolchainInfo and JavaRuntimeInfo providers to java_common APIs instead of configured targets (bazelbuild#7186) - --incompatible_strict_argument_ordering is enabled by default. - Bazel now supports reading cache hits from a repository cache, even if it doesn't have write access to the cache. - Adding arm64e to OSX CROSSTOOL. - Ignore package-level licenses on config_setting. - Add an optional output_source_jar parameter to java_common.compile - --incompatible_disable_objc_provider_resources is now enabled by default. This disables ObjcProvider's fields related to resource processing. - Explicitly set https.protocols and exclude TLSv1.3. - Bazel now validates that JAVA_HOME points to a valid JDK and falls back to auto-detection by looking up the path of `javac`. - Upgrade the embedded JDK version to 11.0.2. - Added --incompatible_disable_crosstool_file (bazelbuild#7320) - --incompatible_disable_objc_provider_resources is now enabled by default. This disables ObjcProvider's fields related to resource processing. - --incompatible_disable_tools_defaults_package has been flipped. - For tests that do not generate a test.xml, Bazel now uses a separate action to generate one; this results in minor differences in the generated test.xml, and makes the generation more reliable overall. - incompatible_generate_javacommon_source_jar: java_common.compile now always generates a source jar, see bazelbuild#5824. - New incompatible flag --incompatible_disallow_struct_provider_syntax removes the ability for rule implementation functions to return struct. Such functions should return a list of providers instead. Migration tracking: bazelbuild#7347 This 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.
Release 0.22.0 (2019-01-28) Baseline: deb028e Cherry picks: + a3a5975: Fix a race condition in remote cache + b8d0e1b: Use a new GitHub token and KMS key for the release process. + 3759e38: remote: fix unexpected IO error (not a directory) + 4473bb1: Fix a race condition in Bazel's Windows process management. + 9137fb9: undo flag flip of --incompatible_strict_action_env + 12ab12e: Revert "Enabling Bazel to generate input symlinks as defined by RE AP? + 6345c74: Automated rollback of commit 30536ba. New features: - Add inputs filtering for aquery - https://docs.bazel.build now supports versioned documentation. Use the selector at the top of the navigation bar to switch between documentation for different Bazel releases. - build_tar.py in tools/build_defs/pkg now supports a json manifest that can be used to add paths that have symbols that can't be specified via the command line Important changes: - Added `--incompatible_dont_emit_static_libgcc` (bazelbuild#6825) Added `--incompatible_linkopts_in_user_link_flags` (bazelbuild#6826) - mobile-install now works with aapt2. Try it out with `bazel mobile-install --android_aapt=aapt2 //my:target` - Fixed a mobile-install v1 bug when deploying to Android 9 Pie devices. bazelbuild#6814 - Add a new option --xbinary_fdo to pass xbinary profile. - --runs_per_test: place in TESTING documentation category. - Adds a clarifying message to test case summary output when all test cases pass but the target fails. - Fixed mobile-install v1 error when installing an app with native libraries onto an Android 9 (Pie) device. See bazelbuild/examples#77 - Fixed issue where error messages from Android manifest merging actions were not propagated fully. - Add outputs and mnemonic filtering to aquery - New incompatible change flag for defaulting to aapt2 in Android builds: `--incompatible_use_aapt2_by_default`. To build with aapt2 today, pass the flag `--incompatible_use_aapt2_by_default=true` or `--android_aapt=aapt2`, or set the `aapt_version` to `aapt2` on your `android_binary` or `android_local_test` target. - set projectId in all PublishBuildToolEventStreamRequest - Flip flag --incompatible_string_is_not_iterable (bazelbuild#5830) - cc_toolchain.(static|dynamic)_runtime_libs attributes are now optional - Added --incompatible_disable_runtimes_filegroups (bazelbuild#6942). - objc_bundle has been removed. Please migrate to rules_apple's [apple_bundle_import](https://github.com/bazelbuild/rules_apple/bl ob/master/doc/rules-resources.md#apple_bundle_import). - The apple_stub_binary rule has been deleted. - Incompatible flag `--incompatible_dont_emit_static_libgcc` has been flipped (bazelbuild#6825) - Incompatible flag `--incompatible_linkopts_in_user_link_flags` has been flipped (bazelbuild#6826) - Open source aquery & cquery query2 tests - Fixed a mobile-install bug where `arm64-v8a` libraries were not deployed correctly on `arm64` devices. This was done by enabling incremental native lib deployment by default. A previously undocumented `--android_incremental_native_libs` flag is removed, and is now the regular behavior. See bazelbuild#2239 - Incompatible flag `--incompatible_linkopts_in_user_link_flags` has been flipped (bazelbuild#6826) - Incompatible flag `--incompatible_dont_emit_static_libgcc` has been flipped (bazelbuild#6825) - Added --incompatible_disable_legacy_crosstool_fields. See the migration notes at bazelbuild#6861. - In the Query HowTo, recommend ":*" instead of ":all". "all" might be the name of a target. - The default value for --incompatible_strict_action_env has been flipped to 'false' again, as we discovered breakages for local execution users. We'll need some more time to figure out the best way to make this work for local and remote execution. Follow bazelbuild#7026 for more details. This release contains contributions from many people at Google, as well as Benjamin Peterson, Dave Lee, George Gensure, Gert van Dijk, Gustavo Storti Salibi, Keith Smiley, Loo Rong Jie, Lukasz Tekieli, Mikhail Mazurskiy, Thi, Travis Cline, Vladimir Chebotarev, Yannic.
Release 0.21.0 (2018-12-19) Baseline: cb9b2af Cherry picks: + 12b9646: Windows, test wrapper: rename the associated flag + 7fc967c: Use a fixed thread pool in ByteStreamBuildEventArtifactUploader + 798b9a9: Add --build_event_upload_max_threads option + dbe05df: Update the version of skylib bundled in the distfile Incompatible changes: - The --experimental_stl command line option is removed. - aquery defaults to human readable output format. New features: - repository_ctx.download and repository_ctx.download_and_extract now return a struct. - Android Databinding v2 can be enabled with --experimental_android_databinding_v2. Important changes: - The deprecated and unmaintained Docker rules in tools/build_defs/docker were removed. Please use https://github.com/bazelbuild/rules_docker instead. - The new --upload_query_output_using_bep query/cquery/aquery flag causes query outputs to be uploaded via BEP. - New incompatible flag --incompatible_strict_argument_ordering - --strict_android_deps and --strict_java_deps were renamed to --experimental_strict_java_deps - config_settings that select on "compiler" value instead of values = {"compiler" : "x"} should use flag_values = {"@bazel_tools//tools/cpp:compiler": "x"}. - The new --upload_query_output_using_bep query/cquery/aquery flag causes query outputs to be uploaded via BEP. - Turn on --incompatible_disable_sysroot_from_configuration - We revamped our Android with Bazel tutorial! Check it out [here](https://docs.bazel.build/versions/master/tutorial/android-a pp.html). - --incompatible_disallow_slash_operator is now on by default - Enable --experimental_check_desugar_deps by default. This flag rules out several types of invalid Android builds at compile-time. - The --max_config_changes_to_show option lists the names of options which have changed and thus caused the analysis cache to be dropped. - The --experimental_strict_action_env option has been renamed to --incompatible_strict_action_env and is now on by default. This means Bazel will no longer use the client's PATH and LD_LIBRARY_PATH environmental variables in the default action environment. If the old behavior is desired, pass --action_env=PATH and --action_env=LD_LIBRARY_PATH. --noincompatible_strict_action_env will also temporarily restore the old behavior. However, as --action_env is a more general and explicit way to pass client environmental variables into actions, --noincompatible_strict_action_env will eventually be deprecated and removed. See bazelbuild#6648 for more details. - XCRUNWRAPPER_LABEL has been removed. If you used this value before, please use @bazel_tools//tools/objc:xcrunwrapper instead. - --incompatible_static_name_resolution is no unable by default - We will phase out --genrule_strategy in favor of --strategy=Genrule=<value> (for genrules) or --spawn_strategy=<value> (for all actions). - --incompatible_package_name_is_a_function is now enabled by default - Dynamic execution is now available with --experimental_spawn_strategy. Dynamic execution allows a build action to run locally and remotely simultaneously, and Bazel picks the fastest action. This provides the best of both worlds: faster clean builds than pure local builds, and faster incremental builds than pure remote builds. - --incompatible_package_name_is_a_function is now enabled by default - New incompatible flag --incompatible_merge_genfiles_directory - grpc log now logs updateActionResult - CppConfiguration doesn't do package loading anymore. That means: * it's no longer needed to have C++ toolchain available when building non-C++ projects * bazel will not analyze C++ toolchain when not needed -> speedup ~2s on bazel startup when C++ rules using hermetic toolchain are not loaded - --incompatible_package_name_is_a_fu... This 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.
Release 0.20.0 (2018-11-30) Baseline: 7bf7f03 Cherry picks: + fd52341: update bazel-toolchains pin to latest release Part of changes to allow bazelci to use 0.19.0 configs. RBE toolchain configs at or before 0.17.0 are not compatible with bazel 0.19.0 or above. + 241f28d: Revert "Toggle --incompatible_disable_late_bound_option_defaults flag." + f7e5aef: Add cc_toolchain targets for the new entries in the default cc_toolchain_suite. + d2920e3: Revert "WindowsFileSystem: open files with delete-sharing" [Breaking changes in 0.20](https://github.com/bazelbuild/bazel/issues?q=is%3Aissue+label%3Abreaking-change-0.20) - [--incompatible_remove_native_http_archive](bazelbuild#6570). - [--incompatible_remove_native_git_repository](bazelbuild#6569). - [--incompatible_disable_cc_toolchain_label_from_crosstool_proto](bazelbuild#6434). - [--incompatible_disable_depset_in_cc_user_flags](bazelbuild#6384). - [--incompatible_disable_cc_configuration_make_variables](bazelbuild#6381). - [--incompatible_disallow_conflicting_providers](bazelbuild#5902). - [--incompatible_range_type](bazelbuild#5264). [0.20 is a migration window for the following changes](https://github.com/bazelbuild/bazel/issues?q=is%3Aissue+label%3Amigration-0.20) - [--incompatible_use_jdk10_as_host_javabase](bazelbuild#6661) - [--incompatible_use_remotejdk_as_host_javabase](bazelbuild#6656) - [--incompatible_disable_sysroot_from_configuration](bazelbuild#6565) - [--incompatible_provide_cc_toolchain_info_from_cc_toolchain_suite](bazelbuild#6537) - [--incompatible_disable_depset_in_cc_user_flags](bazelbuild#6383) - [--incompatible_package_name_is_a_function](bazelbuild#5827) [Breaking changes in the next release (0.21)](https://github.com/bazelbuild/bazel/issues?q=is%3Aissue+label%3Abreaking-change-0.21) - [--incompatible_use_jdk10_as_host_javabase](bazelbuild#6661) - [--incompatible_use_remotejdk_as_host_javabase](bazelbuild#6656) - [--incompatible_disable_sysroot_from_configuration](bazelbuild#6565) - [--incompatible_provide_cc_toolchain_info_from_cc_toolchain_suite](bazelbuild#6537) - [--incompatible_disable_depset_in_cc_user_flags](bazelbuild#6383) - [--incompatible_disallow_data_transition](bazelbuild#6153) - [--incompatible_package_name_is_a_function](bazelbuild#5827) - [--incompatible_disallow_slash_operator](bazelbuild#5823) - [--incompatible_static_name_resolution](bazelbuild#5637) Incompatible changes: - the --experimental_no_dotd_scanning_with_modules command line argument is not supported anymore. - The --prune_cpp_modules command line option is not supported anymore. - the --experimental_prune_cpp_input_discovery command line option is not supported anymore. New features: - Added support for Android NDK r18. Important changes: - The 'default' parameter of attr.output and attr.output_list is removed. This is controlled by --incompatible_no_output_attr_default - A number of platform-related Starlark APIs which were previously marked "experimental" are now disabled by default, and may be enabled via --experimental_platforms_api - Make legacy-test-support ("legacy_test-<api-level>") from android_sdk_repository neverlink. The legacy test support libraries shouldn't be built into test binaries. To make them available at runtime, developers should declare them via uses-library: https://developer.android.com/training/testing/set-up-project#andr oid-test-base - query remote server Capabilities (per REAPI v2) - CppRules: All cc_toolchains depended on from cc_toolchain_suite.toolchains are now analyzed when not using platforms in order to select the right cc_toolchain. - removed obsolete --explicit_jre_deps flag. - Incompatible flag --incompatible_disable_legacy_cpp_toolchain_skylark_api was flipped. - Improve error messaging when unsupport proguard options are specified at the library level. - Incompatible flag --incompatible_disable_legacy_cpp_toolchain_skylark_api was flipped. - Incompatible flag --incompatible_disable_legacy_cpp_toolchain_skylark_api was flipped. - The --incompatible_disable_late_bound_option_defaults flag has been flipped (bazelbuild#6384) - Incompatible flag --incompatible_disable_legacy_flags_cc_toolchain_api was flipped (bazelbuild#6434) - Fixed issue where ctx.resolve_command created conflicting intermediate files when resolve_command was called multiple times within the same rule invocation with a long command attribute. - Incompatible flag --incompatible_disable_cc_configuration_make_variables was flipped (bazelbuild#6381) - If the --javabase flag is unset, it 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 - Bazel will now shut down when idle for 5 minutes and the system is low on RAM (linux only). - CROSSTOOL file is now read from the package of cc_toolchain, not from the package of cc_toolchain_suite. This is not expected to break anybody since cc_toolchain_suite and cc_toolchain are commonly in the same package. - All overrides of Starlark's ctx.new_file function are now deprecated. Try the `--incompatible_new_actions_api` flag to ensure your code is forward-compatible. - --incompatible_disable_cc_toolchain_label_from_crosstool_proto was flipped. - Introduce --(no)shutdown_on_low_sys_mem startup flag to toggle idle low-memory shutdown, disabled by default. - --incompatible_disable_cc_toolchain_label_from_crosstool_proto was flipped. - --incompatible_disable_cc_toolchain_label_from_crosstool_proto was flipped. - CppRules: All cc_toolchains depended on from cc_toolchain_suite.toolchains are now analyzed when not using platforms in order to select the right cc_toolchain. - The function `attr.license` is deprecated and will be removed. It can be disabled now with `--incompatible_no_attr_license`. - `range()` function now returns a lazy value (`--incompatible_range_type` is now set by default). - The code coverage report now includes the actual paths to header files instead of the ugly, Bazel generated, virtual includes path. - `--incompatible_disallow_conflicting_providers` has been switched to true - Add new flag `--incompatible_disable_systool_from_configration` to disable loading the systool from CppConfiguration. - Add new flag `--incompatible_disable_sysroot_from_configuration` to disable loading the systool from CppConfiguration. - Sorting remote Platform properties for remote execution. May affect cache keys! - Use different server log files per Bazel server process; java.log is now a symlink to the latest log. This 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>.
Release 0.19.2 (2018-11-19) Baseline: ac88041 Cherry picks: + 9bc3b20: Fix the "nojava" platform and enable full presubmit checks for the various JDK platforms now that we have enough GCE resources. + 54c2572: Add openjdk_linux_archive java_toolchain for nojava platform. + 20bfdc6: Automated rollback of commit 19a401c. + 914b4ce: Windows: Fix Precondition check for addDynamicInputLinkOptions + 83d406b: Windows, test-setup.sh: Setting RUNFILES_MANIFEST_FILE only when it exists. + e025726: Update turbine + 5f312dd: Fix event id for action_completed BEP events + f0c844c: Release 0.19.0 (2018-10-29) + c3fb1db: Do not use CROSSTOOL to select cc_toolchain + 8e28083: Windows Add tests for msys gcc toolchain and mingw gcc toolchain + fd52341: update bazel-toolchains pin to latest release Part of changes to allow bazelci to use 0.19.0 configs. RBE toolchain configs at or before 0.17.0 are not compatible with bazel 0.19.0 or above. + eb2af0f: Release 0.19.1 (2018-11-12) + 6bc4528: Also update cc_toolchain.toolchain_identifier when CC_TOOLCHAIN_NAME is set + f7e5aef: Add cc_toolchain targets for the new entries in the default cc_toolchain_suite. + 683c302: Read the CROSSTOOL from the package of the current cc_toolchain, not from --crosstool_top - Fixes regression bazelbuild#6662, by fixing tools/cpp/BUILD - Fixes regression bazelbuild#6665, by setting the toolchain identifier. - CROSSTOOL file is now read from the package of cc_toolchain, not from the package of cc_toolchain_suite. This is not expected to break anybody since cc_toolchain_suite and cc_toolchain are commonly in the same package.
Release 0.19.1 (2018-11-12) Baseline: ac88041 Cherry picks: + 9bc3b20: Fix the "nojava" platform and enable full presubmit checks for the various JDK platforms now that we have enough GCE resources. + 54c2572: Add openjdk_linux_archive java_toolchain for nojava platform. + 20bfdc6: Automated rollback of commit 19a401c. + 914b4ce: Windows: Fix Precondition check for addDynamicInputLinkOptions + 83d406b: Windows, test-setup.sh: Setting RUNFILES_MANIFEST_FILE only when it exists. + e025726: Update turbine + 5f312dd: Fix event id for action_completed BEP events + f0c844c: Release 0.19.0 (2018-10-29) + c3fb1db: Do not use CROSSTOOL to select cc_toolchain + 8e28083: Windows Add tests for msys gcc toolchain and mingw gcc toolchain + fd52341: update bazel-toolchains pin to latest release Part of changes to allow bazelci to use 0.19.0 configs. RBE toolchain configs at or before 0.17.0 are not compatible with bazel 0.19.0 or above. Important changes: - Fix regression bazelbuild#6610, which prevents using the MINGW compiler on Windows.
Release 0.18.1 (2018-10-31) Baseline: c062b1f Cherry picks: + 2834613: Include also ext jars in the bootclasspath jar. + 2579b79: Fix toolchain_java9 on --host_javabase=<jdk9> after 7eb9ea1 + faaff7f: Release notes: fix markdown + b073a18: Fix NestHost length computation Fixes bazelbuild#5987 + bf6a63d: Fixes bazelbuild#6219. Don't rethrow any remote cache failures on either download or upload, only warn. Added more tests. + c1a7b4c: Fix broken IdlClassTest on Bazel's CI. + 71926bc: Fix the Xcode version detection which got broken by the upgrade to Xcode 10.0. + 86a8217: Temporarily restore processing of workspace-wide tools/bazel.rc file. + 914b4ce: Windows: Fix Precondition check for addDynamicInputLinkOptions + e025726: Update turbine Important changes: - Fix regression bazelbuild#6219, remote cache failures
Release 0.19.0 (2018-10-29) Baseline: ac88041 Cherry picks: + 9bc3b20: Fix the "nojava" platform and enable full presubmit checks for the various JDK platforms now that we have enough GCE resources. + 54c2572: Add openjdk_linux_archive java_toolchain for nojava platform. + 20bfdc6: Automated rollback of commit 19a401c. + 914b4ce: Windows: Fix Precondition check for addDynamicInputLinkOptions + 83d406b: Windows, test-setup.sh: Setting RUNFILES_MANIFEST_FILE only when it exists. + e025726: Update turbine + 5f312dd: Fix event id for action_completed BEP events The Bazel team is happy to announce a new version of Bazel, [Bazel 0.19](https://github.com/bazelbuild/bazel/releases/tag/0.19.0). This document lists the major changes since Bazel 0.18. General changes --------------- * The `--incompatible_expand_directories` flag will automatically expand directories in command lines. Design doc: https://docs.google.com/document/d/11agWFiOUiz2htBLj6swPTob5z78TrCxm8DQE4uJLOwM * 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. Android ------- * Fixed missing debug symbols when building native code with `--compilation_mode=dbg` that target Android ARM architectures by adding the `-g` flag. C++ --- * Added `--incompatible_disable_legacy_flags_cc_toolchain_api` to deprecate legacy `cc_toolchain` Starlark API for legacy CROSSTOOL fields. Tracking issue is bazelbuild#6434. Migration docs are on the bazel website. * 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. * :cc_binary link action no longer hardcodes `-static-libgcc` for toolchains that support embedded runtimes (guarded by `--experimental_dont_emit_static_libgcc` temporarily). * The flag `--experimental_enable_cc_configuration_make_variables` is removed, use `--incompatible_disable_cc_configuration_make_variables` instead. Java ---- * 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. Code Coverage ------------- * LcovMerger was renamed to CoverageOutputGenerator. * Faster coverage collection for gcc compiled C++ code can now be tested by enabling it with `--experimental_cc_coverage`. Other Changes ------------- * Add `--apple_compiler` and `--apple_grte_top options`. These provide the equivalent of --compiler / --grte_top for the toolchain configured in --apple_crosstool_top. * There is now a `same_pkg_direct_rdeps` query function. See the query documentation for more details. * Propagating remote errors to the user even if `--verbose_failures=false` is set. * Add number of configured targets to analysis phase status output. * 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. Future Changes -------------- * 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: * [`--incompatible_disable_late_bound_option_defaults`](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disable-late-bound-option-defaults): bazelbuild#6384 * [`--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): bazelbuild#6383 * [`--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): bazelbuild#6382 * [`--incompatible_disable_cc_configuration_make_variables`](bazelbuild#6381): bazelbuild#6381 * [`--incompatible_disable_legacy_cpp_toolchain_skylark_api`](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disable-legacy-c-configuration-api): bazelbuild#6380 * [`incompatible_disable_legacy_flags_cc_toolchain_api`](https://docs.bazel.build/versions/master/skylark/backward-compatibility.html#disable-legacy-c-toolchain-api): bazelbuild#6434 * 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. Thank you to our contributors! ------------------------------ This 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 Thank you to everyone who contributed to this release!
PreviousNext