Tags: obruns/bazel
Tags
Release 5.0.0-pre.20210510.2.2 (2021-06-01) Baseline: 8a42645 Cherry picks: + e3c78c4: Ensure that test status artifacts are reported as top-level artifacts. + 1f52e9a: Support rolling releases in Bazel release scripts. + 2f72244: Fix syntax error in Bazel release scripts + 4ef9c56: Fix location of -prerelease option This release contains contributions from many people at Google, as well as .
Release 5.0.0-pre.20210510.2.1 (2021-05-31) Baseline: 8a42645 Cherry picks: + e3c78c4: Ensure that test status artifacts are reported as top-level artifacts. + 1f52e9a: Support rolling releases in Bazel release scripts. + 2f72244: Fix syntax error in Bazel release scripts This release contains contributions from many people at Google, as well as .
Release 5.0.0-pre.20210510.2 (2021-05-31) Baseline: 8a42645 Cherry picks: + e3c78c4: Ensure that test status artifacts are reported as top-level artifacts. + 1f52e9a: Support rolling releases in Bazel release scripts. Incompatible changes: - Removing java_common.javac_jar Starlark call. - native.existing_rule now returns select values in a form that is accepted by rule instantiation. This is a breaking API change because there is some code that relies on the precise type returned, including brittle workarounds for this bug specifically and insufficiently flexible workarounds for other issues with the intersection of select and native.existing_rule. - flipped incompatible_use_toolchain_resolution_for_java_rules, see bazelbuild#7849 - Query output=xml/proto/location for source files will now show the location of line 1 of the source file (as the new default) instead of its location in the BUILD file. - Specifying a target pattern underneath a directory specified by .bazelignore will now emit a warning, not an error. - Query `--order_output=auto` will now sort lexicographically. However, when `somepath` is used as a top level function (e.g. `query 'somepath(a, b)'`), it will continue to output in dependency order. If you do not want the lexicographical output ordering, specify another `--order_output` value (`no`, `deps` or `full`) based on what ordering you require. - In the build event stream, BuildMetrics.TargetMetrics.targets_loaded is no longer populated. Its value was always mostly meaningless. BuildMetrics.TargetMetrics.targets_configured and BuildMetrics.ActionSummary.actions_created now include configured aspect data. - //visibility:legacy_public has been removed. - Flip and remove incompatible_dont_collect_so_artifacts (bazelbuild#13043). - Remove flag --experimental_no_product_name_out_symlink: it is always true. - The Starlark method generate_dsym in objc fragment has been deleted. Please use the equivalent apple_generate_dsym in cpp fragment instead. Important changes: - Flag --incompatible_objc_compile_info_migration is removed. See bazelbuild#10854. - Flag --incompatible_objc_compile_info_migration is removed. See bazelbuild#10854. - Flag --incompatible_objc_compile_info_migration is removed. See bazelbuild#10854. - none PAIR=cmita - The --incompatible_load_python_rules_from_bzl flag is now a no-op. - Filter all (instead of just C++) source files for coverage output according to --instrumentation_filter and --instrument_test_targets. - The `--incompatible_disable_native_apple_binary_rule` flag has been added which disables the native `apple_binary` rule. Users who need to use `apple_binary` directly (if they cannot use one of the more specific Apple rules) should load it from https://github.com/bazelbuild/rules_apple. - The Android rules' --use_singlejar_apkbuilder is now a no-op. SingleJar will always be used to build APKs. - dict.setdefault(key, ...) now fails if dict is frozen, even if it already contains key. This is an incompatible API change. - Flag --incompatible_objc_provider_remove_compile_info is removed. See bazelbuild#11359. - Starlark now permits def statements to be nested (closures). - native.existing_rule now returns select values in a form that is accepted by rule instantiation. This is a breaking API change, though the fallout is expected to be small. - Starlark now supports lambda (anonymous function) expressions. - The "test" and "coverage" commands no longer return 3 when a test action fails because of a system error. Instead, the exit code reflects the type of system error. - The undocumented ctx.expand feature no longer exists. - Make --legacy_dynamic_scheduler a no-op flag. - Multiplex persistent workers can now use the JSON protocol. - native.existing_rule now returns a mutable list, not a tuple, for a list-valued attributes. This is an incompatible API change. - Roll back change to have native.existing_rules use list instead of tuple. - BEP includes test suite expansions. - config_setting now honors `visibility` attribute (and defaults to `//visibility:public`) - Change the MultiArchSplitTransitionProvider to be based on platform type + CPU instead of fixed "ios_" + cpu. - enforce config_setting visibility. See bazelbuild#12932 for details. - add a flag to build v4 signature file - Added _direct_source_jars output group to Java related targets. END_PUBLIC - pkg_deb is no longer part of @bazel_tools//build_defs/pkg:pkg.bzl. Use https://github.com/bazelbuild/rules_pkg/tree/main/pkg instead - Allowing the lipo operations to be conditional in the linkMultiArchBinary API for Apple binaries. Single architecture slices are now returned through AppleBinaryOutput and the Starlark API. - Release restriction for "-" in the package name for Python sources. Now `py_binary` and `py_test` targets can have main source file with "-" in the path. - Users consuming BEP may assume that a `named_set_of_files` event will appear before any event referencing that `named_set` by ID. This allows consumers to process the files for such events (eg. `TargetCompleted`) immediately. - BEP includes all files from successful actions in requested output groups. Previously, an output group's files were excluded if any file in the output group was not produced due to a failing action. Users can expect BEP output to be larger for failed builds. - In BEP, TargetComplete.output_group has a new field `incomplete` indicating that the file_sets field is missing one or more declared artifacts whose generating actions failed. - The flag `--toolchain_resolution_debug` now takes a regex argument, which is used to check which toolchain types should have debug info printed. You may use `.*` as an argument to keep the current behavior of debugging every toolchain type. - Add runfiles.merge_all() for merging a sequence of runfiles objects. - runfiles.merge() and merge_all() now respect --nested_set_depth_limit. If you hit the depth limit because you were calling merge() in a loop, use merge_all() on a sequence of runfiles objects instead. - Bazel will no longer create a bazel-out symlink if --symlink_prefix is specified: the directory pointed to via the bazel-out symlink is accessible via ${symlink_prefix}-out. If this causes problems for you, set --experimental_no_product_name_out_symlink=false in your builds and file an issue. - Updates worker protocol with cancellation fields, and adds experimental_worker_cancellation flag to control cancellation. - Simplify build failure output by always using `NNN arguments`. - trim_test_configuration now defaults to on - Mark genrule.srcs as a source attribute for coverage. - When using --allow_analysis_failures (for example, via bazel-skylib's analysistest with `expect_failure = True`), analysis-time failures in aspect implementation functions will now be propagated and saved in AnalysisFailureInfo, just like analysis-time failures in rules. - cquery --noimplicit_deps now correctly filters out resolved cc_toolchains - Sign apks deterministically. - Make gcov optional in cc_toolchain tools. - If --experimental_prefer_mutual_xcode is passed, Bazel will choose the local default (instead of the newest mutually available version) if it's available both locally and remotely. - Remove java_lite_proto_library.strict_deps attribute. - Generate proguard configurations deterministically. - Adds a new flag, `--incompatible_enable_cc_test_feature` which switches from the use of build variables to the feature of the same name. - Dropped fragile xz support from built in pkg_tar. Users requiring xz compression should switch to bazlebuild/rules_pkg. This release contains contributions from many people at Google, as well as Adam Liddell, Alex Eagle, Anthony Pratti, Austin Schuh, Benedek Thaler, Benjamin Lee, Benjamin Peterson, bromano, Christopher Sauer, Cristian Hancila, Daniel McCarney, Daniel Wagner-Hall, Danny Wolf, Dave Nicponski, David Cummings, David, David Ostrovsky, Denys Kurylenko, Dmitry Ivankov, dorranh, Ed Schouten, Elliotte Rusty Harold, erenon, Eric Cousineau, Ethan Steinberg, Felix Ehrenpfort, Finn Ball, Fredrik Medley, Garrett Holmstrom, Gautam Korlam, George Gensure, goodspark, Greg Estren, Grzegorz Lukasik, John Laxson, Jonathan Schear, Justus Tumacder, Keith Smiley, Lauri Peltonen, Liu Liu, Lszl Csomor, m, Marc Zych, Mark Karpov, Matt Mackay, Max Liu, Menny Even Danan, menny, Michael Chinen, Nathaniel Brough, Nick Korostelev, Nikolay Shelukhin, odisseus, Oleh Stolyar, Olek Wojnar, Olle Lundberg, Philipp Schrader, Qais Patankar, Ryan Beasley, samhowes, Samuel Giddins, Sebastian Olsson, Steve Siano, steve-the-bayesian, Stiopa Koltsov, susinmotion, tatiana, Thi Doan, ThomasCJY, Timothy Klim, Tobi, Torgil Svensson, Trustin Lee, Ulf Adams, Vaidas Pilkauskas, Vertexwahn, wisechengyi, Xavier Bonaventura, Yannic Bonenberger, Yannic, Yury Evtikhov, Yuval Kaplan, Yuval, [zqzzq].
Release 4.1.0 (2021-05-21) Baseline: 37a429a Cherry picks: + a689d67: Use getRunfilesPath for run_under executable path generation. getRootRelativePath doesn't return a valid runfiles path for external source files anymore after the recent external source root change. Also, it won't work for external labels either once the --nolegacy_external_runfiles becomes default. This fixes issue bazelbuild#12545. + d90ec67: Fix NPE when coveragerunner is not set on the toolchain. + 8555789: Fix the classic query package-loading cutoff optimization with external workspaces. + 57672ac: Update turbine + bef4bbb: Update turbine + d113d74: Update turbine + 1489f0f: Support Scala3 .tasty files + 0d2d95c: Update to java_tools javac11 release 10.5 (bazelbuild#12647) + a9419f3: Fix common prefix for instrumentation filter + 84fadcf: Fix builds for filegroup targets with incompatible dependencies + e43825d: Revert "Remove --incompatible_blacklisted_protos_requires_proto_info" + 082d58d: Transform roots along with paths during output deletion. + e8835c1: AttributeContainer.Large now handles more than 127 attributes. + e1e8734: Add an env attribute to all test and binary rule classes + a87d7ed: Take no action to prefetch empty artifacts. + 3e969ff: Fix a couple of bugs with Incompatible Target Skipping + e667082: Pass --host_action_env to host options hostActionEnvironment attribute + 07400c0: Add --{no,}autodetect_server_javabase. + c833660: Only treat "env" and "env_inherit" attrs specially for native rules + 6a60b30: Fix coverage support when using default_java_toolchain. (bazelbuild#12801) + 4158a6f: Revert JacocoCoverage target to remote_java_tools_java_import and add a new target for remore_java_tools_filegroup. (bazelbuild#12813) + f6d30cf: Add windows_msvc back to conditions in bazel_tools. + 6b33bdb: Release 4.0.0 (2021-01-21) + 8811e27: Fix error message from getPrerequisites to not print internal details. + 27e15ad: Clean up ConfiguredTargetValueAccessor and ConfiguredTargetAccessor + e87feb8: Move getConfigConditions into ConfiguredTarget. + 34d9823: Change ConfiguredTargetQuery to use KeyedConfiguredTarget as a value. + 079bb7d: Clean up old dependencies that are unused since bazelbuild@34d98234324da83e93ba0d 5ef5702880d5ac7c5c. + e03cb63: Update bazelbuild/platforms to a current release. - Roll forward bazelbuild@0a4533420a3de467fd211d 7f925cf88e0cd5b76a with kythe fix. + 2eb1bf5: Update docs and tests to use the @platforms//:incompatible constraint + c71697c: Clarify test_suite behaviour in the Platforms docs + dfb70ea: Enable toolchain resolution for filegroup targets. + 24d0864: PlatformProviderUtils should ignore targets that don't have the needed + ba60c0b: ijar: fix manifest sections handling + 58bb42a: Revert "Switch to -fdebug-compilation-dir" + 57672ac: Update turbine + bef4bbb: Update turbine + d113d74: Update turbine + ad241fb: Allow cquery to filter out incompatible targets + 1782f0a: Patch grpc to fix cares selecting the wrong source when building for darwin_arm64 cpu. + 8f7bc2f: [1/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS blobs + 848a517: [2/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS blobs + 9b30172: [3/3] Bump grpc to 1.33.1 to fix corruption when downloading CAS blobs + 1e258d2: Allow exec groups to inherit from the rule or other exec groups. + d067669: Support execution constraints per exec group + f1e0d34: Clean up RuleContext to use a Table instead of a Map of Maps. + 8186fbb: Documentation for bazelbuild#13110 + 321fe3b: Prevent --repo_env from triggering unnecessary fetches + 3ebf658: Prevent a crash when using --repo_env=VAR without a value + 913a985: Report digest of failed uploads + 5122617: Status error presentation with details + 9a70805: Fix double shutdown of BuildEventArtifactUploader when BES+File output enabled. + 325eb95: Add rxjava3 to third_party + ceaac96: remote: set executable bit of an input file based on its real value + 5b786da: Remote: correctly implement equals and hashCode. + 4864850: Fixed an error that bazel binary is not executable when testing with remote execution. + bc54c64: Remote: Use parameters instead of thread-local storage to provide tracing metadata. + 92955e6: Remote: Use parameters instead of thread-local storage to provide tracing metadata. (Part 2) + 75bd1ff: Remote: Use parameters instead of thread-local storage to provide tracing metadata. (Part 3) + 37ee252: Remote: Use parameters instead of thread-local storage to provide tracing metadata. (Part 4) + 71e35b1: Remote: Use parameters instead of thread-local storage to provide tracing metadata. (Part 5) + 32fc451: Write/QueryWriteStatus logging refinement/addition + 97963c5: Remote: gRPC load balancing. (Part 1) + e2b9a42: Remote: gRPC load balancing. (Part 2) + 6667ad7: Remote: gRPC load balancing. (Part 3) + 7c081eb: Remote: gRPC load balancing. (Part 4) + 17afbe4: Implement getMessage for BulkTransferException + a6293b3: Remote: gRPC load balancing. (Part 5) + 7a62c2d: Remote: Add interoperability between Rx and ListenableFuture. + 1fcb18a: Update to latest remote-execution proto + dad9630: Set Platform on Action not just Command + 6c5a3ee: Remote: Add AsyncTaskCache which is used to deduplicate task executions and cache the results. + 9d0c732: Remote: Use AsyncTaskCache inside RemoteActionInputFetcher. + f54fe07: Add --experimental_repository_disable_download to allow users disable download for external repos + b243584: Report errors parsing rewriter config file + 63bc1c7: Downloader rewriter config has all_blocked_message + 495ac92: Allow UrlRewriter to change protocol, i.e. https->http, and http->https + 8dbbde0: Allow overriding the hostname and instance name in bytestream:// URIs + 0881c80: Don't set requestId on non-multiplex requests. + e3b7e17: When generating a symlink in _virtual_includes, add the original header to the 'allowed to use' set too + f8f66f3: Make SimpleLogHandler not swallow interrupts. + f8606e5: linux-sandbox: don't assume -lrt, -D__STDC_FORMAT_MACROS + dac0d40: Improve "Common Attributes" section + a607d9d: Never create more than one process per WorkerMultiplexer. + 80c03ef: Move sending requests and reading responses for multiplex workers into separate subthreads. + 003cfcd: Allow use of JSON protocol in multiplex workers. + 308bce3: Actively kill off still-active workers when stopping work on interrupt. + 8959dff: Add sanitizer support to Apple platforms + 32f16e9: Fix a Google-internal broken link. + c9e2be5: Add SHA-1 to subresource integrity format for download() checksums + 3b3e642: Remove fallback strategy support for workers, add flag for it in sandbox. + 3457f2a: Update to java_tools javac11 10.6 (bazelbuild#13245) + 4928295: Allow .S files in C++ Starlark cc_common.compile. + 1b18d65: Automatic code cleanup. + b5d6c38: Change short output of worker type to have the same logic as the worker creation for sandboxing vs. multiplex. + e7a0a71: More properly destroy workers on interrupt. + 7056711: Make WorkRequestHandler do a GC after some amount of CPU time has been used on requests. For Bazel and Blaze, defaults to 10s based on benchmarking. + 596653d: Allow tree artifacts to be source or header inputs to cc_common.compile() + 055c93d: Switch to path autocompletion after -- for bazel run commands. + 807f2a1: Fix Incompatible Target Skipping for test args + 9a5cd85: Fix order of build request id and command id + 706f5ac: Fix bazel crash when passing config_setting to target_compatible_with + 61da1d2: Support multiple --bazelrc on command line + 5593358: Update ConfiguredTargetFunction.computeUnloadedToolchainContexts to + 662cf54: Remote: Fix an issue that a failed action could lead to RuntimeException caused by InterruptedException thrown when acquiring gRPC connections. bazelbuild#13239 + a3a1763: Pass more `--add-exports=` flags + d2b9428: Remote: Fixed a bug that remote cache is missed due to executable bit is changed + 616dc26: Fix Bazel Coverage with C++ to work with Remote Execution + 5f40d12: Fix external_path_test with newer Xcode versions. + b416193: Allow using embedded tools in sandboxed spawn runners. + eb762d4: Fix racy write of temporary files while staging virtual inputs for the sandbox. + f31e867: Update platforms_test to not rely on filegroup not using toolchain + 13031e5: Update SkyframeTests to not rely on filegroup not using toolchain + 1165182: Update ConfigurableAttributesTest to not rely on filegroup not using … + 4b68532: Make WorkerExecRoot not be a subclass of SandboxedSpawn. + 31db460: Make WorkerExecRoot not be re-created on each createFileSystem() call. Preparation for holding a map of existing links, but also just nicer. + a2cc046: Start the file existence check traversal from the execroot base instead of execroot so that external repo files at "<execroot>/../<path>" are correctly handled when the sibling repository layout is enabled. + b048282: Use readdir for cleanExisting in WorkerExecRoot. + 270f00d: Add native support for Apple Silicon + 8e56b94: Explicitly state that embedding macOS OpenJDK is for x86_64 + 09c621e: Remote: Fix a race that AsyncTaskCache#Execution could be reused after disposed which results in CancellationException("disposed") propagated to downstream. + 0299cd7: Remove wrapped_clang params files after use + 47edc57: Silence swiftmodule timestamp warnings + f6e1074: Remote: Use shutdownNow() instead of shutdown() in ChannelConnection#close() as a workaround to a gRPC bug. + 71be4ea: And mnemonic and label to remote metadata + 6d28486: Change `set -x` in coverage to be set by var + 9b9de65: Bump minimal JDK install base maximum size from 290 to 295 MB. + 9e7e592: Remote: Check the return value of ActionOwner.getLabel() since it could be `null`. + 14abe4f: Allow `DiffAwareness` to share precomputed information about the workspace and propagate it to the `WorkspaceStatusAction`. + 082d987: Implement available() method for Windows subprocesses. + c2bdd03: Move --repo_env to common options + e09f274: Revert "Documentation for bazelbuild#13110" + a165baa: Revert "Clean up RuleContext to use a Table instead of a Map of Maps." + 51fb9e1: Revert "Support execution constraints per exec group" + cb6e5c2: Revert "Allow exec groups to inherit from the rule or other exec groups." Important changes: - Multiplex persistent workers can now use the JSON protocol. This release contains contributions from many people at Google, as well as Alex Eagle, Austin Schuh, Benjamin Peterson, Cristian Hancila, Daniel Wagner-Hall, Denys Kurylenko, Ed Schouten, Finn Ball, George Gensure, Keith Smiley, Lauri Peltonen, Philipp Schrader, Ryan Beasley, Thi Doan, Timothy Klim, Ulf Adams, Vaidas Pilkauskas, wisechengyi, Xavier Bonaventura, Yannic Bonenberger, Yuval Kaplan, Yuval.
Release 4.0.0 (2021-01-21) Baseline: 37a429a Cherry picks: + a689d67: Use getRunfilesPath for run_under executable path generation. getRootRelativePath doesn't return a valid runfiles path for external source files anymore after the recent external source root change. Also, it won't work for external labels either once the --nolegacy_external_runfiles becomes default. This fixes issue bazelbuild#12545. + d90ec67: Fix NPE when coveragerunner is not set on the toolchain. + 8555789: Fix the classic query package-loading cutoff optimization with external workspaces. + d113d74: Update turbine + 1489f0f: Support Scala3 .tasty files + 0d2d95c: Update to java_tools javac11 release 10.5 (bazelbuild#12647) + a9419f3: Fix common prefix for instrumentation filter + 84fadcf: Fix builds for filegroup targets with incompatible dependencies + e43825d: Revert "Remove --incompatible_blacklisted_protos_requires_proto_info" + 082d58d: Transform roots along with paths during output deletion. + e8835c1: AttributeContainer.Large now handles more than 127 attributes. + e1e8734: Add an env attribute to all test and binary rule classes + a87d7ed: Take no action to prefetch empty artifacts. + 3e969ff: Fix a couple of bugs with Incompatible Target Skipping + e667082: Pass --host_action_env to host options hostActionEnvironment attribute + 07400c0: Add --{no,}autodetect_server_javabase. + c833660: Only treat "env" and "env_inherit" attrs specially for native rules + 6a60b30: Fix coverage support when using default_java_toolchain. (bazelbuild#12801) + 4158a6f: Revert JacocoCoverage target to remote_java_tools_java_import and add a new target for remore_java_tools_filegroup. (bazelbuild#12813) + f6d30cf: Add windows_msvc back to conditions in bazel_tools. New features: - Starlark-defined flags can now be shorthanded using --flag_alias. Important changes: - Add --starlark:file option. This adds a capability to the (cquery)[https://docs.bazel.build/versions/master/cquery.html] feature in `--output=starlark` mode so that the expression to format output may be specified in a file. - Error messages emitted when an action fails are reworked to be more informative about the failing action. Some tooling may have to be updated as a result. - Querying with output=location now allows the relative_locations flag to properly display relative locations instead of the full path. Fixes bazelbuild#3497. - --flag_alias can now be used without --experimental_enable_flag_alias - Remove no-op `--deep_execroot` flag - The BEP uses `AbortReason.OUT_OF_MEMORY` for abort events when the build tool is crashing due to OOM. - Added flag `incompatible_display_source_file_location` for `blaze query location=output` to print the location of line 1 of the actual source files instead of the source file targets. Provides a solution to bazelbuild#8900. - The Starlark json module is now available. Use json.encode(x) to encode a Starlark value as JSON. struct.to_json(x) is deprecated and will be disabled by the --incompatible_struct_has_no_methods flag. - The flag `--incompatible_objc_compile_info_migration` is enabled by default. See bazelbuild#10854. - The flag `--incompatible_objc_provider_remove_compile_info` is enabled by default. See bazelbuild#11359. - Add `relative_ast_path` feature for darwin builds to relativize swiftmodule paths for debugging - Use proto.encode_text(x) to encode a Starlark value as textproto. struct.to_proto() is deprecated and will be disabled by the --incompatible_struct_has_no_methods flag. Both functions now reject list/dict fields that contain list/dict elements. - Add --starlark:file option. This adds a capability to the (cquery)[https://docs.bazel.build/versions/master/cquery.html] feature in `--output=starlark` mode so that the expression to format output may be specified in a file. See [Configured Query Starlark Output](//docs.google.com/document/d/1kL6Tdmp6uLBa9lq_DbUSjIC87glO zKIyPoBeF95Rs4c/edit) - Flipped --incompatble_proto_output_v2 for aquery. - The --incompatible_load_java_rules_from_bzl flag is now a no-op. - The --incompatible_load_proto_rules_from_bzl flag is now a no-op. - Flipped --incompatible_force_strict_header_check_from_starlark - --incompatible_string_replace_count is flipped and removed (bazelbuild#11244) - Bazel skips incompatible targets based on target platform and `target_compatible_with` contents. See https://docs.bazel.build/versions/master/platforms.html for more details. - Bazel returns exit code 36 (rather than 1) if it fails to start a subprocess in a local sandbox due to environmental issues, for example, if the argument list is too long. - //tools/build_defs/pkg:pkg_rpm is no longer built in to Bazel. See bazelbuild#11218 for instructions on how to migrate to the replacement. - Javac now supports multiplex workers. - The `--default_ios_provisioning_profile` flag has been removed (it was a no-op). - Add support for using AndroidX dependencies in data-binding-enabled targets. - Fix data-binding generation for android_local_test. - Enable debug_prefix_map_pwd_is_dot feature by default on macOS, this passes `-fdebug-prefix-map=$PWD=.` for every compile to remove absolute paths from debug info. - --incompatible_run_shell_command_string is enabled by default (bazelbuild#5903) - py_binary now tolerates package paths that contain hyphens ('-'). Note that such paths might not be importable from within Python code. - C++ Starlark API requires linker_inputs wrapping library_to_link. bazelbuild#10860 - Toolchain rule is extended with target_settings attribute. - --incompatible_restrict_string_escapes=true is now the default. Unnecessary backslashes such as "\." in string literals are now an error, instead of being silently treated as "\\.". To fix the error while preserving behavior, double the backlash. However, the error is often a sign that the original code was wrong. - Propagate instrumented files for transitive sources of `android_library` and `android_binary` - --local_resources and --incompatible_remove_local_resources have been removed. If you've been setting --local resources or --incompatible_remove_local_resources=false, you must migrate to using --local_ram_resources and --local_cpu_resources instead. - Update rules_cc to commit b1c40e1de81913a3c40e5948f78719c28152486d - --incompatible_avoid_conflict_dlls=true is now the default. - Dynamic execution now uses the new scheduler by default. - Dynamic execution now uses the new scheduler by default. - The new dynamic scheduler is now the default. This release contains contributions from many people at Google, as well as Adam Liddell, Akira Baruah, Alexander Grund, Alex Eagle, Andrew Z Allen, Austin Schuh, Benjamin Peterson, Benson Muite, Brentley Jones, Cristian Hancila, Dan Halperin, Daniel Wagner-Hall, Dmitry Ivankov, Dmitry Ivankov, erenon, Eric Cousineau, Greg Estren, Gregor Jasny, Grzegorz Lukasik, Grzegorz Lukasik, hollste, Joe Lencioni, johnjbarton, Jonathan Perry, Jonathon Belotti, Keith Smiley, Kevin Gessner, Matt Davis, Matt Mackay, Menny Even Danan, Neeraj Gupta, Philipp Schrader, Ricardo Delfin, Ryan Beasley, Samuel Giddins, Simon Bjorklen, Simon Stewart, Stiopa Koltsov, Thi Doan, ThomasCJY, Timothy Klim, Tom de Goede, vectoralpha, V Vn Ngha, William A Rowe Jr, Xavier Bonaventura, Yannic Bonenberger, Yannic.
Release 3.7.2 (2020-12-17) Baseline: a991db7 Cherry picks: + 0d14ec8: Release 3.7.0 (2020-10-20) + d563446: Add `-XDcompilePolicy=simple` to default javacopts + 6336264: Update rules_cc reference to head of rules_cc as of 2020-11-11. + b3f9346: Bump rules_cc to support llvm 11.0.0 clang-cl compiler on Windows + e055b43: Remove accidentally re-added tools/jdk/java_toolchain_default.bzl. + 02838a1: Avoid the spawn cache if executing dynamically. + d0efd7b: Release 3.7.1 (2020-11-24) + a689d67: Use getRunfilesPath for run_under executable path generation. getRootRelativePath doesn't return a valid runfiles path for external source files anymore after the recent external source root change. Also, it won't work for external labels either once the --nolegacy_external_runfiles becomes default. This fixes issue bazelbuild#12545. Important changes: - Update rules_cc to commit b1c40e1de81913a3c40e5948f78719c28152486d This release contains contributions from many people at Google, as well as William A Rowe Jr.
Release 3.7.1 (2020-11-24) Baseline: a991db7 Cherry picks: + 0d14ec8: Release 3.7.0 (2020-10-20) + d563446: Add `-XDcompilePolicy=simple` to default javacopts + 6336264: Update rules_cc reference to head of rules_cc as of 2020-11-11. + b3f9346: Bump rules_cc to support llvm 11.0.0 clang-cl compiler on Windows + e055b43: Remove accidentally re-added tools/jdk/java_toolchain_default.bzl. + 02838a1: Avoid the spawn cache if executing dynamically. Important changes: - Update rules_cc to commit b1c40e1de81913a3c40e5948f78719c28152486d This release contains contributions from many people at Google, as well as William A Rowe Jr.
Release 3.7.0 (2020-10-20) Baseline: a991db7 Incompatible changes: - The syntax //foo/BUILD can no longer be used on the command line to refer to the //foo:BUILD target. Use //foo:BUILD (preferred) or foo/BUILD instead. This does not affect BUILD/bzl files, where that syntax already didn't work. - This removes `--objc_header_scanner_tool`. The flag was primarily used internally, and to our knowledge, a compatible tool was never released. Therefore this flag is believed to be unused. New features: - select() directly supports constraint_value (no need for an intermediate config_setting). Important changes: - Non-android targets can again be built when android_sdk_repository is present but invalid. - Add a build variable for -install_name / -soname. - Add a build variable for -install_name / -soname. - Include "resources" attr in dependency attributes for java_* coverage configuration. - --trim_test_configuration should work for almost all cases when a non-test target depends on a test. - Javac now supports multiplex workers. - Javac now supports multiplex workers. - Blaze now allows symbolic links that point to their own ancestor unless they are traversed recursively by e.g. a //... recursive target pattern or a recursive glob. - Blaze now allows symbolic links that point to their own ancestor unless they are traversed recursively by e.g. a //... recursive target pattern or a recursive glob. - Blaze now allows symbolic links that point to their own ancestor unless they are traversed recursively by e.g. a //... recursive target pattern or a recursive glob. - Generated Go protobufs no longer depend on //net/proto2/go:proto This release contains contributions from many people at Google, as well as Benjamin Peterson, Cristian Hancila, Ed Schouten, Fredrik Medley, Greg Estren, jgehw, Jin, Kalle Johansson, Keith Smiley, Kseniia Vasilchuk, Michael Eisel, Michael Hackner, Michael Krasnyk, Mostyn Bramley-Moore, Ruixin Bao, Samuel Giddins, Simon Stewart, Torgil Svensson, Ulf Adams, Vasilios Pantazopoulos, Wenyu Zhang, Yannic Bonenberger, yoav-steinberg.
Release 3.6.0 (2020-10-06) Baseline: aa0d97c Cherry picks: + 32c88da: Patch RuleContext for android_binary.deps to restore legacy behavior. + db9fc88: android_test also needs the legacy behavior in RuleContext.getPrerequisites. + 144d514: Update android_sdk_repository to create a valid, but useless, repository + bb11f92: Patch upb to fix build error with gcc 10 + 9f06be4: Patch upb to fix build error with gcc 10 (third_party) + b67b75e: Fix issue where libtool_check_unique isn't found for sandbox builds Incompatible changes: - `--experimental_ui_limit_console_output` is removed. Users of `--experimental_ui_limit_console_output=1` for silencing terminal output should use `--ui_event_filters=` instead. - --proto:instantiation_stack must be enabled in addition to --record_rule_instantiation_callstack to see call stack in proto output from blaze query. New features: - cc_common.compile support for include_prefix/strip_include_prefix - Multiplexed persistent workers: Use --experimental_worker_max_multiplex_instances to configure the number of WorkRequests that are sent concurrently to one worker process. The --worker_max_instances flag will no longer be used to determine max instances for multiplex workers, since the two have different resource requirements. Multiplex workers will by default have a max instances of 8. Important changes: - The prelude file (//tools/build_rules:prelude_bazel) is now processed as a Starlark module, rather than being sourced into the BUILD file textually. This may cause slight breakages depending on the content of the prelude file. (Use of the prelude file is discouraged as it will be removed in the long term.) - Removed --experimental_ignore_deprecated_instrumentation_spec and cleaned up the old deprecated behavior. - Added CODEBASE.md, a description of the Bazel codebase. - Removed the flag --experimental_transparent_compression. - Removed the flag --experimental_action_args. - Stop needlessly parsing WORKSPACE files from external repositories. - Dot ('.') is now allowed in workspace names. See bazelbuild#11837. - This change can cause memory and performance regressions for some builds with C++ dependencies, due to extra actions being executed. RELNOTES: None - Building Android apps for legacy multi-dex (pre-L) now require a main-dex list if the application does not fit into a single DEX file. - Puts the experimental_worker_multiplex flag to use. - In Starlark, the Args object supports a new parameter file format 'flag_per_line', compatible with the Abseil flags library. - The flag --incompatible_no_support_tools_in_action_inputs is removed. - Support for NDK 21 added - Bazel will now skip printing action stdout/stderr contents if they exceed --experimental_ui_max_stdouterr_memory_bytes. - The Starlark interpreter now correctly emits an error if the operand of the first loop in a list comprehension refers to a variable bound by a later loop, such as y in this example: [e1 for x in f(y) in e2 for y in e3] # error: undefined y ^ This may cause latent dynamic errors to become static errors. - Added support for a 'supports-graceful-termination' execution requirement and tag, which causes Bazel to send a SIGTERM to any tagged actions before sending a delayed SIGKILL. This is to give actions, and more specifically tests, a chance to clean up after themselves. - Non-android targets can again be built when android_sdk_repository is present but invalid. This release contains contributions from many people at Google, as well as Benjamin Peterson, Daniel Wagner-Hall, Dave MacLachlan, David Ostrovsky, Emil Kattainen, George Gensure, Greg Estren, Keith Smiley, mai12, Mai Hussien, Michael Eisel, Per Halvor Tryggeseth, Ruixin Bao, Samuel Giddins, Steeve Morin, Thi Doan, Tom de Goede, Ulf Adams, Zhongpeng Lin.
Release 3.5.1 (2020-10-01) Baseline: 889bc0b Cherry picks: + a7a0d48: Make no-op starlark transition not affect the output directory. + b37c51c: Add include_prefix and strip_include_prefix to cc_common.compile + f6ad35f: Delete --experimental_transparent_compression + 39bc97e: Remove --experimental_action_args + b970667: Stop needlessly parsing WORKSPACE files from external repositories. + e574d55: Allow hyphen char in workspace name + 9993785: Allow dot ('.') in workspace names. + b3ac8f6: Patch upb to fix build error with gcc 10 + 26cbf77: Patch upb to fix build error with gcc 10 (third_party) + f1f9411: Fix incorrect rule class digest when creating rules through macros. + 6b591a7: Prepare for bazel to run with shrunken r8.jar + 7a11752: Don't run DexFileMergerTest as it is not supported for all r8.jar's New features: - cc_common.compile support for include_prefix/strip_include_prefix Important changes: - Removed the flag --experimental_transparent_compression. - Removed the flag --experimental_action_args. - Stop needlessly parsing WORKSPACE files from external repositories. - Dot ('.') is now allowed in workspace names. See bazelbuild#11837. This release contains contributions from many people at Google, as well as David Ostrovsky.
PreviousNext