## Release 0.1.4 (2016-01-15) ``` Baseline: e933d5e + 3d796fe: Rollback of commit ac6ed79e1a3fa6b0ca91657b28e2a35f7e49758c. + 7a02e5d: Fix installer under OS X + 848740c: Fix bazel version for debian package + 7751d43: Add a method for getting the root of a rule workspace to the Label method ``` Important changes: - add loadfiles() query operator, to find skylark files loaded by targets. - Added ability to declare and use aspects in Skylark. - Skylark load statements may now reference .bzl files via build labels, in addition to paths. In particular, such labels can be used to reference Skylark files in external repositories; e.g., load("@my_external_repo//some_pkg:some_file.bzl", ...). Path-based loads are now deprecated and may be disabled in the future. Caveats: Skylark files currently do not respect package visibility; i.e., all Skylark files are effectively public. Also, loads may not reference the special //external package. - Relative paths can now be used for 'path' with new_local_repository and local_repository. ## Release 0.1.3 (2016-01-07) ``` Baseline: 23ad8f6 + de2183d: Only depend on the WORKSPACE file for external files that are under the external/ directory, i.e. were created by Bazel. + f8f855c: Rollback of commit 12bad3af0eade9c4b79d76f9e1c950ad2e3214c2. + f627562: Stop parsing the WORKSPACE file when a parse error is detected + 763f139: Add -fno-canonical-system-headers to CROSSTOOL files so that gcc doesn't resolve symlinks in .d files, which would confuse Blaze. + b95995b: Use openjdk7 as dependency for debian package of jdk7 flavor ``` New features: - Skylark macros are now enabled in WORKSPACE file. - .bazelrc allows workspace-relative imports as "import %workspace%/path/to/rcfile" - Evaluate the query expression in a file by passing --query_file= to query Important changes: - Remove obsolete --objc_per_proto_includes flag. - iOS apps and extensions now have launch_storyboard - Passing multiple JVM options via a single --host_jvm_args flag is now deprecated. Pass each JVM option behind its own --host_jvm_args flag. - Resources defined locally on an android_library rule will respect the neverlink attribute. - Update Rust to 1.4 - Fix resource handling for exported android_library rules - Files in external repositories are now treated as mutable, which will make the correctness guarantees of using external repositories stronger (existent), but may cause performance penalties. ## Release 0.1.2 (2015-11-20) ``` Baseline: ee0ade3 + 1e66ccd: RELNOTES: Symlink dirents of directories containing a file named "DONT_FOLLOW_SYMLINKS_WHEN_TRAVERSING_THIS_DIRECTORY_VIA _A_RECURSIVE_TARGET_PATTERN" will *not* be traversed for transitive target patterns. The motivation here is to allow directories that intentionally contain wonky symlinks (e.g. foo/bar -> foo) to opt out of being consumed by Blaze. For example, given + f5773fc: Set the ijar MAX_BUFFER_SIZE to 256 MB ``` New features: - java_library now supports the proguard_specs attribute for passing Proguard configuration up to Android (not Java) binaries. - http_file can specify "executable" to make the downloaded file runnable. - Debian and tar packaging is now supported (see tools/build_defs/pkg/README.md). - cpxx_builtin_include_directory specifications allow more flexibility. - accept %crosstool_top% in cxx_builtin_include_directory - android_binary now supports proguard_apply_mapping to re-use a previously generated proguard mapping. Important changes: - remove webstatusserver (--use_webstatusserver). - Add support for objc textual headers, which will not be compiled when modules are enabled. - actoolzip, momczip and swiftstdlibtoolzip have all been made into bash scripts and have been renamed to actoolwrapper, momcwrapper and swiftstdlibtoolwrapper respectively. The old versions will be deleted in a later change. - [rust] Add rust_bench_test and rust_doc_test rules and improve usability of rust_test tule. - Java rules now support a resource_strip_prefix attribute that allows the removal of path prefixes from Java resources. - [docker_build] incremental loading is default now. Specify explicitly //package:target.tar (with the .tar extension) to obtain the full image. - --ios_signing_cert_name allows specifying a cert for iOS app signing - Go rules for Bazel. - [jsonnet] Update to Jsonnet 0.8.1. - [jsonnet] Add vars and code_vars attributes to jsonnet_to_json to allow passing external variables to Jsonnet via --var and --code_var. - Adds --override_workspace_root blaze flag to hand-set workspace_root and mainGroup in xcodeproj. - Allow dots in package names. - When used as a forwarding rule (i.e., has no sources), android_library will also forward any exported_plugins in its dependencies. - Add support for Windows-created zip files with non-posix permissions. - [jsonnet] Add jsonnet_to_json_test rule for testing Jsonnet code. - C++ compile actions run in a sandbox now on systems that support sandboxed execution. - The names of the clang compilers in the Android NDK crosstool no longer reference gcc. - 420 dpi is now a valid density for andoid_binary.densities. - Bazel does strict validation of include files now to ensure correct incremental builds. If you see compilation errors when building C++ code, please make sure that you explicitly declare all header files in the srcs or hdrs attribute of your cc_* targets and that your cc_* targets have correct "deps" on cc_library's that they use. - [jsonnet] Fix jsonnet_to_json rule to read code_vars from code_vars instead of vars. - Tests, genrules, and Skylark actions without the "requires-network" tag will no longer be able to access the network. - C++ libraries no longer need includes = ["."] (or similar copts) to include paths relative to a remote repository's root. - Support exports attribute for android_library - Symlink dirents of directories containing a file named "DONT_FOLLOW_SYMLINKS_WHEN_TRAVERSING_THIS_DIRECTORY_VIA_A_RECURSI VE_TARGET_PATTERN" will *not* be traversed for transitive target patterns. The motivation here is to allow directories that intentionally contain wonky symlinks (e.g. foo/bar -> foo) to opt out of being consumed by Blaze. ## Release 0.1.1 (2015-10-05) ``` Baseline: 22616ae + 1ef338f: Rollback of "Propagates cc_library linkopts attribute to dependent objc_libraries.": breaks certain objc_binary build targets. + 5fb1073: Reintroduce an inconsistency check (albeit, in a weaker form) removed by a previous change that was trying to optimize away a filesystem call. + 6d00468b2eb976866cfb814d562e0d53a580a46f: Add IdlClass to the embedded default android tools repository and rearrange BuildJar's JarHelper so that it too can be embedded. + a5199039934a2e399a7201adc0d74e2f2d2b0ff3: Fixes Android integration tests by wiring up idlclass rules in integration environment. ``` Incompatible changes: - Bazel requires JDK 8 to run. - Attribute "copts" is removed from j2objc_library. New features: - a cc_binary rule may list '.s' and '.asm' files in the srcs - Support for build with libsass. - labels in "linkopts" may match any label in either "deps" or "srcs" to be considered valid. - Maven servers that require username & password authentication are now supported (see maven_server documentation). Important changes: - Support empty plist files - The section of the AndroidManifest.xml will not be overwritten if it already contains a tag for each of the densities specified on the android_binary rule. - Add Jsonnet rules to Bazel - Remove deprecated xcode_options flag. - Workspace names are now restricted to being in their base directory (that is, the names cannot contain up-level references or /./). - j2objc_library on Bazel now transpiles transitive proto_library dependencies. (Note that java_* rules in Bazel do not yet support protos; currently they ignore proto dependencies.) - new_http_archive can specify a root directory. - Adds support for dylibs on devices for Xcode 7. - [d] d_docs rules now depend on a d_binary, a d_library or d_source_library. - [docker] docker_build now set the permission to 0555 to files added to the layer, use `mode = "0644"` to use the legacy behavior. - android_binary now has a main_dex_proguard_specs attribute to specify which classes should be in the main dex. - [rust] Add rust_docs rule for generating rustdoc. ## Release 0.1.0 (2015-09-08) ``` Baseline: a0881e8 + 87374e6: Make android_binary use a constant, hard-coded, checked-in debug key. + 2984f1c: Adds some safety checks in the Bazel installer + 4e21d90: Remove BUILD.glob and incorporate the necessary filegroups into the android_{ndk,sdk}_repository rules themselves. + 1ee813e: Fix Groovy rules to work with sandboxing + 8741978: Add initial D rules to Bazel. + 2c2e70d: Fix the installer and fixing the package shiped into binary version of Bazel. ``` Initial release.