Release 0.23.0rc2 (2019-02-14)
Baseline: 9137fb940886aa516f32ca8a36feccedb545c99b
Cherry picks:
- dc64a068b11b8d7fafc93b03f55b9e1db520620a: Fix cc_toolchain docs
- 292f90988b667e0eab57e16f0d6ee37a86fd13e5: Don't enable action_configs by default
- a01cbe234986e7e1d822fdb6c08914d14ef5d2c7: BES/BEP interrupt audit: - don't leak BES uploading between builds on interrupt - don't crash on timeout
- f451b79d1e215bf0c87e1d3b84e0e587f55cf26b: Add missing ObjC related action names to action_names.bzl.
- 657025e01a4b5ec77955eca2529b8b2ca670faf2: Don't necessarily crash on a missing dep. Instead, pass it to the inconsistency receiver, for better stability while we debug. We should be able to recover from this situation reasonably gracefully.
- 3afb7b0d8a947937c2e933f63120d12eb67ef383: Add new flag --remote_default_platform_properties.
- 94078453f8f13a124e72d18093a5518ddc9fe9b3: Split Python integration test suites
- a87c45f4745f197b741cc75171e41f459d6075dc: Implement deferred srcs_version validation
- d271905137ecb64f3d17e2ea16e612398364fb13: Change PathFragmentListConverter to return an ImmutableList, because why not.
- 919955c630afc298be536236e801b76165333ab8: Replace BazelPythonStarlarkApiTest with PythonStarlarkApiTest
- 199368ca895c00e38b88ba225ade5e91661186d0: Have Preconditions check more verbose
- 875917c46c5385153a6c674334a0cf10b4040129: Automated rollback of commit d7e497a175e17498344f90c06ebe529e7bac1937.
- 1d4bc5f6a1c23a33ede973f44fca6ae6186c5a45: Automated rollback of commit 0b66fdcc78323a7a9c7cf32bb97ec67761b51ea6.
- b043525fe5a296a76bd3f70a56db65609bb0187b: Automated rollback of commit 56f2b2bbae39d432609afa210db97d6c5669319a.
- 00eaad43c1358382d1edbaf845116c69b38812f8: Don't allow enable dynamic linking of the test's own code when the test sets "linkstatic = 1".
- f147608f1d937830287b158920430299e3439215: Encapsulate all action names in a struct
- 399d0ec5b16a7fa024b6b7883983bd3d1779797e: Automatic code cleanup.
- 5bd144766eaa0d017fdcd26c1233f9ba5d70e73d: Add BUILD.pkg for third_party/java/java_tools.
- f4c4e074fe2e1cd7a18671f8692fb091459c7720: Automatic code cleanup.
- 22d375bd532b04bb83f18a7770e5080e23a1d517: Add incompatible flags for using the remote Java tools for the default java_toolchain and host_java_toolchain.
- 29235b023133fa51d5d1017eb44c4b1da8978ed2: remote: fix callside with incorrect path construction
- c07f559d3067970927e6fe43cbf685b74d665614: Automatic code cleanup.
- 716e4e3e1412d9e7ba1dbb29e382251bfe5ffb4c: remote: refactor the code to make dead code obvious
- a89c7ef616b2a9fe18afadd99690691d00b7326f: Consult BAZEL_CXXOPTS when auto-detecting local CC toolchain.
- 0d98e88f885ff46372bb9a65b3f13149077ecfbc: Only delete test.xml.log, not test.log
- bb1c2a13be881b80154e558709923c0e0c31c7e9: Do not upload artifacts from the local execution of no-cache spawns.
- 258f2b42eedced0e0c6218d830e15a2c1ac1d9d5: Avoid Perl dependency in test-setup.sh
- 5473a8c3c5219054f3c1c81e9ff0314316b13a05: Support --test_filter for our own shell unit tests
- 6f5d4b865fcd30119e5fa9c3cc2bdd44a479a8b7: Always use output redirection in LocalSpawnRunner
- 47cca2ed7d2058dba3a36e3bebb677976686ec0f: Add --host_compiler option to enable specifying a compiler for host compilation when --host_crosstool_top is used
- b51dd374b6c373c1deb0e873911bcd7594f57822: Fix LocalConfigPlatformFunctionTest to not change the value of OS.
- c612d053afb16428865cc48e5bf71d257da8ee74: Check that all entries for previously registered new deps are in the graph.
- e65f3a8ee2405854e6b6b62d6c318289e7d3c059: Clarify comments concerning output artifact data, remove index check
- 3e727b19ee5b44162f5548aa01599256f3602715: C++: Deletes CcLinkingInfo
- 31dc0a7fda79fe49d870d6d472b74b6b0f7e3e82: Don't error out if CROSSTOOL doesn't exist when CcToolchainConfigInfo comes from Starlark
- 3e1ee470884345c2889436e09d651c2d8f4d3e91: Do not enable --start-lib/--end-lib in cc_configure when not supported
- 3e6ac9274f604530419c3643d1a39800b05bc1c9: Rename isSkylark to isStarlark.
- 956a40ed1650e623f0c46f973c0f73822a177b9c: Slightly improve ArtifactSkyKey#toString.
- ef85695169b682f644a89fc8c8ecc1e5630ce493: Fix NullPointerException when resolved toolchain has no ToolchainInfo.
- 5c5baf9bfb6654b428b92efdbd591c34676e474d: Add "darwin" to the list of valid macOS architectures
- d791344a7743ac9955139a92eb44b72659cee3bd: Avoid unnecessary collection copy in NestedSetBuiler.wrap
- af77a3005e594c7263158f5b83614b2deee6c64b: Make --experimental_remove_old_python_version_api not breaking existing_rules()
- cc7a4daef70a13e490b38d64c7f5c85a1e6cf518: Enable --incompatible_expand_directories by default.
- 8c1ff91e1ea30a875f3f7d21613a1e47f199825f: Fix JavaInfo to correctly inherit plugins
- cae1e816e5e1142fbd4aefdd29bffb2cbad71fa8: C++: Fix create_library_to_link API method for Windows
- b5b97e96a13e0d09e0ba2a7b1d7a1a7e18d5892a: C++: Remove precompiled files from CcCompilationHelper.
- 12ab12e80ad1c9a3510aa4bbfdf3fddafc0bca00: Revert "Enabling Bazel to generate input symlinks as defined by RE AP?
- 22cdcc556a76757b659f7f40437300bac09b644e: Fix blaze query with BEP: Make sure we always post the completion message, even on failure.
- ed99017be6c26047d843a7fef12094ae7f520836: [aquery] Handle the case of aspect-on-aspect.
- 6345c747d8cb1819e70c853becadbf8a989decf1: Automated rollback of commit 30536baa4a410d8c0a7adab5cd58cd8a2ac7e46c.
- 483f20a1631ed95311b1b1b58fcf7bd6e6ecd39f: remote: warning is not an error
- 3a91453a34ae8a87970ab4f31031ffcf792562ba: Automated rollback of commit bb1c2a13be881b80154e558709923c0e0c31c7e9.
- 7ce20e4db48c1b6074f974361b3aef13d50e8429: Hook legacy_fields_migrator as a last step of crosstool generation
- 432b253d9a2afa4feb76c82dfba875516fd481e5: Modify SkyQueryEnvironment#evalTargetPatternKey to take into account the filtering policy specified in the TargetPatternKey. Add a TargetExcludingFilteringPolicy that can filter multiple single targets Allow for TargetPatternValue.combineTargetsBelowDirectoryWithNegativePatter ns the option of excluding single targets. Improve toString of some filtering policies.
- 6aff50775accec6bf644e0e2e8f9a7839ebd6024: Audit the codebase for more bugs like the recently-fixed one with EnvironmentBackedRecursivePackageProvider.
- fee8ccf8840f3aa8d53404fd54fdbba254facfbe: Fix suggestion to recover from bad Xcode detection.
- 0eee6f751e0d6b9a910799ff23c98f592028470d: remote: quit early if no remote options specified
- 285c03e5e60b31cd4a73a707f47fabab6688ae96: remote: fix timeout for http blob store
- bb13c9f886a1153a84da75794184a81722196def: Enable --incompatible_use_jdk10_as_host_javabase by default
- f34ad0edf89307ea000ee32036736f75f166c160: RELNOTES: Add --incompatible_use_jdk11_as_host_javabase: makes JDK 11 the default --host_javabase for remote jdk (https://github.com/bazelbuild/bazel/issues/7219)
- 0f005371b1a2750e0c1d4a1cf071ae9cfdbf2038: Add cycle reporter to handle the case where a non-toolchain is passed?
- 8230512c525b07d2ca08aee09ee7e53b47773464: Automatic code cleanup.
- 156b1f60db0cff2f2797601836742d6f916c72aa: Add documentation for how aquery handle aspect-on-aspect.
- 4366b4886ee908164b2b063e144f0d5edebda14f: [#7225] Highlight TreeArtifact in text output.
- 05455a02d233464917f5d63938f44722e347c7e8: remote: update remote_execution.proto to latest
- 004bcb406587df5fadd503eff1832b3924d023fd: Update bootstrap documentation to include
--host_javabase
- e21326977aa00b8db517aa4d9f9da6aa383ba097: remote: print server provided message on failed action. Closes #6591
- b2cb640454206b9d3d3a04a9c093833d08933ea5: Allow the coverage report factory EventBus access
- 0be35de2cc9f4bfa3d157a90881dbc1d2aa11244: Don't require supports_fission to be set in the crosstool
- 84aaca1766a954431ca9d5d4f104233fe4dbea95: Windows: all JNI methods verify their path arg.
- f21ca8ad99d0f0048af21ccf31c18bbb808336f3: Windows: native launcher can run from a long path
- f157053af61ef1f72335dd144e40bf65d4e3c40e: Do not upload artifacts from the local execution of no-cache spawns.
- 30dd8715847e4c797cd28da13e14eab7721b518d: Respect the max open files set by the Blaze client in the server.
- 52446a12b7435e850347dda144566280625cf498: Starlark: implement ctx.resolve_tools
- a5611e72ddb4256bd6c382e46b2eceba833f759d: Tolerate cancellation on file uploads: Cancellation from one transport may be visible in another transport. This should only happen during shutdown sequence, and should not be treated as an unexpected failure.
- 18cf853caf612b34c25c42b5f936956237b08ef9: remove unused dependencies
- 8125da57461d2ac4af10b0381e1b5252603ed108: add infra to provide authentication headers to blaze modules
- 1532df0e5d1978e885879f872e4128c1deb59964: Remove RetryException.
- 55516c7a8fa37b86bfb8626e4d6315338b076dae: Avoid suppressing warnings around unchecked cast
- 564f7d288e02bcae392a0a9f0517517c3532ada2: Clean up sandbox scratch directories as we go.
- 125f2c5fbf4d5bfeab8d6f13b28d81425ec18846: Add a tools/jdk:remote_jdk11 target
- 5071011e547b62fcf57922d1ca05b8200ee0c197: remote: verify hash of download blobs. fixes #7169
- 4ab62cbaccdd46f20619ba68eb34d19db22e5f74: Update documentation to indicate that ProtoInfo should be used instead of the legacy .proto. provider.
- c00cc2b52b0b480c9b109ff4b1ae50b303caa7ad: Add extra link inputs and linkopts to the Starlark Apple Linking API.
- 0d5b63160dabed3de698f2189a30319dd388a975: Make "local" actions uncachable by the RemoteSpawnCache.
- 497407c6018813e4ed558a55a5b77a2c4af7c889: Rename the PyProvider helper class to PyStructUtils
- 568a2c9d8ce94e86a74dcc83feb39394a85cbf7f: Push srcs filegroup definition down to subpackage
- 3428baec77f4ba42ad1e63f20d67308734883d4b: Remove unnecessary SandboxTestCase base class.
- f07c36d95d077756b626082cd433f9dcc6703846: Make provider extraction logic around JavaInfo more consistent.
- c1efeb61867e393818e8ff9543fb3381055d77d9: Only return SkylarkValue actions in target.actions
- 148f7145cc1187290e7b0f7cbd864ee93ec0d6f7: When targeting JDK >= 10, patch the major version so it will be accepted by javac 9
- 50dfd731e0919868d0ec45fee3c164ffd20ac34a: Refactor moveOutputs out of the SandboxedSpawn interface.
- 14c1793e28ae51807953f701c0a016154bd547b4: Move depset order validation from PyCommon to PyStructUtils
- 4b3725e1a8d71173e0c8d9864d09ece8affac80b: Add helper for abstracting over Python provider representation and defaults
- 1fcf614ba5793c647c931050397c40e618560172: Add the ability to sort manifests by root-relative path instead of full paths.
- e42913a337601ff345ba95cd28ae4cf3b69bee64: Mention that blaze run doesn't run in PWD.
- 029601e18584ea0514b4c1f0d3eb9c3324ea24d6: Add an aspect to @bazel_tools for debugging bad Python dependencies
- 584b266650688bab9dcfe33f89a4618caec03b50: Rewrite Retrier.executeAsync to use Guava future chaining.
- 4f48981dbe5b9e432bd39f92155228769467f60b: Automatic code cleanup.
- 0d708411be5eaad7ac43aebc1c20eccff288c507: remote: don't hash twice when verifying download integrity
- 9daf900ac424ed31bb2aa180bb425c1bbbdabb34: Handling exceptions from test runner for graceful termination
- 907ca4aec3fce97984cb2bdb84584b99c832857e: Un-AutoCodec AspectValue, BuildInfoCollectionValue, and WorkspaceStatusValue. DynamicCodec is fine for them.
- 6d19f36639a6f0423671de36ff567f48fa5e56fc: Store invocation_policy as std::string instead of raw pointer.
- 6b96ff7cf2bd1037fdc53996f455569aab739e52: Replace --noclasspath fallback with an enum-backed --reduce_classpath_mode.
- d3dd9d1b3cd238467143becb8665ea252fda8e0d: Convert MethodLibrary's SkylarkSignature methods to SkylarkCallable
- e1cabfd48a162df40072a959c5a13afe81b1571e: Remove various skydoc deps on Bazel internals
- 17716adf48eb2f5c15cd039c966006cf7d074361: Automatic code cleanup.
- dcdafece8a36fd17490b936b95e18a05a30705ad: Add @androidsdk//:emulator alias
- e88d55f9afeb0a3f2fbfe86cc395a3564207fcb0: Add support for passing JavaToolchainInfo and JavaRuntimeInfo to java_common
- 0b4b402c9007ddf3125bf5b0fed1ad1a70f8c93a: check presence of referenced class literals
- c73ca59a0325efd6c971b190d43b2e33ed174919: Allow exported_plugins without srcs in java_common.compile
- e6a76ed782cbb3e35ecb90a4b3fe890c1354a112: Allow using cc_common.create_cc_toolchain_config_info by default
- f04e6767f290102611688e871b1991a5070c0890: Compute a reduced Java classpath to be executed by JavaBuilder and fall back to a full compilation if that's insufficient.
- 4a6f7081d3e9547fad0035dc3f5a81ae3d0012e9: Add --incompatible_use_toolchain_providers_in_java_common
- 75a751e9a38ca0592c157af084cdc302d405a4dd: Run buildifier over WORKSPACEs
- 8ccbb0f76fe5a67e2072b35e5702b52423e07d99: Remove CcLinkParams.
- 6a97e137a4f61e53591f8b7737b04b841ca04ece: Fix a race in ByteStreamUploader deduplication.
- 81f35663b076a222bf390fae975d9183ec80cb3b: remote: add --remote_verify_downloads
- 2f82b33b06e0ca493c00603491a4ef766b3bf175: Release 0.22.0 (2019-01-28)
- bac30fed28ddc380b181fa9c9b90d3742fb07627: remote: don't upload failed action outputs. Fixes #7232
- cb59bd26dd5886b9c05aca7edb7d6431a63ac48b: CHANGELOG.md: curated release notes for 0.22.0
- f8768306766429bf41ec8a61777beab216c2e62d: Prevent make_hashed_objlist from writing into undeclared locations.
- 850394adc8619ffab88aed11390da6bd5c675a60: Enable --incompatible_strict_argument_ordering by default
- 4fdfd595342261c473096a308970d590ee73b0bf: Automatic code cleanup.
- 1770366a23a23c006e905c19ff5e6105229197d6: Vendor jaxb library in our third_party.
- be9fd1b648b2d147b5cc3ae66ac2deedaa81fa55: Split up parts of https://github.com/bazelbuild/bazel/pull/7240
- 49d98000f8fcaba170a3861dba320bc841fbecb6: Add small amount of debugging when critical path component not found.
- 288a69239415ee424ec493f9af028e69734eab91: Ignore failure during touchFile on a cached file in the repository cache.
- 8d5b8016d0952c0eef44f2029acde95146e617cf: Use the version as a "fingerprint" when calculating dep fingerprints if a value doesn't have a fingerprint of its own. Since two evaluations of a node at the same version should yield the same result, the version should be a reliable (if conservative) fingerprint when the node value does not have a fingerprint of its own.
- fb8cad838372816032a05da32279b1ef854708e9: Pass macOS version min flag in osx CROSSTOOL
- a4b2d053661f263d0d3ca6c6ecb2ef114659d8ee: generate_versioned_docs.sh: do not depend on convenience symlinks
- f3e99412bbc7e0eff5e3e37734f255e4fd9054cf: Dedupe ImmutableLists created for attribute values at the Starlark -> Blaze barrier during BUILD file evaluation.
- 8abb430fa4f1f77af9304ee0dc7c98feee8b67e6: Fold BazelCrashUtils.java into BugReport.java. There's no need to have both of these.
- b0703d7d7d5cf963c776c0039b6c769bdd45dbf3: Do not create writable directory trees for input files.
- d24074d3b2654da904c5cff83be6cd09c5be629a: Implement equality for LibraryToLinkWrapper (transitively). Tighten some types and make non-null assertions so it's clear the implementation is correct. As a side effect, stop creating a new LtoCompilationContext every time: non LTO builds can all share the same empty context.
- 209847415ac251d0b73e98e705bcb1a411490a2e: Fix crash when a command-line aspect depends on a cycle.
- 973c4e7406a7d397f796414cdbc54dd7e082b68d: Automated rollback of commit d3dd9d1b3cd238467143becb8665ea252fda8e0d.
- f9c0f6fb0c4cb355dbe9373913e11ccbaf1d8b8e: Add arm64e to Bazel OSX CROSSTOOL.
- 8604c6a84bdce88a74c235c0cd45f233ca69880e: rename directories and META-INF/services files along with core library desugaring
- 2bfb470ca2ad7edd42e638afbbfda1ee66b78ec9: Add incompatible flag to enable cc rules to use toolchain resolution.
- fdb17eb11a9cef758544844add21decfd1d32b65: Ignore package-level licenses on config_setting.
- a81bb956c039b6e4d155bc6917873db6a8d4f864: Add a "nonce version" fingerprint to ActionLookupValue, potentially populated for the ActionLookupValues that need it: *ConfiguredTargetValue and AspectValue. These need it because they contain objects that use reference equality for comparisons (notably, CcLinkingParams). Following an idea coming from shahan@.
- d2804e54d828c8c13799fe29c60542665a805960: Add version 0.22.0 to docs
- d71aa27d4d8934c7dc7332e87e71a0c98dc3060a: Reduce the flatting off NestedSets in DeployArchiveBuilder. Ideally we would not need to flatten the NestedSets at all as this is in the analysis phase, but it's difficult to filter things out of a NestedSet. For now, at least don't duplicate flattening the same NestedSet several times.
- 07e6569545f379e43d1cc578e6549db486e0d217: Add a missing newline in third_party/aws-sdk-auth-lite/src/main/java/com/amazonaws/log/Jul LogFactory.java.
- 6d06768414a52c5dda556b3fa9cdeab6a5b7e352: Do not use NestedSetVisitor's custom NestedSet traversal logic when replaying events and postables. Instead, just walk the NestedSet.
- 75edd78ce894dcf5441f60278fd7df49e1901cf2: Format Bazel's WORKSPACE file with Buildifier.
- 31cc09363ef182dcf4f3e9439deb37bd52b810db: Allow using a shared repository cache and install base for our integration tests.
- a87451aaccddeedff42f441d823c0bce79ce0d0f: Add target to build the allmodules JDK from the vanilla JDK.
- 9259683c6b460629d1ca83759ce26fa76839558d: Update turbine
- 6e7ea1c23b28601a773106dea1f3fba6d1c2ecd5: Disable flaky test temporarily.
- 4e6080afae3fa68c6fda3928c8e0ccbceb18a836: Remove unused cc_libraries named "stl".
- 949145ad4d307c5ccfbc4986a27a29b81d67acda: Expose the --incompatible_enable_cc_toolchain_resolution flag to Starlark and update find_cpp_toolchain to use it.
- 52896c2f9b95315247f1d5a1ab8f59fff8463be8: Remove an unnecessary use of java_proto_common.javac_opts
- d42a026e63872efb9f9f3879248ddf4431c65d20: Pass --java_classpath through to header compilation actions
- 265343bb8e8d5a2df02836a30506ce24edf3ce9b: Delete experimental java_proto_common.javac_opts function
- a539293149375850b82dda2b51f38bb440584336: Warn if moving outputs out of the sandbox requires doing file copies.
- a282309f915bca5743257efb6c7a593f566bf5be: Automatic code cleanup.
- 96ca29424d3025ac2c385df32e9d6c6cf132bfc0: Update make variables documentation:
- ddfc430e54ac2b2d9eebb5adf672cbf1318175f2: Introduce PyInfo to replace the legacy "py" struct provider
- 016e217d1bf64147fe5d231a4830e7ab552b5ec9: select() documentation; add config_setting aliasing
- a092b696f0f3639ba00380c1a45d8924a65d7c4d: Make Python rules use new PyInfo provider
- 43de062e8c963316e5cfdf68a1bcdd14f1f84135: Tokenize javopts in java_package_configuration
- ee1107a6ada146666f50aa7e834e9f954153de32: Make inconsistency receiver accept collections of keys
- 5a8be80a6c3b676101d5a30578d18f82fc140a78: Upgrade vanilla JDK to 11.
- 92adff893fbd185269bf734abf4d3b12d3117ebc: Update Java tools
- e10054cd79840deaa3dfa4c44aa0b0a979aa0ffb: Oops, typo fix!
- 15e15c2adcdf599550453180129add48ec939eb6: Move WorkspaceFileValue to the lib.packages directory, since that's where WorkspaceFactory and the rest of its kind are. Also remove an unused method in WorkspaceFactory.
- 37cd5c46b960f2c8f4268150617080b36140f765: Add --check_third_party_targets_have_licenses.
- 4b74ea9a3f81b7ed30562f1689827b5488884c86: Fix bad logic bug.
- f73240e1d65b525d2acc09c190efb158960c558a: C++: Make CcLinkingOutputs use new LibraryToLink API.
- 68ed5134aaa0b3480d2219d60f4db0e498c6476e: Remove some inefficiencies and super-linear behavior from plantSymlinkForest().
- 41f06577569812366a99c047058507da23822727: C++: Fixes crash when user link flags has empty string
- 20281bbc4545bb4f33a7616806f5ebb8caa6171b: Remove obsolete attributes from java_proto_library.
- 92eb003748f6275b61ae6ee50990a0291c9da92c: Add fast paths to PrerequisiteArtifacts.get(). Most often, ruleContext.getPrerequisites() returns 0 or 1 FileProvider instance. In these cases, there is no need to ever create a HashSet for deduplication.
- 3ac794ec8bc4125e6460aa0ede0dbc2c7ccb8d56: Remove test made obsolete by unknown commit
- 01da487173d04315785d9d934707ad92b8f6e247: Typo in args example.
- 8e3b3b1223b10043399b4b57aa4a25e664aa7a85: Add flag to support PyInfo provider migration
- e99973b97c4a820132db5a569af9bd0716bbc551: Add an optional output_source_jar parameter to java_common.compile
- eaff19cb71b8b820550db2a741a3c016d6c03a88: Make two LibraryToLinkWrapperCcLinkingContextLinkOptions value-equal if they have the same contents and were created by the same action owner at the same point in its analysis.
- 6b792a0ef74b2a7c85a172ab35d432e6f90eaf84: Stop using EvaluationBehavior#MAX_CHILD_VERSIONS for normal evaluation. It's vulnerable to an inconsistency in which a node's version drops, because it goes from the graph version (mandated when there's a transient error) to the max of its child versions. That could cause incorrect downstream non-evaluations, since those nodes will not be triggered by this child, whose version has putatively decreased.
- a6d77e930456d722ea1c2d0bb7a6a77b00832f1d: Add an explicit test that duplicate list values of attributes are deduped intra-package during package loading.
- 38872897c5c6783d8210ad804476073d109025fa: Expose --experimental_use_toolchain_resolution_for_java_rules to skylark
- 16e9cead9d022c664cc0fbe53e373be5c77d50bd: Make LibraryToLinkWrapperCcLinkingContextLinkstamps value-equal if they have the same contents.
- 698c91d2f4f5ec873760f641e705e3faa8bf2b60: Updating SingleJarActionBuilder.createSourceJarAction to take NestedSet for sources rather than ImmutableList.
- 4a55d41405be2e579d7e6550193a2ecdd27997ac: Make JavaRuntimeInfo extend ToolchainInfo, and delete JavaRuntimeToolchainInfo
- 29759d0b9fe8fab3b6074343857f570e13e8f874: Add PyInfo migration flag to --all_incompatible_changes
- c1be54b5d5daf8ed2ac17e7f49d297836572e13c: Enable --incompatible_disable_objc_provider_resources by default.
- 158d422ab5e595499466d9e06d79df9e1f3dce67: Automated rollback of commit 20281bbc4545bb4f33a7616806f5ebb8caa6171b.
- 28841a6c4fe303e661041e479f78ed8197a82548: Windows, Bazel client: detect Bash early enough
- 727a07d1fa725ed696614002b3e57c3e476bc113: C++: Remove usages of rule context from CcCompilationHelper
- 9cfc3a20351684346a5bda0b3c86eb72d5e8e612: C++: Remove output groups from CompilationInfo
- a352207beee21d17b4871c96c687e3b6cacca1fc: Update documentation for Python version mechanisms
- 297329ba31f8cf76d7fdf71c3866ed111527581d: Document ActionConstructionContext.
- b9418ee84c084ce898bc7c2c77febfff60fc7566: Update documentation to reference change of unittest.bzl
- fc4c1e795d2b8cdd66a66f4a7600553c4218ac8c: Add Py2/3 mode migration flags to --all_incompatible_changes
- 7d7beedda8841c259b929629f0fcab1f72e5c317: Get rid of #signalDep(). The default version argument makes less sense with non-int versions in play: it depends on the fact that IntVersion.of(Long.MAX_VALUE) is a maximal element in the partial order of versions, but that's not explicitly enforced. Better to pass the graph version explicitly, which also gives us more debugging information about the signaling key as a bonus. Care was taken to pass the actual evaluating version in all cases, although, as implied above, any version that's incompatible with the node's current version is enough to trigger a re-evaluation.
- 144912e7b7a86b45e07f79e76f6fed20890acb36: Use freshly built allmodules JDK for the jdeps test.
- bd81bf0df57e7877454ea20748cd6f14b1f1d5de: Add FakeProtoInfoApiProvider to Stardoc. + Move ProtoInfo into a bootstrap.
- c0e5799fe986cac20efb05ec54f0cee03872273b: Always set a trap for SIGTERM in test-setup.sh
- 4037908524325293a44be0d1b1a0060f706243ba: Skip non-essential cleanup after catastrophic failures in ExecutionTool
- 0b84634f3be1118bdbd501f3d879382d6ae52307: Move discard analysis cache behavior into SkyframeExecutor proper, so that it can be shared by all Skyframe implementations.
- 64f1688833750d16d66108a529fd4b1f0019f143: Tolerate errors during cycle checking a bit more, reporting them instead.
- 984ffa050b6de40b1e46402eaa1a1def44e7e09b: Simplify WorkspaceStatusAction handling
- 9c91a818aef20304f852d7a16a8af19d7022c85a: Use temporary dir for extraction of vanilla JDK on windows.
- 9b1fe14802fbf74c2ad1257d0a614d663d7818bd: Use MultiMap for AqueryActionFilter
- 00680552ba1752e21a926b6591d9b088ed2ab74d: Bump vanilla JDK from 11.0.1 to 11.0.2.
- 90755145cb6e6418584d8603cd5fa9afbb30aecc: Explicitly add jdk.crypto.ec to the list of modules.
- b430df1e0ba5b3ba0378c678dc62029bed711bfb: testenv.sh: Fix wrong path to bazelrc for shared repo caches.
- 8db450f0f21e445a8475f3f143bbf35ada1b4f5f: Fix #7304: Validate that JAVA_HOME points to a JDK.
- 8db50b64b9600e392c3aa4644fdd87b2f2587ba2: RELNOTES: Upgrade the embedded JDK version to 11.0.2.
- 24f573939e27bf4ca2bf9de3f28c93aec9a6f9f7: Delete unused/not working/not documented help rule name functionality.
- 3ef444a9b5b96d5f3335fa7d6a1504b80e53f89d: Delete an unused field
- 71bc38fe2d165fe523b19d7879096d3fdd2086fc: Introduce --incompatible_disable_crosstool_file flag.
- 40c2c7b7e56a3283f20d9b4d880e9d9605dd9476: C++: Fixes crash happening with invalid input
- fc60b3cc4dca8e952ead56158310e9bac23d9a34: j2objc_dead_code_pruner.py: Improve the message of the exception raised when subprocess.check_output() fails in PruneArchiveFile().
- 45b0452144027521b7aabbfa1743bda0988ed49e: Remove bad precondition in GrpcRemoteExecutor
- dbff55666e92cf31895b89b1e14969cb68314d6b: Note that @AutoCodec need not generally be used anymore.
- 6c7a1b305c181c55875d40e279f689b55a7eab97: Tweak our mock test client.
- 211025e229722e0e0308b1211ce40daf5c418580: Automated rollback of commit c1be54b5d5daf8ed2ac17e7f49d297836572e13c.
- e2fcb951deb575559ac6f9464540dbc232c59b87: Fix incorrect label in enabled toolchain check.
- 463d15d15d90cb4e81f9be86183322e37808b5e8: Remove --experimental_enable_cc_toolchain_config_info option
- 8d9d32e89d12018f60b25fad2664db67326909cc: Prepare java_common.default_javac_opts for the toolchains migration
- 84871bd6b2144936e25f5788179f23b1dec5f1ab: Create new Starlark provider InstrumentedFilesInfo
- 4d33dd211adccdc7199782d55217877343b0be4b: Avoid deletion of repository directory in repository_ctx
- 4e67bd7e7231cb0f6719840715f1fd7f1636d476: Create placeholder utilities for finding Java toolchains
- a3dfdcbf8b3f0ee27961e8c26fe31410aa74a02b: Clarify error message on BES shutdown failures. RELNOTES: None
- 6f5261049724a69b13f6c849e31e01c5ed58a3c2: Flip --incompatible_disable_tools_defaults_package
- 399beac59c9dffaf9f7b030b75a3ff6675b7bd0a: Ensure aspect attribute values take precedence over rule attributes when there is a conflict.
- 60dcd828f16f6757aab89d30a5cb19bac182ef98: Remove tools/build_defs/apple
- 6da8982d997c119c548881aa6d7db736b9dd07d0: Default --experimental_split_xml_generation to true
- aa4dfab27d016abfccbe5c4bdc88c7c760bed06d: Migrate to find_java_toolchain/find_java_runtime_toolchain for Java toolchain and runtime resolution
- 69420d559022610a4feaba57a76eaa93f7551202: Improve test_class documentation
- 21d764ba6782904822ec7429fa2cddd7ad17f57e: C++: Remove CppDebugFileProvider from CompilationInfo
- f00fc677db68a7c67b1f997d03178fc823f322f0: Invert static_link_test_srcs feature to dynamic_link_test_srcs.
- 3bd2839b5099304dbf07f09e1c24a6b77e170baf: Start separating dependency resolution into two parts:
- 0cd3594dcabd508636d6f3af8867de4d1a044aac: Move the computation of the full propagating aspect path to the loop that is executed before loading the dependencies.
- 439665ce7f9902283ae9b0423d709b86dffd58c1: Remove the originating rule and attribute from the "inconsistent aspect order" error message.
- 09d50a0c2a177c74bfb259f6a86778411a88097d: Document cc_common.create_cc_toolchain_config_info()
- 2eb21b6ddd450c0cb3b317e5fd68658896076479: Unify the handling of visibility dependencies, the generating rule dependency and dependencies through regular attributes.
- b47fb353600bfcf114837149d7076aea38dd9cb1: C++: Remove more ctx from CcCompilationHelper
- 7d7921a5f029c4d2f566e25e7f72594b9a7e959e: Add --include_artifacts option to bazel aquery and to bazel dump
- d1f28833a90a7b2f67a91d33bc375a68d9aae5db: experimental UI: change "no action" default message
- 49826ed81bcae3acdb830b1ce85b8b9eda4e939d: Windows, java launcher: fix MakeDirectoriesW
- 7de30c1a2b014a8e8608850650ea1ec2cb5b54e0: Update bazel_toolchains to latest release.
- 0f1aab08b08a9679e205e474af9cda417725a81b: Fix various oddities in bazel_bootstrap_distfile_test.
- 050722fc29b919740a6575ac3c07c7ad965a97cb: Support for ThinLTO to be enabled implicitly with XBinary FDO
- 3a3a37acee4d7a237f5e9f923f9db4152b519999: Add a platform definition to be used on Bazel's CI.
- 0fc8deec015214006a289fa6bd0fd9cd99bbba5b: C++: Remove even more ctx from CcCompilationHelper
- d922a1e5faa83d209556694674c6c93c8538c39f: remote: enable no-remote for remote caching too
- 6dbfafe639507c60a00201baa14e293c69315695: In Parser, dedupe the String instances referred to by StringLiteral instances. Implement the same optimization in the serialization code.
- 7275cd46dba18fa3240621ff9172009e632c4548: Log when there is a children mismatch, but there aren't actually any missing children.
- 8a0dd43921dac98ed3a79cf2f8e9874dba0f4862: Extend internal representation of load with visibility exceptions
- 08af52baf1a42d3aeffd696779be61e162198fc9: Enable --incompatible_generate_javacommon_source_jar
- 62f7a9f6f3cef72c147137596d6ad01dc463c181: Fix rendering of << EOF > $@ within
- 5e507bf484d48ca457e5c1296df35fceb2160e68: Expose License to build API as a deprecated opaque type
- fc7941bf624cdaf5f17a857971ba511521d84ca7: Make ActionExecutionFunction semi-hermetic.
- 5d53171307b1edb5014e9f8baab6cc814b4a2511: Disallow rule implementation functions to return a struct
- 458f07a9de18dc3bcc826993e33b31ff9a9af7a4: Make BigInteger calculations more secure: BigInteger ordered composition is not guaranteed to be collision-free when the inputs are not uniformly distributed. Thus, we cannot blindly add strings/booleans/etc. when fingerprinting. For simplicity, we delegate to a normal Fingerprint for everything that isn't known to be uniformly distributed, although we then have to be careful with how BigInteger is ordered with respect to the other fields.
- f86ca987cef3c7c79f91e3bd47374a8412732a7a: Add a fingerprint to PackageLookupValue. To save computation and space, store the fingerprint in the Root, of which there are very few in practice.
- f5a7975550a1b5665e441f00ebeed69d72a26d3a: Add ProtoRegistryAspect and CcInfo to Skydoc globals.
- 3e0e58995e7adca8a555abd9a00998e1c47811ef: add desugar conversion method for AmbientBrightnessDayStats.getLocalDate
- 05edd9e696145d43d6251fc8bccc30fc3cf5b554: Automatic code cleanup.
- 82a397b208e92bfc6425d55989a1df419fe292dc: Disable remote execution / caching for android_ndk_integration_test.
- c52be2b5a0b727ed93778efa6995c49566d55943: Windows, test wrapper: implement IFStream
- 441fd75d0047f8a998d784c557736ab9075db893: C++: Remove remaining usages of context in compile
- 6ca7763669728253606578a56a205bca3ea883e9: Fix a typo
Incompatible changes:
- Incompatible flag --incompatible_require_feature_configuration_for_pic was flipped: With removing legacy crosstool fields we need
feature_configuration
to correctly tell whether pic is required for dynamic libraries. Pass feature_configuration
instance as an argument to cc_toolchain_info.needs_pic_for_dynamic_libraries
and use this method instead of cc_toolchain_info.use_pic_for_dynamic_libraries
.
- Incompatible flag --incompatible_linkopts_in_user_link_flags was flipped: Flags coming from
--linkopt
Bazel option will be exposed in the user_link_flags
, not in legacy_link_flags
. Since these features very often come right after each other (or are added by Bazel automatically), this is very unlikely to break anybody, and in case it does, workarounds will have to be tailor made.
- Incompatible flag --incompatible_dont_emit_static_libgcc was flipped: Bazel will not add --static-libgcc to the linking command line, it will be the responsibility of the C++ toolchain to append this flag.
- Incompatible flag --incompatible_expand_directories was flipped.
- Incompatible flag --incompatible_use_jdk10_as_host_javabase was flipped: Bazel will now use JDK 10 as its default --host_javabase.
- Incompatible flag --incompatible_strict_argument_ordering was flipped: Arguments in Starlark functions must now be declared in a strict order: First, positional arguments; then, keyword arguments; then, an optional
*arg
; finally, an optional **kwarg
.
- Incompatible flag --incompatible_disable_tools_defaults_package was flipped: The //tools/defaults:* package was removed. All references to
//tools/defaults:*
targets should be removed or replaced to corresponding target in @bazel_tools//tools/jdk:
and @bazel_tools//tools/cpp:
packages.
- Incompatible flag --incompatible_disallow_data_transition was flipped:
cfg = "data"
is outdated syntax that was turned into a no-op recently. Support for it was now completely removed.
- Incompatible flag --incompatible_strict_action_env has been flipped to 'false' again, as we discovered breakages for local execution users. We'll need some more time to figure out the best way to make this work for local and remote execution. Follow https://github.com/bazelbuild/bazel/issues/7026 for more details.
- Flag --incompatible_range_type was removed.
- Flag --incompatible_disallow_slash_operator was removed.
- Flag --incompatible_disallow_conflicting_providers was removed.
- Flag value --test_sharding_strategy=experimental_heuristic was removed.
- The default value of --host_platform and --platforms was changed to not be dependent on the configuration. This means that setting --cpu or --host_cpu will not affect the target or host platform.
- Toolchain resolution for cc rules is now enabled via an incompatible flag, --incompatible_enable_cc_toolchain_resolution. The previous flag, --enabled_toolchain_types, is deprecated and will be removed.
- java_(mutable_|)proto_library: removed strict_deps attribute.
- Python rules will soon reject the legacy "py" struct provider (preview by enabling --incompatible_disallow_legacy_py_provider). Upgrade rules to use PyInfo instead. See #7298.
- java_(mutable_|)proto_library: removed strict_deps attribute.
- Two changes to native Python rules: 1)
default_python_version
and --force_python
are deprecated; use python_version
and --python_version
respectively instead. You can preview the removal of the deprecated names with --incompatible_remove_old_python_version_api. See #7308. 2) The version flag will no longer override the declared version of a py_binary
or py_test
target. You can preview this new behavior with --incompatible_allow_python_version_transitions. See #7307.
- objc_framework has been deleted. Please refer to apple_dynamic_framework_import and apple_static_framework_import rules available in rules_apple.
- objc_bundle_library has been removed. Please migrate to rules_apple's apple_resource_bundle.
- Added --incompatible_use_jdk11_as_host_javabase: Bazel will then use JDK 11 as its default --host_javabase.
- Added --incompatible_disallow_struct_provider_syntax: Removes the ability for rule implementation functions to return struct. Such functions should return a list of providers instead.
- Added --incompatible_disable_crosstool_file.
- Added --incompatible_generate_javacommon_source_jar: java_common.compile now always generates a source jar.
Important changes:
- Upgrade the embedded JDK version to 11.0.2.
- //src:bazel now uses a minimal embedded JDK, if you want to avoid the extra steps of minimizing the JDK, use //src:bazel-dev instead.
- There is a new flag available
--experimental_java_common_create_provider_enabled_packages
that acts as a whitelist for usages of java_common.create_provider
. The constructor will be deprecated in Bazel 0.23.
- [#7024] Allow chaining of the same function type in aquery.
- Introduces --local_{ram,cpu}_resources, which will take the place of --local_resources.
- [#6930] Add documentation for the aquery command.
- Allow inclusion of param files in aquery output.
- [#6985] Add test to verify aquery's behavior for Cpp action templates.
- Ignore module-info.class in multi-version Jars.
- You can now use the attribute
aapt_version
or the flag --android_aapt
to pick the aapt version for android_local_test tests
- In --keep_going mode, Bazel now correctly returns a non-zero exit code when encountering a package loading error during target pattern parsing of patterns like "//foo:all" and "//foo/...".
- Locally-executed spawns tagged "no-cache" no longer upload their outputs to the remote cache.
- Introduces --host_compiler flag to allow setting a compiler for host compilation when --host_crosstool_top is specified.
- [aquery] Handle the case of aspect-on-aspect.
- Fixed a longstanding bug in the http remote cache where the value passed to --remote_timeout would be interpreted as milliseconds instead of seconds.
- Highlight TreeArtifact in aquery text output.
- java_common APIs now accept JavaToolchainInfo and JavaRuntimeInfo instead of configured targets for java_toolchain and java_runtime.
- cc_common.create_cc_toolchain_config_info is stable and available for production use
- incompatible_use_toolchain_providers_in_java_common: pass JavaToolchainInfo and JavaRuntimeInfo providers to java_common APIs instead of configured targets (https://github.com/bazelbuild/bazel/issues/7186).
- Bazel now supports reading cache hits from a repository cache, even if it doesn't have write access to the cache.
- Adding arm64e to OSX CROSSTOOL.
- Ignore package-level licenses on config_setting.
- Add an optional output_source_jar parameter to java_common.compile
- Bazel now validates that JAVA_HOME points to a valid JDK and falls back to auto-detection by looking up the path of
javac
.
- For tests that do not generate a test.xml, Bazel now uses a separate action to generate one; this results in minor differences in the generated test.xml, and makes the generation more reliable overall.
This release contains contributions from many people at Google, as well as Benjamin Peterson, Ed Schouten, erenon, George Gensure, Igal Tabachnik, Ittai Zeidman, Jannis Andrija Schnitzer, John Millikin, Keith Smiley, Kelly Campbell, Max Vorobev, nicolov, Robin Nabel.
Notice: Bazel installers contain binaries licensed under the GPLv2 with Classpath exception. Those installers should always be redistributed along with the source code.
Some versions of Bazel contain a bundled version of OpenJDK. The license of the bundled OpenJDK and other open-source components can be displayed by running the command bazel license
. The vendor and version information of the bundled OpenJDK can be displayed by running the command bazel info java-runtime
. The binaries and source-code of the bundled OpenJDK can be downloaded from our mirror server.
Security: All our binaries are signed with our public key 48457EE0.
Index of files