Skip to content
Snippets Groups Projects
This project is mirrored from https://github.com/bazelbuild/bazel.git. Pull mirroring updated .
  1. Nov 30, 2018
    • Bazel Release System's avatar
      Release 0.20.0 (2018-11-30) · 2987897f
      Bazel Release System authored
      Baseline: 7bf7f031
      
      Cherry picks:
      
         + fd523415:
           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.
         + 241f28d05424db2d11ee245dc856b992258505e3:
           Revert "Toggle --incompatible_disable_late_bound_option_defaults
           flag."
         + f7e5aef1:
           Add cc_toolchain targets for the new entries in the default
           cc_toolchain_suite.
         + d2920e32:
           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](https://github.com/bazelbuild/bazel/issues/6570).
        - [--incompatible_remove_native_git_repository](https://github.com/bazelbuild/bazel/issues/6569).
        - [--incompatible_disable_cc_toolchain_label_from_crosstool_proto](https://github.com/bazelbuild/bazel/issues/6434).
        - [--incompatible_disable_depset_in_cc_user_flags](https://github.com/bazelbuild/bazel/issues/6384).
        - [--incompatible_disable_cc_configuration_make_variables](https://github.com/bazelbuild/bazel/issues/6381).
        - [--incompatible_disallow_conflicting_providers](https://github.com/bazelbuild/bazel/issues/5902).
        - [--incompatible_range_type](https://github.com/bazelbuild/bazel/issues/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](https://github.com/bazelbuild/bazel/issues/6661)
        - [--incompatible_use_remotejdk_as_host_javabase](https://github.com/bazelbuild/bazel/issues/6656)
        - [--incompatible_disable_sysroot_from_configuration](https://github.com/bazelbuild/bazel/issues/6565)
        - [--incompatible_provide_cc_toolchain_info_from_cc_toolchain_suite](https://github.com/bazelbuild/bazel/issues/6537)
        - [--incompatible_disable_depset_in_cc_user_flags](https://github.com/bazelbuild/bazel/issues/6383)
        - [--incompatible_package_name_is_a_function](https://github.com/bazelbuild/bazel/issues/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](https://github.com/bazelbuild/bazel/issues/6661)
        - [--incompatible_use_remotejdk_as_host_javabase](https://github.com/bazelbuild/bazel/issues/6656)
        - [--incompatible_disable_sysroot_from_configuration](https://github.com/bazelbuild/bazel/issues/6565)
        - [--incompatible_provide_cc_toolchain_info_from_cc_toolchain_suite](https://github.com/bazelbuild/bazel/issues/6537)
        - [--incompatible_disable_depset_in_cc_user_flags](https://github.com/bazelbuild/bazel/issues/6383)
        - [--incompatible_disallow_data_transition](https://github.com/bazelbuild/bazel/issues/6153)
        - [--incompatible_package_name_is_a_function](https://github.com/bazelbuild/bazel/issues/5827)
        - [--incompatible_disallow_slash_operator](https://github.com/bazelbuild/bazel/issues/5823)
        - [--incompatible_static_name_resolution](https://github.com/bazelbuild/bazel/issues/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 (#6384)
        - Incompatible flag
          --incompatible_disable_legacy_flags_cc_toolchain_api was flipped
          (#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 (#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>.
      0.20.0
      2987897f
  2. Nov 28, 2018
  3. Nov 05, 2018
  4. Nov 03, 2018
  5. Nov 02, 2018
  6. Nov 01, 2018