0.4.5
Release 0.4.5 (2017-03-16)
Known issues: This release contains a flakiness on windows and we recommend to set --strategy=Javac=standalone
in your .bazelrc
file
Baseline: 2e689c2
Cherry picks:
- a28b540:
Fix Cpp action caching - 6d1d424:
Fix paths of binaries in .deb packages. - 0785cbb:
Update to guava 21.0 and Error Prone version 2.0.18-20160224 - 3049051:
Update to latest javac and Error Prone - 867d16e:
Allow ' ', '(', ')' and '$' in labels - 7b295d3:
Pass through -sourcepath to the JavaBuilder - 14e4755:
PathFragment comparisons are now platform-aware - ed77952:
Flag to import external repositories in python import path - 81ae08b:
Suppress error for non-exhaustive switches - e8d1177:
Correctly returns null if an environment variables is missing - 869d52f:
Fix NPE in Android{S,N}dkRepositoryFunction. - d72bc57:
Select the good guava jars for JDK7 build - 92ecbae:
Windows: Assist JNI builds with a target for jni_md.h. - 3695880:
Add java_common.create_provider to allow creating a
java_common.provider - 8c00f39:
Improve handling of unknown NDK revisions in
android_ndk_repository. - b6ea0d3:
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.
Notice: Bazel installers contain binaries licensed under the GPLv2 with
Classpath exception. Those installers should always be redistributed along with
the source code.
Security: All our binaries are signed with our
public key 48457EE0.