Release 0.20.0 (2018-11-30)
Baseline: 7bf7f031c332dc483257248d1c1f98ad75bbc83b
Cherry picks:
+ fd52341505e725487c6bc6dfbe6b5e081aa037da:
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."
+ f7e5aef145c33968f658eb2260e25630dc41cc67:
Add cc_toolchain targets for the new entries in the default
cc_toolchain_suite.
+ d2920e32ec7f3f8551a693d33c17b19f1b802145:
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>.
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 46a32ee..fe5d246 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,256 @@
+## Release 0.20.0 (2018-11-30)
+
+```
+Baseline: 7bf7f031c332dc483257248d1c1f98ad75bbc83b
+
+Cherry picks:
+
+ + fd52341505e725487c6bc6dfbe6b5e081aa037da:
+ 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."
+ + f7e5aef145c33968f658eb2260e25630dc41cc67:
+ Add cc_toolchain targets for the new entries in the default
+ cc_toolchain_suite.
+ + d2920e32ec7f3f8551a693d33c17b19f1b802145:
+ 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>.
+
+## Release 0.19.2 (2018-11-19)
+
+```
+Baseline: ac880418885061d1039ad6b3d8c28949782e02d6
+
+Cherry picks:
+
+ + 9bc3b20053a8b99bf2c4a31323a7f96fabb9f1ec:
+ Fix the "nojava" platform and enable full presubmit checks for
+ the various JDK platforms now that we have enough GCE resources.
+ + 54c2572a8cabaf2b29e58abe9f04327314caa6a0:
+ Add openjdk_linux_archive java_toolchain for nojava platform.
+ + 20bfdc67dc1fc32ffebbda7088ba49ee17e3e182:
+ Automated rollback of commit
+ 19a401c38e30ebc0879925a5caedcbe43de0028f.
+ + 914b4ce14624171a97ff8b41f9202058f10d15b2:
+ Windows: Fix Precondition check for addDynamicInputLinkOptions
+ + 83d406b7da32d1b1f6dd02eae2fe98582a4556fd:
+ Windows, test-setup.sh: Setting RUNFILES_MANIFEST_FILE only when
+ it exists.
+ + e025726006236520f7e91e196b9e7f139e0af5f4:
+ Update turbine
+ + 5f312dd1678878fb7563eae0cd184f2270346352:
+ Fix event id for action_completed BEP events
+ + f0c844c77a2406518c4e75c49188390d5e281d3d:
+ Release 0.19.0 (2018-10-29)
+ + c3fb1db9e4e817e8a911f5b347b30f2674a82f7c:
+ Do not use CROSSTOOL to select cc_toolchain
+ + 8e280838e8896a6b5eb5421fda435b96b6f8de60:
+ Windows Add tests for msys gcc toolchain and mingw gcc toolchain
+ + fd52341505e725487c6bc6dfbe6b5e081aa037da:
+ 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.
+ + eb2af0f699350ad187048bf814a95af23f562c77:
+ Release 0.19.1 (2018-11-12)
+ + 6bc452874ddff69cbf7f66186238032283f1195f:
+ Also update cc_toolchain.toolchain_identifier when
+ CC_TOOLCHAIN_NAME is set
+ + f7e5aef145c33968f658eb2260e25630dc41cc67:
+ Add cc_toolchain targets for the new entries in the default
+ cc_toolchain_suite.
+ + 683c302129b66a8999f986be5ae7e642707e978c:
+ Read the CROSSTOOL from the package of the current cc_toolchain,
+ not from --crosstool_top
+```
+
+- Fixes regression #6662, by fixing tools/cpp/BUILD
+- Fixes regression #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: ac880418885061d1039ad6b3d8c28949782e02d6
+
+Cherry picks:
+
+ + 9bc3b20053a8b99bf2c4a31323a7f96fabb9f1ec:
+ Fix the "nojava" platform and enable full presubmit checks for
+ the various JDK platforms now that we have enough GCE resources.
+ + 54c2572a8cabaf2b29e58abe9f04327314caa6a0:
+ Add openjdk_linux_archive java_toolchain for nojava platform.
+ + 20bfdc67dc1fc32ffebbda7088ba49ee17e3e182:
+ Automated rollback of commit
+ 19a401c38e30ebc0879925a5caedcbe43de0028f.
+ + 914b4ce14624171a97ff8b41f9202058f10d15b2:
+ Windows: Fix Precondition check for addDynamicInputLinkOptions
+ + 83d406b7da32d1b1f6dd02eae2fe98582a4556fd:
+ Windows, test-setup.sh: Setting RUNFILES_MANIFEST_FILE only when
+ it exists.
+ + e025726006236520f7e91e196b9e7f139e0af5f4:
+ Update turbine
+ + 5f312dd1678878fb7563eae0cd184f2270346352:
+ Fix event id for action_completed BEP events
+ + f0c844c77a2406518c4e75c49188390d5e281d3d:
+ Release 0.19.0 (2018-10-29)
+ + c3fb1db9e4e817e8a911f5b347b30f2674a82f7c:
+ Do not use CROSSTOOL to select cc_toolchain
+ + 8e280838e8896a6b5eb5421fda435b96b6f8de60:
+ Windows Add tests for msys gcc toolchain and mingw gcc toolchain
+ + fd52341505e725487c6bc6dfbe6b5e081aa037da:
+ 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 #6610, which prevents using the MINGW compiler on Windows.
+
## Release 0.19.0 (2018-10-29)
```
@@ -3718,3 +3971,6 @@
+
+
+