|
| 1 | +## Release 0.7.0 (2017-10-18) |
| 2 | + |
| 3 | +``` |
| 4 | +Baseline: 5cc6246d429f7d9119b97ce263b4fd6893222e92 |
| 5 | +
|
| 6 | +Cherry picks: |
| 7 | + + e79a1107d90380501102990d82cbfaa8f51a1778: |
| 8 | + Windows,bootstrapping: fix build_windows_jni.sh |
| 9 | +``` |
| 10 | + |
| 11 | +Incompatible changes: |
| 12 | + |
| 13 | + - The --output=location flag to 'bazel query' cannot be used with |
| 14 | + query expressions that involve the 'buildfiles' or 'loadfiles' |
| 15 | + operators. This also applies to 'genquery' rules. |
| 16 | + - Operators for equality, comparison, 'in' and 'not in' are no |
| 17 | + longer associative, |
| 18 | + e.g. x < y < z is now a syntax error. Before, it was parsed |
| 19 | + as: (x < y) < z. |
| 20 | + - In strings, octal sequences greater than \377 are now forbidden |
| 21 | + (e.g. "\\600"). |
| 22 | + Previously, Blaze had the same behavior as Python 2, where |
| 23 | + "\\450" == "\050". |
| 24 | + - Using tabulation for identation is now fobidden in .bzl files |
| 25 | + - `load` is now a language keyword, it cannot be used as an |
| 26 | + identifier |
| 27 | + - lvalues must have define at least one variable (i.e. we forbid |
| 28 | + `[] = f()`). |
| 29 | + - Fixed a bug whereby multiple load() statements could appear on |
| 30 | + the same line |
| 31 | + - -extra_checks:off is no longer supported; use |
| 32 | + -XepDisableAllChecks instead |
| 33 | + - java_common.java_toolchain_attr is removed. Depend on the |
| 34 | + java_toolchain_alias() rule to accomplish the same thing. |
| 35 | + - cc_common.cc_toolchain_attr and java_common.java_runtime_attr are |
| 36 | + not supported anymore and were replaced with the |
| 37 | + cc_toolchain_alias() and java_runtime_alias() rules. |
| 38 | + - Noop flag --deprecated_generate_xcode_project deleted. |
| 39 | + - Objects in Skylark are converted to strings in a more descriptive |
| 40 | + and less harmful way (they don't leak information that shouldn't |
| 41 | + be accessed by Skylark code, e.g. nondeterministic memory addresses |
| 42 | + of objects). |
| 43 | + - `set` is deprecated in BUILD and .bzl files, please use `depset` |
| 44 | + instead. Ordering names have also been changed, please use "default", |
| 45 | + "postorder", "preorder", and "topological" instead of "stable", |
| 46 | + "compile", "naive_link", and "link" correspondingly. |
| 47 | + - Integer overflow (on signed 32 bit numbers) in BUILD/bzl files is |
| 48 | + an error. |
| 49 | + - Keyword-only syntax in a function definition is now forbidden |
| 50 | + e.g. `def foo(a, *, b)` or `def foo(a, *b, c)` |
| 51 | + - --incompatible_comprehension_variables_do_not_leak defaults to |
| 52 | + "true." |
| 53 | + Iteration variable becomes inaccessible after a list/dict |
| 54 | + comprehension. |
| 55 | + - @bazel_tools//tools/build_defs/docker:docker.bzl is no longer |
| 56 | + available, please see https://github.com/bazelbuild/rules_docker. |
| 57 | + |
| 58 | +New features: |
| 59 | + |
| 60 | + - Zipped LLVM profiles are now supported. |
| 61 | + - LIPO maps to ThinLTO for LLVM builds. |
| 62 | + - Change to handle LLVM FDO zipped profile contents correctly. |
| 63 | + - Do not disable fully dynamic linking with ThinLTO when invoked |
| 64 | + via LIPO options. |
| 65 | + - There is now a 'siblings' query function. See the query |
| 66 | + documentation for more details. |
| 67 | + - Added the print_action command, which outputs the |
| 68 | + actions needed to build a given target in the form of an |
| 69 | + ExtraActionSummary proto in text format. |
| 70 | + - android_binary now supports proguard_apply_dictionary to specify |
| 71 | + a custom dictionary to use for choosing names to obfuscate |
| 72 | + classes and members to. |
| 73 | + |
| 74 | +Important changes: |
| 75 | + |
| 76 | + - Windows: bazel clean --expunge works |
| 77 | + - First argument of 'load' should be a label. Path syntax is |
| 78 | + deprecated (label should start with '//' or ':'). |
| 79 | + - Octal prefix '0' is deprecated in favor of '0o' (use 0o777 |
| 80 | + instead of 0777). |
| 81 | + - The extension_safe attribute of apple_binary no longer validates |
| 82 | + transitive dependencies are compiled against extension_safe APIs. |
| 83 | + - Parentheses around the tuple are now mandatory in [a for b in c |
| 84 | + if 1, 2] |
| 85 | + - Adjust the thresholds for --test_verbose_timeout_warnings so that |
| 86 | + it can recommending timeout increases and won't recommend |
| 87 | + timeouts that are too close to the actual timeout. |
| 88 | + - Iterating on a `depset` object is deprecated. If you need an |
| 89 | + iterable, call the `.to_list()` method first. |
| 90 | + - Bazel now uses tools from action_configs in Crosstool by default |
| 91 | + (as oposed to using top level tools). |
| 92 | + - Incremental dexing errors on combination of --multidex=off and |
| 93 | + either --main-dex-list or --minimal-main-dex. |
| 94 | + - When using the dictionary literal syntax, it is now an error to |
| 95 | + have duplicated keys (e.g. {'ab': 3, 'ab': 5}). |
| 96 | + - New property on android_sdk: aapt2 |
| 97 | + Choose the version of aapt on android_binary |
| 98 | + - Add idl_preprocessed attribute to android_library, so that |
| 99 | + preprocessed aidl files can be passed to android_library for |
| 100 | + compiling |
| 101 | + - Bazel's remote_worker backend for remote execution supports |
| 102 | + sandboxing on Linux now. Check |
| 103 | + https://github.com/bazelbuild/bazel/blob/master/src/tools/remote_w |
| 104 | + orker/README.md for details. |
| 105 | + - Allows flags that expand to take values. |
| 106 | + - Make querying attributes formed by selector lists of list types |
| 107 | + more efficient by no longer listing every possible combination of |
| 108 | + attribute value but by more compactly storing the possible values |
| 109 | + of the list. |
| 110 | + - writing build events to a file is no longer experimental |
| 111 | + - set --rewrite_calls_to_long_compare to false by default. |
| 112 | + - ObjC and C++ coverage feature is unified under name 'coverage' |
| 113 | + - Enable --incremental_dexing for Android builds by default. Note |
| 114 | + that some dexopts are incompatible with incremental dexing, |
| 115 | + including --force-jumbo. |
| 116 | + - Evaluation will soon use checked arithmetics and throw an error |
| 117 | + instead of overflow/underflow. |
| 118 | + - Implicit iteration in the CROSSTOOL has been removed, use |
| 119 | + explicit 'iterate_over' message. |
| 120 | + - Add option for Android specific grte_top |
| 121 | + - Crosstool patches are only applied if the toolchain doesn't define |
| 122 | + 'no_legacy_features' feature. |
| 123 | + - 'platform_type' is now a mandatory attribute on apple_binary and |
| 124 | + apple_static_library rules. |
| 125 | + If this change breaks your build, feel free to add platform_type |
| 126 | + = 'ios' to any apple_binary and apple_static_library |
| 127 | + targets in your project, as this was the previous default |
| 128 | + behavior. |
| 129 | + - Remove apple_watch2_extension build rule. Users should be using |
| 130 | + the skylark watchos_application and watchos_extension rules. |
| 131 | + https://github.com/bazelbuild/rules_apple has details. |
| 132 | + - Check stderr to detect if connected to a terminal. Deprecate |
| 133 | + --isatty. |
| 134 | + - Commands that shut down the server (like "shutdown") now ensure |
| 135 | + that the server process has terminated before the client process |
| 136 | + terminates. |
| 137 | + - Remove apple_watch1_extension and apple_watch_extension_binary |
| 138 | + rules. Users should be using the skylark watchos_application and |
| 139 | + watchos_extension rules. |
| 140 | + https://github.com/bazelbuild/rules_apple has details. |
| 141 | + - Windows: Wrapper-less CROSSTOOL becomes default now. |
| 142 | + set USE_MSVC_WRAPPER=1 if you still want to use wrapper script. |
| 143 | + - Ignore --glibc in the Android transition. |
| 144 | + - Remove --experimental_android_use_singlejar_for_multidex. |
| 145 | + - nocopts now also filter copts |
| 146 | + - 'strip' action is now configured via feature configuration |
| 147 | + - The Build Event Service (BES) client now properly supports |
| 148 | + Google Applicaton Default Credentials. |
| 149 | + - Flags from action_config get added first to the command line |
| 150 | + first, before the flags from features. |
| 151 | + - update dexing tools to Android SDK 26.0.1 |
| 152 | + - Bazel Android support now requires build-tools 26.0.1 or later. |
| 153 | + - `bazel info output_path` no longer relies on the root directory |
| 154 | + filename being equal to the workspace name. |
| 155 | + - The `print` function now prints debug messages instead of |
| 156 | + warnings. |
| 157 | + - speedup of incremental dexing tools |
| 158 | + - --announce_rc now controls whether bazelrc startup options are |
| 159 | + printed to stderr. |
| 160 | + - Removing a few unused objc_provider keys. |
| 161 | + - Improved logging when workers have to be restarted due to its |
| 162 | + files having changed. |
| 163 | + - Top-level `if` statements are now forbidden. |
| 164 | + - Java protos are compiled to Java 7 bytecode. |
| 165 | + - All Android builds now use the desugar tool to support some Java |
| 166 | + 8 features by default. To disable, use the --nodesugar_for_android flag. |
| 167 | + - Skylark-related options may now appear as "common" command |
| 168 | + options in the .bazelrc |
| 169 | + - Python is now required to build bazel. |
| 170 | + - New --build_runfile_manifests flag controls production of |
| 171 | + runfiles manifests. |
| 172 | + - Enable debug info for Java builds |
| 173 | + - Allow java_lite_proto_library in the deps of android rules. |
| 174 | + - .so files in APKs will be memory-page aligned when |
| 175 | + android_binary.nocompress_extensions contains ".so" and |
| 176 | + --experimental_android_use_nocompress_extensions_on_apk is |
| 177 | + specified. |
| 178 | + - Skylark providers can specify allowed fields and their |
| 179 | + documentation. |
| 180 | + - Support ctx.actions.args() for more efficient Skylark command |
| 181 | + line construction. |
| 182 | + - The remote HTTP/1.1 caching client (--remote_rest_cache) now |
| 183 | + distinquishes between action cache and CAS. The request URL for |
| 184 | + the action cache is prefixed with 'ac' and the URL for the CAS |
| 185 | + is prefixed with 'cas'. |
| 186 | + - `JavaInfo` is a preferred alias to `java_common.provider`. |
| 187 | + - J2ObjC version updated to 2.0.3. |
| 188 | + - A new Java coverage implementation is available. Makes possible |
| 189 | + coverage for Skylark JVM rules. |
| 190 | + - Make proguard_apply_dictionary also apply to class and package |
| 191 | + obfuscation, not just class members. |
| 192 | + - android_binary.nocompress_extensions now applies to all files in |
| 193 | + the APK, not just resources and assets. |
| 194 | + - The apple_genrule rule that is distributed with Bazel has been |
| 195 | + deleted. Users who wish to use genrules with Xcode's |
| 196 | + DEVELOPER_DIR set should use the rules in |
| 197 | + https://github.com/bazelbuild/rules_apple instead. |
| 198 | + - The swift_library rule that is distributed with Bazel has been |
| 199 | + deleted. Users who wish to compile Swift should use the rules in |
| 200 | + https://github.com/bazelbuild/rules_apple instead. |
| 201 | + - The Build Event Protocol's File.uri field is now properly |
| 202 | + encoded according to RFC2396. |
| 203 | + - Deprecated: Using the android_library.deps attribute to |
| 204 | + implicitly export targets to dependent rules. If your code is |
| 205 | + using this feature, Bazel will raise a warning. To fix, please |
| 206 | + use android_library.exports to explicitly specify exported |
| 207 | + targets. Run with |
| 208 | + --experimental_allow_android_library_deps_without_srcs=false to |
| 209 | + ensure forward compatibility when this feature is removed in a |
| 210 | + future release. |
| 211 | + - java_common.create_provider is now supported with creating ijars |
| 212 | + by default. This introduces incompatibilities for existing users. |
| 213 | + Please set use_ijar=False if you don't want to use ijars. |
| 214 | + - Tests can now write files to TEST_UNDECLARED_OUTPUTS_DIR and |
| 215 | + TEST_UNDECLARED_OUTPUTS_ANNOTATIONS_DIR and these will be |
| 216 | + reflected under bazel-testlogs. |
| 217 | + - remove unused --host_incremental_dexing flag |
| 218 | + - Stop using --undefined dynamic_lookup in Apple links. Enables |
| 219 | + unresolved symbol errors. |
| 220 | + - All test output files included for cached, uncached, and multiple |
| 221 | + attempt tests. |
| 222 | + - Android rules no longer restrict the manifest file to be named |
| 223 | + "AndroidManifest.xml". |
| 224 | + - Boolean flag values will now get normalized to 1 or 0 in |
| 225 | + canonicalize-flags output. |
| 226 | + - added experimental --use_new_category_enum to the help command to |
| 227 | + output options grouped by the new type of category. |
| 228 | + - Expose output jars and jdeps in java_common.provider, when |
| 229 | + available. |
| 230 | + - android_library targets are no longer allowed to use deps to |
| 231 | + export targets implicitly; please use android_library.exports |
| 232 | + instead. |
| 233 | + - New depset API |
| 234 | + - apple_binary and apple_static_library no longer support |
| 235 | + compilation attributes such as 'srcs'. If this breaks any |
| 236 | + existing targets, you may migrate all such attributes to a new |
| 237 | + objc_library target and depend on that objc_library target via |
| 238 | + the 'deps' attribute of apple_binary or apple_static_library. |
| 239 | + |
| 240 | +## Release 0.6.1 (2017-10-05) |
| 241 | + |
| 242 | +``` |
| 243 | +Baseline: 87cc92e5df35d02a7c9bc50b229c513563dc1689 |
| 244 | +
|
| 245 | +Cherry picks: |
| 246 | + + a615d288b008c36c659fdc17965207bb62d95d8d: |
| 247 | + Rollback context.actions.args() functionality. |
| 248 | + + 7b091c1397a82258e26ab5336df6c8dae1d97384: |
| 249 | + Add a global failure when a test is interrupted/cancelled. |
| 250 | + + 95b0467e3eb42a8ce8d1179c0c7e1aab040e8120: |
| 251 | + Cleanups for Skylark tracebacks |
| 252 | + + cc9c2f07127a832a88f27f5d72e5508000b53429: |
| 253 | + Remove the status xml attribute from AntXmlResultWriter |
| 254 | + + 471c0e1678d0471961f1dc467666991e4cce3846: |
| 255 | + Release 0.6.0 (2017-09-28) |
| 256 | + + 8bdd409f4900d4574667fed83d86b494debef467: |
| 257 | + Only compute hostname once per server lifetime |
| 258 | + + 0bc9b3e14f305706d72180371f73a98d6bfcdf35: |
| 259 | + Fix bug in NetUtil caching. |
| 260 | +``` |
| 261 | + |
| 262 | +Important changes: |
| 263 | + - Only compute hostname once per server lifetime |
| 264 | + |
1 | 265 | ## Release 0.6.0 (2017-09-28)
|
2 | 266 |
|
3 | 267 | ```
|
@@ -1792,3 +2056,5 @@ Initial release.
|
1792 | 2056 |
|
1793 | 2057 |
|
1794 | 2058 |
|
| 2059 | + |
| 2060 | + |
0 commit comments