)]}'
{
  "log": [
    {
      "commit": "255a19e019ed125fd65c02a6a0f58bae563cef2a",
      "tree": "b0f4f8c7bb9787223197cbab26888a79607fce67",
      "parents": [
        "9f648bde36dd2048524aee522ddcade56dd4dbb6"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Tue Jun 02 09:41:17 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 09:42:10 2026 -0700"
      },
      "message": "Automatic code cleanup.\n\nPiperOrigin-RevId: 925407951\nChange-Id: I617fd60b8503998b1dd0e3370ac20c746c01bb13\n"
    },
    {
      "commit": "9f648bde36dd2048524aee522ddcade56dd4dbb6",
      "tree": "f5f8af75036053bd83f54922dc1ce3457c216fbb",
      "parents": [
        "a78edc51d849a90b6a21319e6f74cce34c556976"
      ],
      "author": {
        "name": "Benjamin Peterson",
        "email": "benjamin@engflow.com",
        "time": "Tue Jun 02 06:47:04 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 06:48:11 2026 -0700"
      },
      "message": "upgrade asm to 9.10 (https://github.com/bazelbuild/bazel/pull/29630)\n\nhttps://github.com/bazelbuild/bazel/issues/29568\n\nCloses #29630.\n\nPiperOrigin-RevId: 925321177\nChange-Id: I3b517cf506c0a8fd9b1a8a9c937f848b15a56c4c\n"
    },
    {
      "commit": "a78edc51d849a90b6a21319e6f74cce34c556976",
      "tree": "d81b336fecc97f7cbb099afd02e3ab7dbf2954b6",
      "parents": [
        "3ea3d355bbc99c8e8f1b79e7dc9e1c6d43118339"
      ],
      "author": {
        "name": "lberki",
        "email": "lberki@google.com",
        "time": "Tue Jun 02 06:39:20 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 06:40:06 2026 -0700"
      },
      "message": "Manual rollback of https://github.com/bazelbuild/bazel/commit/acd93dc439eafbf2b1b3b1ec54ae8a9e8770a93b.\n\nThe weak interning makes serialization non-deterministic and since\nStarlarkInfoWithSchema can participate in cycles, other tricks like not\nmemoizing it or making it a shared value don\u0027t work.\n\nRELNOTES: None.\nPiperOrigin-RevId: 925318117\nChange-Id: I93b0cca85818dd5bcb1b9d82c634c17b5016d93d\n"
    },
    {
      "commit": "3ea3d355bbc99c8e8f1b79e7dc9e1c6d43118339",
      "tree": "ff68db37fb9d62f6ec177bb60ceae8ae71b1bcd2",
      "parents": [
        "de0870f4510f8459646df50090e7f7cebdcda4e5"
      ],
      "author": {
        "name": "Googler",
        "email": "noreply@google.com",
        "time": "Tue Jun 02 05:33:11 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 05:34:21 2026 -0700"
      },
      "message": "Fix crash masking when actions fail early during execution.\n\nWhen an action fails (e.g. OOM) before it can be registered with the status reporter, the cleanup process still tries to remove it. This causes a secondary \"Action not present\" error that masks the original failure.\n\nWe now track whether the action was successfully registered and only attempt to remove it if it was.\n\nPiperOrigin-RevId: 925294080\nChange-Id: I88e3fb0e96a30f90428a96ed3fcb908db954e8e2\n"
    },
    {
      "commit": "de0870f4510f8459646df50090e7f7cebdcda4e5",
      "tree": "30516af9d1c74d5f12ae72da20ac1baf1f3cd27b",
      "parents": [
        "40c4beb0dfc7dcfc83d63996d80f8e8d059f3c07"
      ],
      "author": {
        "name": "Fredrik Medley",
        "email": "fredrik@meroton.com",
        "time": "Tue Jun 02 03:32:47 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 03:33:48 2026 -0700"
      },
      "message": "Bugfix: Split large RemoteOutputService gRPC message (https://github.com/bazelbuild/bazel/pull/28758)\n\n### Description\nDirectories with too many output files creates unlimited gRPC messages for the `RemoteOutputService`. Limit the messages to `maxOutboundMessageSize`.\n\n### Motivation\nLarge directory outputs from actions in combination with Remote Output Service gives:\n```\nERROR: /code/.../BUILD.bazel:3:16: Action large_directory_ failed: (Exit 34): RESOURCE_EXHAUSTED: grpc: received message larger than max (18681338 vs. 4194304)\nTarget //:large_directory failed to build\n```\nExample `rules.bzl`:\n```\ndef _large_directory_impl(ctx):\n    output_dir \u003d ctx.actions.declare_directory(ctx.label.name + \"_\")\n    args \u003d ctx.actions.args()\n    args.add_all([output_dir], expand_directories \u003d False)\n\n    ctx.actions.run_shell(\n        outputs \u003d [output_dir],\n        command \u003d \"\"\"\ncd $1\nfor i in $(seq 1 100); do\n    mkdir $i\n    for j in $(seq 1 1000); do\n        echo $i-$j \u003e $i/$j\n    done\ndone\n\"\"\",\n        arguments \u003d [args],\n        execution_requirements \u003d {\"supports-path-mapping\": \"1\"},\n    )\n    return DefaultInfo(files \u003d depset([output_dir]))\n\nlarge_directory \u003d rule(\n    implementation \u003d _large_directory_impl,\n)\n```\nExample `BUILD.bazel`:\n```\nload(\"//:rules.bzl\", \"large_directory\")\n\nlarge_directory(\n    name \u003d \"large_directory\",\n)\n```\n\nRELNOTES: None\n\nCloses #28758.\nCloses #24705.\n\nPiperOrigin-RevId: 925246636\nChange-Id: I1c882a73fb2dc11313de7dd17b5a8d9179736eac\n"
    },
    {
      "commit": "40c4beb0dfc7dcfc83d63996d80f8e8d059f3c07",
      "tree": "6510b1fc53ef0fd0e9a7bda4d60c88979e0023a3",
      "parents": [
        "84b7f2c41af01b4346516d7af429654dec040b35"
      ],
      "author": {
        "name": "Keith Smiley",
        "email": "keithbsmiley@gmail.com",
        "time": "Tue Jun 02 02:26:04 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 02:26:50 2026 -0700"
      },
      "message": "Fix grpc connection pool race condition (https://github.com/bazelbuild/bazel/pull/29684)\n\nPreviously calling `withChannelConnection` claimed and closed a\nconnection from the `dynamicConnectionPool` instantly, even if there\nwere still remote exec requests in flight. This mean the connection went\nback into the pool and would be reused by bazel even if it already had\nthe maximum number of MAX_CONCURRENT_STREAMS in flight. The end result\nis that when you set `--jobs\u003d500` your number of concurrent remote exec\nactions could still be gated by `MAX_CONCURRENT_STREAMS` over a single\nconnection.\n\nThis seems to race based on how quickly bazel ends up creating another\nconnection before it closes the first one.\n\nRelated: https://github.com/bazelbuild/bazel/issues/11801\n\nCloses #29684.\n\nPiperOrigin-RevId: 925216366\nChange-Id: Ic7744c6a92bbeb1df2ea5faeb83869403ef5dd96\n"
    },
    {
      "commit": "84b7f2c41af01b4346516d7af429654dec040b35",
      "tree": "a8297ac3a1754eeb4502ffd4db4ed427000e3dc2",
      "parents": [
        "b12fbe12714f6145d7832f3cdbf1531042244734"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Tue Jun 02 02:24:24 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Jun 02 02:25:32 2026 -0700"
      },
      "message": "Replace build-time manifest merging with run-time manifest parsing.\n\nTo make it possible for the LC and SC to be built at different CLs, and potentially contain a different set of module opening directives.\n\nPiperOrigin-RevId: 925215687\nChange-Id: I313b745f8c9436a667fb495916043469bbd64841\n"
    },
    {
      "commit": "b12fbe12714f6145d7832f3cdbf1531042244734",
      "tree": "9a2e3f85d89c0ed7ee0c6895f93e06dc34643736",
      "parents": [
        "bda3d1c2b0dd446cfe6918c424deeda2e4efd25f"
      ],
      "author": {
        "name": "Benjamin Peterson",
        "email": "benjamin@engflow.com",
        "time": "Fri May 22 13:22:10 2026 -0700"
      },
      "committer": {
        "name": "Hee Cha (xWF)",
        "email": "heec@google.com",
        "time": "Mon Jun 01 15:13:08 2026 -0700"
      },
      "message": "upgrade asm to 9.10\n\nhttps://github.com/bazelbuild/bazel/issues/29568\n\nPartial commit for third_party/*, see #29630.\n\nChange-Id: I539b33105e10d62913ada28f6f9e635b3ad27b5d\nSigned-off-by: iancha1992 \u003cheec@google.com\u003e\n"
    },
    {
      "commit": "bda3d1c2b0dd446cfe6918c424deeda2e4efd25f",
      "tree": "8b3517cff9b77720627b6179974f1225234e2567",
      "parents": [
        "8cc89cc51ebb18d9635b4ee9b12d44f85fa5f3e3"
      ],
      "author": {
        "name": "tedx",
        "email": "tedx@google.com",
        "time": "Mon Jun 01 13:22:53 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 13:24:12 2026 -0700"
      },
      "message": "Silence most MSVC warnings from external deps\n\nManually silence each individual warning, because MSVC throws _another_ warning\nif you use /w or /W0.\n\nThere is at least still one more warning (D9002) due to the `-std\u003dc99` option\nbeing unknown to MSVC (it expects /std\u003dc99). This needs to be fixed in\nzstd-jni\u0027s bzlmod overlay.\n\nPiperOrigin-RevId: 924878396\nChange-Id: I30ea075a71420fef1cb94748fe9d786a88074f0e\n"
    },
    {
      "commit": "8cc89cc51ebb18d9635b4ee9b12d44f85fa5f3e3",
      "tree": "dca70ba88bca36dd0ebad4e22b0c2f4113138b0c",
      "parents": [
        "a11ca574c706141a2d6baa345f5085b7a5bbe394"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Mon Jun 01 10:48:38 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 10:49:30 2026 -0700"
      },
      "message": "Fix memory leak in ijar.\n\nPiperOrigin-RevId: 924795470\nChange-Id: I7c74764fe96b18d0d968257beda3dbac9b925c22\n"
    },
    {
      "commit": "a11ca574c706141a2d6baa345f5085b7a5bbe394",
      "tree": "c83bafbd196ea4d7ce0d0999558af55185777c9f",
      "parents": [
        "b8a70ffed6ab5501d9bcbc3ecccebc7746d6b9a2"
      ],
      "author": {
        "name": "Keith Smiley",
        "email": "keithbsmiley@gmail.com",
        "time": "Mon Jun 01 09:27:10 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 09:28:02 2026 -0700"
      },
      "message": "Fix ArtifactFactory.getPathFromSourceExecPath for external repos (https://github.com/bazelbuild/bazel/pull/29657)\n\nThis function is only called for include scanning, which isn\u0027t used\nwidely externally today. Previously if a source file was from an\nexternal repo it would not be correctly found by this function, which\nassumed all source files are relative to the workspace.\n\nCloses #29657.\n\nPiperOrigin-RevId: 924751755\nChange-Id: Ifadb17823a3247b98cbeea13c98e31b05de8e19e\n"
    },
    {
      "commit": "b8a70ffed6ab5501d9bcbc3ecccebc7746d6b9a2",
      "tree": "85a65b5ccac711d5b919e2899efccaa0f5c591d7",
      "parents": [
        "a7f3c98636b04b7295735a129ce6d27479baa3cd"
      ],
      "author": {
        "name": "tedx",
        "email": "tedx@google.com",
        "time": "Mon Jun 01 09:05:54 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 09:07:04 2026 -0700"
      },
      "message": "Reduce excessive warning verbosity in MSVC builds\n\nThis change eliminates _some_ kinds of spammy MSVC compiler warnings originating from third-party libraries, such as:\n\n```\nexternal/grpc+/src/core/lib/channel/channel_stack_builder.cc(52): note: see reference to function template instantiation \u0027std::_Optional_destruct_base\u003c_Ty,true\u003e::_Optional_destruct_base\u003c__int64\u003e(std::in_place_t,__int64 \u0026\u0026) noexcept\u0027 being compiled\n        with\n        [\n            _Ty\u003dint\n        ]\n```\n\nThere are still several other classes of spammy warnings that should be silenced or fixed, such as:\n\n```\n(22:34:11) INFO: From Compiling c/blake3_avx512_x86-64_windows_msvc.asm:\nMASM : warning A4018:invalid command-line option : /bigobj\n```\n\n```\n(22:34:14) INFO: From Compiling absl/time/internal/cctz/src/time_zone_fixed.cc [for tool]:\ncl : Command line warning D9025 : overriding \u0027/W3\u0027 with \u0027/w\u0027\n```\nNote that Bazel-intrinsic code (i.e. things that are not third-party included libraries) will still throw these warnings.\nPiperOrigin-RevId: 924741258\nChange-Id: Iba404b43d6fc5d685848db9606e92148e56259f8\n"
    },
    {
      "commit": "a7f3c98636b04b7295735a129ce6d27479baa3cd",
      "tree": "319b1bfb14e6cf49b8dae47e8646f35aff502815",
      "parents": [
        "4a8e9dd8000879ad2e18e3dab2911ac5f953ae17"
      ],
      "author": {
        "name": "Googler",
        "email": "noreply@google.com",
        "time": "Mon Jun 01 07:16:49 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 07:17:47 2026 -0700"
      },
      "message": "Support dots in configuration segments for path mapping\n\nPiperOrigin-RevId: 924692427\nChange-Id: I953d237f2b6d725b896897949cdabf471b84a151\n"
    },
    {
      "commit": "4a8e9dd8000879ad2e18e3dab2911ac5f953ae17",
      "tree": "7e03593255d9380a45bdac6baf7b36c180d760fd",
      "parents": [
        "49a739012d87dae8144adb370452ffacd8c4fba8"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Mon Jun 01 06:36:20 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 06:37:22 2026 -0700"
      },
      "message": "Automatic code cleanup.\n\nPiperOrigin-RevId: 924676002\nChange-Id: I4047997d9e606001c729d7787c909ba1434fd7e5\n"
    },
    {
      "commit": "49a739012d87dae8144adb370452ffacd8c4fba8",
      "tree": "ac25f8e4ece5c7c11a0b7bd5663a0e945377dcc7",
      "parents": [
        "f609edf83a280a72e4ff21843c77821a62efb1c4"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Mon Jun 01 06:14:25 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 06:17:13 2026 -0700"
      },
      "message": "Automatic code cleanup.\n\nPiperOrigin-RevId: 924667408\nChange-Id: Ife87e7a58b63b2f5cf6010ad08ad523578ac2e6d\n"
    },
    {
      "commit": "f609edf83a280a72e4ff21843c77821a62efb1c4",
      "tree": "813904075dd959dc24ff5598007c2e34c1c28b5a",
      "parents": [
        "fb6bfd0c9755c004deccd5060b4439ec770095b4"
      ],
      "author": {
        "name": "cpovirk",
        "email": "cpovirk@google.com",
        "time": "Mon Jun 01 06:00:23 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 06:01:27 2026 -0700"
      },
      "message": "Automatic code cleanup.\n\nPiperOrigin-RevId: 924661855\nChange-Id: Ica944933515bdf52c34a5f7098dc92120597d7b2\n"
    },
    {
      "commit": "fb6bfd0c9755c004deccd5060b4439ec770095b4",
      "tree": "ebd21704985e30b9441ecc423dc62be12747d882",
      "parents": [
        "c9a05c3af4e6bf7a2bd9ab0a29ada8f33eab76cf"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Mon Jun 01 01:45:48 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Jun 01 01:46:35 2026 -0700"
      },
      "message": "Internal change\n\nPiperOrigin-RevId: 924557816\nChange-Id: Id0a0eb3f621dbdd69c5eee6051c2ff8644cefac1\n"
    },
    {
      "commit": "c9a05c3af4e6bf7a2bd9ab0a29ada8f33eab76cf",
      "tree": "877d7035c4692a4400da611118ca9768ee5f4197",
      "parents": [
        "da018aaf3af8b6aea2d22dfc0b1688cfa440b061"
      ],
      "author": {
        "name": "adgar",
        "email": "adgar@google.com",
        "time": "Fri May 29 12:29:29 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 29 12:31:23 2026 -0700"
      },
      "message": "When multiple actions fail within a target or aspect, the most severe error is reported instead of the first error.\n\nRELNOTES: BuildFinished events in BEP will consistently contain an \"infrastructure-caused\" detailed exit code when a single target contains both infrastructure-caused and user-caused exit codes in its failed actions.\nPiperOrigin-RevId: 923546585\nChange-Id: I0ccac11d6c36e451ef03e8997a549d85cca9d76c\n"
    },
    {
      "commit": "da018aaf3af8b6aea2d22dfc0b1688cfa440b061",
      "tree": "810985e17e91b197a6df6f5310534810f77a8576",
      "parents": [
        "e9e14c757bcf3514189d9ad5b84d95618097ce62"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Fri May 29 09:17:14 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 29 09:18:07 2026 -0700"
      },
      "message": "Automated rollback of commit b2fe084e5a88983d79611041dfa7940d5b4ee482.\n\n*** Reason for rollback ***\n\nhttps://github.com/bazelbuild/bazel/commit/6728e381752f49171c1fa8419c37cae2875816ad\n\n*** Original change description ***\n\nMake PathFragmentPrefixTrie case-aware for case-insensitive OS\n\nOn Windows (and other case-insensitive filesystems), PathFragmentPrefixTrie\nmatching failed when query paths were case-normalized (e.g. by SkyKeyInterner)\nbut the trie was constructed with non-normalized paths (e.g. from user config).\n\nThis change:\n- Adds `isCaseSensitive()` to `OsPathPolicy` to query host filesystem behavior.\n- Updates `PathFragmentPrefixTrie` to optionally support case-insensitive matching (defaulting to host OS p...\n\n***\n\nPiperOrigin-RevId: 923449478\nChange-Id: Iebb36554227e85798ff91dc42d43de1451ad9385\n"
    },
    {
      "commit": "e9e14c757bcf3514189d9ad5b84d95618097ce62",
      "tree": "0837f13d2f918c5251a1496b234319f3a4d86b5f",
      "parents": [
        "75ec83cacad068b04947c2bf08f68e1054b2126e"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Fri May 29 09:07:46 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 29 09:08:30 2026 -0700"
      },
      "message": "Also deduplicate when serializing invalidation data.\n\nPiperOrigin-RevId: 923445314\nChange-Id: I119d9456c6d53b7ef99fcbfc080aca7838ba8522\n"
    },
    {
      "commit": "75ec83cacad068b04947c2bf08f68e1054b2126e",
      "tree": "bdc91b8ff3464f3967e1977a521c6b76c03cf260",
      "parents": [
        "17ed1e02d84054350a5842ca0343c8de635258d8"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Fri May 29 05:13:48 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 29 05:14:35 2026 -0700"
      },
      "message": "Improve performance of `BuiltinRestriction` checks.\n\n`BuiltinRestriction` checks an allowlist on every private starlark API call, making it a hot code path. Improvements:\n\n* Check all main repo allowlist entries first to avoid applying `RepositoryMapping` if possible.\n* Move more common allowlist entries earlier in the allowlist to short-circuit.\n* Replace streams with standard loops.\n* Cache the conversion from starlark to java representation.\n\nPiperOrigin-RevId: 923346855\nChange-Id: I76e0e170a923587485dd0941539f8a9dd78515c2\n"
    },
    {
      "commit": "17ed1e02d84054350a5842ca0343c8de635258d8",
      "tree": "300e23865d54be4719ddf14741fadc53f817ef40",
      "parents": [
        "5fbb25a42d7100ef6bf4c6d82f165fb23786b425"
      ],
      "author": {
        "name": "pzembrod",
        "email": "pzembrod@google.com",
        "time": "Fri May 29 05:04:48 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 29 05:05:56 2026 -0700"
      },
      "message": "Make CcCommon members private that are only used internally.\n\nThis change restricts the visibility of several constants and methods within CcCommon to private, as they are not accessed from outside the class.\n\nPiperOrigin-RevId: 923343250\nChange-Id: I96264b7308749fe38c582f33179a3f022c8ce381\n"
    },
    {
      "commit": "5fbb25a42d7100ef6bf4c6d82f165fb23786b425",
      "tree": "a7899081f7644baa2eebf8734750a47575da7c6b",
      "parents": [
        "cf6733f6982fc403cff14fe2b9a0fd6f9e300851"
      ],
      "author": {
        "name": "twerth",
        "email": "twerth@google.com",
        "time": "Fri May 29 04:15:30 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 29 04:16:13 2026 -0700"
      },
      "message": "Automated rollback of commit f947724c4577f2c69735cb8217b47c74653f9b2d.\n\n*** Reason for rollback ***\n\nCauses OOMs during execution phase.\n\nPiperOrigin-RevId: 923322847\nChange-Id: Ie59da6458d74a1bfeee0ee32d530adfd1d198867\n"
    },
    {
      "commit": "cf6733f6982fc403cff14fe2b9a0fd6f9e300851",
      "tree": "93a2329ff8835d68319ec56a0e084b8d4452d661",
      "parents": [
        "94ea1c8fafa2a2c8b9ce12137be6138db35e4f64"
      ],
      "author": {
        "name": "bgorshenev",
        "email": "bgorshenev@google.com",
        "time": "Thu May 28 18:01:51 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 18:02:53 2026 -0700"
      },
      "message": "Allow cc compilation actions to accept a user-defined comment.\n\nIn scenarios where a rule compiles the same file under different conditions, these actions may otherwise be indistinguishable.\n\nPiperOrigin-RevId: 923078430\nChange-Id: I9115d09b8a588caf1b44ef8478035b471992b135\n"
    },
    {
      "commit": "94ea1c8fafa2a2c8b9ce12137be6138db35e4f64",
      "tree": "74aea3c7b93cbbac78f2489d3d2179eaeee6c2a7",
      "parents": [
        "225bac5b457a6fb49ac35c2589daf0edf27e6837"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Thu May 28 13:56:07 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 13:56:59 2026 -0700"
      },
      "message": "Gracefully handle `IOException` in `FileSystemValueCheckerInferringAncestors`.\n\nExceptions may occur on files that were included in a prior build, but are not relevant to the current build. Instead of failing hard on any `IOException`, make it result in invalidating the relevant key and conservatively check ancestors. If the key is actually relevant to the current build, the failure will surface during the evaluation.\n\nPiperOrigin-RevId: 922959293\nChange-Id: I4f0854f70acc4a023a601fd0908fdc3a891361cf\n"
    },
    {
      "commit": "225bac5b457a6fb49ac35c2589daf0edf27e6837",
      "tree": "3dc3cc916d349c811ff4f3508588835beb363e54",
      "parents": [
        "fcb1166f5cf8e3ac07e15a24195471cd332f89df"
      ],
      "author": {
        "name": "Chi Wang",
        "email": "coeuvre@gmail.com",
        "time": "Thu May 28 13:09:02 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 13:11:30 2026 -0700"
      },
      "message": "Reenable sandbox tests on RBE. (https://github.com/bazelbuild/bazel/pull/29668)\n\nCloses #29668.\n\nPiperOrigin-RevId: 922933513\nChange-Id: I8257aa2d2e8954877d990ea7b919a6df7bec5007\n"
    },
    {
      "commit": "fcb1166f5cf8e3ac07e15a24195471cd332f89df",
      "tree": "e8b836a8306eb4f9bc487b75198398d4fe35b002",
      "parents": [
        "d458987ff126b4d207977eb0447696dd7b739a1f"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Thu May 28 13:02:14 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 13:03:26 2026 -0700"
      },
      "message": "Propagate transience of `DetailedIOException` in `FileStateFunction`.\n\nAlso make `DetailedIOException` implement `DetailedException` so that target pattern parsing errors get the correct detailed code.\n\nPiperOrigin-RevId: 922929879\nChange-Id: I528aa246270a619db8560e536e55be07a20d9d7f\n"
    },
    {
      "commit": "d458987ff126b4d207977eb0447696dd7b739a1f",
      "tree": "291efc2716bb7d34a03e83365a1be93162ba85d1",
      "parents": [
        "2e29213d00f444e8b324e99703d5b8e6398dc6b9"
      ],
      "author": {
        "name": "Bazel Release System",
        "email": "noreply@google.com",
        "time": "Thu May 28 19:57:21 2026 +0000"
      },
      "committer": {
        "name": "Summers Pittman",
        "email": "mrsummers@google.com",
        "time": "Thu May 28 19:57:21 2026 +0000"
      },
      "message": "Release 10.0.0-pre.20260520.2 (2026-05-28)\n\nBaseline: 3d40c422df61c4adb243ef68fff7e84584019a1f\n\nThis release contains contributions from many people at Google, as well as .\n"
    },
    {
      "commit": "2e29213d00f444e8b324e99703d5b8e6398dc6b9",
      "tree": "e9faf2e493cb6b3439458f8fd26df6f2e56fa18c",
      "parents": [
        "96ed0a54202ce69f3f0b0225320cf340bb348dfc"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Thu May 28 11:29:08 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 11:29:59 2026 -0700"
      },
      "message": "Invalidate unresolved symlink info after deletion in the RAFS (https://github.com/bazelbuild/bazel/pull/29495)\n\n### Description\nWhen a path is deleted while using the RemoteActionFileSystem, cached symlink resolutions have to be invalidated for the original path and all intermediate resolved paths, not just the final resolved path.\n\n### Motivation\nFixes #29480\n\n### Build API Changes\n\nNo\n\n### Checklist\n\n- [x] I have added tests for the new use cases (if any).\n- [ ] I have updated the documentation (if applicable).\n\n### Release Notes\n\nRELNOTES: None\n\nCloses #29495.\n\nPiperOrigin-RevId: 922882682\nChange-Id: I59fadf42357d56b141e9a1406787cf13ce36bf33\n"
    },
    {
      "commit": "96ed0a54202ce69f3f0b0225320cf340bb348dfc",
      "tree": "faa97a67bffd0df3e3e635bac1b0231cf5b297b4",
      "parents": [
        "100272284dde7a7504e7581604ddcf826788b6c8"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Thu May 28 09:11:02 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 09:12:23 2026 -0700"
      },
      "message": "Remove NO_SIGNAL_OVERRIDE\u003d1 from tests that don\u0027t need it.\n\nPiperOrigin-RevId: 922807667\nChange-Id: I96699f926f07e074fafa223437a657007246749f\n"
    },
    {
      "commit": "100272284dde7a7504e7581604ddcf826788b6c8",
      "tree": "62182fa9a9e8981d6db0a1f271f5119a06f83cf5",
      "parents": [
        "b2fe084e5a88983d79611041dfa7940d5b4ee482"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Thu May 28 08:00:27 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 08:01:41 2026 -0700"
      },
      "message": "Cache CAS interactions at lower layer to fix lost input handling (https://github.com/bazelbuild/bazel/pull/29551)\n\n### Description\nThe error handling for uploads in `UploadTask` depends on the exec path of the uploaded file, which wasn\u0027t part of the `casUploadCache` cache key. Fix this by moving deduplication logic for CAS uploads and `FindMissing` calls into `RemoteCacheClient`.\n\n### Motivation\nAvoids spurious Bazel failures caused by lost inputs that can\u0027t be recovered from via build or action rewinding due to `CacheNotFoundException` being marked with exec paths of inputs to concurrent actions (see the new test case).\n\n### Build API Changes\n\nNo\n\n### Checklist\n\n- [x] I have added tests for the new use cases (if any).\n- [ ] I have updated the documentation (if applicable).\n\n### Release Notes\n\nRELNOTES: Fixed an issue that caused Bazel to fail on a lost input even with build or action rewinding enabled.\n\nCloses #29551.\n\nPiperOrigin-RevId: 922775351\nChange-Id: Ia22580325c3bc92b56d202e5c24d3630fc8c27a0\n"
    },
    {
      "commit": "b2fe084e5a88983d79611041dfa7940d5b4ee482",
      "tree": "05549e5e1d12b1e8e0c28244b1459e9481a6cb5a",
      "parents": [
        "b55fb653cc62c017a24b0e54090faeb620dac7cf"
      ],
      "author": {
        "name": "Googler",
        "email": "noreply@google.com",
        "time": "Thu May 28 03:37:12 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 03:38:28 2026 -0700"
      },
      "message": "Make PathFragmentPrefixTrie case-aware for case-insensitive OS\n\nOn Windows (and other case-insensitive filesystems), PathFragmentPrefixTrie\nmatching failed when query paths were case-normalized (e.g. by SkyKeyInterner)\nbut the trie was constructed with non-normalized paths (e.g. from user config).\n\nThis change:\n- Adds `isCaseSensitive()` to `OsPathPolicy` to query host filesystem behavior.\n- Updates `PathFragmentPrefixTrie` to optionally support case-insensitive matching (defaulting to host OS policy) by normalizing keys to lowercase.\n- Re-enables `BazelSkycacheIntegrationTest` on Windows by removing `no_windows` tag.\n\nPiperOrigin-RevId: 922671049\nChange-Id: I0e56356cd722f4c273c381ef9fc3d87fd1851ffb\n"
    },
    {
      "commit": "b55fb653cc62c017a24b0e54090faeb620dac7cf",
      "tree": "c896fcea8d9f504b974519883dcd1296bc7ecc80",
      "parents": [
        "f5f03353236ed5b7118e67ab489d8e962c51433e"
      ],
      "author": {
        "name": "pzembrod",
        "email": "pzembrod@google.com",
        "time": "Thu May 28 02:16:20 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 02:17:49 2026 -0700"
      },
      "message": "ArgumentProcessor: Remove remove remaining fastcall() code and references.\n\nPiperOrigin-RevId: 922639810\nChange-Id: I36f05732aedfce4e145acaa06179dfce64d73f4c\n"
    },
    {
      "commit": "f5f03353236ed5b7118e67ab489d8e962c51433e",
      "tree": "682ecb7c94b4a3ae3aaab5419730596e0046c6b7",
      "parents": [
        "f5088c8f3e85fad5b42259be315050aa70674a13"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Thu May 28 01:50:44 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 01:51:56 2026 -0700"
      },
      "message": "Rename TraversalMode enums to be clearer, and skip Artifact nodes for minimize memory.\n\nArtifact nodes don\u0027t exist pre-execution anyway.\n\nPiperOrigin-RevId: 922628410\nChange-Id: Ieeeeec0489a8e2ac0c4bf7997e04a7b167e315cd\n"
    },
    {
      "commit": "f5088c8f3e85fad5b42259be315050aa70674a13",
      "tree": "f320cc168f16d8f7d10cf15b23b59aa0d89bc7c6",
      "parents": [
        "f5aca399c9b335277344f05b9f286c470b73c384"
      ],
      "author": {
        "name": "Will Stranton",
        "email": "2659963+willstranton@users.noreply.github.com",
        "time": "Thu May 28 00:30:44 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 28 00:34:09 2026 -0700"
      },
      "message": "Add `exclude` param to `rctx.watch_tree()` (https://github.com/bazelbuild/bazel/pull/29444)\n\n### Description\n\nA new `exclude` param is added to `rctx.watch_tree()`.  It takes in glob patterns to be excluded from the watch. #25764 describes a case where a user wants to watch a git directory and ignore the `.git` subdirectory b/c it contains an unwatchable socket file. This now allows that to work.\n\n### Implementation details:\n\nThe DirTree RepoRecordedInput now needs to encode the exclude glob patterns for its internal representation. This implementation encodes it similar to web\u0027s query strings, but instead of a `?` to serve as the separator between\nthe path and the query string, `?/../` is used instead.  This takes advantage of the fact that the underlying path representation is a `PathFragment`, which is normalized, meaning that a `/../` could never appear in the valid path.\n\nFor example:\n\n`/example/path?/../excludes\u003d**%2F*.ignored,**%2F.git`\n\nencodes the path `/example/path` with the query string `?excludes\u003d**/*.ignored,**/.git` which represent two glob patterns (comma-separated) to exclude.\n\nThe `DirectoryTreeDigestValue.Key` is updated with the necessary metadata to allow glob exclusions (a base path along with the excluded glob patterns).\n\nThen in `DirectoryTreeDigestFunction.java`, that metadata, the base glob path, and the excluded glob patterns are joined together to match/filter the directory entries being used to compute the digest.\n\n### Motivation\nSee #25764\n\n### Build API Changes\n\n\u003e 1. Has this been discussed in a design doc or issue? (Please link it)\n\nSee #25764 and the review comments in https://github.com/bazelbuild/bazel/pull/21362#issuecomment-1947345998\n\nThe linked comment suggested adding a `glob` or `include` parameter along with an `exclude` parameter. This implementation only adds an `exclude` parameter to address the current concern.\n\n\u003e 2. Is the change backward compatible?\n\nYes, the functionality remains the same if no `exclude` value is provided.\n\n\u003e 3. If it\u0027s a breaking change, what is the migration plan?\n\nNo, not a breaking change. No migration plan needed.\n\n### Checklist\n\n- [X] I have added tests for the new use cases (if any).\n- [X] I have updated the documentation (if applicable).\n\n### Release Notes\n\nRELNOTES[NEW]: Add an `exclude` param to `rtx.watch_tree()` to allow excluding glob patterns from watch.\n\nFixes #25764\n\nCloses #29444.\n\nPiperOrigin-RevId: 922596404\nChange-Id: I12e8b083a8a08f7eca73ee12d4d417fdbc3ef01c\n"
    },
    {
      "commit": "f5aca399c9b335277344f05b9f286c470b73c384",
      "tree": "6e81ed9d2f61e015555a2bc0bfe95373265c39b0",
      "parents": [
        "f947724c4577f2c69735cb8217b47c74653f9b2d"
      ],
      "author": {
        "name": "lberki",
        "email": "lberki@google.com",
        "time": "Wed May 27 22:05:52 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 27 22:06:51 2026 -0700"
      },
      "message": "Refactor InMemoryFingerprintValueStore to use a ByteString-to-ByteString map.\n\nThis makes it so that two keys are equals exactly when their bytes are the same. Before, a StringKey would not be equals to a PackedFingerprint even if they contained the same bytes.\n\nRELNOTES: None.\nPiperOrigin-RevId: 922539083\nChange-Id: I0ac6a4da4ed0329c94bc509450a50ae1aefac5b4\n"
    },
    {
      "commit": "f947724c4577f2c69735cb8217b47c74653f9b2d",
      "tree": "8db033ec1a41b1aac45624eb4051e739f2e1bb32",
      "parents": [
        "98793561498742ec88b49ab5bca4132e052828f5"
      ],
      "author": {
        "name": "nharmata",
        "email": "nharmata@google.com",
        "time": "Wed May 27 22:04:51 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 27 22:05:45 2026 -0700"
      },
      "message": "Use a low-cost strong interning strategy for some `NestedSet` instances. This saves a significant amount of heap in the analysis phase.\n\nPiperOrigin-RevId: 922538642\nChange-Id: Ia88e496d1a6e6eaa59684713d74df09dcd0abe5b\n"
    },
    {
      "commit": "98793561498742ec88b49ab5bca4132e052828f5",
      "tree": "8c3cf29e60846185af5e929d6ec13bfc9acb276e",
      "parents": [
        "d3c9a2080e30cecd661c02a8f0cce84caa696aed"
      ],
      "author": {
        "name": "brandjon",
        "email": "brandjon@google.com",
        "time": "Wed May 27 10:19:18 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 27 10:20:12 2026 -0700"
      },
      "message": "Correctly enforce load visibility for prototypes packages\n\nThis fixes a bug introduced in https://github.com/bazelbuild/bazel/commit/6956d3c242455c6bb5a6917dd445fd5c1be64603 that would allow load visibility violations across two prototypes packages.\n\nAlso clarify some flag docstrings.\n\nPiperOrigin-RevId: 922206838\nChange-Id: Id715c6d892b966bdce62c2cf6255998ce9abcb46\n"
    },
    {
      "commit": "d3c9a2080e30cecd661c02a8f0cce84caa696aed",
      "tree": "fe9350bd10b98c79e768cbd313fca3e0df2c3bf4",
      "parents": [
        "1a04a7b58cb55b80f4968fe5485fab55dca8f608"
      ],
      "author": {
        "name": "brandjon",
        "email": "brandjon@google.com",
        "time": "Wed May 27 09:03:51 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 27 09:04:58 2026 -0700"
      },
      "message": "Slight refactoring of prototypes/experimental visibility checking code\n\nMove the logic that prototype and experimental code may load prototype code, into the prerequisite validator.\n\nPiperOrigin-RevId: 922165638\nChange-Id: Ibadac4a5dc3ec8af5df29cb82ecb763d9b023bc6\n"
    },
    {
      "commit": "1a04a7b58cb55b80f4968fe5485fab55dca8f608",
      "tree": "da1374c8fb572e1643a8d40c7dd9403919caf25b",
      "parents": [
        "d84b24dce38fdb7e44feaad32aed8eb06ae68aec"
      ],
      "author": {
        "name": "Chi Wang",
        "email": "coeuvre@gmail.com",
        "time": "Wed May 27 08:10:06 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 27 08:12:01 2026 -0700"
      },
      "message": "Use released bazel_ci_rules 2.0.0. (https://github.com/bazelbuild/bazel/pull/29661)\n\nCloses #29661.\n\nPiperOrigin-RevId: 922138625\nChange-Id: I7cbbc213cafdda874f836265608a01c8a3c676c2\n"
    },
    {
      "commit": "d84b24dce38fdb7e44feaad32aed8eb06ae68aec",
      "tree": "e26c90c2389ee21495a235acf3f5553a1c36718e",
      "parents": [
        "2c4609eb72338821f0ac0097a11f14fff22e58f5"
      ],
      "author": {
        "name": "Yonatan Goldschmidt",
        "email": "yonatan.goldschmidt@wiz.io",
        "time": "Wed May 27 06:35:12 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 27 06:36:29 2026 -0700"
      },
      "message": "linux-sandbox: Retry remount-ro on EBUSY (https://github.com/bazelbuild/bazel/pull/29433)\n\n### Description\nMakeFilesystemMostlyReadOnly issues MS_BIND|MS_REMOUNT|MS_RDONLY for every entry in /proc/self/mounts. On busy mounts (notably \"/\") this races with concurrent symlink path lookups: pick_link() in fs/namei.c calls touch_atime(), which holds the per-mount writer counter via mnt_get_write_access() across the inode update. mnt_hold_writers() in the remount path returns -EBUSY if the counter is non-zero, causing the sandbox setup to die.\n\nThe race window is short (a single update_time call), so a brief backoff-and-retry resolves it cleanly. Use the same constants runc has shipped since 2014 (5 attempts, 100 ms apart).\n\nThis is my proposal for https://github.com/bazelbuild/bazel/issues/29424.\n\n### Motivation\nFixes https://github.com/bazelbuild/bazel/issues/29424.\n\n### Build API Changes\nNo\n\n### Checklist\n\n- [x] I have added tests for the new use cases (if any).\n- [x] I have updated the documentation (if applicable).\n\n### Release Notes\n\nRELNOTES: None\n\nCloses #29433.\n\nPiperOrigin-RevId: 922094350\nChange-Id: I7ff8b1b5ad7992f164b44a6742c4f70cadb18f00\n"
    },
    {
      "commit": "2c4609eb72338821f0ac0097a11f14fff22e58f5",
      "tree": "660c43c886ed4dad97f2b566c1cd66b73baee1ce",
      "parents": [
        "87f096a2c6b21b1214955caf127b4975c5a58a88"
      ],
      "author": {
        "name": "hvd",
        "email": "hvd@google.com",
        "time": "Wed May 27 02:57:00 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 27 02:58:04 2026 -0700"
      },
      "message": "Migrate the module flag tests to Starlark\n\nThe tests are removed from Bazel and added to rules_java\n\n(ignore-relnotes)\n\nPiperOrigin-RevId: 922006563\nChange-Id: Id725dd3639b8193a28a73648e48482a50cfd883b\n"
    },
    {
      "commit": "87f096a2c6b21b1214955caf127b4975c5a58a88",
      "tree": "bd36ee18221881a82d3a205f250be0c2818f9cb0",
      "parents": [
        "81305960cd05264b4031abba99e2387e7caa270b"
      ],
      "author": {
        "name": "Fabian Meumertzheim",
        "email": "fabian@meumertzhe.im",
        "time": "Tue May 26 23:52:06 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 23:53:14 2026 -0700"
      },
      "message": "Add `facts_version` parameter to `module_extension` (https://github.com/bazelbuild/bazel/pull/29556)\n\n### Description\n\nAdds a new integer `facts_version` parameter to `module_extension(...)` that is persisted in the lockfile alongside the facts and checked against the current value before the extension runs. If the stored version does not match, the persisted facts are discarded and the extension is invoked with an empty `module_ctx.facts`.\n\nVersions are stored in a new top-level lockfile object. The jq merge driver is taught to drop facts from any lockfile whose own `factsVersions` entry for an extension is lower than the maximum observed across all input lockfiles before performing the shallow merge, preserving only the entries written by the newest schema.\n\n### Motivation\n\nFixes #29483.\n\n### Build API Changes\n\n`module_extension(...)` gains a new named-only `facts_version` int parameter (default `0`, must be non-negative). A new parameter on `module_extension` is necessary since the version has to be known before the extension is evaluated.\n\n### Checklist\n\n- [x] I have added tests for the new use cases (if any).\n- [x] I have updated the documentation (if applicable).\n\n### Release Notes\n\nRELNOTES: `module_extension(...)` now accepts a `facts_version` integer parameter. Bumping it invalidates the facts persisted in `MODULE.bazel.lock` for that extension, allowing extension authors to make breaking changes to the facts schema without risking misinterpretation by older code paths.\n\nCloses #29556.\n\nPiperOrigin-RevId: 921924739\nChange-Id: I514f5e1b21a6c51fd88633a462d220d33a78d180\n"
    },
    {
      "commit": "81305960cd05264b4031abba99e2387e7caa270b",
      "tree": "20c8ad89bd4c8c65e53032f7ee207676063b8726",
      "parents": [
        "6534c8f2afd3ef0f06acb40ca52127494c87b6a5"
      ],
      "author": {
        "name": "Son Luong Ngoc",
        "email": "sluongng@gmail.com",
        "time": "Tue May 26 23:27:09 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 23:28:22 2026 -0700"
      },
      "message": "downloader: fix opaque file URI names (https://github.com/bazelbuild/bazel/pull/29549)\n\nFix a Bazel 9.1.0 regression where repository_ctx.download\ncould crash on opaque file URIs such as file:../archive.tgz. The\nURL-to-URI migration changed basename extraction because URI.getPath()\nreturns null for these inputs, unlike URL#getPath(). DownloadManager\nthen passed null to PathFragment.create while building distdir\ncandidate names.\n\nReuse one basename helper for download destinations and distdir\nlookups, falling back to the scheme-specific part for opaque URIs.\nAdd regression coverage for the explicit-output and typed-download\npaths.\n\nFixes #29393.\n\nCloses #29549.\n\nPiperOrigin-RevId: 921914147\nChange-Id: I0adcf96e63f12bd8051979fedb2d4de2891c90c3\n"
    },
    {
      "commit": "6534c8f2afd3ef0f06acb40ca52127494c87b6a5",
      "tree": "5862b29025d8d41f98cdd3a3a302fa9873f2bc42",
      "parents": [
        "df5e279409fda23ce89836f0dd2f4282770397dc"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Tue May 26 17:46:47 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 17:47:32 2026 -0700"
      },
      "message": "Optimize the memory footprint of schemaful provider instances with \u003c\u003d 5 fields.\n\nA dedicated subclass for each field count \u003c\u003d 5 is used to forgo an `Object[]`. Beyond 5 fields, the returns are negligable.\n\nPiperOrigin-RevId: 921785834\nChange-Id: I124c4bd702efcada0cf9d6c2a13bdb6c3dd13c4c\n"
    },
    {
      "commit": "df5e279409fda23ce89836f0dd2f4282770397dc",
      "tree": "7f29b190674a13809a6fe0fb125aa94481e6b238",
      "parents": [
        "6956d3c242455c6bb5a6917dd445fd5c1be64603"
      ],
      "author": {
        "name": "Damian Banki",
        "email": "bankid@google.com",
        "time": "Tue May 26 14:07:31 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 14:10:24 2026 -0700"
      },
      "message": "Add support for archived tree path mapping. (https://github.com/bazelbuild/bazel/pull/29567)\n\n### Description\nThis PR enables output path mapping (config stripping) for `ArchivedTreeArtifact`s.\n\n`ArchivedTreeArtifact`s are compressed `.zip` container directories generated for remote transfer that inject a virtual prefix segment (`:archived_tree_artifacts`) immediately after the output root (e.g. `bazel-out/:archived_tree_artifacts/k8-fastbuild/bin/...`).\n\nPreviously, `StrippingPathMapper` hardcoded the configuration segment location at segment index `1` and the root-relative path at segment index `2`. This caused Bazel to strip the `:archived_tree_artifacts` prefix instead of the configuration prefix, leading to incorrect string length calculations and path translations.\n\nWe resolved this by:\n1.  Introducing a dynamic `getConfigSegmentIndex(execPath)` method that shifts the configuration segment index from `1` to `2` when the `:archived_tree_artifacts` prefix is present.\n3.  Consolidating the string-stripping regex pattern inside `StringStripper` into a single, pattern using an optional capturing group `(:archived_tree_artifacts/)?`.\n4. Adding unit and integration tests to cover the newly added functionality.\n\n### Build API Changes\n\nNo\n\n### Checklist\n\n- [x] I have added tests for the new use cases (if any).\n- [x] I have updated the documentation (if applicable).\n\n### Release Notes\n\nRELNOTES: Enabled output path mapping (config stripping) support for `ArchivedTreeArtifact`s to improve action caching under `--experimental_output_paths\u003dstrip`.\n\nCloses #29567.\n\nPiperOrigin-RevId: 921671759\nChange-Id: Ieb2452bb66a532d43d3ffa07949fb2bea91d816a\n"
    },
    {
      "commit": "6956d3c242455c6bb5a6917dd445fd5c1be64603",
      "tree": "b53f9a1d223441e29e3cad9cd496953cb8214c79",
      "parents": [
        "715c77502f3e72e99ca7ab3c4240489b835f7c3d"
      ],
      "author": {
        "name": "brandjon",
        "email": "brandjon@google.com",
        "time": "Tue May 26 12:20:55 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 12:21:40 2026 -0700"
      },
      "message": "Prevent production code from loading .bzl/.scl files defined in prototype packages.\n\nThis feature is specific to Google\u0027s monorepo.\n\nPiperOrigin-RevId: 921613485\nChange-Id: I2379d33c93148cc73d73b876767ad5f50d860593\n"
    },
    {
      "commit": "715c77502f3e72e99ca7ab3c4240489b835f7c3d",
      "tree": "e6af3434adb00da5e599ff31ee5cc6e3e30bff97",
      "parents": [
        "acd93dc439eafbf2b1b3b1ec54ae8a9e8770a93b"
      ],
      "author": {
        "name": "arostovtsev",
        "email": "arostovtsev@google.com",
        "time": "Tue May 26 11:38:07 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 11:39:18 2026 -0700"
      },
      "message": "Fix `query --output\u003dbuild` handling of None-valued selects on Label-type attrs\n\n`BuildType.Selector` saves `None` selector branch values as `null` internally\nif the type\u0027s default value is `null`; this is the case for e.g. `attr.label`\nand `attr.output`.\n\nIn this case, we want to format the value as `None` when printing in BUILD\nformat, as contrasted with crashing with NPE (which is what started happening\nafter https://github.com/bazelbuild/bazel/commit/424a38da6fc7f287b27b5781926176266688af60) or printing `\"null\"` (which we had been doing\nbefore that).\n\nPiperOrigin-RevId: 921589687\nChange-Id: I49ec5ec4db187a3179db1b123ce9d4278f4c4a2f\n"
    },
    {
      "commit": "acd93dc439eafbf2b1b3b1ec54ae8a9e8770a93b",
      "tree": "61a646558a66c7f1a2cdbc24f992e62ad69094f8",
      "parents": [
        "3e411207366f8b9d1dc664fee0781e91b4c1c3d1"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Tue May 26 11:03:44 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 11:05:27 2026 -0700"
      },
      "message": "Automated rollback of commit cf69549f5dc023457bb96e22b3b50d0c2c203e70.\n\n*** Reason for rollback ***\n\nRoll forward: Location no longer stored, so no more serialization nondeterminism. For good measure, include the provider in the hash code, since it is considered for equality.\n\n*** Original change description ***\n\nAutomated rollback of commit 935b7a82203167a4a34d988809328d0a19690802.\n\n*** Reason for rollback ***\n\nTriggers non-determinism in serialization\n\nPiperOrigin-RevId: 921569089\nChange-Id: I47bb4a935e6e91dbc678a68e42fc47e9691b6205\n"
    },
    {
      "commit": "3e411207366f8b9d1dc664fee0781e91b4c1c3d1",
      "tree": "ac01e0075bf19937710404878f2de8c3f6e9ee84",
      "parents": [
        "c7268b24d2b33abb1de8baa12bc86b4513e58cb8"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Tue May 26 08:47:34 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 08:49:10 2026 -0700"
      },
      "message": "Don\u0027t store creation location in most provider instances.\n\nThe location is only used for error reporting, meaning that it is a waste to store it in the common case. As a compromise, continue to store it for `DefaultInfo` since it\u0027s specifically checked for certain error conditions, and the instance is not retained (see `DelegatingDefaultInfo`).\n\nThe error reporting comes from two places:\n\n* `StarlarkRuleConfiguredTargetUtil`, where provider creation locations in error messages (besides `DefaultInfo`) are replaced with the location of the rule implementation function, which is usually where returned providers are created anyway.\n* `CcToolchainFeaturesLib`, where all calls originate from the starlark method `cc_internal.cc_toolchain_features()`. Errors will still include the stack trace, which should be useful enough without the exact provider creation location, especially because this is an internal API only used by rules_cc.\n\nPiperOrigin-RevId: 921493191\nChange-Id: I24ad0fca90f0298fd6491ada6a452a57620a7e16\n"
    },
    {
      "commit": "c7268b24d2b33abb1de8baa12bc86b4513e58cb8",
      "tree": "9a7e206878af5b6c2bd9c80e49bd8680ebff8ffe",
      "parents": [
        "867b88d5b7989cb1427c992d1ca0043c3ce63404"
      ],
      "author": {
        "name": "Chi Wang",
        "email": "coeuvre@gmail.com",
        "time": "Tue May 26 07:58:52 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 07:59:56 2026 -0700"
      },
      "message": "No public description\n\nPiperOrigin-RevId: 921469827\nChange-Id: Ib96019763e448491b30e261df363c11dd6e5adc6\n"
    },
    {
      "commit": "867b88d5b7989cb1427c992d1ca0043c3ce63404",
      "tree": "93ea7c3eecd782cadd0003bce9ff451766161832",
      "parents": [
        "82acca51496c19b6b92905d6085f66b75871cfe2"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Tue May 26 07:13:37 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 07:14:27 2026 -0700"
      },
      "message": "Remove direct `FingerprintValueService` lookup path from `SkyValueRetriever`.\n\nThe `SkyValueRetriever` no longer uses a direct connection to a FVS (or read proxy) for the top level `SkyValue`.\n\nConsequently, there is no need to resolve shared values and invalidation data within `SkyValueRetriever`, as those are handled by `deserializeWithSkyframe`/`ObjectCodecs` and the AnalysisCacheService respectively. So `WaitingForFutureValueBytes` and associated tests can be deleted.\n\nThe remaining tests (including `SerializationCheckingGraph`) have been augmented to use ACS instead, to maintain test coverage neutrality (or even increasing it).\n\nPiperOrigin-RevId: 921449175\nChange-Id: Ia2a87e307b9b09fba8770223c6d5d1fae1c5e232\n"
    },
    {
      "commit": "82acca51496c19b6b92905d6085f66b75871cfe2",
      "tree": "23ca170b71c4a4dc1f24710e934859b467c05071",
      "parents": [
        "a9fe32ce501db2b379b55bd3d51962e8c7881d44"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Tue May 26 07:10:04 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 07:11:45 2026 -0700"
      },
      "message": "Make `CommonOptions.EMPTY_OPTIONS` a `SerializationConstant`.\n\nThis ensures that it is deserialized unaffected by the new custom CoreOptions codec that trims checkVisibility settings, which resulted in breaking identity/equality checks.\n\nPiperOrigin-RevId: 921447676\nChange-Id: Ia7cc6c390717ad5a6b1fa3bbc1f51e5174dfaa49\n"
    },
    {
      "commit": "a9fe32ce501db2b379b55bd3d51962e8c7881d44",
      "tree": "bd4966863f026aec837dd7f878afd72a1e514f76",
      "parents": [
        "b16ab9f2e424d0783efb19ea2c577a3d13a1743e"
      ],
      "author": {
        "name": "Moran Omer",
        "email": "moraneus@gmail.com",
        "time": "Tue May 26 00:18:25 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 26 00:19:19 2026 -0700"
      },
      "message": "Fix PatchUtil charAt OOB on truncated new mode / new file mode lines (https://github.com/bazelbuild/bazel/pull/29624)\n\n`PatchUtil.applyInternal` calls `line.charAt(12)` for `NEW_MODE` lines and `line.charAt(17)` for `NEW_FILE_MODE` lines without verifying the line is long enough. A patch file containing a truncated mode line — for example `new mode 1` or `new file mode 1` — passes the prefix-based line-type classification (because the classifier only checks `startsWith(\"new mode \")` / `startsWith(\"new file mode \")`) and then crashes in `charAt` with `StringIndexOutOfBoundsException`.\n\nThis commit adds a length guard before the `charAt(index)` so that a truncated mode line produces the declared `PatchFailedException` instead of an unchecked `StringIndexOutOfBoundsException`.\n\nCloses #29624.\n\nPiperOrigin-RevId: 921273819\nChange-Id: Ia6d65fbea9a9cb08bc9f4f7e53d74534e513ea29\n"
    },
    {
      "commit": "b16ab9f2e424d0783efb19ea2c577a3d13a1743e",
      "tree": "4a200f74dba54c4cac989ff1b35ac14311032f3f",
      "parents": [
        "8ce6ce42ea2a22c44ceec98787f182efe8ca3e11"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Sun May 24 23:00:02 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun May 24 23:01:41 2026 -0700"
      },
      "message": "Only upload analysis nodes with `--experimental_skycache_analysis_only`.\n\nPiperOrigin-RevId: 920780031\nChange-Id: I139f3b503adca75c83f31f338845de100abe2575\n"
    },
    {
      "commit": "8ce6ce42ea2a22c44ceec98787f182efe8ca3e11",
      "tree": "1956b625cc070681c9f3102d6a44218342f09775",
      "parents": [
        "fdba6e6bda1ff9423b111eb099f4f9f6e0d34115"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Sun May 24 22:44:25 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Sun May 24 22:45:30 2026 -0700"
      },
      "message": "Only fetch analysis nodes in Skycache with `--experimental_skycache_analysis_only`.\n\nPiperOrigin-RevId: 920774770\nChange-Id: I128b5d10754d3f250717a8ce277db32e4fc6fa2c\n"
    },
    {
      "commit": "fdba6e6bda1ff9423b111eb099f4f9f6e0d34115",
      "tree": "06fe9c58a72f7566e7151d6cfe80cce588092a4f",
      "parents": [
        "f8d3a211bf1358cffe7e79a66548461702c7908d"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Fri May 22 13:56:46 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 13:57:39 2026 -0700"
      },
      "message": "Prohibit labeling strings with `@SerializationConstant`.\n\nMaking strings serialization constants is dangerous because a value-equal but not identity-equal instance will serialize differently.\n\nPiperOrigin-RevId: 919846893\nChange-Id: I4a91c456fa6ab3b4dd54b1a87783d5f62ab14e33\n"
    },
    {
      "commit": "f8d3a211bf1358cffe7e79a66548461702c7908d",
      "tree": "0817b1d4e64b8a0e35279f6df53eb6b6a3b91d0b",
      "parents": [
        "38181031d7e77b1e941cfe680b20b3a1a4479a92"
      ],
      "author": {
        "name": "Benjamin Peterson",
        "email": "benjamin@engflow.com",
        "time": "Mon May 18 10:11:18 2026 -0700"
      },
      "committer": {
        "name": "Bharadwaj P (xWF)",
        "email": "bharadwajsp@google.com",
        "time": "Fri May 22 13:11:18 2026 -0700"
      },
      "message": "add asm 9.10 artifacts\n\nThis is part 1 of upgrading asm.\n\nhttps://github.com/bazelbuild/bazel/issues/29568\n\nPartial commit for third_party/*, see #29569.\n\nChange-Id: I160c4ee01b668af2362a22c8a6584f7e2416c493\nSigned-off-by: bharadwaj08-one \u003cbharadwajsp@google.com\u003e\n"
    },
    {
      "commit": "38181031d7e77b1e941cfe680b20b3a1a4479a92",
      "tree": "0a6c6363080df9e8fe49c612b5a5df8c00293863",
      "parents": [
        "cf69549f5dc023457bb96e22b3b50d0c2c203e70"
      ],
      "author": {
        "name": "Bazel Release System",
        "email": "noreply@google.com",
        "time": "Fri May 22 19:13:53 2026 +0000"
      },
      "committer": {
        "name": "Summers Pittman",
        "email": "mrsummers@google.com",
        "time": "Fri May 22 19:13:53 2026 +0000"
      },
      "message": "Release 10.0.0-pre.20260516.1 (2026-05-22)\n\nBaseline: e2792d172525887b9ba4307c9bdd0483c736c5ad\n\nNew features:\n\n  - Add `add_prefix` attribute to `git_repository` to allow cloning\n    repositories into a given subdirectory prefix\n  - {r,m}ctx.download* report the size of downloaded files\n    RELNOTES: Addition to the user-facing Build API\n\nImportant changes:\n\n  - `--tls_certificate\u003d`, `--tls_client_certificate\u003d`, and\n    `--tls_client_key\u003d` can now be used to reset those flags to their\n    unset state.\n  - In output of `query --output\u003dbuild`, string attributes containing\n    newline characters are now enclosed in triple double quotes (\"\"\")\n    for better readability.\n\nThis release contains contributions from many people at Google, as well as Albert Lloveras, Chi Wang, dependabot[bot], Fabian Meumertzheim, Fredrik Medley, gaurav0107, John Millikin, Kapunahele Wong, Keith Smiley, Malte Poll, Nikki Vijaybhaskar, Richard Lavoie, Steffeeen, Tyler French, Will Stranton.\n"
    },
    {
      "commit": "cf69549f5dc023457bb96e22b3b50d0c2c203e70",
      "tree": "09262027b72a6319c4d60a023305e458035ecdb1",
      "parents": [
        "72b320139ad905412d717c6fd1f9429c0c042c8b"
      ],
      "author": {
        "name": "arostovtsev",
        "email": "arostovtsev@google.com",
        "time": "Fri May 22 11:40:14 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 11:41:22 2026 -0700"
      },
      "message": "Automated rollback of commit 935b7a82203167a4a34d988809328d0a19690802.\n\n*** Reason for rollback ***\n\nTriggers non-determinism in serialization\n\nPiperOrigin-RevId: 919781139\nChange-Id: Ib25c6ddbf81bca4220a9ea69e00cfea9ae04897d\n"
    },
    {
      "commit": "72b320139ad905412d717c6fd1f9429c0c042c8b",
      "tree": "63ece83c09907fd1ecd04e7fef128e8d8ba5ee29",
      "parents": [
        "8536f8e424a034d6f2fd820f4f6ae08ff15e1f0e"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Fri May 22 11:08:00 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 11:11:02 2026 -0700"
      },
      "message": "When `--experimental_record_skyframe_metrics` is set, add stats about starlark providers to BEP.\n\nPiperOrigin-RevId: 919765103\nChange-Id: I42c972257c5d0efc907f220200b598f07f68c221\n"
    },
    {
      "commit": "8536f8e424a034d6f2fd820f4f6ae08ff15e1f0e",
      "tree": "3b92924ed96b82bb058f8731c3f454221527af8a",
      "parents": [
        "68ab19ecb67605f404f32bd60fdca653d86fcf23"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Fri May 22 10:43:22 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 10:44:31 2026 -0700"
      },
      "message": "Track bzl file metrics like we do for package metrics.\n\nFor now, we just track total number of bzl files and sizes, but we may add more metrics in the future. The existing package metric flags are respected:\n\n* `--experimental_publish_package_metrics_in_bep` results in `BzlMetrics` being populated.\n* `--record_metrics_for_all_packages` tracks metrics for all bzl files.\n* `--log_top_n_packages` limits tracking to the largest N bzl files, assuming `--record_metrics_for_all_packages` is false.\n\nI thought this made more sense rather than to duplicate the package metric flags for bzl files.\n\nPiperOrigin-RevId: 919753013\nChange-Id: I54e5caaa38c2bf79883841d1ce8cd884f63f18bc\n"
    },
    {
      "commit": "68ab19ecb67605f404f32bd60fdca653d86fcf23",
      "tree": "e1c5e1b4eaee2a1fd311c1a3ea6eb3ed322e8c99",
      "parents": [
        "4ad1e8b42b4e8401aa9814d3f1d3ba055891512d"
      ],
      "author": {
        "name": "Toli Yevtushenko",
        "email": "anatoliyy@google.com",
        "time": "Fri May 22 10:17:45 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 10:18:32 2026 -0700"
      },
      "message": "Make OutputArtifactConflictTest resilient to configuration changes.\n\nPiperOrigin-RevId: 919740599\nChange-Id: Ia7ab910187bb2525b6c43804bb2144b00f254294\n"
    },
    {
      "commit": "4ad1e8b42b4e8401aa9814d3f1d3ba055891512d",
      "tree": "b5a5e63e6caee226cf902731992c02a6cef4e201",
      "parents": [
        "54b7ada8e1480d0117f8d23199371a5fb0917827"
      ],
      "author": {
        "name": "brandjon",
        "email": "brandjon@google.com",
        "time": "Fri May 22 08:07:24 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 08:09:25 2026 -0700"
      },
      "message": "Exempt prototype packages from load() visibility checks\n\nThis is a Google-internal change. The notion of \"prototype\" packages is part of Google\u0027s monorepo structure.\n\nPiperOrigin-RevId: 919681848\nChange-Id: I84f6751b9f2d4b924aceba3d575d439aa4b7d4cc\n"
    },
    {
      "commit": "54b7ada8e1480d0117f8d23199371a5fb0917827",
      "tree": "8b77e374cea8609baa7285d3bbdcc27a6ba349c9",
      "parents": [
        "a616588614170a6b3bf5f616c3db37c20d0e8571"
      ],
      "author": {
        "name": "Torsten Marek",
        "email": "tmarek@google.com",
        "time": "Fri May 22 06:40:58 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 06:42:44 2026 -0700"
      },
      "message": "Internal change.\n\nPiperOrigin-RevId: 919648761\nChange-Id: I1fca405bcc31ec0ba0c7ce1af837741495f820d5\n"
    },
    {
      "commit": "a616588614170a6b3bf5f616c3db37c20d0e8571",
      "tree": "4c5734c946c3a38b128ba28716b93d289c182e69",
      "parents": [
        "96839d76101346e18eaa17e243c2fc03c3d53116"
      ],
      "author": {
        "name": "twerth",
        "email": "twerth@google.com",
        "time": "Fri May 22 06:19:27 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 06:21:43 2026 -0700"
      },
      "message": "Cache `StarlarkBuiltin` ancestor lookups using `ClassValue`.\n\nStarlark frequently queries `@StarlarkBuiltin` class annotations at runtime. Recursively traversing class/interface hierarchies on every check is creating a lot of garbage\n\nPiperOrigin-RevId: 919640567\nChange-Id: I561794b692f4b1c8d9c65b065d4f4dfb18dd6480\n"
    },
    {
      "commit": "96839d76101346e18eaa17e243c2fc03c3d53116",
      "tree": "2bb9db0563b462b564b584753c2d61636aff0f2d",
      "parents": [
        "1c526107e64d89235297bd51126095bcd74c3ead"
      ],
      "author": {
        "name": "Torsten Marek",
        "email": "tmarek@google.com",
        "time": "Fri May 22 01:52:44 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 01:55:58 2026 -0700"
      },
      "message": "Internal change.\n\nPiperOrigin-RevId: 919534381\nChange-Id: I7aad9a899c16a2edbb53e74921b7559af243be67\n"
    },
    {
      "commit": "1c526107e64d89235297bd51126095bcd74c3ead",
      "tree": "f8b51edeec0a3ea3380befbbfb93924cccaf2779",
      "parents": [
        "50812447983f1724086896eae8acdb0e05247107"
      ],
      "author": {
        "name": "bgorshenev",
        "email": "bgorshenev@google.com",
        "time": "Fri May 22 01:08:54 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 22 01:11:29 2026 -0700"
      },
      "message": "Remove starlark handling for nocopts. Remove tests\n\nPiperOrigin-RevId: 919515693\nChange-Id: Ida645b98579415d548723036f93dab0328019bd5\n"
    },
    {
      "commit": "50812447983f1724086896eae8acdb0e05247107",
      "tree": "2a23e1d5587edd720c1455f7d334446f980380a6",
      "parents": [
        "cd5c08eb5baf55f556d593287aba9b2f36ff73e6"
      ],
      "author": {
        "name": "Googler",
        "email": "noreply@google.com",
        "time": "Thu May 21 22:32:44 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 22:33:32 2026 -0700"
      },
      "message": "Internal change for upb rules.\n\nPiperOrigin-RevId: 919450929\nChange-Id: Iff40567bdcc09428c3667dcd1f817c9a5690d2b9\n"
    },
    {
      "commit": "cd5c08eb5baf55f556d593287aba9b2f36ff73e6",
      "tree": "4103e92842706478a1fbd0b3849a67a78c465a24",
      "parents": [
        "74c6b528f138a0671eb12be123b3e2863e24bc76"
      ],
      "author": {
        "name": "Torsten Marek",
        "email": "tmarek@google.com",
        "time": "Thu May 21 14:49:21 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 14:50:30 2026 -0700"
      },
      "message": "Internal change.\n\nPiperOrigin-RevId: 919266822\nChange-Id: Ibdd9196f4cfc0991b7eaa2dabf522e9f389cdc62\n"
    },
    {
      "commit": "74c6b528f138a0671eb12be123b3e2863e24bc76",
      "tree": "a33d9fcb1f3bafe8cdf8457a748ecbc7bf4d9042",
      "parents": [
        "935b7a82203167a4a34d988809328d0a19690802"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Thu May 21 14:42:16 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 14:43:24 2026 -0700"
      },
      "message": "Encourage schemaful providers in documentation.\n\nPiperOrigin-RevId: 919263467\nChange-Id: Ie264a9dbdddc4b6d7a1f1dc0c6b5a100d8d07fe7\n"
    },
    {
      "commit": "935b7a82203167a4a34d988809328d0a19690802",
      "tree": "1b77892d866a3c5caae64c10ac64e5212046faa5",
      "parents": [
        "6a07eff43d8ef6715df2ad5a6e9beb4540e1773e"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Thu May 21 14:33:27 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 14:35:21 2026 -0700"
      },
      "message": "Intern starlark provider instances that contain no truthy values.\n\nThis is a common class of duplicates in practice. See the added javadoc for more information on why we don\u0027t intern all instances.\n\nPiperOrigin-RevId: 919259110\nChange-Id: I2721d106353c04621de4304dcfcb7fa9c6bd90ff\n"
    },
    {
      "commit": "6a07eff43d8ef6715df2ad5a6e9beb4540e1773e",
      "tree": "507e46aa78471ef1b57b856656ed00b1960ed550",
      "parents": [
        "084958b6d895e64cea8c383076ff0201115c66bc"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Thu May 21 12:53:44 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 12:55:45 2026 -0700"
      },
      "message": "Fix detection of execution phase started for non-skymeld builds.\n\nDifferent event types are used depending on whether skymeld is enabled.\n\nPiperOrigin-RevId: 919206609\nChange-Id: Ie3956a1af26398e66d37db71b4b9365a6ed3bd7f\n"
    },
    {
      "commit": "084958b6d895e64cea8c383076ff0201115c66bc",
      "tree": "b8558a07e80e9602147c32f25409b81ffc52041d",
      "parents": [
        "b453ec1e7b9806db80aa2b5819ffddfd4e9296af"
      ],
      "author": {
        "name": "Tyler French",
        "email": "french.tyler.d@gmail.com",
        "time": "Thu May 21 10:59:09 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 11:00:30 2026 -0700"
      },
      "message": "Support bounded parallel chunk transfers (https://github.com/bazelbuild/bazel/pull/29341)\n\n### Description\n\nFor `--experimental_remote_cache_chunking` implemented in https://github.com/bazelbuild/bazel/pull/28437\n\nThis PR enables parallel uploads and downloads for chunked files to improve performance. Transport-level concurrency is still bounded by the existing remote cache gRPC connection/concurrency limits. The chunk transfer managers add a fixed per-blob window of 16 to prevent a single large blob from fanning out too aggressively.\n\nTo avoid issues with batches, uploads and downloads use simple sliding-window style transfer managers.\n\nRELNOTES: CDC chunk uploads and downloads can now happen in parallel within a large blob.\n\n### Benchmarking\n\nBenchmarks were rerun on 2026-05-12 with the JMH target `//src/test/java/com/google/devtools/build/lib/remote:ChunkedTransferBenchmark`. The parent baseline was measured by running the same benchmark harness against the parent commit.\n\nWith the synthetic benchmark of network delays and simulated jitter, the current branch is about 11-13x faster than the parent baseline for these cases. As usual, this synthetic benchmark is not a substitute for real remote-cache measurements.\n\nAfter Change:\n```\nBenchmark                                 (avgChunkSizeBytes)  (chunkCount)  (chunkSizeBytes)  (delayMillis)  (fileSizeBytes)  (jitterMillis)  (schedulerThreads)  Mode  Cnt   Score   Error  Units\nChunkedTransferBenchmark.downloadChunked                  N/A            32              1024             25              N/A              10                   1  avgt    3  67.963 ± 2.039  ms/op\nChunkedTransferBenchmark.downloadChunked                  N/A            32              1024             25              N/A              10                   2  avgt    3  67.925 ± 2.257  ms/op\nChunkedTransferBenchmark.downloadChunked                  N/A            32              1024             25              N/A              10                   4  avgt    3  67.915 ± 2.497  ms/op\nChunkedTransferBenchmark.downloadChunked                  N/A            32              1024             25              N/A              10                   8  avgt    3  67.946 ± 2.863  ms/op\nChunkedTransferBenchmark.uploadChunked                   1024           N/A               N/A             25            32768              10                   1  avgt    3  61.357 ± 7.385  ms/op\nChunkedTransferBenchmark.uploadChunked                   1024           N/A               N/A             25            32768              10                   2  avgt    3  61.373 ± 7.920  ms/op\nChunkedTransferBenchmark.uploadChunked                   1024           N/A               N/A             25            32768              10                   4  avgt    3  61.326 ± 8.220  ms/op\nChunkedTransferBenchmark.uploadChunked                   1024           N/A               N/A             25            32768              10                   8  avgt    3  61.393 ± 8.376  ms/op\n```\n\nBefore Change:\n```\nBenchmark                                 (avgChunkSizeBytes)  (chunkCount)  (chunkSizeBytes)  (delayMillis)  (fileSizeBytes)  (jitterMillis)  (schedulerThreads)  Mode  Cnt    Score     Error  Units\nChunkedTransferBenchmark.downloadChunked                  N/A            32              1024             25              N/A              10                   1  avgt    3  812.081 ± 463.666  ms/op\nChunkedTransferBenchmark.downloadChunked                  N/A            32              1024             25              N/A              10                   2  avgt    3  812.570 ± 442.021  ms/op\nChunkedTransferBenchmark.downloadChunked                  N/A            32              1024             25              N/A              10                   4  avgt    3  811.883 ± 459.534  ms/op\nChunkedTransferBenchmark.downloadChunked                  N/A            32              1024             25              N/A              10                   8  avgt    3  812.371 ± 461.231  ms/op\nChunkedTransferBenchmark.uploadChunked                   1024           N/A               N/A             25            32768              10                   1  avgt    3  740.734 ± 389.653  ms/op\nChunkedTransferBenchmark.uploadChunked                   1024           N/A               N/A             25            32768              10                   2  avgt    3  742.434 ± 412.117  ms/op\nChunkedTransferBenchmark.uploadChunked                   1024           N/A               N/A             25            32768              10                   4  avgt    3  742.483 ± 395.466  ms/op\nChunkedTransferBenchmark.uploadChunked                   1024           N/A               N/A             25            32768              10                   8  avgt    3  742.509 ± 397.122  ms/op\n```\n\nBig File:\n```\nCURRENT BRANCH (512 MiB)\n\nBenchmark                                 (avgChunkSizeBytes)  (chunkCount)  (chunkSizeBytes)  (delayMillis)  (fileSizeBytes)  (jitterMillis)  (schedulerThreads)  Mode  Cnt     Score     Error  Units\nChunkedTransferBenchmark.downloadChunked                  N/A           512           1048576             25              N/A              10                   8  avgt    3   991.101 ± 173.890  ms/op\nChunkedTransferBenchmark.uploadChunked                1048576           N/A               N/A             25        536870912              10                   8  avgt    3  1087.504 ± 123.857  ms/op\n```\n```\nPARENT BASELINE (512 MiB)\n\nBenchmark                                 (avgChunkSizeBytes)  (chunkCount)  (chunkSizeBytes)  (delayMillis)  (fileSizeBytes)  (jitterMillis)  (schedulerThreads)  Mode  Cnt      Score      Error  Units\nChunkedTransferBenchmark.downloadChunked                  N/A           512           1048576             25              N/A              10                   8  avgt    3  12849.136 ± 1733.063  ms/op\nChunkedTransferBenchmark.uploadChunked                1048576           N/A               N/A             25        536870912              10                   8  avgt    3  11888.109 ± 2591.883  ms/op\n```\n\nCloses #29341.\n\nPiperOrigin-RevId: 919144974\nChange-Id: Iaa0ca8971bd21c879f21c708327b5ddd837ecf1f\n"
    },
    {
      "commit": "b453ec1e7b9806db80aa2b5819ffddfd4e9296af",
      "tree": "8226c4694bd3dd5705def0192b50d001785aa135",
      "parents": [
        "5572634408f7ead56ebb544ab037ffa125a0154b"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Thu May 21 08:46:08 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 08:47:53 2026 -0700"
      },
      "message": "Move utility methods into their sole caller.\n\nPiperOrigin-RevId: 919073113\nChange-Id: I4c478edd8cccc7e253dc95e37441e13dc1304f10\n"
    },
    {
      "commit": "5572634408f7ead56ebb544ab037ffa125a0154b",
      "tree": "59f18cb4d11c6aad6db723652279d6320d6d153e",
      "parents": [
        "9160624ddd90148e660f25559d0e5d85710ebde7"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Thu May 21 08:13:36 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 08:14:45 2026 -0700"
      },
      "message": "Split j/c/g/devtools/build/lib/remote/util into finer-grained targets.\n\nPiperOrigin-RevId: 919057784\nChange-Id: Ie8d5f84654b5305add288e86768996fd0e648080\n"
    },
    {
      "commit": "9160624ddd90148e660f25559d0e5d85710ebde7",
      "tree": "4e2e9765717e76a2f30d3f45decfc7add12720c2",
      "parents": [
        "b76b5eed1ec4c000b4d24bd6db202a20048aae59"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Thu May 21 07:33:24 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 07:34:18 2026 -0700"
      },
      "message": "Make RequestBatcher handle unchecked exceptions thrown by multiplexers.\n\nUnchecked exceptions thrown by the multiplexer now fail the\nrequests. Active worker slots are correctly released by scheduling the\ncontinuation on the queueDrainingExecutor.\n\nPiperOrigin-RevId: 919039949\nChange-Id: Ie9bd293669ed3c759cf293a5e7f29af922197254\n"
    },
    {
      "commit": "b76b5eed1ec4c000b4d24bd6db202a20048aae59",
      "tree": "db3628e9c093461683e276700961034f7a0be597",
      "parents": [
        "0106eaf0388a4e59d16cc15c9c20dd3bdd25516e"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Thu May 21 07:22:11 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 07:23:16 2026 -0700"
      },
      "message": "Remove RemoteAnalysisJsonLogWriter and related functionality / dead code.\n\nIt\u0027s been unused for a while. Can be revived if needed.\n\nPiperOrigin-RevId: 919035244\nChange-Id: I08851738535dbf6ec1cef174e8ad032a8c0f2d24\n"
    },
    {
      "commit": "0106eaf0388a4e59d16cc15c9c20dd3bdd25516e",
      "tree": "bb823327aa2fd598c1f4d86cd7a2c4604f21908a",
      "parents": [
        "e6ec468baab6398bd65817481537494b5037d935"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Thu May 21 06:35:38 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 06:38:32 2026 -0700"
      },
      "message": "Split j/c/g/devtools/build/lib/bazel/rules into finer-grained targets.\n\nPiperOrigin-RevId: 919017021\nChange-Id: Ib0e3a9a096dc18b99ecdb6c37b5a0aa5a0da0731\n"
    },
    {
      "commit": "e6ec468baab6398bd65817481537494b5037d935",
      "tree": "908d0f852f7e1a4657733ae2d1f2359c6ff0dd01",
      "parents": [
        "f36d22b6bffe94741d1804670f913669e0c6a28c"
      ],
      "author": {
        "name": "Torsten Marek",
        "email": "tmarek@google.com",
        "time": "Thu May 21 05:38:35 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 06:37:21 2026 -0700"
      },
      "message": "Internal change.\n\nPiperOrigin-RevId: 918995685\nChange-Id: I42b112dd2d8b652c3cfbf4053305275c44a6622d\n"
    },
    {
      "commit": "f36d22b6bffe94741d1804670f913669e0c6a28c",
      "tree": "169f422330a9223ea412689acf9329cae6af624d",
      "parents": [
        "10efaccb1d885a37ece9b9e32e3f99bc7c513368"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Thu May 21 05:04:46 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 21 05:05:36 2026 -0700"
      },
      "message": "Split j/c/g/devtools/build/lib/buildeventservice into finer-grained targets.\n\nPiperOrigin-RevId: 918984040\nChange-Id: Icfd4ffe64e38c4da505fe1dda9a520811c076cd7\n"
    },
    {
      "commit": "10efaccb1d885a37ece9b9e32e3f99bc7c513368",
      "tree": "2d89fa65fd724f3a997d07a9e26c1fc8ef71598c",
      "parents": [
        "c63acd2cbc1579fb20855f97290841799f9ebad0"
      ],
      "author": {
        "name": "Toli Yevtushenko",
        "email": "anatoliyy@google.com",
        "time": "Wed May 20 12:24:36 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 12:25:28 2026 -0700"
      },
      "message": "Print only describeKey differences on Action Conflict.\n\nPiperOrigin-RevId: 918588936\nChange-Id: I0f212651459667a7f1dc8d09090aa35a693dea53\n"
    },
    {
      "commit": "c63acd2cbc1579fb20855f97290841799f9ebad0",
      "tree": "c1e61d99e7f3c65f573f0cc408389460bbe48c5a",
      "parents": [
        "593828358bd435ade8507b249c90c02e9bc0ce0d"
      ],
      "author": {
        "name": "pzembrod",
        "email": "pzembrod@google.com",
        "time": "Wed May 20 09:03:31 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 09:04:21 2026 -0700"
      },
      "message": "Make CppHelper.getObjDirectory private.\n\nPiperOrigin-RevId: 918481369\nChange-Id: If93771c7a5f06cbfeced14e065953aad14277eb9\n"
    },
    {
      "commit": "593828358bd435ade8507b249c90c02e9bc0ce0d",
      "tree": "d9317179b7b99b66e249efd391106b67c40a4882",
      "parents": [
        "672e9b7251da2f51f30ae7ea8ca2125b3c25df91"
      ],
      "author": {
        "name": "XananasX",
        "email": "mehdiananas007@gmail.com",
        "time": "Wed May 20 08:35:07 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 08:36:54 2026 -0700"
      },
      "message": " build: pin peter-evans/repository-dispatch to commit SHA (https://github.com/bazelbuild/bazel/pull/29554)\n\nPin `peter-evans/repository-dispatch` to full commit SHA instead of mutable\n  `v4` tag. This workflow has access to `secrets.BAZEL_DOC_TRIGGER_TOKEN`\n  (a fine-grained PAT with write access to bazel-contrib/bazel-docs).\n\n  Pinning to SHA ensures immutability and prevents supply chain attacks\n  via tag manipulation of the third-party action.\n\n  Ref: https://docs.github.com/en/actions/security-for-github-actions/security-guides/security-hardening-for-github-actions#using-third-party-actions\n\nCloses #29554.\n\nPiperOrigin-RevId: 918468468\nChange-Id: I3dc6a7f78d07b3584908c5f7e6d0e6d4747ce6c5\n"
    },
    {
      "commit": "672e9b7251da2f51f30ae7ea8ca2125b3c25df91",
      "tree": "b1c12910d55ec957618241c0c3173c77455dc874",
      "parents": [
        "5e1e595c2c661a5aab3f4dd525959414a20f05da"
      ],
      "author": {
        "name": "XananasX",
        "email": "mehdiananas007@gmail.com",
        "time": "Wed May 20 08:34:28 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 08:35:41 2026 -0700"
      },
      "message": "build: pin actions/checkout to commit SHA in community-review-labeler… (https://github.com/bazelbuild/bazel/pull/29553)\n\n Pin `actions/checkout` to full commit SHA instead of mutable `v6` tag.\n\n  This workflow has `pull-requests: write` permission and access to\n  `secrets.GITHUB_TOKEN`. Pinning to SHA ensures immutability and prevents\n  supply chain attacks via tag manipulation.\n\n  Ref: https://docs.github.com/en/actions/security-for-github-actions/security-guides/security-hardening-for-github-actions#using-third-party-actions\n\nCloses #29553.\n\nPiperOrigin-RevId: 918468166\nChange-Id: Ib3a6e567872c391f447983871766a3dee00a2e8e\n"
    },
    {
      "commit": "5e1e595c2c661a5aab3f4dd525959414a20f05da",
      "tree": "afc22c421c9d568078e7c0f9c240337d8e81e169",
      "parents": [
        "73886447b85266b7a8527e496009f6769bec2356"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Wed May 20 07:06:07 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 07:07:18 2026 -0700"
      },
      "message": "Introduce --experimental_skycache_analysis_only option.\n\nThis currently just prints a warning message.\n\nPiperOrigin-RevId: 918426817\nChange-Id: Ice8dc7679dba30e7fbbb9c26444c5146da4cd674\n"
    },
    {
      "commit": "73886447b85266b7a8527e496009f6769bec2356",
      "tree": "6fa9b3d02b83ea3305fb3d42cf75601a284760bf",
      "parents": [
        "a00856a406986bfd901868196a977bcc4734a8f7"
      ],
      "author": {
        "name": "arostovtsev",
        "email": "arostovtsev@google.com",
        "time": "Wed May 20 07:01:53 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 07:03:17 2026 -0700"
      },
      "message": "Auto-assign a StarlarkType to StarlarkBuiltin-annotated classes\n\n... unless the class (or an ancestor) overrides getStarlarkType().\n\nIn turn, this means getStarlarkType needs to take StarlarkSemantics\nas a parameter (to access BuiltinManager to get at the annotated\nclasses\u0027 types), which means a fair amount of mostly mechanical\nAPI churn.\n\nThe auto-generated type with Callable as a supertype if the Java class\nhas a self-call method; which means we need to support calling such\ntypes in the type checker.\n\nWith this change, we are most of the way towards having a properly\nStarlark-typed `struct` in Bazel.\n\nAlso take the opportunity to drive-by fix the obviously wrong\ngetStarlarkType values for frozen empty list/dict - they should have\nNever (not Any) as type parameter, so they are properly typed when\nexported by one module for use in another module.\n\nWorking towards #28325.\n\nPiperOrigin-RevId: 918424802\nChange-Id: Iba6bd388f7d40c9a4e563a7d069d335d92d8ec9d\n"
    },
    {
      "commit": "a00856a406986bfd901868196a977bcc4734a8f7",
      "tree": "cd494c31a3ca5ff1d5e8929986144d1a81a4b18b",
      "parents": [
        "fae2a458f7a2aa148b2b852a5a942528990b7c39"
      ],
      "author": {
        "name": "cushon",
        "email": "cushon@google.com",
        "time": "Wed May 20 04:17:41 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 04:19:09 2026 -0700"
      },
      "message": "Remove an unnecessary cast\n\nPiperOrigin-RevId: 918361176\nChange-Id: I0f29093769eb2953d2a6bad118c1e385c7b993fa\n"
    },
    {
      "commit": "fae2a458f7a2aa148b2b852a5a942528990b7c39",
      "tree": "5943e8c5e34b761a9e873bbf498e9af28d55c797",
      "parents": [
        "bca5e06e6e5f4724c5f9226c6aaf6a91c273e3a0"
      ],
      "author": {
        "name": "Torsten Marek",
        "email": "tmarek@google.com",
        "time": "Wed May 20 01:52:46 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 01:53:26 2026 -0700"
      },
      "message": "Google-internal change.\n\nPiperOrigin-RevId: 918305011\nChange-Id: I25a4bfddb583bc5c1e051472b6d4c7aac14fe63f\n"
    },
    {
      "commit": "bca5e06e6e5f4724c5f9226c6aaf6a91c273e3a0",
      "tree": "bd693b069acf6658fed462f4cc3f81b6ade2d928",
      "parents": [
        "3d40c422df61c4adb243ef68fff7e84584019a1f"
      ],
      "author": {
        "name": "pcloudy",
        "email": "pcloudy@google.com",
        "time": "Wed May 20 01:08:29 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 20 01:11:48 2026 -0700"
      },
      "message": "Disable sandbox tests on RBE\n\nThose tests are failing since we migrated to ubuntu2404 for RBE\n\nFixes https://buildkite.com/bazel/bazel-bazel/builds/35546\n\nPiperOrigin-RevId: 918287393\nChange-Id: Ifa81d0d990a692d6aaa0f0363cd2fe2060645b48\n"
    },
    {
      "commit": "3d40c422df61c4adb243ef68fff7e84584019a1f",
      "tree": "c4b86382b41612fab0a31ee4f1cc05d1706228fd",
      "parents": [
        "e8dfae9f1836f23e22fc1b73eb9bf920834de5ac"
      ],
      "author": {
        "name": "Torsten Marek",
        "email": "tmarek@google.com",
        "time": "Tue May 19 13:10:58 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 13:12:02 2026 -0700"
      },
      "message": "Remove BuildIntegrationTestCase base class from LocalDiffAwarenessTest.\n\nPiperOrigin-RevId: 917987305\nChange-Id: Ia6666e30008b9c118ecd11b049106def30089d08\n"
    },
    {
      "commit": "e8dfae9f1836f23e22fc1b73eb9bf920834de5ac",
      "tree": "b88f0b113d7cc2b50512b4e7bc38a8f6415b6df2",
      "parents": [
        "4a7379e17df5074d9ec57364c93de9b0b0285c07"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Tue May 19 11:02:31 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 11:03:34 2026 -0700"
      },
      "message": "Implement EagerRequestBatcher.\n\nThis CL implements EagerRequestBatcher, an alternative to RequestBatcher. It is a lock-based, request batcher designed for eager execution, and avoids blocking client threads on submission.\n\nPiperOrigin-RevId: 917923126\nChange-Id: Idd685ffb1ca8943ab1b1b85db9ccb9af5d98a4ba\n"
    },
    {
      "commit": "4a7379e17df5074d9ec57364c93de9b0b0285c07",
      "tree": "d00fd80bad16fed9a8a0aaed4f4c6274c5b8f5ea",
      "parents": [
        "0c0bfb69da5dcfa3fefa3e614897140c6a0c8fe9"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Tue May 19 10:59:44 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 11:00:50 2026 -0700"
      },
      "message": "Pure refactoring of RequestBatcher to extract shared components.\n\nPiperOrigin-RevId: 917921634\nChange-Id: I5c3b307e836041d8efa8de3a854e341c8c04afbd\n"
    },
    {
      "commit": "0c0bfb69da5dcfa3fefa3e614897140c6a0c8fe9",
      "tree": "a5c7c8df695908512e5fb678d0cf05bfe7a910c3",
      "parents": [
        "96cf57e2ff467df933b59e2d683d58fc700905cc"
      ],
      "author": {
        "name": "Googler",
        "email": "noreply@google.com",
        "time": "Tue May 19 10:12:05 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 10:13:33 2026 -0700"
      },
      "message": "Migrate tests for cc_common functionality to starlark.\n(ignore-relnotes)\n\nPiperOrigin-RevId: 917896335\nChange-Id: I084e682233d68add616c0f6f18f02d0f673c4b24\n"
    },
    {
      "commit": "96cf57e2ff467df933b59e2d683d58fc700905cc",
      "tree": "400e10dfe844b29d3a3cc5f24ac2df61b6699c10",
      "parents": [
        "db3a03f22e29a170eb191229a855ff312b85639c"
      ],
      "author": {
        "name": "bgorshenev",
        "email": "bgorshenev@google.com",
        "time": "Tue May 19 09:55:44 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 09:57:33 2026 -0700"
      },
      "message": "Disable interface shared objects for link order test.\n\nFor compatibility with https://github.com/bazelbuild/rules_cc/pull/680; this change can be submitted independently.\n\nPiperOrigin-RevId: 917887818\nChange-Id: I524ee5e6646eb2a4838c8d4a1ef96ef69c4d95b3\n"
    },
    {
      "commit": "db3a03f22e29a170eb191229a855ff312b85639c",
      "tree": "a150695833cd5d5f15db4d1dfed417018b6307e0",
      "parents": [
        "b827fec283dd414f1dd564895ea7c5978fffb56e"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Tue May 19 06:03:04 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 06:03:53 2026 -0700"
      },
      "message": "Compress `dict` and `set` instances in providers.\n\nGeneralizes `unsafeOptimizeMemoryLayout` used for `list` into a `Compactable` interface. There seems to be some overlap between `unsafeOptimizeMemoryLayout` (actively used for `list`) and `unsafeShallowFreeze` (inactive), which we should reconcile.\n\n`Dict.Builder#addAll` is switched from `entrySet` to `forEach` to save some garbage, as `CompactImmutableDict` requires many allocations to construct an entry set.\n\nPiperOrigin-RevId: 917789675\nChange-Id: I91f6225541713300c6c0ccbddb478f5f25207fb9\n"
    },
    {
      "commit": "b827fec283dd414f1dd564895ea7c5978fffb56e",
      "tree": "bf10b5d8c29499a147625f4f67e742b659734678",
      "parents": [
        "7bab4c8a7bfad4a6d8cc4071bb99f562a798ccf9"
      ],
      "author": {
        "name": "Torsten Marek",
        "email": "tmarek@google.com",
        "time": "Tue May 19 05:18:30 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 05:19:43 2026 -0700"
      },
      "message": "Split BLAZE_SERVICES out of TestConstants into a new TestServices library.\n\nPiperOrigin-RevId: 917774068\nChange-Id: I3a606774a5577af34d4fcd60b633cac1bf9f0bf3\n"
    },
    {
      "commit": "7bab4c8a7bfad4a6d8cc4071bb99f562a798ccf9",
      "tree": "6cf350c13a5aac91e95abba179275703cccd8c6c",
      "parents": [
        "d63730dfde38e00f100f87c62545ac183e589c5f"
      ],
      "author": {
        "name": "pzembrod",
        "email": "pzembrod@google.com",
        "time": "Tue May 19 03:08:31 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 03:09:19 2026 -0700"
      },
      "message": "Add a new feature _compiler_param_file_on_demand_.\n\nThere is an existing feature _compiler_param_file_, but that _always_ uses a param\nfile for all commands. This feature attempts to work like the Starlark\n`Args.use_param_file()` support in that it will only make the param file is it\nappears to be needed. This means the extra action to write out the file only happens\nwhen needed, thus (hopefully) making this safer to eventually always enable.\n\nIncludes test cases to confirm the spilling behavior.\n\nPiperOrigin-RevId: 917724488\nChange-Id: Iac9d0e8604d4e085e56af9eba330e6fafae872d8\n"
    },
    {
      "commit": "d63730dfde38e00f100f87c62545ac183e589c5f",
      "tree": "5ce300c4b465e1f2c2c5e253125aeb8ad8fec523",
      "parents": [
        "c8f857ee17a0811e777c23896c487ab9fa7db607"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Tue May 19 00:48:19 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 19 00:50:05 2026 -0700"
      },
      "message": "Rename RemoteAnalysisCachingServicesSupplier#shutdown to #commandComplete to be more explicit about its intention and symmetry with BlazeModule hooks.\n\nAnd to distinguish from #blazeShutdown.\n\nPiperOrigin-RevId: 917666665\nChange-Id: I4d1e6f06fb033e1deb1c60574b044c71ca591a9d\n"
    },
    {
      "commit": "c8f857ee17a0811e777c23896c487ab9fa7db607",
      "tree": "7b24c4aaaeab6855012e484bb4cb339fca570c93",
      "parents": [
        "97437921a437c6e598e5944f2a2141ca1bf5e557"
      ],
      "author": {
        "name": "bgorshenev",
        "email": "bgorshenev@google.com",
        "time": "Mon May 18 22:01:19 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 18 22:02:18 2026 -0700"
      },
      "message": "Disable empty archive output.\n\nPiperOrigin-RevId: 917597787\nChange-Id: Ifea867d5a456944d671f20ceb833eb16bff9fbe8\n"
    }
  ],
  "next": "97437921a437c6e598e5944f2a2141ca1bf5e557"
}
