This project is mirrored from https://github.com/bazelbuild/bazel.git.
Pull mirroring updated .
- Jun 22, 2024
-
-
Bazel Release System authored
Baseline: 08ef9b20 Incompatible changes: - path attribute is removed from filegroup Important changes: - Git merge conflicts in `MODULE.bazel.lock` files can be resolved automatically. See https://bazel.build/external/lockfile#automatic-resolution for the required setup. - Deleted Bazel's builtin aar_import helper tools. They live in rules_android now. This release contains contributions from many people at Google, as well as dependabot[bot], Fabian Meumertzheim, Greg Magolan, Matthieu MOREL, Ted.
-
- Jun 07, 2024
-
-
Googler authored
This prevents issues where incomplete skyframe nodes are still cached when tests change state. Work towards platform-based flags: #19409. PiperOrigin-RevId: 641037026 Change-Id: Ibb2ba4b1413b516d2f2214244d3f536fb5583ca7
-
Googler authored
PiperOrigin-RevId: 641013801 Change-Id: Ia74b7b79a870d74b9055f32e4a4a77418fd3f555
-
Googler authored
The class has 58 tests which is a lot for a "short" timeout. PiperOrigin-RevId: 640983246 Change-Id: Ib98d04d73ef37bc3206df9b70c760085cd4b93ee
-
Googler authored
PiperOrigin-RevId: 640938503 Change-Id: I15bf4cfe0942433ffd24a7ea9a87769cdd5c7966
-
- Jun 06, 2024
-
-
Tobias Werth authored
bzlmod for the win! Closes #22657. PiperOrigin-RevId: 640878502 Change-Id: I6dbfc7eefaf3c019407aa18972e552c1e66b6ec8
-
Googler authored
PiperOrigin-RevId: 640823721 Change-Id: I3bb76ca2b8d53eb78dec8637bb25fc369852ca7a
-
Matthieu MOREL authored
bazel_ci_rules@1.0.0 module has been published to the BCR, see https://github.com/bazelbuild/bazel-central-registry/pull/2058 This use it has a bazel_dep instead of a http_archive Closes #22618. PiperOrigin-RevId: 640818741 Change-Id: Ic54471730b371c88e985fe3923646cd880dbe1d2
-
Googler authored
And rename tests to reflect what they do, not how big they are. PiperOrigin-RevId: 640811740 Change-Id: I6b412c2ee5053cba39f3456e424c1b06c263bf65
-
Googler authored
Split `SkyframeTests` into individual `java_test`s, improve `BUILD` granularity and test history tracking. This halves the build time for a single change to a test file (9.6s [1] to 4.9s [2]) by not rebuilding `SkyframeTests_lib` all the time. This target was added in 2015 (unknown commit) and has been growing since. Also add a missing `java_test` for `MacOSXFsEventsDiffAwarenessTest.java`. It was excluded from `SkyframeTests_lib` and didn't have a corresponding test target, and all of its test methods was annotated with `@Ignore`. We could also delete it since it hasn't been running at all. PiperOrigin-RevId: 640810575 Change-Id: I88a37beb64d5908ccd48099bd8a7146026153642
-
Matt Stark authored
It is in fact available from strip. Closes #22638. PiperOrigin-RevId: 640762599 Change-Id: I2bb912418ab40311deb1a5e35bb06f3a9bcc388c
-
Ted authored
Move aar_import helper tools to rules_android https://github.com/bazelbuild/rules_android/pull/234 END_PUBLIC RELNOTES: Deleted Bazel's builtin aar_import helper tools. They live in rules_android now. PiperOrigin-RevId: 640641470 Change-Id: I60f356bffa2fa932079a1a5fe448ad089ce04315
-
Googler authored
As far as we understand, this helped resolve actions conflicts in `AndroidPlatformTransition` when `--output_directory_naming_scheme=legacy` was set. `--output_directory_naming_scheme=legacy` is long-since unused. We also aren't aware of any cases of setting `--incompatible_android_platforms_transition_updated_affected` to true. For these reasons, this change aggressivley removes the flag vs. graveyarding it. PiperOrigin-RevId: 640617237 Change-Id: Ic4389c34de8f06385d5b1df4f06ac6f866aca38a
-
Googler authored
Some tests (specifically those that use `usesInliningBzlLoadFunction`) mutate the builtins, and so need to be able to reset the cache, making the comment at [`BzlLoadFunction$InlineCacheManager.reset`](https://cs.opensource.google/bazel/bazel/+/master:src/main/java/com/google/devtools/build/lib/skyframe/BzlLoadFunction.java;drc=2c0faf93deae61bfc0bb1c42becbca4c49c988e6;l=1551) invalid. Work towards platform-based flags: #19409. PiperOrigin-RevId: 640607616 Change-Id: I3c30b2888c99b46084ea2519870dc6d61c5a2a79
-
Fabian Meumertzheim authored
Adds a `jq` script to `scripts/` that merges any number of `MODULE.bazel.lock` files without using Bazel or reading the corresponding `MODULE.bazel` files. The lockfile docs now have a section explaining the steps needed to set up this script as a custom merger driver for Git, which means that merge conflicts in `MODULE.bazel.lock` files will always be resolved automatically. Note that resolution may emit lockfiles with redundant information that will be dropped by subsequent Bazel invocations. When Bazel encounters an error during lockfile parsing that could be caused by a merge conflict, it emits a different error message with a link to the docs. This required fixing the following kind of server crash when a conflict marker occurs inside a `recordedFileInputs` object: ``` FATAL: bazel crashed due to an internal error. Printing stack trace: java.lang.RuntimeException: Unrecoverable error while evaluating node 'com.google.devtools.build.lib.bazel.bzlmod.BazelLockFileValue$$Lambda/0x000000f8011da998@314cd9ee' (requested by nodes 'RegistryKey{url=https://bcr.bazel.build/}') at com.google.devtools.build.skyframe.AbstractParallelEvaluator$Evaluate.run(AbstractParallelEvaluator.java:557) at com.google.devtools.build.lib.concurrent.AbstractQueueVisitor$WrappedRunnable.run(AbstractQueueVisitor.java:426) at java.base/java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1403) at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312) at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843) at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188) Caused by: java.lang.IllegalArgumentException: the provided path should be absolute in the filesystem at com.google.common.base.Preconditions.checkArgument(Preconditions.java:143) at com.google.devtools.build.lib.rules.repository.RepoRecordedInput$RepoCacheFriendlyPath.createOutsideWorkspace(RepoRecordedInput.java:202) at com.google.devtools.build.lib.rules.repository.RepoRecordedInput$RepoCacheFriendlyPath.parse(RepoRecordedInput.java:222) at com.google.devtools.build.lib.rules.repository.RepoRecordedInput$File$1.parse(RepoRecordedInput.java:265) at com.google.devtools.build.lib.bazel.bzlmod.GsonTypeAdapterUtil$11.read(GsonTypeAdapterUtil.java:376) at com.google.devtools.build.lib.bazel.bzlmod.GsonTypeAdapterUtil$11.read(GsonTypeAdapterUtil.java:367) at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41) at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:186) at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145) at com.google.devtools.build.lib.bazel.bzlmod.DelegateTypeAdapterFactory$1.read(DelegateTypeAdapterFactory.java:133) at com.google.devtools.build.lib.bazel.bzlmod.LockFileModuleExtension_GsonTypeAdapter.read(LockFileModuleExtension_GsonTypeAdapter.java:171) at com.google.devtools.build.lib.bazel.bzlmod.LockFileModuleExtension_GsonTypeAdapter.read(LockFileModuleExtension_GsonTypeAdapter.java:17) at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41) at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:187) at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145) at com.google.devtools.build.lib.bazel.bzlmod.DelegateTypeAdapterFactory$1.read(DelegateTypeAdapterFactory.java:133) at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41) at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:187) at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145) at com.google.devtools.build.lib.bazel.bzlmod.DelegateTypeAdapterFactory$1.read(DelegateTypeAdapterFactory.java:133) at com.google.devtools.build.lib.bazel.bzlmod.BazelLockFileValue_GsonTypeAdapter.read(BazelLockFileValue_GsonTypeAdapter.java:129) at com.google.devtools.build.lib.bazel.bzlmod.BazelLockFileValue_GsonTypeAdapter.read(BazelLockFileValue_GsonTypeAdapter.java:15) at com.google.gson.Gson.fromJson(Gson.java:991) at com.google.gson.Gson.fromJson(Gson.java:956) at com.google.gson.Gson.fromJson(Gson.java:905) at com.google.gson.Gson.fromJson(Gson.java:876) at com.google.devtools.build.lib.bazel.bzlmod.BazelLockFileFunction.getLockfileValue(BazelLockFileFunction.java:93) at com.google.devtools.build.lib.bazel.bzlmod.BazelLockFileFunction.compute(BazelLockFileFunction.java:73) at com.google.devtools.build.skyframe.AbstractParallelEvaluator$Evaluate.run(AbstractParallelEvaluator.java:468) ... 7 more ``` Alternatives considered: * Letting Bazel resolve the conflict would require building knowledge about particular version control systems and their conflict style into Bazel. It would also either require the user to resolve conflicts in `MODULE.bazel` first or deviate from the current behavior that the lockfile is not updated when any Bzlmod error is encountered. The jq script can be used as is by every VCS with merge driver support and resolves the conflict in `MODULE.bazel.lock` independently of `MODULE.bazel`. * Implementing the git merge driver as a `bazel mod` subcommand. This could be the source of intransparent slowdowns during regular git operations, which may even be triggered by other tools such as IDEs. The jq script is very fast. * Implementing the merger as a Go binary in buildtools would replace the ubiquitous jq tool with a special purpose binary while also not solving the problem that per-user action is required once to register a custom merge driver. Implements https://docs.google.com/document/d/1TjA7-M5njkI1F38IC0pm305S9EOmxcUwaCIvaSmansg/edit#heading=h.5mcn15i0e1ch RELNOTES: Git merge conflicts in `MODULE.bazel.lock` files can be resolved automatically. See https://bazel.build/external/lockfile#automatic-resolution for the required setup. Closes #22428. PiperOrigin-RevId: 640596606 Change-Id: I20659e3e53a7d8f2529f2ad5a3e7f258d7af026d
-
Googler authored
if there is no automatic execution group with the same name as the given toolchain type label, we should search for an automatic execution group that has the given label in its `ToolchainContext.requestedToolchainTypeLabels()` currently the `ToolchainContext` of a random automatic execution group was returned which may not contain the given toolchain type label. PiperOrigin-RevId: 640595234 Change-Id: I4f987648b7c7a9794c851739eeaaff55f4499775
-
Googler authored
Update documentation on how target patterns are expanded in `register_toolchains` and `register_execution_platforms`. PiperOrigin-RevId: 640583687 Change-Id: I01a8cbe5f994b892fc821443a9ccf8a5924ee4f4
-
Fabian Meumertzheim authored
Should fix the following crash observed in the wild: ``` FATAL: bazel crashed due to an internal error. Printing stack trace: java.lang.RuntimeException: Unrecoverable error while evaluating node 'RepoSpecKey{moduleKey=rules_pkg@0.7.0, registryUrl=https://bcr.bazel.build/}' (requested by nodes 'com.google.devtools.build.lib.bazel.bzlmod.BazelModuleResolutionValue$$Lambda/0x00000008005fd220@38aba3ca') at com.google.devtools.build.skyframe.AbstractParallelEvaluator$Evaluate.run(AbstractParallelEvaluator.java:550) at com.google.devtools.build.lib.concurrent.AbstractQueueVisitor$WrappedRunnable.run(AbstractQueueVisitor.java:414) at java.base/java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(Unknown Source) at java.base/java.util.concurrent.ForkJoinTask.doExec(Unknown Source) at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(Unknown Source) at java.base/java.util.concurrent.ForkJoinPool.scan(Unknown Source) at java.base/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source) at java.base/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source) Caused by: java.lang.NullPointerException: Cannot invoke "com.google.devtools.build.lib.events.StoredEventHandler.replayOn(com.google.devtools.build.lib.events.ExtendedEventHandler)" because "this.bazelRegistryJsonEvents" is null at com.google.devtools.build.lib.bazel.bzlmod.IndexRegistry.getBazelRegistryJson(IndexRegistry.java:336) at com.google.devtools.build.lib.bazel.bzlmod.IndexRegistry.getRepoSpec(IndexRegistry.java:295) at com.google.devtools.build.lib.bazel.bzlmod.RepoSpecFunction.compute(RepoSpecFunction.java:52) at com.google.devtools.build.skyframe.AbstractParallelEvaluator$Evaluate.run(AbstractParallelEvaluator.java:461) ... 7 more ``` Closes #22639. PiperOrigin-RevId: 640572972 Change-Id: Id24ce3476df55fa75d6f3291e100b1037f0793f4
-
Bazel Release System authored
Baseline: b48a3191 Important changes: - Changes to environment variables read via `getenv` now correctly invalidate module extensions. - `--experimental_collect_system_network_usage` is flipped to `true`. - Progress is no longer written to BEP after the build completing event is posted. This release contains contributions from many people at Google, as well as Alessandro Patti, dependabot[bot], Fabian Meumertzheim, Keith Smiley, Matt Smith, Xdng Yng.
-
Googler authored
Also cut down code in `SkyfocusState` with `@AutoBuilder`. PiperOrigin-RevId: 640547314 Change-Id: Id3655c730601eee06e17182ee51cc6d0b872fa15
-
- Jun 05, 2024
-
-
Googler authored
This use of `jdk.internal.misc.Blocker` is affected by an upcoming JDK change: https://github.com/openjdk/jdk/commit/412e306d81209c05f55aee7663f7abb80286e361 PiperOrigin-RevId: 640539842 Change-Id: Ib8ba8fe9845d415b61e03efb8a28f0a7d57bf0a6
-
Googler authored
PiperOrigin-RevId: 640527852 Change-Id: Iaddc36c3da904831efe33a18a5c62216feac4b03
-
Googler authored
PiperOrigin-RevId: 640527688 Change-Id: I0ccad1c88f95ecb716075ea19f25db9649b81753
-
Googler authored
**The Issue** Some external users reported the following sequence: 1. Build starts 2. Build interrupted very early on 3. Another build is started. The command line says "A previous command is running", while the server is stuck. What happened under the hood: The issue could be reproduced very reliably by placing a breakpoint here[1] and interrupt the build. Bazel is in the middle of the recursive `IncrementalPackageRoots.registerAndPlantMissingSymlinks` method when it received the interruption. One important detail: we only add a NestedSet to the `donePackagesRef` set when the _method_ is done successfully. When there's an interruption, we always bail early and never actually reach this line where the NestedSet is added to the set[2]. Without deduplication, this could lead to what feels like an finite loop if the packages are structured like so: ``` [[A], [B, [A]]] ``` In this case, NestedSet `[A]` represents a common child of many NestedSets and would be repeated again and again. We've indeed observed this in a real build, making it unable to finish within any reasonable timeframe. **The Solution** It was overly restrictive to only commit a NestedSet into the de-dup set _after_ all of its symlinks have been planted. It only makes sense if we're planting the symlinks for multiple top-level targets at the same time and want to avoid the situation where a top-level target is allowed to enter execution without all of its symlinks planted. We're already avoiding this situation by design by planting the symlinks for 1 single top-level target at a time. To avoid the near-infinite loop caused by a repeated NestedSet, we add each NestedSet to the de-duplication set the very first time it's seen. **Changes in this CL** - [Bug-fixing] Add a NestedSet to the de-duplication set the very first time it's seen. - [Code simplicity] 1 single blocking `Future.get()` instead of 1 for each recursive layer. Fixes https://github.com/bazelbuild/bazel/issues/22586. --- [1] https://github.com/bazelbuild/bazel/blob/193b114287b3e20850a4b106b889771dfa63a601/src/main/java/com/google/devtools/build/lib/skyframe/IncrementalPackageRoots.java#L253 [2] https://github.com/bazelbuild/bazel/blob/193b114287b3e20850a4b106b889771dfa63a601/src/main/java/com/google/devtools/build/lib/skyframe/IncrementalPackageRoots.java#L256 PiperOrigin-RevId: 640524271 Change-Id: I63c39d7c8f27abaf9229396af1424e775cf5f85f
-
Googler authored
PiperOrigin-RevId: 640521025 Change-Id: I7d7da00497e1f61f1687452c26bbddf92244a9fd
-
Googler authored
PiperOrigin-RevId: 640500274 Change-Id: I237ce7afbe4a35e2a9f38bd104c35f4b643dd9a4
-
Yun Peng authored
https://github.com/bazelbuild/bazel/commit/417c6b803db1078d20077068471427c86c016190 upgraded abseil-cpp, which doesn't build on old macOS versions. There is a fix from abseil-cpp: https://github.com/abseil/abseil-cpp/commit/65a55c2ba891f6d2492477707f4a2e327a0b40dc, but not yet in a release version, so adding it as a patch for now. Closes #22641. PiperOrigin-RevId: 640464696 Change-Id: I7a72f636cda8598628e26dcd2a5b6c7621655b23
-
John Cater authored
Closes #22629. PiperOrigin-RevId: 640459035 Change-Id: I0bf900d5ea450a968ff9c64a7f4533fad80278ad
-
Googler authored
We can probably be even more generous without much issue/should make this configurable, but for now 4096 doesn't seem like enough. PiperOrigin-RevId: 640434326 Change-Id: Ib3d4e75795b1e4960ef91311ec5009b5d267b262
-
Googler authored
PiperOrigin-RevId: 640414938 Change-Id: Ic476a887be3171c5e2a5bec287fba3696a864fed
-
Googler authored
PiperOrigin-RevId: 640403965 Change-Id: I1cc4b7b509f3ddf779963fa3f5621fc039ee1fbc
-
Googler authored
the logic to limit on the number of reported types, if you're requesting the stats already you just get all of them. SkyframeStats generation can be very expensive on large build graphs and can add significantly to latency when completing a build. Disabling it entirely unless specifically requested mitigates that performance hit, unless the user specifically opts into the additional cost. PiperOrigin-RevId: 640358760 Change-Id: I8bfa0cfaa5dcb019c541d240687c6d8a9b61aab8
-
John Cater authored
Fixes #22607. Closes #22630. PiperOrigin-RevId: 640263972 Change-Id: I94d8555fad11b0026af332674d26acf81649319c
-
Googler authored
When a tree artifact is included in a Fileset, it is expanded and one symlink is created for each child file. This change stores the enclosing tree artifact in the `FilesetOutputSymlink` for those children. Note that this extra field does not change the shallow heap size of `FilesetOutputSymlink`. Test coverage is added to the existing test for tree artifact inputs in `FilesetIntegrationTest`. An extra target is added to this test to cover the case of a nested fileset, which covers the change to `SkyframeFilesetManifestAction`. PiperOrigin-RevId: 640195717 Change-Id: Ic275c25bdd92c7b87de78f9ba335ed9ee6dc561b
-
Googler authored
Work towards composable starlark transitions: #22248. PiperOrigin-RevId: 640178803 Change-Id: Ida2f94e61679fbe4687545ab9fbb700ebe856877
-
Gowroji Sunil authored
* Add a prebuilt `one_version` tool as well as sources to `java_tools`. * Avoid passing `--whitelist` to `one_version` if no allowlist is configured in the toolchain as it isn't supported by the Bazel version of `oneversion` yet. * Document the `one_version` flags. * Clean up tests not updated after recent rules_java releases. Work towards #1071 Closes #22246. PiperOrigin-RevId: 640177996 Change-Id: I0323154274bf2127a023184a67485783aa868461
-
Matt Stark authored
Instead of hardcoding the ~/os-bazel directory, calculate the bazel directory based on the path of the script. This should make setup simpler, and also allow you to work with multiple bazel checkouts at the same time by simply calling the corresponding bazel-dev.sh script. Closes #22577. PiperOrigin-RevId: 640173005 Change-Id: Iba65c8de6eefe49aec784c949f8a66dc4eb760af
-
dependabot[bot] authored
Bumps the github-actions group with 4 updates: [step-security/harden-runner](https://github.com/step-security/harden-runner), [bazelbuild/continuous-integration](https://github.com/bazelbuild/continuous-integration), [ossf/scorecard-action](https://github.com/ossf/scorecard-action) and [github/codeql-action](https://github.com/github/codeql-action). Updates `step-security/harden-runner` from 2.7.1 to 2.8.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/step-security/harden-runner/releases">step-security/harden-runner's releases</a>.</em></p> <blockquote> <h2>v2.8.0</h2> <h2>What's Changed</h2> <p>Release v2.8.0 by <a href="https://github.com/h0x0er"><code>@h0x0er</code></a> and <a href="https://github.com/varunsh-coder"><code>@varunsh-coder</code></a> in <a href="https://redirect.github.com/step-security/harden-runner/pull/416">step-security/harden-runner#416</a> This release includes:</p> <ul> <li>File Monitoring Enhancements: Adds the capability to view the name and path of every file written during the build process.</li> <li>Process Tracking Enhancements: Adds the capability to view process names and arguments of processes run during the build process.</li> </ul> <p>These enhancements are based on insights from the XZ Utils incident, aimed at improving observability and detections during the build process.</p> <p><strong>Full Changelog</strong>: <a href="https://github.com/step-security/harden-runner/compare/v2...v2.8.0">https://github.com/step-security/harden-runner/compare/v2...v2.8.0</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/step-security/harden-runner/commit/f086349bfa2bd1361f7909c78558e816508cdc10"><code>f086349</code></a> Merge pull request <a href="https://redirect.github.com/step-security/harden-runner/issues/416">#416</a> from step-security/rc-8</li> <li><a href="https://github.com/step-security/harden-runner/commit/b9c325d8cec96c3cecd4f8c5ab6b4f9058e4c586"><code>b9c325d</code></a> Update image</li> <li><a href="https://github.com/step-security/harden-runner/commit/808a771f66e13e2991bc3b6062649d248f41f7b6"><code>808a771</code></a> Add info about file and process events</li> <li><a href="https://github.com/step-security/harden-runner/commit/71714298b4c48ff29a5e1a00d4e7a986f8b3beab"><code>7171429</code></a> Update agent</li> <li><a href="https://github.com/step-security/harden-runner/commit/9ff9d14760a73102d9fa2f47131624137f50ead8"><code>9ff9d14</code></a> Merge pull request <a href="https://redirect.github.com/step-security/harden-runner/issues/406">#406</a> from step-security/dependabot/github_actions/step-sec...</li> <li><a href="https://github.com/step-security/harden-runner/commit/ac5fa0194e5c1f994c09fb151efeb386a2486859"><code>ac5fa01</code></a> Bump step-security/harden-runner from 2.7.0 to 2.7.1</li> <li>See full diff in <a href="https://github.com/step-security/harden-runner/compare/a4aa98b93cab29d9b1101a6143fb8bce00e2eac4...f086349bfa2bd1361f7909c78558e816508cdc10">compare view</a></li> </ul> </details> <br /> Updates `bazelbuild/continuous-integration` from 41a5b5c2f1a075e7fbab8f6b82e839906139ccc6 to fcd3cdd216acf5b78449ae6c05da1c789f5ef76c <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/bazelbuild/continuous-integration/blob/master/docs/release-playbook.md">bazelbuild/continuous-integration's changelog</a>.</em></p> <blockquote> <h1>Bazel Release Playbook</h1> <p>This is the guide to conducting a Bazel release. This is especially relevant for release managers, but will be of interest to anyone who is curious about the release process.</p> <h2>Preface</h2> <blockquote> <p>For future reference and release managers - the release manager playbook should be treated like an IKEA manual. That means: Do not try to be smart, optimize / skip / reorder steps, otherwise chaos will ensue. Just follow it and the end result will be.. well, a usable piece of furniture, or a Bazel release (depending on the manual).</p> <p>Like aviation and workplace safety regulations, the playbook is written in the tears and blood of broken Bazelisks, pipelines, releases and Git branches. Assume that every step is exactly there for a reason, even if it might not be obvious. If you follow them to the letter, they are not error prone. Errors have only happened in the past, when a release manager thought it's ok to follow them by spirit instead. ;)</p> <p>-- <a href="https://github.com/philwo"><code>@philwo</code></a></p> </blockquote> <h2>One-time setup</h2> <p>These steps only have to be performed once, ever.</p> <ul> <li>Make sure you are a member of the Bazel <a href="https://github.com/orgs/bazelbuild/teams/release-managers/members">Release Managers</a> team on GitHub.</li> <li>Make sure you are a member of the Bazel <a href="https://buildkite.com/organizations/bazel-trusted/teams/release-managers/members">release-managers</a> group on BuildKite. If that link does not work for you, ask one of the Buildkite org admins to add you to the group.</li> <li>Set up github ssh key if you haven't already. <ul> <li><a href="https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/">https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/</a></li> </ul> </li> <li>Generate a new identifier for Google's internal Git mirror: <a href="https://bazel.googlesource.com/new-password">https://bazel.googlesource.com/new-password</a> (and paste the code in your shell).</li> <li>Log in to the Gerrit UI to create an account: <a href="[] </ul> <h2>Preparing a new release</h2> <ol> <li><a href="https://github.com/bazelbuild/bazel/milestones/new">Create a release blockers milestone</a> named "X.Y.Z release blockers" (case-sensitive), where we keep track of issues that must be resolved before the release goes out. <ul> <li>Set the (tentative) release date.</li> <li>Add this description: <code>Issues that need to be resolved before the X.Y.Z release.</code>.</li> <li>Refer to <a href="https://github.com/bazelbuild/bazel/milestone/38">this example</a></li> </ul> </li> <li><a href="https://github.com/bazelbuild/bazel/issues/new?assignees=&labels=release%2Cteam-OSS%2CP1%2Ctype%3A+process&template=release.md&title=Release+X.Y+-+%24MONTH+%24YEAR">Create a release tracking issue</a> to keep the community updated about the progress of the release. <a href="https://redirect.github.com/bazelbuild/bazel/issues/16159">See example</a>. Pin this issue.</li> <li>Create the branch for the release. The branch should always be named <code>release-X.Y.Z</code> (the <code>.Z</code> part is important). Cherry-pick PRs will be sent against this branch. <ul> <li>The actual creation of the branch can be done via the GitHub UI or via the command line. For minor and patch releases, create the branch from the previous release tag, if possible. How we choose the base commit of the branch depends on the type of the release:</li> <li>For patch releases (<code>X.Y.Z</code> where <code>Z>0</code>), the base commit should simply be <code>X.Y.(Z-1)</code>.</li> <li>For minor releases (<code>X.Y.0</code> where <code>Y>0</code>), the base commit should typically be <code>X.(Y-1).<current max Z></code>.</li> <li>For major releases (<code>X.0.0</code>), the base commit is some "healthy" commit on the main branch. <ul> <li>This means that there's an extra step involved in preparing the release -- "cutting" the release branch, so to speak. For this, check the <a href="https://buildkite.com/bazel/bazel-with-downstream-projects-bazel">Bazel@HEAD+Downstream pipeline</a>. The branch cut should happen on a green commit there; if the pipeline is persistently red, work with the Green Team to resolve it first and delay the branch cut as needed.</li> <li>A first release candidate should immediately be created after the release branch is created. See <a href="https://github.com/bazelbuild/continuous-integration/blob/master/docs/#create-a-release-candidate">create a release candidate</a> below.</li> </ul> </li> </ul> </li> </ol> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bazelbuild/continuous-integration/commit/fcd3cdd216acf5b78449ae6c05da1c789f5ef76c"><code>fcd3cdd</code></a> Gerrit build: Bump Fedora version to 40 (<a href="https://redirect.github.com/bazelbuild/continuous-integration/issues/1959">#1959</a>)</li> <li><a href="https://github.com/bazelbuild/continuous-integration/commit/195ca8dd39d0f35121df8693fb4c6e00bdcce35c"><code>195ca8d</code></a> Bump requests from 2.31.0 to 2.32.2 in /actions/update-lockfile (<a href="https://redirect.github.com/bazelbuild/continuous-integration/issues/1958">#1958</a>)</li> <li><a href="https://github.com/bazelbuild/continuous-integration/commit/968f5d3d21148f7a52bcc8752370d919731966b1"><code>968f5d3</code></a> Update lockfiles when PR is merged to a release branch (<a href="https://redirect.github.com/bazelbuild/continuous-integration/issues/1950">#1950</a>)</li> <li><a href="https://github.com/bazelbuild/continuous-integration/commit/ada80845567251d7714192c80480dd24adfcf2ca"><code>ada8084</code></a> Shard summary: Show root cause of build failures (<a href="https://redirect.github.com/bazelbuild/continuous-integration/issues/1953">#1953</a>)</li> <li><a href="https://github.com/bazelbuild/continuous-integration/commit/9fe262a5dc799e023ff3cda8b76222c85cbf13b3"><code>9fe262a</code></a> Test shard summary: Include FAILED_TO_BULD targets (<a href="https://redirect.github.com/bazelbuild/continuous-integration/issues/1952">#1952</a>)</li> <li><a href="https://github.com/bazelbuild/continuous-integration/commit/061ce4e133a686b96e567301f167ce1784a6b0f7"><code>061ce4e</code></a> Add docker image for fedora 40 linux distribution (<a href="https://redirect.github.com/bazelbuild/continuous-integration/issues/1947">#1947</a>)</li> <li><a href="https://github.com/bazelbuild/continuous-integration/commit/d92a692d83313645d55604a2983b15d6470740c1"><code>d92a692</code></a> Bump requests from 2.31.0 to 2.32.0 in /buildkite/docker/ubuntu1604 (<a href="https://redirect.github.com/bazelbuild/continuous-integration/issues/1954">#1954</a>)</li> <li><a href="https://github.com/bazelbuild/continuous-integration/commit/57255fdc09a102f555263bc567d064a6921d7b2b"><code>57255fd</code></a> Improve display of available Xcode versions (<a href="https://redirect.github.com/bazelbuild/continuous-integration/issues/1951">#1951</a>)</li> <li><a href="https://github.com/bazelbuild/continuous-integration/commit/102c2a75b67cf28b1a7e5959a6b7f06d8f4a92a6"><code>102c2a7</code></a> Update README.md</li> <li><a href="https://github.com/bazelbuild/continuous-integration/commit/b9928ed7bb4b791349b0812f1d931fc0f424c5bf"><code>b9928ed</code></a> update slack invite link again</li> <li>See full diff in <a href="https://github.com/bazelbuild/continuous-integration/compare/41a5b5c2f1a075e7fbab8f6b82e839906139ccc6...fcd3cdd216acf5b78449ae6c05da1c789f5ef76c">compare view</a></li> </ul> </details> <br /> Updates `ossf/scorecard-action` from 2.3.1 to 2.3.3 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/ossf/scorecard-action/releases">ossf/scorecard-action's releases</a>.</em></p> <blockquote> <h2>v2.3.3</h2> <blockquote> <p>[!NOTE]<br /> There is no v2.3.2 release as a step was skipped in the release process. This was fixed and re-released under the v2.3.3 tag</p> </blockquote> <h2>What's Changed</h2> <ul> <li>
Bump github.com/ossf/scorecard/v4 (v4.13.1) to github.com/ossf/scorecard/v5 (v5.0.0-rc1) by <a href="https://github.com/spencerschrock"><code>@spencerschrock</code></a> in <a href="https://redirect.github.com/ossf/scorecard-action/pull/1366">ossf/scorecard-action#1366</a></li> <li> Bump github.com/ossf/scorecard/v5 from v5.0.0-rc1 to v5.0.0-rc2 by <a href="https://github.com/spencerschrock"><code>@spencerschrock</code></a> in <a href="https://redirect.github.com/ossf/scorecard-action/pull/1374">ossf/scorecard-action#1374</a></li> <li> Bump github.com/ossf/scorecard/v5 from v5.0.0-rc2 to v5.0.0-rc2.0.20240509182734-7ce860946928 by <a href="https://github.com/spencerschrock"><code>@spencerschrock</code></a> in <a href="https://redirect.github.com/ossf/scorecard-action/pull/1377">ossf/scorecard-action#1377</a></li> </ul> <p>For a full changelist of what these include, see the <a href="https://github.com/ossf/scorecard/releases/tag/v5.0.0-rc1">v5.0.0-rc1</a> and <a href="https://github.com/ossf/scorecard/releases/tag/v5.0.0-rc2">v5.0.0-rc2</a> release notes.</p> <h3>Documentation</h3> <ul> <li> Move token discussion out of main README. by <a href="https://github.com/spencerschrock"><code>@spencerschrock</code></a> in <a href="https://redirect.github.com/ossf/scorecard-action/pull/1279">ossf/scorecard-action#1279</a></li> <li> link to <code>ossf/scorecard</code> workflow instead of maintaining an example by <a href="https://github.com/spencerschrock"><code>@spencerschrock</code></a> in <a href="https://redirect.github.com/ossf/scorecard-action/pull/1352">ossf/scorecard-action#1352</a></li> <li> update api links to new scorecard.dev site by <a href="https://github.com/spencerschrock"><code>@spencerschrock</code></a> in <a href="https://redirect.github.com/ossf/scorecard-action/pull/1376">ossf/scorecard-action#1376</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/ossf/scorecard-action/compare/v2.3.1...v2.3.3">https://github.com/ossf/scorecard-action/compare/v2.3.1...v2.3.3</a></p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/ossf/scorecard-action/commit/dc50aa9510b46c811795eb24b2f1ba02a914e534"><code>dc50aa9</code></a> Bump docker tag for v2.3.3 release (<a href="https://redirect.github.com/ossf/scorecard-action/issues/1368">#1368</a>)</li> <li><a href="https://github.com/ossf/scorecard-action/commit/8ff570017382a0ef795f21f71e519b27a9b5f29e"><code>8ff5700</code></a> Bump github.com/ossf/scorecard/v5 from v5.0.0-rc2 to v5.0.0-rc2.0....</li> <li><a href="https://github.com/ossf/scorecard-action/commit/8ba5e73d11a5fd0917494d02ab01dfd7866d2191"><code>8ba5e73</code></a> update api links to new scorecard.dev site (<a href="https://redirect.github.com/ossf/scorecard-action/issues/1376">#1376</a>)</li> <li><a href="https://github.com/ossf/scorecard-action/commit/92ddde3eaffd7e147638317c023642a6adc8a874"><code>92ddde3</code></a> Bump github.com/ossf/scorecard/v5 from v5.0.0-rc1 to v5.0.0-rc2 (<a href="https://redirect.github.com/ossf/scorecard-action/issues/1374">#1374</a>)</li> <li><a href="https://github.com/ossf/scorecard-action/commit/6c55905542a1ce814c7ec177a96904f5bc74aab5"><code>6c55905</code></a> Bump golang.org/x/net from 0.24.0 to 0.25.0 (<a href="https://redirect.github.com/ossf/scorecard-action/issues/1373">#1373</a>)</li> <li><a href="https://github.com/ossf/scorecard-action/commit/09bb953b6a0e34c84fb453985435a07cc2baa3a3"><code>09bb953</code></a> Bump distroless/base in the docker-images group (<a href="https://redirect.github.com/ossf/scorecard-action/issues/1372">#1372</a>)</li> <li><a href="https://github.com/ossf/scorecard-action/commit/1511e1305b9d7e51245388421563264573c77bc7"><code>1511e13</code></a> Bump the github-actions group across 1 directory with 6 updates (#...</li> <li><a href="https://github.com/ossf/scorecard-action/commit/df66cd8fd834fab4483ac0031b8d8ff819b62422"><code>df66cd8</code></a> Bump the docker-images group with 2 updates (<a href="https://redirect.github.com/ossf/scorecard-action/issues/1370">#1370</a>)</li> <li><a href="https://github.com/ossf/scorecard-action/commit/fad9a3cc533bb069b1f01f272f1f630895cd690a"><code>fad9a3c</code></a> Bump distroless/base in the docker-images group (<a href="https://redirect.github.com/ossf/scorecard-action/issues/1364">#1364</a>)</li> <li><a href="https://github.com/ossf/scorecard-action/commit/1e01a309c1de65b6221c25768bcfc322bac8ccee"><code>1e01a30</code></a> Bump the github-actions group with 3 updates (<a href="https://redirect.github.com/ossf/scorecard-action/issues/1365">#1365</a>)</li> <li>Additional commits viewable in <a href="https://github.com/ossf/scorecard-action/compare/0864cf19026789058feabb7e87baa5f140aac736...dc50aa9510b46c811795eb24b2f1ba02a914e534">compare view</a></li> </ul> </details> <br /> Updates `github/codeql-action` from 3.25.3 to 3.25.7 <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/github/codeql-action/blob/main/CHANGELOG.md">github/codeql-action's changelog</a>.</em></p> <blockquote> <h1>CodeQL Action Changelog</h1> <p>See the <a href="https://github.com/github/codeql-action/releases">releases page</a> for the relevant changes to the CodeQL CLI and language packs.</p> <p>Note that the only difference between <code>v2</code> and <code>v3</code> of the CodeQL Action is the node version they support, with <code>v3</code> running on node 20 while we continue to release <code>v2</code> to support running on node 16. For example <code>3.22.11</code> was the first <code>v3</code> release and is functionally identical to <code>2.22.11</code>. This approach ensures an easy way to track exactly which features are included in different versions, indicated by the minor and patch version numbers.</p> <h2>[UNRELEASED]</h2> <p>No user facing changes.</p> <h2>3.25.7 - 31 May 2024</h2> <ul> <li>We are rolling out a feature in May/June 2024 that will reduce the Actions cache usage of the Action by keeping only the newest TRAP cache for each language. <a href="https://redirect.github.com/github/codeql-action/pull/2306">#2306</a></li> </ul> <h2>3.25.6 - 20 May 2024</h2> <ul> <li>Update default CodeQL bundle version to 2.17.3. <a href="https://redirect.github.com/github/codeql-action/pull/2295">#2295</a></li> </ul> <h2>3.25.5 - 13 May 2024</h2> <ul> <li>Add a compatibility matrix of supported CodeQL Action, CodeQL CLI, and GitHub Enterprise Server versions to the <a href="https://github.com/github/codeql-action/blob/main/README.md">https://github.com/github/codeql-action/blob/main/README.md</a>. <a href="https://redirect.github.com/github/codeql-action/pull/2273">#2273</a></li> <li>Avoid printing out a warning for a missing <code>on.push</code> trigger when the CodeQL Action is triggered via a <code>workflow_call</code> event. <a href="https://redirect.github.com/github/codeql-action/pull/2274">#2274</a></li> <li>The <code>tools: latest</code> input to the <code>init</code> Action has been renamed to <code>tools: linked</code>. This option specifies that the Action should use the tools shipped at the same time as the Action. The old name will continue to work for backwards compatibility, but we recommend that new workflows use the new name. <a href="https://redirect.github.com/github/codeql-action/pull/2281">#2281</a></li> </ul> <h2>3.25.4 - 08 May 2024</h2> <ul> <li>Update default CodeQL bundle version to 2.17.2. <a href="https://redirect.github.com/github/codeql-action/pull/2270">#2270</a></li> </ul> <h2>3.25.3 - 25 Apr 2024</h2> <ul> <li>Update default CodeQL bundle version to 2.17.1. <a href="https://redirect.github.com/github/codeql-action/pull/2247">#2247</a></li> <li>Workflows running on <code>macos-latest</code> using CodeQL CLI versions before v2.15.1 will need to either upgrade their CLI version to v2.15.1 or newer, or change the platform to an Intel MacOS runner, such as <code>macos-12</code>. ARM machines with SIP disabled, including the newest <code>macos-latest</code> image, are unsupported for CLI versions before 2.15.1. <a href="https://redirect.github.com/github/codeql-action/pull/2261">#2261</a></li> </ul> <h2>3.25.2 - 22 Apr 2024</h2> <p>No user facing changes.</p> <h2>3.25.1 - 17 Apr 2024</h2> <ul> <li>We are rolling out a feature in April/May 2024 that improves the reliability and performance of analyzing code when analyzing a compiled language with the <code>autobuild</code> <a href="https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages#codeql-build-modes">build mode</a>. <a href="https://redirect.github.com/github/codeql-action/pull/2235">#2235</a></li> <li>Fix a bug where the <code>init</code> Action would fail if <code>--overwrite</code> was specified in <code>CODEQL_ACTION_EXTRA_OPTIONS</code>. <a href="https://redirect.github.com/github/codeql-action/pull/2245">#2245</a></li> </ul> <h2>3.25.0 - 15 Apr 2024</h2> <ul> <li> <p>The deprecated feature for extracting dependencies for a Python analysis has been removed. <a href="https://redirect.github.com/github/codeql-action/pull/2224">#2224</a></p> <p>As a result, the following inputs and environment variables are now ignored:</p> <ul> <li>The <code>setup-python-dependencies</code> input to the <code>init</code> Action</li> <li>The <code>CODEQL_ACTION_DISABLE_PYTHON_DEPENDENCY_INSTALLATION</code> environment variable</li> </ul> </li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/github/codeql-action/commit/f079b8493333aace61c81488f8bd40919487bd9f"><code>f079b84</code></a> Merge pull request <a href="https://redirect.github.com/github/codeql-action/issues/2317">#2317</a> from github/update-v3.25.7-a095bf2a1</li> <li><a href="https://github.com/github/codeql-action/commit/e1a42688dbe6ce54cc33e2b6b65fc02abdb09762"><code>e1a4268</code></a> Update changelog for v3.25.7</li> <li><a href="https://github.com/github/codeql-action/commit/a095bf2a16b83cb3b52e6adba696c70f41e82864"><code>a095bf2</code></a> Merge pull request <a href="https://redirect.github.com/github/codeql-action/issues/2313">#2313</a> from github/revert-2312-update-bundle/codeql-bundle-...</li> <li><a href="https://github.com/github/codeql-action/commit/bbd4e19f51d83bb98b025b83b255e44eaa1a1e7f"><code>bbd4e19</code></a> Revert "Update default bundle to 2.17.4"</li> <li><a href="https://github.com/github/codeql-action/commit/9ab5d16a3df4885b74bb18ab349bcc6c253ee3e0"><code>9ab5d16</code></a> Merge pull request <a href="https://redirect.github.com/github/codeql-action/issues/2312">#2312</a> from github/update-bundle/codeql-bundle-v2.17.4</li> <li><a href="https://github.com/github/codeql-action/commit/028346e1ff2c03a735c6527b84f0a3179f2092b0"><code>028346e</code></a> Add changelog note</li> <li><a href="https://github.com/github/codeql-action/commit/5fe08473f8b98c47563f401bed5134a59ce06dee"><code>5fe0847</code></a> Update default bundle to codeql-bundle-v2.17.4</li> <li><a href="https://github.com/github/codeql-action/commit/9550da953dd3b29aedf76cd635101e48eae5eebd"><code>9550da9</code></a> Merge pull request <a href="https://redirect.github.com/github/codeql-action/issues/2311">#2311</a> from github/henrymercer/pack-missing-auth-config-error</li> <li><a href="https://github.com/github/codeql-action/commit/6548a4d65ce2414afca98f8368cabfff0541ba18"><code>6548a4d</code></a> Add configuration error for missing auth to package registry</li> <li><a href="https://github.com/github/codeql-action/commit/7927df07e268eafe499c344cd19f8bf82f4f19f7"><code>7927df0</code></a> Bump micromatch from 4.0.5 to 4.0.7 in the npm group (<a href="https://redirect.github.com/github/codeql-action/issues/2310">#2310</a>)</li> <li>Additional commits viewable in <a href="https://github.com/github/codeql-action/compare/d39d31e687223d841ef683f52467bd88e9b21c14...f079b8493333aace61c81488f8bd40919487bd9f">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore <dependency name> major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself) - `@dependabot ignore <dependency name> minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself) - `@dependabot ignore <dependency name>` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself) - `@dependabot unignore <dependency name>` will remove all of the ignore conditions of the specified dependency - `@dependabot unignore <dependency name> <ignore condition>` will remove the ignore condition of the specified dependency and ignore conditions </details> Closes #22605. PiperOrigin-RevId: 640172972 Change-Id: Ia9efb1ea38e992dceaa75d8ba9263ab59c0042df
-
- Jun 04, 2024
-
-
Pedro Liberal Fernndez authored
This change introduces the flag `--experimental_inmemory_sandbox_stashes` to track in memory the contents of the stashes stored with `--reuse_sandbox_directories=true` With the old behavior Bazel has to perform a lot of I/O to read the contents of each stash before reusing it in a new action. Essentially, it checks every directory and subdirectory in the stashed sandbox to find out which files are different to the inputs of the new action about to be executed. With in-memory stashes we associate each stash to the symlinks that needed to be created for that action. We also store the time at which these symlinks were created. In a background thread after the action has finished executing we stat every directory and for the ones that have changed (this should be rare) we update the contents. Because we only read the contents of the directories that have changed we do much less I/O than before. If an action purposefully changes a sandbox symlink in-place, this won't be detected by statting the directory. I don't know any use case for this since the symlink itself is an implementation detail to achieve sandboxing. For this reason, manipulation of sandbox symlinks in-place is not supported. Depending on the build this change might have a significant effect on memory. It should generally improve wall time further in builds where `--reuse_sandbox_directories` already improved wall time. This change also introduces a minor optimization which is to associate each stash with the target that it was originally created for. When a new action wants to reuse a stash and there is more than one available, it will take the stash whose target is closest to its own. This is done with the assumption that targets that are closer together in the graph will have more inputs in common. Fixes #22309 . Closes #22559. PiperOrigin-RevId: 640142481 Change-Id: Iece2d718df47f403e2fe91c1bd887604eceee8ee
-
Googler authored
Work towards composable starlark transitions: #22248. PiperOrigin-RevId: 640136865 Change-Id: Ia4d45e20d4a2bbcff2f625e22b9ab53ec81927ba
-