Baseline: 2e689c29d5fc8a747216563235e905b1b62d63b0
Cherry picks:
+ a28b54033227d930672ec7f2714de52e5e0a67eb:
Fix Cpp action caching
+ 6d1d424b4c0da724e20e14235de8012f05c470f8:
Fix paths of binaries in .deb packages.
+ 0785cbb672357d950e0c045770c4567df9fbdc43:
Update to guava 21.0 and Error Prone version 2.0.18-20160224
+ 30490512eb0e48a3774cc4e4ef78680e77dd4e47:
Update to latest javac and Error Prone
+ 867d16eab3bfabae070567ecd878c291978ff338:
Allow ' ', '(', ')' and '$' in labels
+ 7b295d34f3a4f42c13aafc1cc8afba3cb4aa2985:
Pass through -sourcepath to the JavaBuilder
+ 14e4755ce554cdfc685fc9cc2bfb5b699a3b48f4:
PathFragment comparisons are now platform-aware
+ ed7795234ca7ccd2567007f2c502f853cd947e50:
Flag to import external repositories in python import path
+ 81ae08bbc13f5f4a04f18caae339ca77ae2699c1:
Suppress error for non-exhaustive switches
+ e8d1177eef9a9798d2b971630b8cea59471eec33:
Correctly returns null if an environment variables is missing
+ 869d52f145c077e3499b88df752cebc60af51d66:
Fix NPE in Android{S,N}dkRepositoryFunction.
+ d72bc57b60b26245e64f5ccafe023a5ede81cc7f:
Select the good guava jars for JDK7 build
+ 92ecbaeaf6fa11dff161254df38d743d48be8c61:
Windows: Assist JNI builds with a target for jni_md.h.
+ 36958806f2cd38dc51e64cd7bcc557bd143bbdb6:
Add java_common.create_provider to allow creating a
java_common.provider
+ 8c00f398d7be863c4f502bde3f5d282b1e18f504:
Improve handling of unknown NDK revisions in
android_ndk_repository.
+ b6ea0d33d3ab72922c8fb3ec1ff0e437af09584d:
Add the appropriate cxx_builtin_include_directory entries for
clang to the Android NDK crosstool created by
android_ndk_repository.
Incompatible changes:
- Depsets (former sets) are converted to strings as "depset(...)"
instead of
"set(...)".
- Using --symlink_prefix is now applied to the output
symlink (e.g. bazel-out) and the exec root symlink (e.g.
bazel-workspace).
- Bazel now uses the test's PATH for commands specified as
--run_under; this can affect users who explicitly set PATH to
a more
restrictive value than the default, which is to forward the
local PATH
- It's not allowed anymore to compare objects of different types
(i.e. a string to an integer) and objects for which comparison
rules are not
defined (i.e. a dict to another dict) using order operators.
New features:
- environ parameter to the repository_rule function let
defines a list of environment variables for which a change of
value
will trigger a repository refetching.
Important changes:
- android_ndk_repository now supports Android NDK R13.
- Android resource shrinking is now available for android_binary
rules. To enable, set the attribute 'shrink_resources = 1'. See
https://bazel.build/versions/master/docs/be/android.html#android_b
inary.shrink_resources.
- resolve_command/action's input_manifest return/parameter is now
list
- For increased compatibility with environments where UTS
namespaces are not available, the Linux sandbox no longer hides
the hostname of the local machine by default. Use
--sandbox_fake_hostname to re-enable this feature.
- proto_library: alias libraries produce empty files for descriptor
sets.
- Adds pkg_rpm rule for generating RPM packages.
- Allow CROSSTOOL files to have linker flags specific to static
shared libraries.
- Make it mandatory for Java test suites in bazel codebase, to
contain at least one test.
- Support for Java 8 lambdas, method references, type annotations
and repeated annotations in Android builds with
--experimental_desugar_for_android.
- Removed .xcodeproj automatic output from objc rules. It can still
be generated by requesting it explicitly on the command line.
- Flips --explicit_jre_deps flag on by default.
- Activate the "dbg", "fastbuild", and "opt" features in the objc
CROSSTOOL.
- Remove support for configuring JDKs with filegroups; use
java_runtime and java_runtime_suite instead
- android_ndk_repository api_level attribute is now optional. If not
specified, the highest api level in the ndk/platforms directory
is used.