Skip to content

Tags: keith/bazel

Tags

0.17.2

Toggle 0.17.2's commit message
Release 0.17.2 (2018-09-21)

Baseline: aa118ca

Cherry picks:
   + 0e04625:
     Update checker framework dataflow and javacutil versions
   + 3987300:
     Stop using --release in versioned java_toolchains
   + 438b277:
     make_deb: Add new empty line in the end of conffiles file
   + 5044017:
     Properly mark configuration files in the Debian package.
   + 9ed9d8a:
     Add flag
     --incompatible_symlinked_sandbox_expands_tree_artifacts_in_runfil
     es_tree.
   + 22d761a:
     Update protobuf to 3.6.1 -- add new files
   + 27303d7:
     Update protobuf to 3.6.1 -- update references
   + ddc97ed:
     Update protobuf to 3.6.1 -- remove 3.6.0 sources
   + ead1002:
     Fix protobuf in the WORKSPACE
   + 12dcd35:
     Revert "Update to JDK 10 javac"
   + 7eb9ea1:
     Automated rollback of
     bazelbuild@808ec9ff9b5cec14f23a4b
     a106bc5249cacc8c54 and
     bazelbuild@4c9149d558161e7d3e363f
     b697f5852bc5742a36 and some manual merging.
   + 4566a42:
     Fix tests on JDK 9 and 10
   + 1e9f0aa:
     Fix more tests on JDK 9 and 10
   + a572c1c:
     Add ubuntu1804_nojava, ubuntu1804_java9, ubuntu1804_java10 to
     postsubmit.
   + 29f1de0:
     Disable Android shell tests on the "nojava" platform.
   + b495eaf:
     Update bazel_toolchains to latest release.
   + 9323c57:
     Windows: fix writing java.log
   + 1aba9ac:
     Automated rollback of commit
     de22ab0.
   + 2579b79:
     Fix toolchain_java9 on --host_javabase=<jdk9> after
     7eb9ea1
   + 2834613:
     Include also ext jars in the bootclasspath jar.
   + fdb09a2:
     Release 0.17.1 (2018-09-14)
   + 1d956c7:
     Do not fail the build when gcov is not installed
   + 2e677fb:
     Ignore unrecognized VM options in desugar.sh, such as the JVM 9
     flags to silence warnings.

Important changes:

  - In the future, Bazel will expand tree artifacts in runfiles, too,
    which causes the sandbox to link each file individually into the
    sandbox directory, instead of symlinking the entire directory. In
    this release, the behavior is not enabled by default yet. Please
    try it out via
    --incompatible_symlinked_sandbox_expands_tree_artifacts_in_runfile
    s_tree and let us know if it causes issues. If everything looks
    good, this behavior will become the default in a following
    release.

0.17.1

Toggle 0.17.1's commit message
Release 0.17.1 (2018-09-14)

Baseline: aa118ca

Cherry picks:
   + 0e04625:
     Update checker framework dataflow and javacutil versions
   + 3987300:
     Stop using --release in versioned java_toolchains
   + 438b277:
     make_deb: Add new empty line in the end of conffiles file
   + 5044017:
     Properly mark configuration files in the Debian package.
   + 9ed9d8a:
     Add flag
     --incompatible_symlinked_sandbox_expands_tree_artifacts_in_runfil
     es_tree.
   + 22d761a:
     Update protobuf to 3.6.1 -- add new files
   + 27303d7:
     Update protobuf to 3.6.1 -- update references
   + ddc97ed:
     Update protobuf to 3.6.1 -- remove 3.6.0 sources
   + ead1002:
     Fix protobuf in the WORKSPACE
   + 12dcd35:
     Revert "Update to JDK 10 javac"
   + 7eb9ea1:
     Automated rollback of
     bazelbuild@808ec9ff9b5cec14f23a4b
     a106bc5249cacc8c54 and
     bazelbuild@4c9149d558161e7d3e363f
     b697f5852bc5742a36 and some manual merging.
   + 4566a42:
     Fix tests on JDK 9 and 10
   + 1e9f0aa:
     Fix more tests on JDK 9 and 10
   + a572c1c:
     Add ubuntu1804_nojava, ubuntu1804_java9, ubuntu1804_java10 to
     postsubmit.
   + 29f1de0:
     Disable Android shell tests on the "nojava" platform.
   + b495eaf:
     Update bazel_toolchains to latest release.
   + 9323c57:
     Windows: fix writing java.log
   + 1aba9ac:
     Automated rollback of commit
     de22ab0.
   + 2579b79:
     Fix toolchain_java9 on --host_javabase=<jdk9> after
     7eb9ea1
   + 2834613:
     Include also ext jars in the bootclasspath jar.

Incompatible changes:

  - Loading @bazel_tools//tools/build_defs/repo:git_repositories.bzl
    no longer works. Load @bazel_tools//tools/build_defs/repo:git.bzl
    instead.
  - If the same artifact is generated by two distinct but identical
    actions, and a downstream action has both those actions' outputs
    in its inputs, the artifact will now appear twice in the
    downstream action's inputs. If this causes problems in Skylark
    actions, you can use the uniquify=True argument in Args.add_args.
  - If the same artifact is generated by two distinct but identical
    actions, and a downstream action has both those actions' outputs
    in its inputs, the artifact will now appear twice in the
    downstream action's inputs. If this causes problems in Skylark
    actions, you can use the uniquify=True argument in Args.add_args.
  - Labels in C++ rules' linkopts attribute are not expanded anymore
    unless they are wrapped, e.g: $(location //foo:bar)
  - If the same artifact is generated by two distinct but identical
    actions, and a downstream action has both those actions' outputs
    in its inputs, the artifact will now appear twice in the
    downstream action's inputs. If this causes problems in Skylark
    actions, you can use the uniquify=True argument in Args.add_args.
  - New bazelrc file list.
  - Windows: when BAZEL_SH envvar is not defined and Bazel searches
    for a suitable bash.exe, Bazel will no longer look for Git Bash
    and no longer recommend installing it as a Bash implementation.
    See issue bazelbuild#5751.
  - New bazelrc file list.

New features:

  - The aquery command now supports --output=text.
  - Java, runfiles: the Java runfiles library is now in
    @bazel_tools//tools/java/runfiles. The old target
    (@bazel_tools//tools/runfiles:java-runfiles) is deprecated and
    will be removed in Bazel 0.18.0.
  - Java, runfiles: the Java runfiles library is now in
    @bazel_tools//tools/java/runfiles. The old target
    (@bazel_tools//tools/runfiles:java-runfiles) is deprecated and
    will be removed in Bazel 0.19.0 (not 0.18.0, as stated earlier).

Important changes:

  - Allow @ in package names.
  - Remove support for java_runtime_suite; use alias() together with
    select() instead.
  - Python wrapper scripts for MSVC are removed.
  - [JavaInfo] Outputs are merged in java_common.merge().
  - Faster analysis by improved parallelization.
  - --experimental_shortened_obj_file_path is removed.
  - Introduce the --remote_cache_proxy flag,
    which allows for remote http caching to connect
    via a unix domain socket.
  - No longer define G3_VERSION_INFO for c++ linkstamp compiles, as
    it was a duplicate of G3_TARGET_NAME.
  - Added support for Android NDK r17. The default STL is now
    `libc++`, and support for targeting `mips`, `mips64` and `ARMv5`
    (`armeabi`) has been removed.
  - Add aquery command to get analysis time information about the
    action graph.
  - Fixed compatibility with aar_import when using aapt2.  AAPT2 is
    now supported for Android app builds without resource shrinking.
    To use it, pass the `--android_aapt=aapt2` flag or define
    android_binary.aapt_version=aapt2.
  - Code coverage is collected for Java binaries invoked from sh_test.
  - java_common.compile creates the native headers jar accesible via
    JavaInfo.outputs.native_headers.
  - Deleting deprecated no-op flag --show_package_location
  - The JDK shipped with Bazel was updated to JDK10.
  - Rename the startup flag --host_javabase to --server_javabase to
    avoid confusion with the build flag --host_javabase
  - newly added options --experimental_repository_hash_file and
      --experimental_verify_repository_rules allow to verify for
    repositories
      the directory generated against pre-recorded hashes. See
    documentation
      for those options.
  - Removed the gen_jars output group
  - --subcommands can now take a "pretty_print" value
    ("--subcommands=pretty_print") to print the
    arguments of subcommands as a list for easier reading.
  - follow-up to
    bazelbuild@1ac359743176e659e9c7472
    645e3142f3c44b9e8
  - A rule error is now thrown if a Skylark rule implementation
    function returns multiple providers of the same type.
  - When using Bazel's remote execution feature and Bazel has to
    fallback to local execution for an action, Bazel used
    non-sandboxed
    local execution until now. From this release on, you can use the
    new
    flag --remote_local_fallback_strategy=<strategy> to tell Bazel
    which
    strategy to use in that case.
  - Execution Log Parser can now, when printing it out, filter the
    log by runner type
  - A rule error is now thrown if a Skylark rule implementation
    function returns multiple providers of the same type.
  - Removed the gen_jars output group
  - Removed the gen_jars output group
  - Set --defer_param_files to default to true.
  - Sort attribute lists in proto-form query output to fix
    non-deterministic genquery output.
  - Replace 0/1 with False/True for testonly attribute
  - bazel now supports a .bazelignore file specifying
      directories to be ignored; however, these directories still
      have to be well founded and, in particular, may not contain
      symlink cycles.
  - Add more detailed reporting of the differences between startup
    options.
  - update data binding to 3.2.0
  - For Android incremental dexing actions, Bazel now persists its
    DexBuilder process across individual actions. From our
    benchmarks, this results in a 1.2x speedup for clean local builds.
  - The standard `xcode_VERSION` feature now always uses exactly two
    components in the version, even if you specify `--xcode_version`
    with
    more or fewer than two.
  - A rule error will be thrown if a Skylark rule implementation
    function returns multiple providers of the same type. Try the
    `--incompatible_disallow_conflicting_providers` flag to ensure
    your code is forward-compatible.
  - Removed notion of FULLY_STATIC linking mode from C++ rules.
  - In documentation, we've renamed Skylark into Starlark.
  - Execution Log Parser can now, when printing it out, reorder the
    actions for easier text diffs
  - Linkstamps are no longer recompiled after server restart.
  - Use VanillaJavaBuilder and disable header compilation in
    toolchain_hostjdk8. The default toolchain will soon drop
    compatibility with JDK 8. Using a JDK 8 host_javabase
    will only be supported when using 'VanillaJavaBuilder' (which
    does not support Error Prone,
    Strict Java Deps, or reduced classpaths) and with header
    compilation disabled.
  - In the future, Bazel will expand tree artifacts in runfiles, too,
    which causes the sandbox to link each file individually into the
    sandbox directory, instead of symlinking the entire directory. In
    this release, the behavior is not enabled by default yet. Please
    try it out via
    --incompatible_symlinked_sandbox_expands_tree_artifacts_in_runfile
    s_tree and let us know if it causes issues. If everything looks
    good, this behavior will become the default in a following
    release.

0.16.1

Toggle 0.16.1's commit message
Release 0.16.1 (2018-08-13)

Baseline: 4f64b77

Cherry picks:
   + 4c9a0c8:
     reduce the size of bazel's embedded jdk
   + d3228b6:
     remote: limit number of open tcp connections by default. Fixes
     bazelbuild#5491
   + 8ff87c1:
     Fix autodetection of linker flags
   + c4622ac:
     Fix autodetection of -z linker flags
   + 1021965:
     blaze_util_posix.cc: fix order of #define
   + ab1f269:
     blaze_util_freebsd.cc: include path.h explicitly
   + 68e92b4:
     openjdk: update macOS openjdk image. Fixes bazelbuild#5532
   + f45c224:
     Set the start time of binary and JSON profiles to zero correctly.
   + bca1912:
     remote: fix race on download error. Fixes bazelbuild#5047
   + 3842bd3:
     jdk: use parallel old gc and disable compact strings
   + 6bd0bdf:
     Add objc-fully-link to the list of actions that require the
     apple_env feature. This fixes apple_static_library functionality.
   + f330439:
     Add the action_names_test_files target to the OSS version of
     tools/buils_defs/cc/BUILD.
   + d215b64:
     Fix StackOverflowError on Windows. Fixes bazelbuild#5730
   + 366da4c:
     In java_rules_skylark depend on the javabase through
     //tools/jdk:current_java_runtime
   + 30c601d:
     Don't use @local_jdk for jni headers
   + c56699d:
     'DumpPlatformClasspath' now dumps the current JDK's default
     platform classpath

This release is a patch release that contains fixes for several serious
regressions that were found after the release of Bazel 0.16.0.

In particular this release resolves the following issues:

 - Bazel crashes with a StackOverflowError on Windows (See bazelbuild#5730)
 - Bazel requires a locally installed JDK and does not fall back
   to the embedded JDK (See bazelbuild#5744)
 - Bazel fails to build for Homebrew on macOS El Capitan (See bazelbuild#5777)
 - A regression in apple_static_library (See bazelbuild#5683)

Please watch our blog for a more detailed release announcement.

0.16.0

Toggle 0.16.0's commit message
Release 0.16.0 (2018-07-31)

Baseline: 4f64b77

Cherry picks:
   + 4c9a0c8:
     reduce the size of bazel's embedded jdk
   + d3228b6:
     remote: limit number of open tcp connections by default. Fixes
     bazelbuild#5491
   + 8ff87c1:
     Fix autodetection of linker flags
   + c4622ac:
     Fix autodetection of -z linker flags
   + 1021965:
     blaze_util_posix.cc: fix order of #define
   + ab1f269:
     blaze_util_freebsd.cc: include path.h explicitly
   + 68e92b4:
     openjdk: update macOS openjdk image. Fixes bazelbuild#5532
   + f45c224:
     Set the start time of binary and JSON profiles to zero correctly.
   + bca1912:
     remote: fix race on download error. Fixes bazelbuild#5047
   + 3842bd3:
     jdk: use parallel old gc and disable compact strings

Incompatible changes:

  - The $(ANDROID_CPU) Make variable is not available anymore. Use
    $(TARGET_CPU) after an Android configuration transition instead.
  - The $(JAVA_TRANSLATIONS) Make variable is not supported anymore.
  - Skylark structs (using struct()) may no longer have to_json and
    to_proto overridden.
  - The mobile-install --skylark_incremental_res flag is no longer
    available, use the --skylark flag instead.

New features:

  - android_local_test now takes advantage of Robolectric's binary
    resource processing which allows for faster tests.
  - Allow @ in package names.

Important changes:

  - Option --glibc is removed, toolchain selection relies solely on
    --cpu and --compiler options.
  - Build support for enabling cross binary FDO optimization.
  - The --distdir option is no longer experimental. This
      option allows to specify additional directories to look for
      files before trying to fetch them from the network. Files from
      any of the distdirs are only used if a checksum for the file
      is specified and both, the filename and the checksum, match.
  - Java coverage works now with multiple jobs.
  - Flip default value of --experimental_shortened_obj_file_path to
    true, Bazel now generates short object file path by default.
  - New rules for importing Android dependencies:
    `aar_import_external` and `aar_maven_import_external`.
    `aar_import_external` enables specifying external AAR
    dependencies using a list of HTTP URLs for the artifact.
    `aar_maven_import_external` enables specifying external AAR
    dependencies using the artifact coordinate and a list of server
    URLs.
  - The BAZEL_JAVAC_OPTS environment variable allows arguments, e.g.,
    "-J-Xmx2g", may be passed to the javac compiler during bootstrap
    build. This is helpful if your system chooses too small of a max
    heap size for the Java compiler during the bootstrap build.
  - --noexpand_configs_in_place is deprecated.
  - A tool to parse the Bazel execution log.
  - Support for LIPO has been fully removed.
  - Remove support for --discard_actions_after_execution.
  - Add --materialize_param_files flag to write parameter files even
    when actions are executed remotely.
  - Windows default system bazelrc is read from the user's
    ProgramData if present.
  - --[no]allow_undefined_configs no longer exists, passing undefined
    configs is an error.
  - In remote caching we limit the number of open
    TCP connections to 100 by default. The number can be adjusted
    by specifying the --remote_max_connections flag.

0.15.2

Toggle 0.15.2's commit message
Release 0.15.2 (2018-07-17)

Baseline: b93ae42

Cherry picks:
   + 4b80f24:
     Add option to enable Docker sandboxing.
   + 6b16352:
     Allow disabling the simple blob caches via CLI flag overrides.
   + 4ec0a75:
     Use BUILD.bazel instead of BUILD for external projects
   + 2ff8c5f:
     Release 0.15.0 (2018-06-26)
   + 8ff87c1:
     Fix autodetection of linker flags
   + c4622ac:
     Fix autodetection of -z linker flags
   + d3228b6:
     remote: limit number of open tcp connections by default. Fixes
     bazelbuild#5491

Important changes:

  - In remote caching we limit the number of open
    TCP connections to 100 by default. The number can be adjusted
    by specifying the --remote_max_connections flag.

0.15.1

Toggle 0.15.1's commit message
Release 0.15.1 (2018-07-16)

Baseline: b93ae42

Cherry picks:
   + 4b80f24:
     Add option to enable Docker sandboxing.
   + 6b16352:
     Allow disabling the simple blob caches via CLI flag overrides.
   + 4ec0a75:
     Use BUILD.bazel instead of BUILD for external projects
   + 2ff8c5f:
     Release 0.15.0 (2018-06-26)
   + 8ff87c1:
     Fix autodetection of linker flags
   + c4622ac:
     Fix autodetection of -z linker flags
   + d3228b6:
     remote: limit number of open tcp connections by default. Fixes
     bazelbuild#5491

Important changes:

  - In remote caching we limit the number of open
    TCP connections to 100 by default. The number can be adjusted
    by specifying the --remote_max_connections flag.

0.15.0

Toggle 0.15.0's commit message
Release 0.15.0 (2018-06-26)

Baseline: b93ae42

Cherry picks:
   + 4b80f24:
     Add option to enable Docker sandboxing.
   + 6b16352:
     Allow disabling the simple blob caches via CLI flag overrides.
   + 4ec0a75:
     Use BUILD.bazel instead of BUILD for external projects

Incompatible changes:

  - Bazel now always runs binaries in with "bazel run" in
    interactive mode. The "--nodirect_run" command line option is now
    a no-op.
  - "bazel run --noas_test" is not supported anymore.
  - Indentation on the first line of a file was previously ignored.
    This is now fixed.

New features:

  - C++,runfiles: to access data-dependencies (runfiles) in C++
    programs, use the runfiles library built into Bazel. For usage
    info, see
    https://github.com/bazelbuild/bazel/blob/master/tools/cpp/runfiles
    /runfiles.h

Important changes:

  - Bazel now allows almost all 7-bit ASCII characters in labels.
  - Remove vestigial java_plugin.data attribute
  - Bazel supports including select Java 8 APIs into Android apps
    targeting pre-Nougat Android devices with
    --experimental_desugar_java8_libs
  - Flag `--incompatible_disable_glob_tracking` is removed.
  - SkyQuery's rbuildfiles now returns targets corresponding to
    broken packages.
  - Introduce build support for providing cache prefetch hints.
  - Update the skylark DefaultInfo documentation to spell out
    runfiles, data_runfiles and default_runfiles
  - An internal action for symlinking runfiles will use Command
    instead of a Spawns. This should have no functional chages; the
    only user visible consequence should be that the internal action
    is no longer be included in statistics when calculating processes
    count.
  - --batch is deprecated
  - execution strategies line no longer handles differently the case
    where all processes have the same strategy.
  - The --experimental_remote_spawn_cache flag is now enabled by
    default, and remote caching no longer needs --*_strategy=remote
    flags (it will fail if they are specified).
  - android_binary.aapt_version='aapt2' now supports en_XA and ar_XB
  - Added --apple_enable_auto_dsym_dbg flag.
  - non_propagated_deps has been removed from objc_library and
    apple_binary.
  - For Android projects, Bazel now supports building fonts as
    resources. See
    https://developer.android.com/guide/topics/ui/look-and-feel/fonts-in-xml
    for more information on the feature.
  - With --incompatible_no_support_tools_in_action_inputs enabled, Skylark
    action inputs are no longer scanned for tools. Move any such
    inputs to the newly introduced 'tools' attribute.

0.14.1

Toggle 0.14.1's commit message
Release 0.14.1 (2018-06-08)

Baseline: 5c3f5c9

Cherry picks:
   + f96f037:
     Windows, Java launcher: Support jar files under different drives
   + ff8162d:
     sh_configure.bzl: FreeBSD is also a known platform
   + 7092ed3:
     Remove unneeded exec_compatible_with from local_sh_toolchain
   + 57bc201:
     Do not autodetect C++ toolchain when
     BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 is present
   + 35a78c0:
     remote: recursively delete incomplete downloaded output
     directory.
   + 3c9cd82:
     distfile: pack the archives needed later in the build
   + 27487c7:
     Slightly refactor SpawnAction to improve env handling
   + 1b333a2:
     Fix Cpp{Compile,Link}Action environment and cache key computation
   + 3da8929:
     Make SymlinkTreeAction properly use the configuration's
     environment
   + eca7b81:
     Add a missing dependency from checker framework dataflow to
     javacutils
   + 10a4de9:
     Release 0.14.0 (2018-06-01)
   + 4b80f24:
     Add option to enable Docker sandboxing.
   + 6b16352:
     Allow disabling the simple blob caches via CLI flag overrides.

Bug fix for [bazelbuild#5336](bazelbuild#5336)
Bug fix fot [bazelbuild#5308](bazelbuild#5308)

0.14.0

Toggle 0.14.0's commit message
Release 0.14.0 (2018-06-01)

Baseline: 5c3f5c9

Cherry picks:
   + f96f037:
     Windows, Java launcher: Support jar files under different drives
   + ff8162d:
     sh_configure.bzl: FreeBSD is also a known platform
   + 7092ed3:
     Remove unneeded exec_compatible_with from local_sh_toolchain
   + 57bc201:
     Do not autodetect C++ toolchain when
     BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 is present
   + 35a78c0:
     remote: recursively delete incomplete downloaded output
     directory.
   + 3c9cd82:
     distfile: pack the archives needed later in the build
   + 27487c7:
     Slightly refactor SpawnAction to improve env handling
   + 1b333a2:
     Fix Cpp{Compile,Link}Action environment and cache key computation
   + 3da8929:
     Make SymlinkTreeAction properly use the configuration's
     environment
   + eca7b81:
     Add a missing dependency from checker framework dataflow to
     javacutils

Incompatible changes:

  - Add --incompatible_disallow_legacy_javainfo flag.
  - Added flag --incompatible_disallow_old_style_args_add to help
    migrate from args.add() to args.add_all() / args.add_joined()
    where appropriate.

New features:

  - Bash,runfiles: use the new platform-independent library in
    `@bazel_tools//tools/bash/runfiles` to access runfiles
    (data-dependencies). See
    https://github.com/bazelbuild/bazel/blob/master/tools/bash/runfile
    s/runfiles.bash for usage information.
  - TemplateVariableInfo can now be constructed from Skylark.
  - The java_host_runtime_alias rule is now implemented in Java.

Important changes:

  - Flip default value of --experimental_shortened_obj_file_path to
    true, Bazel now generates short object file path by default.
  - Introduce fdo_profile rule that allows architecture-sensitive
    specification of fdo profiles.
  - canonicalize-flags no longer reorders the flags
  - CppRules: optional_compiler_flag was removed from CROSSTOOL, use
    features instead.
  - Labels of the form ////foo are disallowed.
  - The `/` operator is deprecated in favor of `//` (floor integer
    division).
      Try the `--incompatible_disallow_slash_operator` flag to ensure
    your code
      is forward-compatible.
  - Flip default value of --experimental_shortened_obj_file_path to
    true, Bazel now generates short object file path by default.
  - Exposed "mnemonic" and "env" fields on skylark "Action" objects.
  - Removed flag `--incompatible_disallow_toplevel_if_statement`.
  - Remove vestigial 'deps' and 'data' attributes from
    proto_lang_toolchain
  - Args objects (ctx.actions.args()) have new methods add_all() and
    add_joined() for building command lines using depsets.
  - `FileType` is deprecated and will be removed soon.
      Try the `--incompatible_disallow_filetype` flag to ensure your
    code
      is forward-compatible.
  - Introduce absolute_path_profile attribute that allows fdo_profile
    to accept absolute paths.
  - Support two-arg overloads for ctx.actions.args (eg.
    args.add("--foo", val))
  - Introduce 'tools' attribute to ctx.actions.run.
  - Fixed error message for proguard_apply_dictionary.
  - "bazel run" now lets one run interactive binaries. The
    BUILD_WORKSPACE_DIRECTORY and BUILD_WORKING_DIRECTORY environment
    variables indicate the working directory and the workspace root
    of the Bazel invocation. Tests are provided with an approximation
    of the official test environment.
  - repository rules are no longer restricted to return None.
  - Add --high_priority_workers flag.
  - CppRules: Feature configuration can be created from Skylark
  - Adds new-style JavaInfo provider constructor.
  - Make java_common.compile now uses java_toolchain javacopts by
    default; explicitly retrieving them using
    java_common.default_javac_opts is unnecessary.
  - CppRules: C++ command lines and env variables for C++ actions can
    be retrieved from feature configuration.
  - Skylark rule definitions may advertise providers that targets of
    the rule must propagate.
  - Bazel now supports running actions inside Docker containers.
    To use this feature, run "bazel build --spawn_strategy=docker
    --experimental_docker_image=myimage:latest".
  - Remote execution works for Windows binaries with launchers.
  - Fixing start/end lib expansion for linking. There were many cases
    where archive files were still being used with toolchains that
    support start/end lib. This change consolidates the places that
    make that decision so they can be more consistent.
  - Add support for reporting an error if
    android_test.binary_under_test contains incompatible versions of
    deps
  - We replaced the --experimental_local_disk_cache and
    --experimental_local_disk_cache_path flags into a single
    --disk_cache flag. Additionally, Bazel now tries to create the disk cache
    directory if it doesn't exist.
  - Save Blaze memory by not storing LinkerInput objects in
    LinkCommandLine
  - In the JavaInfo created by java_common.create_provider now
    includes both direct and transitive arguments in
    transitive_compile_time_jars and transitive_runtime_jars
  - Allow --worker_max_instances to take MnemonicName=value to
    specify max for each worker.
  - Allow java_toolchain.header_compiler to be an arbitrary executable

0.13.1

Toggle 0.13.1's commit message
Release 0.13.1 (2018-05-23)

Baseline: fdee70e

Cherry picks:
   + f083e76:
     windows: GetOutputRoot() returns GetHomeDir()
   + fa36d2f:
     Automated rollback of commit
     4465dae.
   + 4abd2ba:
     Add error message on empty public resources
   + 2c95757:
     test-setup: remove leading "./" from test name
   + e6eaf25:
     Sort entries by segment when building a parent node to prevent
     unordered directory structures.

Important changes:

  - Remote Execution: Fixes a regression that produces directories with unsorted file/directory lists