)]}'
{
  "log": [
    {
      "commit": "bca007ec74f21464115b9175fa217698302ace74",
      "tree": "42c4b7625129a4c48cb2777cec605475ba412646",
      "parents": [
        "6bec64bf6cbff266c6394fb8d184e0eb77d30099"
      ],
      "author": {
        "name": "arostovtsev",
        "email": "arostovtsev@google.com",
        "time": "Fri May 08 22:54:41 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 08 22:55:30 2026 -0700"
      },
      "message": "Expose global variables\u0027 static types in Module\n\nThis makes it possible for users of the module to rely on static type\ninformation (since the dynamic type of a global may be too narrow to\nsafely rely on).\n\nWorking towards #27370.\n\nPiperOrigin-RevId: 912856638\nChange-Id: I94fdd857142283c4b9ba7a47dfd8ba42c0c166e1\n"
    },
    {
      "commit": "6bec64bf6cbff266c6394fb8d184e0eb77d30099",
      "tree": "bfdfe2a044dad7a720aed47adf4afe26c4c5397c",
      "parents": [
        "009ea69934c0c87ff15336cd923183c44de4b031"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Fri May 08 17:39:21 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 08 17:40:32 2026 -0700"
      },
      "message": "Reuse read channels across invocations.\n\nStreams are still closed, and writer builds will create new channels/streams every time since they\u0027re more insensitive to connection latencies as cold builds.\n\nThis change also moves the metadataQueryCache invalidation to server shutdown, instead of per-command time, which meant that it never really worked before.\n\nPiperOrigin-RevId: 912774676\nChange-Id: Ia41238a10f88b82618dbadda9227bc831a379b31\n"
    },
    {
      "commit": "009ea69934c0c87ff15336cd923183c44de4b031",
      "tree": "2ff0e2ca53f947a94b45dfee606786ac4abc5612",
      "parents": [
        "808c56347f0f6ee72031cb41c193923043583cba"
      ],
      "author": {
        "name": "Richard Lavoie",
        "email": "lavoie.richard@gmail.com",
        "time": "Fri May 08 12:33:59 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 08 12:35:06 2026 -0700"
      },
      "message": "Support for toolchains aspects wildcard \"*\" (https://github.com/bazelbuild/bazel/pull/29415)\n\n### Description\nThis adds support for \"*\" in toolchains_aspects the same way as attr_aspects does.\n\nDisclaimer, all of it was produced by codex AI.\n\nFixes #29258\n\n### Motivation\nThis allows for generic aspects to not know in advance all the toolchains it would have to interact with throughout the build graph and focus solely on the providers they would provide\n\n### Build API Changes\n\nThis changes allows for toolchain_types to be iterated on where applicable as a sequence such as `for toolchain_type in ctx.rule.toolchains.toolchain_types():`\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 #29415.\n\nPiperOrigin-RevId: 912642236\nChange-Id: I96fd9753f3e77710c10718222d44c5c140cae002\n"
    },
    {
      "commit": "808c56347f0f6ee72031cb41c193923043583cba",
      "tree": "aa92502eb626dd2e36900d28d6e402f9bbfff548",
      "parents": [
        "e0e1077206e10402d5eeadb45f9bba8a23cd2935"
      ],
      "author": {
        "name": "Hana Joo",
        "email": "hanajoo@google.com",
        "time": "Fri May 08 09:40:32 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 08 09:41:22 2026 -0700"
      },
      "message": "Automatic code cleanup.\n\nPiperOrigin-RevId: 912567639\nChange-Id: Ie025afd348a8a76342a21ef036de19ad29e7316b\n"
    },
    {
      "commit": "e0e1077206e10402d5eeadb45f9bba8a23cd2935",
      "tree": "3c860636d82cbb27552d414125086c96c6f0eb08",
      "parents": [
        "b082a88c8642204c4ab8fb565491f984ed78188a"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Fri May 08 05:51:38 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 08 05:52:58 2026 -0700"
      },
      "message": "Get rid of InvalidArgumentIOException.\n\nIt\u0027s only used to communicate an EINVAL returned by readlink (argument is not a symlink). Use null instead, which avoids allocating an additional exception.\n\nPiperOrigin-RevId: 912478890\nChange-Id: Ic956cafe3f9ae0acc071f7a41b00fe169d0b43c7\n"
    },
    {
      "commit": "b082a88c8642204c4ab8fb565491f984ed78188a",
      "tree": "80d9354037602be68b2f1b45cffe844561ebbe95",
      "parents": [
        "ae4d2d610e41a4824df35a5100799ddfd7505dfa"
      ],
      "author": {
        "name": "Googler",
        "email": "noreply@google.com",
        "time": "Fri May 08 02:59:04 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 08 03:00:58 2026 -0700"
      },
      "message": "Update support matrix after releasing Bazel 8.7.0\n\nPiperOrigin-RevId: 912424188\nChange-Id: Ia68f086295128c869df5b079b86895e56a1e5307\n"
    },
    {
      "commit": "ae4d2d610e41a4824df35a5100799ddfd7505dfa",
      "tree": "cc2cd0e1d54395d436f52de1027234f1fe0b8231",
      "parents": [
        "aa760dcd10735af7683fae05c28d534ef43d47c0"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Thu May 07 15:50:09 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 07 15:50:53 2026 -0700"
      },
      "message": "No public description\n\nPiperOrigin-RevId: 912196236\nChange-Id: Id9d8602c8838d0fc5558f9cfb9fe81117f572045\n"
    },
    {
      "commit": "aa760dcd10735af7683fae05c28d534ef43d47c0",
      "tree": "0f3bc85a50371edb5d344efae9c4cc6d51f8dfea",
      "parents": [
        "2c7c95767199958a69dbdc75755dd345b2bb5438"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Thu May 07 12:47:42 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 07 12:48:47 2026 -0700"
      },
      "message": "Bazel Docs: Enable docs check in pre- and post-submit (attempt #2).\n\nThis CL is a repeat of https://github.com/bazelbuild/bazel/commit/1e6dd50b0b9e2d088169533dcc7073b6df5859da, which was rolled back in https://github.com/bazelbuild/bazel/commit/16cd6aa43b6abd8ddb730d0ceb647c4ce32dcb38 and https://github.com/bazelbuild/bazel/commit/c2dbe6e6bb2b94646ca143ac3c029f80ae95ec01 due to breakages caused by external changes in bazel-contrib/bazel-docs.\n\nWe\u0027re in a better place now since the CI job is \u0027soft-fail\u0027 and the bazel-docs repo has its own presubmit check to avoid breakages (https://buildkite.com/bazel/bazel-books-bazel-docs).\n\nA potential future improvement would be to store \"last green\" json files from bazel-docs in a GCS bucket and to use them in the bazelbuild pre/post-submit.\n\nFixes https://github.com/bazelbuild/continuous-integration/issues/2555\n\nPiperOrigin-RevId: 912105024\nChange-Id: If0209ac922f02f600a3970fc8a93227d2f7003ae\n"
    },
    {
      "commit": "2c7c95767199958a69dbdc75755dd345b2bb5438",
      "tree": "152ebcf319b61ba8b32b6e951a68a29a6ef6dc4f",
      "parents": [
        "04c36cc8e249c3fb095a0dfe4514c7bbdd1c44f7"
      ],
      "author": {
        "name": "cushon",
        "email": "cushon@google.com",
        "time": "Thu May 07 12:41:28 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 07 12:42:33 2026 -0700"
      },
      "message": "Remove `@Override` from record component declarations\n\n`@Override` on record components doesn\u0027t do anything, these annotations were left over when these records were migrated from AutoValue.\n\nSee also https://github.com/google/error-prone/issues/5174\n\nPiperOrigin-RevId: 912102268\nChange-Id: I1b235acd385450f1640d2bdc8e97f9a60818256a\n"
    },
    {
      "commit": "04c36cc8e249c3fb095a0dfe4514c7bbdd1c44f7",
      "tree": "cef09f7154e50937278d012e09677569133fbe57",
      "parents": [
        "4b4337688a0a415a4506ac36771e81bd48e3ecfa"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Thu May 07 11:10:41 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 07 11:11:32 2026 -0700"
      },
      "message": "Fix thread pool leak in RequestBatcher by using virtual threads.\n\nRequestBatcher.create was creating a fixed thread pool that was never shut down.\nUsing a virtual thread per task executor avoids leaking platform threads.\n\nPiperOrigin-RevId: 912055903\nChange-Id: I6263572f0d9852f9ae6366120830b86a1a87ad54\n"
    },
    {
      "commit": "4b4337688a0a415a4506ac36771e81bd48e3ecfa",
      "tree": "e76ac3096ce626a308b549bdb305530b59afa4a1",
      "parents": [
        "78f73159e3260eb8f469efb337f2454318e2f329"
      ],
      "author": {
        "name": "Peter Collingbourne",
        "email": "pcc@google.com",
        "time": "Thu May 07 10:53:58 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 07 10:55:05 2026 -0700"
      },
      "message": "Mention how to enable incremental state tracking in error message\n\nPiperOrigin-RevId: 912046120\nChange-Id: Iefc575e576aa6bde6c085a3c693a519d1b3545d4\n"
    },
    {
      "commit": "78f73159e3260eb8f469efb337f2454318e2f329",
      "tree": "be9cd2e94d5c8f76a017dd8cfe4869de52241210",
      "parents": [
        "6c95102a033ca816c889b0dcfcff4f7cef3f9620"
      ],
      "author": {
        "name": "Googler",
        "email": "noreply@google.com",
        "time": "Thu May 07 10:24:05 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 07 10:24:51 2026 -0700"
      },
      "message": "Bazel Docs: Publish release docs for Bazel 8.7.0\n\nPiperOrigin-RevId: 912030991\nChange-Id: I81291894b0ab8ecb3dfb73e2ffb14fd9db8c8cd0\n"
    },
    {
      "commit": "6c95102a033ca816c889b0dcfcff4f7cef3f9620",
      "tree": "bbdd7d5eed64248f7db6bafc97802db0abeb7759",
      "parents": [
        "b896b494abdf818dbc60c860de7c728352f8afb7"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Thu May 07 09:49:55 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 07 09:51:28 2026 -0700"
      },
      "message": "Bazel Docs: Fix bad header ID.\n\nPiperOrigin-RevId: 912013602\nChange-Id: Iaf1c8946f068bcacb2b50d6e71c23e5da9f72ce8\n"
    },
    {
      "commit": "b896b494abdf818dbc60c860de7c728352f8afb7",
      "tree": "2fa15e1dd3b6166c9318c0038d1d4490dbd0d256",
      "parents": [
        "02a1353e31d0b830f1ff01ff1fdf021a9f09d106"
      ],
      "author": {
        "name": "brandjon",
        "email": "brandjon@google.com",
        "time": "Thu May 07 07:54:50 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu May 07 07:55:50 2026 -0700"
      },
      "message": "Automated rollback of commit 0eca42a4a63185af3e6931bc5d97eec48d144bb4.\n\n*** Reason for rollback ***\n\nBreakages from \"trying to mutate a frozen list\", b/510727553\n\n*** Original change description ***\n\nMemory-efficient `CompactImmutableDict` representations.\n\nPiperOrigin-RevId: 911962075\nChange-Id: I299bbf0f58c0899fdc875ac9b22a18b3deb6d1fc\n"
    },
    {
      "commit": "02a1353e31d0b830f1ff01ff1fdf021a9f09d106",
      "tree": "97df143f3f8d87d20b87af21dfd927b97f3e23e0",
      "parents": [
        "640e6a70b4986bb224cd8ca498b2b76a2ca8b90b"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Wed May 06 15:20:01 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 06 15:21:12 2026 -0700"
      },
      "message": "Internal change.\n\nPiperOrigin-RevId: 911577021\nChange-Id: I5995d3ef81a553187f719b0e4a1bbfbdcf62e2f5\n"
    },
    {
      "commit": "640e6a70b4986bb224cd8ca498b2b76a2ca8b90b",
      "tree": "665e36b5c19d485c3dd3f25702bff5130ed0478d",
      "parents": [
        "0eca42a4a63185af3e6931bc5d97eec48d144bb4"
      ],
      "author": {
        "name": "Bazel Release System",
        "email": "noreply@google.com",
        "time": "Wed May 06 18:55:08 2026 +0000"
      },
      "committer": {
        "name": "iancha1992",
        "email": "heec@google.com",
        "time": "Wed May 06 18:55:08 2026 +0000"
      },
      "message": "Release 8.7.0 (2026-05-06)\n\nRelease Notes:\n"
    },
    {
      "commit": "0eca42a4a63185af3e6931bc5d97eec48d144bb4",
      "tree": "a2b200a7e69dabdc48ab5c35462f023bba4d4419",
      "parents": [
        "67a35510370fe52c8f4aad8d643caa9a3446df97"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Wed May 06 09:55:02 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 06 09:56:10 2026 -0700"
      },
      "message": "Memory-efficient `CompactImmutableDict` representations.\n\nPiperOrigin-RevId: 911396162\nChange-Id: Ia7c639595dec31fbcc0a9ca9a423723aa30a9069\n"
    },
    {
      "commit": "67a35510370fe52c8f4aad8d643caa9a3446df97",
      "tree": "4f8942c8e69f8bcd915e109e472cf5b614a164dc",
      "parents": [
        "efd42c062bbf7065cfc527eae4b128e3698c5ab7"
      ],
      "author": {
        "name": "kylecarlstrom",
        "email": "kylecarlstrom@google.com",
        "time": "Wed May 06 09:28:03 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 06 09:30:12 2026 -0700"
      },
      "message": "Always wrap NoSuchPackageException in TargetParsingException\n- When target pattern evaluation fails due to a NoSuchPackageException (such as a BuildFileContainsErrorsException when a BUILD file has errors) for a TargetPatternKey, SkyframeTargetPatternEvaluator.\n- wrapException was falling through to BugReport.sendNonFatalBugReport. This was because it only expected NoSuchPackageException for null keys or PackageIdentifier keys (simple patterns)\n\nPiperOrigin-RevId: 911382354\nChange-Id: I171083897066a1723a5b138fde0d1a3f69286a08\n"
    },
    {
      "commit": "efd42c062bbf7065cfc527eae4b128e3698c5ab7",
      "tree": "d2e43c624cf452563230cbb2874fa6008a6252dd",
      "parents": [
        "b0e34090be517a3715e2ca63d962547a479c02b8"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Wed May 06 09:26:53 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 06 09:28:33 2026 -0700"
      },
      "message": "Split `Dict` into mutable and immutable subclasses.\n\nThis has negligible benefit right now since there are so few `Dict` instances constructed with `Mutability.IMMUTABLE`, however this will change with planned optimizations. Using a dedicated subclass for the immutable case saves 8 bytes per instance and also creates a clean split for further optimizations.\n\nPiperOrigin-RevId: 911381743\nChange-Id: I3ddf6bf9d3d4ba0b5bd660567386500810faeb66\n"
    },
    {
      "commit": "b0e34090be517a3715e2ca63d962547a479c02b8",
      "tree": "66f4374bd9b9b6190a6438035723f0a5bcbe73cc",
      "parents": [
        "a7bb1abac93a0d893d75f774161e0d7b2dc52403"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Wed May 06 08:53:41 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 06 08:55:21 2026 -0700"
      },
      "message": "Create a BlazeService to obtain the path to the server debug log.\n\nPiperOrigin-RevId: 911365014\nChange-Id: I171bde643c5767bf4c5da597dd9255128bf356b1\n"
    },
    {
      "commit": "a7bb1abac93a0d893d75f774161e0d7b2dc52403",
      "tree": "fca163b7f900b27930ad84e53823adaf38c2d743",
      "parents": [
        "2ae9a316b0fa3f8551b5fcd109f99bcccbde1b6e"
      ],
      "author": {
        "name": "hvd",
        "email": "hvd@google.com",
        "time": "Wed May 06 07:24:59 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 06 07:25:50 2026 -0700"
      },
      "message": "Migrate the `javaTestInvalidTestClassAtRootPackage` test to Starlark\n\nThe test is removed from Bazel and added to rules_java\n\n(ignore-relnotes)\n\nPiperOrigin-RevId: 911323913\nChange-Id: I75e46110e0a65fb88e1943a89f2bfe6d5bfe1438\n"
    },
    {
      "commit": "2ae9a316b0fa3f8551b5fcd109f99bcccbde1b6e",
      "tree": "46463b865dc317beab7906ba6cc89f6566ee4188",
      "parents": [
        "8cb7f793027aad0f31777ad55085b496b17c1c69"
      ],
      "author": {
        "name": "kylecarlstrom",
        "email": "kylecarlstrom@google.com",
        "time": "Wed May 06 07:18:35 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed May 06 07:19:52 2026 -0700"
      },
      "message": "  Add support for traversal-only exclusions to IgnoredSubdirectories and simplify propagation.\n\n  This CL introduces a way to mark directories/prefixes that should be skipped during target and package discovery traversals, while still allowing them to be used by globs. This is achieved by adding a separate set of exclusions to `IgnoredSubdirectories`.\n\nKey changes:\n  *   **IgnoredSubdirectories**:\n      *   Added `traversalExclusions` field to store prefixes that trigger skipping during traversals but not for globs.\n      *   Added `matchingEntryForTraversal` to check both standard ignores and traversal exclusions.\n      *   Updated `filterForDirectory` to correctly filter both sets of prefixes for subdirectories.\n  *   **IgnoredSubdirectoriesValue**:\n      *   Updated `getSubdirDeps` to use `excludedPaths.matchingEntryForTraversal`\n  *   **Callers Checked**: Verified that files like `TargetPattern.java` correctly use the updated methods, and confirmed that everything compiles successfully.\n\nPiperOrigin-RevId: 911321373\nChange-Id: I5cc9ba7cafdb4932b09deaaff4b39531ad23d937\n"
    },
    {
      "commit": "8cb7f793027aad0f31777ad55085b496b17c1c69",
      "tree": "9c3e7bf804a3c4beb8b22aa4ddd0ebef1df95e32",
      "parents": [
        "29477bcd6d66a4698d41f2bf93198983584eecf1"
      ],
      "author": {
        "name": "Thomas Köppe",
        "email": "tkoeppe@google.com",
        "time": "Tue May 05 17:51:15 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 05 17:52:22 2026 -0700"
      },
      "message": "Add missing newline at the end of the script created by blaze run --script_path\n\nPiperOrigin-RevId: 911013555\nChange-Id: I7470a2452c9157cabcb3a7dc30e67bc6a32d1404\n"
    },
    {
      "commit": "29477bcd6d66a4698d41f2bf93198983584eecf1",
      "tree": "5fe2c37b321a9ed3b2e792ff46a044c417aadd09",
      "parents": [
        "e5e8404c9c1e18f986c1c5ab525ae91ee9bc9668"
      ],
      "author": {
        "name": "gaurav0107",
        "email": "gauravdubey0107@gmail.com",
        "time": "Tue May 05 08:54:32 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 05 08:56:01 2026 -0700"
      },
      "message": "Add //tools:tools_for_bazel_subcommands filegroup to vendor mod tidy deps (https://github.com/bazelbuild/bazel/pull/29445)\n\n## Problem\n\n`bazel vendor //...` does not vendor the implicit `@buildozer_binary` dependency of `bazel mod tidy`, so a subsequent `bazel mod tidy` run with `--vendor_dir` and `--nofetch` fails with:\n\n```\nERROR: no such package \u0027@@buildozer++buildozer_binary+buildozer_binary//\u0027:\nno such package \u0027@@buildozer+//\u0027: Vendored repository buildozer+ not found\nunder the vendor directory and fetching is disabled.\n```\n\nUsers currently have to discover and pass the undiscoverable incantation `--repo\u003d@@buildozer+ --repo\u003d@@buildozer++buildozer_binary+buildozer_binary`.\n\nSee #29222 for the full discussion. @fmeum proposed the fix adopted here:\n\n\u003e We could add a target under `bazel_tools` that groups all such tools and that you could add to your vendor pattern list for this purpose.\n\nThe reporter confirmed this approach works for their use case.\n\n## Fix\n\nAdd a new public filegroup `@bazel_tools//tools:tools_for_bazel_subcommands` that groups implicit tool dependencies of Bazel subcommands. Today it contains just `@buildozer_binary//:buildozer.exe` (required by `bazel mod tidy`); future subcommands that introduce implicit tool deps can be added here.\n\nUsers who run Bazel offline with `--vendor_dir` and `--nofetch` can opt in by including the target in their vendor invocation:\n\n```\nbazel vendor //... @bazel_tools//tools:tools_for_bazel_subcommands\n```\n\nThis preserves the current behavior for users who don\u0027t run `bazel mod tidy` (no silent expansion of the transitive closure) while giving those who do run it a single, documented target to add to their vendor pattern.\n\n## Testing\n\nAdded `test_tools_for_bazel_subcommands` in `src/test/shell/bazel/bazel_tools_test.sh` that queries the new filegroup and asserts buildozer is in its transitive dependencies.\n\n## Release notes\n\n```\nAdd `@bazel_tools//tools:tools_for_bazel_subcommands` filegroup that groups implicit tool dependencies of Bazel subcommands (e.g. buildozer for `bazel mod tidy`). Add this target to `bazel vendor` when working offline.\n```\n\nFixes #29222\n\nCloses #29445.\n\nPiperOrigin-RevId: 910718201\nChange-Id: I776833cf65624b67425f85a74d0891316f1ed40e\n"
    },
    {
      "commit": "e5e8404c9c1e18f986c1c5ab525ae91ee9bc9668",
      "tree": "0de4dff939fe5ce53c0be45ecb5343c03909b1bf",
      "parents": [
        "7896f7318db92b525ba2cdbd446301e464943b4c"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Tue May 05 08:39:45 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 05 08:40:32 2026 -0700"
      },
      "message": "Change default remote analysis lookup deadline from 120 sec to 45 sec.\n\nPiperOrigin-RevId: 910710638\nChange-Id: I7ade79eb5191ad2db769dbefb30dd67c0adb6ac2\n"
    },
    {
      "commit": "7896f7318db92b525ba2cdbd446301e464943b4c",
      "tree": "5e6a4bd2fb59b582a142fc2f38453f51865ca7a1",
      "parents": [
        "accb2deae5f74bf5ce104ab4a4088bb852a0d740"
      ],
      "author": {
        "name": "Malte Poll",
        "email": "1780588+malt3@users.noreply.github.com",
        "time": "Tue May 05 08:31:32 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 05 08:33:28 2026 -0700"
      },
      "message": "{r,m}ctx.download*: report size of downloaded file (https://github.com/bazelbuild/bazel/pull/29463)\n\n### Description\n\nAdds a new structure field `size_bytes` in the return value of `rctx.download` (and friends) containing the file size of the downloaded file.\n\n### Motivation\n\nThis is a useful piece of metadata Bazel provides to repository rules and module extensions. Motivation for adding this: I need the ability to annotate BUILD files with sizes of downloaded files in rules_runfiles_group (https://github.com/hermeticbuild/rules_runfiles_group). This makes it possible to merge runfiles groups based on their \"weight\", which may include actual file sizes of *_import targets (java_import, cc_import, ...).\n\n### Build API Changes\n\nIt does affect the Build API, but is backwards compatible (adding a new field).\nExisting users will not be impacted.\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]: {r,m}ctx.download* report the size of downloaded files\nRELNOTES: Addition to the user-facing Build API\n\nCloses #29463.\n\nPiperOrigin-RevId: 910706646\nChange-Id: I980cdee803810e1fb6222f69782fcad2648af68d\n"
    },
    {
      "commit": "accb2deae5f74bf5ce104ab4a4088bb852a0d740",
      "tree": "ab4bca63479e058e4462869b5792d6eb40f1df4b",
      "parents": [
        "dd5b36975780fb97a259d01d42220cbb56d65064"
      ],
      "author": {
        "name": "Will Stranton",
        "email": "2659963+willstranton@users.noreply.github.com",
        "time": "Tue May 05 08:28:23 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue May 05 08:29:27 2026 -0700"
      },
      "message": "Add `add_prefix` attribute to `git_repository` (https://github.com/bazelbuild/bazel/pull/29453)\n\n### Description\nSimilar to `http_archive`\u0027s `add_prefix` attribute, this allows git repos to be cloned into a given subdirectory.\n\nFixes #25453\n\n### Motivation\n\nSee #25453 . This also further aligns the attributes of `http_archive` with `git_repository`\n\n### Build API Changes\n\n\u003e 1. Has this been discussed in a design doc or issue? (Please link it)\n\nSee #25453\n\n\u003e 2. Is the change backward compatible?\n\nYes - an attribute is added.  It is optional to use.\n\n\u003e 3. If it\u0027s a breaking change, what is the migration plan?\n\nN/A\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 `add_prefix` attribute to `git_repository` to allow cloning repositories into a given subdirectory prefix\n\nCloses #29453.\n\nPiperOrigin-RevId: 910704876\nChange-Id: I3a916322254c5e6c91d82f000d084c6fc4fc8331\n"
    },
    {
      "commit": "dd5b36975780fb97a259d01d42220cbb56d65064",
      "tree": "ee69d8ed02413a4701125f91045cf542b8d458d6",
      "parents": [
        "5771cdfa26f63db92590e2dfb1caebf81a1d1911"
      ],
      "author": {
        "name": "Keith Smiley",
        "email": "keithbsmiley@gmail.com",
        "time": "Mon May 04 18:12:01 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 04 18:12:51 2026 -0700"
      },
      "message": "Remove experimental from remote_downloader flags (https://github.com/bazelbuild/bazel/pull/29392)\n\nThis has been around for 6 years and seems well supported in the\ncommunity.\n\nCloses #29392.\n\nPiperOrigin-RevId: 910352871\nChange-Id: I84d2a08448bceaba0da4d503486193c187b91720\n"
    },
    {
      "commit": "5771cdfa26f63db92590e2dfb1caebf81a1d1911",
      "tree": "0e180c465958bf731e24d9f1db4a055123568933",
      "parents": [
        "283fec5e2ab5eba6f619ef7bfc5fdf16ab56451c"
      ],
      "author": {
        "name": "Nikki Vijaybhaskar",
        "email": "nikki@engflow.com",
        "time": "Mon May 04 10:49:40 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 04 10:51:35 2026 -0700"
      },
      "message": "docs: Fix flag name rendering in versioned pages (https://github.com/bazelbuild/bazel/pull/29408)\n\n### Description\nFollow up to https://github.com/bazelbuild/bazel/pull/29325\n\n- Wrapped flag names in single backticks to fix rendering issue where like `--verbose` on the [flag cheatsheet](https://preview.bazel.build/reference/flag-cheatsheet) are rendered with an emdash (—) instead of double dashes (--) due to Mintlify\u0027s smart typography converting `--` in prose contexts\n- Hyperlinks to the command-line reference are preserved\n- This PR targets the flag cheatsheet page in versioned docs whereas https://github.com/bazelbuild/bazel/pull/29325 fixed the issue in HEAD\n- Mintlify preview link (example version 8.6 docs): https://bazel-pr-29408.mintlify.app/versions/8.6.0/reference/flag-cheatsheet\n\n### Motivation\nFixes https://github.com/bazel-contrib/bazel-docs/issues/366\n\n### Build API Changes\nNo\n\n### Checklist\n\n- [ ] Verify on Mintlify [preview](https://bazel-pr-29408.mintlify.app/versions/8.6.0/reference/flag-cheatsheet) that flag names render with -- (not —)\n- [ ] Verify flag names are still clickable links to the command-line reference\n### Release Notes\n\nN/A\n\nRELNOTES: None\n\nCloses #29408.\n\nPiperOrigin-RevId: 910120252\nChange-Id: I47963a87c2e85401d3cd8adf6df5aa5f508cf984\n"
    },
    {
      "commit": "283fec5e2ab5eba6f619ef7bfc5fdf16ab56451c",
      "tree": "959aff3bd330902f6a099f384c0e8ce97a1b8ff8",
      "parents": [
        "5cf14d47ab994b6004a1e12387c6fc1d6395dc94"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Mon May 04 08:00:04 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 04 08:01:10 2026 -0700"
      },
      "message": "Enhance RequestBatcher and ProxyReadingStore for session fallback.\n\n- Update RequestBatcher.ResponseSink to be generic over RequestT and add\n  request() and isDone() methods.\n- Update ProxyReadingStore to use the new generic ResponseSink signature.\n\nPiperOrigin-RevId: 910034456\nChange-Id: Id88aba7a32fa3268bea221b3235ef687a53b9c17\n"
    },
    {
      "commit": "5cf14d47ab994b6004a1e12387c6fc1d6395dc94",
      "tree": "666d719f12843abceb6ca282bdedec5c9d089b5a",
      "parents": [
        "42b1f15e1063cffdf9711394bbf8020c0d72e24a"
      ],
      "author": {
        "name": "cushon",
        "email": "cushon@google.com",
        "time": "Mon May 04 07:30:23 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 04 07:31:42 2026 -0700"
      },
      "message": "Replace `-Xverify:none` with `-XX:-BytecodeVerificationLocal -XX:-BytecodeVerificationRemote`\n\nThe replacement flags provide equivalent functionality. Support for `-Xverify:none` is being removed from the JDK, see https://bugs.openjdk.org/browse/JDK-8373481.\n\nPiperOrigin-RevId: 910020554\nChange-Id: I964820a2779038e251094dc91b391cb2727b8f0d\n"
    },
    {
      "commit": "42b1f15e1063cffdf9711394bbf8020c0d72e24a",
      "tree": "b8513748535adbcbc3c0a1f580e9605986ed3ad8",
      "parents": [
        "215ec5cd3a0aa09cd9ede99d132465f3c9c59000"
      ],
      "author": {
        "name": "cushon",
        "email": "cushon@google.com",
        "time": "Mon May 04 05:18:26 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon May 04 05:19:32 2026 -0700"
      },
      "message": "Remove `@Override` from record component declarations\n\n`@Override` on record components doesn\u0027t do anything, these annotations were left over when these records were migrated from AutoValue.\n\nSee also https://github.com/google/error-prone/issues/5174\n\nPiperOrigin-RevId: 909966938\nChange-Id: Ic87cc62be8306ba1b2f01bad6f84e343deecfc6b\n"
    },
    {
      "commit": "215ec5cd3a0aa09cd9ede99d132465f3c9c59000",
      "tree": "d47a638dc48ec73e5f5494d0735d8cb6166feec8",
      "parents": [
        "0f06e4a05203ba50cedccfc7fffb2557ba460b82"
      ],
      "author": {
        "name": "Mike Kruskal",
        "email": "mkruskal@google.com",
        "time": "Fri May 01 11:23:17 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 01 11:25:08 2026 -0700"
      },
      "message": "BEGIN_PUBLIC\nRelease cc_embed_data in Gloop\nEND_PUBLIC\n\nPiperOrigin-RevId: 908819996\nChange-Id: Icfe578c24322a2ff03c5c4caf8bc1432f196a76b\n"
    },
    {
      "commit": "0f06e4a05203ba50cedccfc7fffb2557ba460b82",
      "tree": "967a7f226d94f31172e1c738cb952b891b74c438",
      "parents": [
        "c789a3e53ade1785e9298db7ee920ba51a03ebcb"
      ],
      "author": {
        "name": "kylecarlstrom",
        "email": "kylecarlstrom@google.com",
        "time": "Fri May 01 10:05:25 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri May 01 10:07:02 2026 -0700"
      },
      "message": "Ensure FileTransport sequential writer is safely closed\n\nThe `SequentialWriter` uses an unbounded `LinkedBlockingDeque` for its `pendingWrites` queue. Previously, we were using `put()` to enqueue the `CLOSE_EVENT_FUTURE`. Because `put()` is designed for bounded queues, it proactively checks the thread\u0027s interrupt status and throws an `InterruptedException` if the thread is interrupted, even if the queue has infinite capacity.\n\nSince `pendingWrites` is unbounded (capacity is `Integer.MAX_VALUE`), we can safely replace `put()` with `add()`. `add()` does not check for interrupts and will never block, guaranteeing that the `CLOSE_EVENT_FUTURE` is enqueued regardless of the calling thread\u0027s interrupt status.\n\nPiperOrigin-RevId: 908785145\nChange-Id: I8f1174f3839976a4e8bfb919c12cf6d9858164ee\n"
    },
    {
      "commit": "c789a3e53ade1785e9298db7ee920ba51a03ebcb",
      "tree": "19c6c445abb5470b6ba379d0fdf5ee862f195dd7",
      "parents": [
        "71f2ca6861ff2329227096668cf6280fe5834b2f"
      ],
      "author": {
        "name": "Toli Yevtushenko",
        "email": "anatoliyy@google.com",
        "time": "Thu Apr 30 16:31:29 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 30 16:32:49 2026 -0700"
      },
      "message": "Exempt experimental packages from bzl load() visibility checks.\n\nThis is a Google-internal change as the notion of an \"experimental\" package is Google-specific.\n\nPiperOrigin-RevId: 908440114\nChange-Id: Ic39d754a9c8307957c7284208bc7e3efbbd293c5\n"
    },
    {
      "commit": "71f2ca6861ff2329227096668cf6280fe5834b2f",
      "tree": "38b2a999b18939cff79b67ca224d528c2bf7fbc2",
      "parents": [
        "8ef58fb18374784e1c31174d1ec707f94abd2266"
      ],
      "author": {
        "name": "Jie Luo",
        "email": "jieluo@google.com",
        "time": "Thu Apr 30 15:25:14 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 30 15:26:51 2026 -0700"
      },
      "message": "Implement py_stubby_library()\n\nBREAKING CHANGE, please do not auto rollback b/507167853\n\nIf your tests fails with error complain exceed max-input-count, please increase it (see []\n\nAdd a separate py_stubby_library bazel rule to remove stubby code generation from py_proto_library. When has_services \u003d True, _pb_stubby.pyi and _pb2.pyi will be generated and all service related code will be in _pb_stubby.pyi.\n\nExample:\npy_stubby_library(\n    name \u003d \"test_py_stubby\",\n    srcs \u003d [\":test_proto\"],\n    deps \u003d [\":test_py_pb2\"],\n)\n\nFor backward compatibility, py_proto_library() will initially export all of the Stubby symbols that it exports today. Most usages can continue work. A few usages still need some modifications to work with the new library.\n\nBEGIN_PUBLIC\n\nInternal change\n\nEND_PUBLIC\n\nPiperOrigin-RevId: 908407056\nChange-Id: I77bee9739c3fe8441288f6d490cd2c605db1c9a1\n"
    },
    {
      "commit": "8ef58fb18374784e1c31174d1ec707f94abd2266",
      "tree": "1966a1cc13368b2fd6970c92ad54621d9d382e63",
      "parents": [
        "88a0f1cbe36ebe107ed6481beb4b16f8559e9991"
      ],
      "author": {
        "name": "arostovtsev",
        "email": "arostovtsev@google.com",
        "time": "Thu Apr 30 12:52:49 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 30 12:53:50 2026 -0700"
      },
      "message": "Type checker: allow list/dict/tuple literals to be assigned to any compatible type\n\nThis solves the obnoxious quality-of-life problem where the type checker\ncomplains when we provide the initial value of an list/dict literal to a\nvariable whose type is a collection type with a non-Any type parameter;\ne.g.\n\nx: list[str] \u003d []\n\nTo fix this for empty tuples, we properly handle Never (it can be assigned\nto any other type).\n\nTo fix this for lists and dicts, we introduce new types - ListRvalueType\nand DictRvalueType - which are used for list/dict literals and the\nreturn values of binary operations. (In future, we can also use it for\nbuilt-in constructor methods, e.g. `list()` and `dict()`.) Since such\nvalues cannot be referred to by any means until they are assigned to\nsomething, there\u0027s no way to mutate them that would break the type\ncontract, so they are safe to assign to any compatible collection.\n\nIn other words, a list literal of element type T can be assigned to\nany `list[U]`, `Sequence[U]`, or `Collection[U]` for which T can be\nassigned to U.\n\nWorking towards #27370\n\nPiperOrigin-RevId: 908327729\nChange-Id: Ib33ec9d5af40e7649578531f443754754c468406\n"
    },
    {
      "commit": "88a0f1cbe36ebe107ed6481beb4b16f8559e9991",
      "tree": "7e73e8bd1ca56fd76f373368d3cccf1c13d73952",
      "parents": [
        "243188395c9ec6dcc1af263a795fc986eb3c0310"
      ],
      "author": {
        "name": "Bazel Release System",
        "email": "noreply@google.com",
        "time": "Thu Apr 30 18:48:54 2026 +0000"
      },
      "committer": {
        "name": "Summers Pittman",
        "email": "mrsummers@google.com",
        "time": "Thu Apr 30 18:48:54 2026 +0000"
      },
      "message": "Release 10.0.0-pre.20260421.2 (2026-04-30)\n\nBaseline: 2d4650fe518304730dbda56c27cc3245784aea10\n\nCherry picks:\n\n   + 84421290d1715dccc28b30aa662305d9964993f2:\n     Ensure Blaze profiler provides a valid clock fallback for\n     logging.\n   + 4090746091f5c6cad2d483bb64157c8beb8559b5:\n     Fix :bazel_bootstrap_distfile_test and\n     :bazel_bootstrap_distfile_tar_test.\n\nImportant changes:\n\n  - Added the `module_ctx.tag_sort_key(tag)` method, which returns an\n    opaque object for the given tag that can be compared to derive\n    the order in which tags from different classes appear in the\n    MODULE.bazel file.\n\nThis release contains contributions from many people at Google, as well as Douglas Thor, Hoyt Summers Pittman, Jacob Nowjack, Keith Smiley, Xudong Yang.\n"
    },
    {
      "commit": "243188395c9ec6dcc1af263a795fc986eb3c0310",
      "tree": "e7e6d1dfec526d62d0df3f26aa84b92da0f656b7",
      "parents": [
        "ce52aec9255705077c84fa1e30872a68e6eaa81b"
      ],
      "author": {
        "name": "Googler",
        "email": "noreply@google.com",
        "time": "Thu Apr 30 09:38:06 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 30 09:39:28 2026 -0700"
      },
      "message": "Remove J2ObjcConfiguration and related options in favor of starlark versions.\n\nPiperOrigin-RevId: 908224052\nChange-Id: Ib1c111f00ebbc4780b5810bfa0c490c45ee548c9\n"
    },
    {
      "commit": "ce52aec9255705077c84fa1e30872a68e6eaa81b",
      "tree": "1906b0244401cdae29f3c884265f31a3abcdf077",
      "parents": [
        "0ef9d375332dc310ca952481bb559e9c661bcfac"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Thu Apr 30 02:21:11 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 30 02:22:52 2026 -0700"
      },
      "message": "Bazel Docs: Delete 6.5 docs.\n\nBazel 6.x has been EOL since December 2025 (https://bazel.build/release), and the 6.5 docs currently account for over 700 of the remaining 1600 broken links.\nMoreover, even if we were to publish docs for 6.x, it should be 6.6 instead.\n\nPiperOrigin-RevId: 908042824\nChange-Id: I2de0e20af4d15306471f6e42f8b87f04b6a92f2c\n"
    },
    {
      "commit": "0ef9d375332dc310ca952481bb559e9c661bcfac",
      "tree": "7848fe387f0d6a080c3ac8a7bdbca65f48447a28",
      "parents": [
        "43a3a5322df839361526f8cd8730b7bd3aede643"
      ],
      "author": {
        "name": "tedx",
        "email": "tedx@google.com",
        "time": "Wed Apr 29 15:47:11 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 29 15:48:27 2026 -0700"
      },
      "message": "Add a newline to end of requirements.txt\n\nRELNOTES: none\nPiperOrigin-RevId: 907817666\nChange-Id: I881d9189e3f42038558ad7a2adb2deb6f01f32bb\n"
    },
    {
      "commit": "43a3a5322df839361526f8cd8730b7bd3aede643",
      "tree": "c5d280605dbf7d41e6492d753658f1fe19af1004",
      "parents": [
        "31b459ba7941472ae2beb15d8f8f1ae8b7869a98"
      ],
      "author": {
        "name": "plf",
        "email": "plf@google.com",
        "time": "Wed Apr 29 14:00:34 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 29 14:01:45 2026 -0700"
      },
      "message": "Normalize the --check_visibility flag in BuildOptions serialization.\n\nThis change improves analysis cache sharing by ensuring that BuildOptions which differ only by the value of --check_visibility result in the same serialized representation and checksum.\n\nBecause --check_visibility only determines whether a visibility check is performed and does not alter the actual analysis output (the ConfiguredTarget), analysis results can be safely shared between builds regardless of this flag\u0027s setting.\n\nRELNOTES:none\nPiperOrigin-RevId: 907765942\nChange-Id: Icba8add6a1f0d73c7d93fc93c7a9d50de23836fc\n"
    },
    {
      "commit": "31b459ba7941472ae2beb15d8f8f1ae8b7869a98",
      "tree": "989466c8200d41e27a3fdff414b9321647631cd8",
      "parents": [
        "905d8e09e4b8dc7333ecd7f4621c7d98f55948a2"
      ],
      "author": {
        "name": "tanzhengwei",
        "email": "tanzhengwei@google.com",
        "time": "Wed Apr 29 12:06:30 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 29 12:08:06 2026 -0700"
      },
      "message": "Fix NullPointerException in ActionTemplateExpansionFunction due to wrongly bubbled up exception.\n\nPiperOrigin-RevId: 907711619\nChange-Id: I0c42d7f8a5ad38ed0b08c3644cae305016b9f848\n"
    },
    {
      "commit": "905d8e09e4b8dc7333ecd7f4621c7d98f55948a2",
      "tree": "25548203f32e5179d3a81ab820e42aa1b8071c0b",
      "parents": [
        "696aae8f40112d73f7e9a878aec754e7f687368f"
      ],
      "author": {
        "name": "Googler",
        "email": "noreply@google.com",
        "time": "Wed Apr 29 11:40:19 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 29 11:41:11 2026 -0700"
      },
      "message": "Moves choice of FixDepsTool into JavaSemantics and passes the resulting tool to header compilation as well.\n\nPiperOrigin-RevId: 907698760\nChange-Id: I8ec53dbc8d121ac625bc937cf19dccf874480fe6\n"
    },
    {
      "commit": "696aae8f40112d73f7e9a878aec754e7f687368f",
      "tree": "fa14d65fc01651e125994dad995188b569317044",
      "parents": [
        "5347ca870104f5c6aced1c3a63671c1492ea7bbd"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Wed Apr 29 11:26:08 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 29 11:27:16 2026 -0700"
      },
      "message": "Bazel Docs: Add last few remaining images.\n\nPiperOrigin-RevId: 907691126\nChange-Id: I3a41566a616b73d7923de959209db7ffe600e42c\n"
    },
    {
      "commit": "5347ca870104f5c6aced1c3a63671c1492ea7bbd",
      "tree": "6c14dc6c653f8c14f3df6886afb2a5efd3884b5b",
      "parents": [
        "4d8f19c39f52be661e28f3aecb2ed4c19978268b"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Wed Apr 29 06:47:03 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 29 06:50:00 2026 -0700"
      },
      "message": "Search for codecs in the classloader that loaded CodecScanner.\n\nPiperOrigin-RevId: 907562117\nChange-Id: If4d8d9d541522b96493b13f17b1be3ac1fd1bbca\n"
    },
    {
      "commit": "4d8f19c39f52be661e28f3aecb2ed4c19978268b",
      "tree": "6fca189c912fbc7e73a95e97e81d58f736481716",
      "parents": [
        "e40bf054ccae393e1ee5a7cd0a83448ca339f167"
      ],
      "author": {
        "name": "Fredrik Medley",
        "email": "fredrik@meroton.com",
        "time": "Wed Apr 29 05:23:39 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 29 05:24:50 2026 -0700"
      },
      "message": "BazelOutputService: Fix UnsupportedOperationException in batchStatJob (https://github.com/bazelbuild/bazel/pull/29422)\n\n### Description\n\nBazelOutputServiceSymlink etc. throws UnsupportedOperationException in e.g. getLastChangeTime(). Those objects are only created by batchStatter so the only place that code path is called is in batchStatJob() in FilesystemValueChecker.java. Catch the UnsupportedOperationException there.\n\n### Motivation\n\nFixes #29405\n\n### Build API Changes\n\nNo\n\n### Checklist\n\n- [ ] 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 #29422.\n\nPiperOrigin-RevId: 907531973\nChange-Id: Ifb7491913016c577d55f2159856d4812a04bc633\n"
    },
    {
      "commit": "e40bf054ccae393e1ee5a7cd0a83448ca339f167",
      "tree": "2ac3c2b2f25a66b427e0f5ba829221bf7e798e0a",
      "parents": [
        "f6522d65b0b10f875218726e93ab284ac7a367d8"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Wed Apr 29 03:42:38 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 29 03:44:36 2026 -0700"
      },
      "message": "Make BlazeVersionInfo immutable.\n\nPiperOrigin-RevId: 907491814\nChange-Id: Ib84adea72573618af9cdafe7bd2d4f07e7bc59c7\n"
    },
    {
      "commit": "f6522d65b0b10f875218726e93ab284ac7a367d8",
      "tree": "5ad402e7a87f9a0113f49d798d4e34e333090e0a",
      "parents": [
        "fd54f828ba6d83383d2b2a89fcc64bbfb50f59be"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Tue Apr 28 15:19:54 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 28 15:21:12 2026 -0700"
      },
      "message": "Bazel Docs: Add missing images for 9.1 docs.\n\nPiperOrigin-RevId: 907205322\nChange-Id: Ibf770d56201b7d12a789a36476cc528538725cf0\n"
    },
    {
      "commit": "fd54f828ba6d83383d2b2a89fcc64bbfb50f59be",
      "tree": "8e76f0450a1f140e6b1a2189ca26b2158497dacf",
      "parents": [
        "082349719b7f6a5a5930103df56e5c48f2bb1c34"
      ],
      "author": {
        "name": "jhorvitz",
        "email": "jhorvitz@google.com",
        "time": "Tue Apr 28 11:42:29 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 28 11:43:50 2026 -0700"
      },
      "message": "Consider non-exec transitions that output `--stamp` as stamp-dependent.\n\nSuch transitions may result in dependencies with different output paths (ST-hash) on builds with `--stamp` vs `--nostamp`. Ordinarily this does not cause issues, but it can if the rule above the transition behaves differently based on the dependency paths.\n\nPiperOrigin-RevId: 907095747\nChange-Id: I4ab7da8b8e4790b1811efbb34e53b477cfb4fbed\n"
    },
    {
      "commit": "082349719b7f6a5a5930103df56e5c48f2bb1c34",
      "tree": "87526d6372bd1967ed9900c367d4a135c6950e8e",
      "parents": [
        "35530d45e72d8ce4b5979ebdee1d40f194863ad6"
      ],
      "author": {
        "name": "Ted Xie",
        "email": "tedx@google.com",
        "time": "Tue Apr 28 11:02:53 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 28 11:03:40 2026 -0700"
      },
      "message": "Add SkybridgeInterface to bootstrap test (https://github.com/bazelbuild/bazel/pull/29418)\n\nFixes Bazel postsubmit breakage.\n\nRELNOTES: None\n\nCloses #29418.\n\nPiperOrigin-RevId: 907073173\nChange-Id: I53e59839b583d1ffa9b831b15a140db44c56eac4\n"
    },
    {
      "commit": "35530d45e72d8ce4b5979ebdee1d40f194863ad6",
      "tree": "8c60e1e3f71167eed0a9eecc26ea74e0e99373f2",
      "parents": [
        "d599518205c3f52d3dcc5917074b1d58462fe999"
      ],
      "author": {
        "name": "wyv",
        "email": "wyv@google.com",
        "time": "Tue Apr 28 09:15:25 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 28 09:16:13 2026 -0700"
      },
      "message": "Add a specific error code for `IOException`s during main repository computation\n\nThis change introduces a new failure detail code, `REPOSITORY_MAPPING_IO_EXCEPTION`, for IOExceptions encountered while computing the main repository mapping. This often results from a transient infrastructure failure, so we give them their own error code to make them retryable.\n\nPiperOrigin-RevId: 907014205\nChange-Id: I6d3cb7a346fd643c6de8c7ef791a42aad68353a4\n"
    },
    {
      "commit": "d599518205c3f52d3dcc5917074b1d58462fe999",
      "tree": "829a2ab6f0ad950976f15f489d9ed9747059ce8d",
      "parents": [
        "d5325c2d72fe1da56fa0251f7e411309fe3a2b6d"
      ],
      "author": {
        "name": "arostovtsev",
        "email": "arostovtsev@google.com",
        "time": "Tue Apr 28 08:35:01 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 28 08:36:01 2026 -0700"
      },
      "message": "Fix emitted Option events for non-repeatable string_list/set Starlark flags\n\nFollow-up to https://github.com/bazelbuild/bazel/commit/37654e56598027f1f65bf729d604a600786dd8e9; we want to avoid spurious `[` and `]`\nin event output for non-repeatable lists and sets too.\n\nPiperOrigin-RevId: 906996433\nChange-Id: I8e3cc6f21e1c9775cb8397b99a28e053a6464a0f\n"
    },
    {
      "commit": "d5325c2d72fe1da56fa0251f7e411309fe3a2b6d",
      "tree": "a756e11af6f2cd1e1ca96fbad08896c18d3c0448",
      "parents": [
        "5b25ac07a54596e73a87c7960708cbe3ac899466"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Tue Apr 28 08:22:35 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 28 08:23:41 2026 -0700"
      },
      "message": "Bazel Docs: Fix remaining syntax errors in 9.1 docs.\n\n`mint validate` passes now.\n\nAddendum to https://github.com/bazelbuild/bazel/pull/29403\n\nPiperOrigin-RevId: 906990729\nChange-Id: I42f4a957ef986f0aba2a52c1619d853281002afa\n"
    },
    {
      "commit": "5b25ac07a54596e73a87c7960708cbe3ac899466",
      "tree": "b4eb62ef48d5acda7a1f0e8b8515fd342888cc8f",
      "parents": [
        "36463c8f68083c2500dcb012e27b30e39ab8f85b"
      ],
      "author": {
        "name": "cushon",
        "email": "cushon@google.com",
        "time": "Tue Apr 28 06:07:27 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 28 06:08:31 2026 -0700"
      },
      "message": "Internal change.\n\nPiperOrigin-RevId: 906933594\nChange-Id: I6983f12948f556f0e4f9ebfa646023483ceeb0c6\n"
    },
    {
      "commit": "36463c8f68083c2500dcb012e27b30e39ab8f85b",
      "tree": "466fd2a6b6df55469b6c693773b71a8a39049a1d",
      "parents": [
        "d35da0e59f54962983b0026991e0a27af63bca0b"
      ],
      "author": {
        "name": "Kapunahele Wong",
        "email": "kapunahelewong@gmail.com",
        "time": "Tue Apr 28 05:42:36 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 28 05:43:56 2026 -0700"
      },
      "message": "docs: fix remaining MDX syntax errors in 9.1.0 release docs. (https://github.com/bazelbuild/bazel/pull/29403)\n\nThis commit:\n\n- Removes {: .external} DevSite link attributes (15 files)\n- Converts {:#anchor-id} Jekyll anchors to {#anchor-id} MDX format (20 files)\n- Removes DevSite metadata (keywords:) before frontmatter in 3 files\n- Makes `\u003cimg\u003e` and `\u003ccol\u003e` tags self-closing for JSX compatibility\n\n### Description\n\n### Motivation\n\n### Build API Changes\n\nNo\n\n### Checklist\n\n- [ ] 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 #29403.\n\nPiperOrigin-RevId: 906922271\nChange-Id: Ibd1a9e02e226515be346b42200d0577c000d3758\n"
    },
    {
      "commit": "d35da0e59f54962983b0026991e0a27af63bca0b",
      "tree": "d91550d086380065ce71800dcc416b9ae1d4d294",
      "parents": [
        "37654e56598027f1f65bf729d604a600786dd8e9"
      ],
      "author": {
        "name": "Keith Smiley",
        "email": "keithbsmiley@gmail.com",
        "time": "Tue Apr 28 05:34:08 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Tue Apr 28 05:35:16 2026 -0700"
      },
      "message": "Make local scheduling respect exec_properties resources (https://github.com/bazelbuild/bazel/pull/29284)\n\nPreviously only tests supported a target level way to hint the resources\nrequired by the target. This is done with `tags \u003d [\"resources:cpu:10\"]`.\nNow this syntax is supported for normal actions as well, and both normal\nactions and test actions support this same format in `exec_properties`\nwith `exec_properties \u003d {\"resources:cpu\": \"10\"}`, or exec_group specific\nversions like: `exec_properties \u003d {\"cpp_link.resources:cpu\": \"10\"}`.\n\nWork towards https://github.com/bazelbuild/bazel/issues/19679 (doesn\u0027t\nhandle a default flag currently)\nWork towards https://github.com/bazelbuild/bazel/issues/17368\nWork towards https://github.com/bazelbuild/bazel/issues/25770\n\nFixes https://github.com/bazelbuild/bazel/issues/6477\nFixes https://github.com/bazelbuild/bazel/issues/19805\nFixes https://github.com/bazelbuild/bazel/issues/25195\nFixes https://github.com/bazelbuild/bazel/issues/25792\nFixes https://github.com/bazelbuild/bazel/issues/25793\n\nRELNOTES[inc]: `exec_properties` now respects `resources:cpu` and `resources:memory` for local resource estimation.\n\nCloses #29284.\n\nPiperOrigin-RevId: 906919034\nChange-Id: Ia9effd70a71f4e1f42021d945cdc7b1d9d52bbf6\n"
    },
    {
      "commit": "37654e56598027f1f65bf729d604a600786dd8e9",
      "tree": "857c8ec87c8b0031a1283de05af131879e6e338c",
      "parents": [
        "b6088e335bab4a48e879028a042bf90992a8b54e"
      ],
      "author": {
        "name": "arostovtsev",
        "email": "arostovtsev@google.com",
        "time": "Mon Apr 27 12:02:53 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 12:04:08 2026 -0700"
      },
      "message": "Fix emitted Option events for repeatable / allow_multiple Starlark flags\n\nIf a build_setting is marked as repeatable \u003d True or allow_multiple \u003d True,\nthen in the command line events we should emit a separate Option message\nfor each instance of the corresponding flag.\n\nThe simplest way to do so is to store the set of repeatable/allow_multiple\nflag names, and pass it through the options provider.\n\nOtherwise, we end up with nonsense like `--//my:cflags\u003d[-DX,-DY,-DZ]` in\nthe emitted events, which cannot be pasted back into the terminal.\n\nPiperOrigin-RevId: 906478500\nChange-Id: I6a8ed27682417b23ac22e6800e5e695fe841ed6e\n"
    },
    {
      "commit": "b6088e335bab4a48e879028a042bf90992a8b54e",
      "tree": "834272aa58440bf35b8d58c461bd1a6f7276ab0e",
      "parents": [
        "9078a43ea9c7abe3da0d25235426542305dec366"
      ],
      "author": {
        "name": "Grzegorz Lukasik",
        "email": "hauserx@gmail.com",
        "time": "Mon Apr 27 08:24:56 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 08:26:07 2026 -0700"
      },
      "message": "Truncate \"Detecting cycles with roots\" log to avoid huge java.log entries (https://github.com/bazelbuild/bazel/pull/29380)\n\n### Description\n\nWhen a build has tens or hundreds of thousands of top-level keys, the full cycleRoots collection could be serialized into a single log line. Cap the logged sample at 100 entries and include the total count.\n\n### Motivation\nOur java.log grew to ~200MB in some cases due to this single log for builds with pre-selected targets.\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 #29380.\n\nPiperOrigin-RevId: 906371168\nChange-Id: I201375f98c81a311624b3082bf9fd029f36d1923\n"
    },
    {
      "commit": "9078a43ea9c7abe3da0d25235426542305dec366",
      "tree": "1a0ca36aabc1fffbf002252eedd51b4b0b637ffb",
      "parents": [
        "44887757244396a706d3816e988daad66959199a"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Mon Apr 27 07:45:39 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 07:47:31 2026 -0700"
      },
      "message": "Bazel Docs: Fix broken links\n\nChanges:\n- Replaced relative links with absolute ones (Mintlify opens relative links in a new window)\n- Fixed links in release docs that did not contain a version\n- Fixed some invalid characters and links\n- Fixed links to files under /rules/lib/ that were moved to a new directory because of unknown commit\n\nCreating new generated docs will likely produce new bad links, so we should modify docs2mdx to apply some of the same fixes.\n\nProgress towards https://github.com/bazel-contrib/bazel-docs/issues/397\n\nPiperOrigin-RevId: 906353292\nChange-Id: I6e85e8d263ad76d0c7c569037be30b298f228180\n"
    },
    {
      "commit": "44887757244396a706d3816e988daad66959199a",
      "tree": "d4cea29b0ef3edfff8d36b9721cc55f5ce86f545",
      "parents": [
        "ee94c4388ef36d6b3bcad28d76368b488f427621"
      ],
      "author": {
        "name": "twerth",
        "email": "twerth@google.com",
        "time": "Mon Apr 27 06:21:57 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 06:23:41 2026 -0700"
      },
      "message": "Remove unused deps.\n\nPiperOrigin-RevId: 906318441\nChange-Id: I2d8e2f3316a3ee2e88a5e10127c2e03fb30f7bec\n"
    },
    {
      "commit": "ee94c4388ef36d6b3bcad28d76368b488f427621",
      "tree": "326c0107f1a336a90d339f5f54d7e68c57cc7cb1",
      "parents": [
        "66a65d7647487c621ceaf460022952c25d9aa561"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Mon Apr 27 05:26:30 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 05:27:38 2026 -0700"
      },
      "message": "Add a `@SkybridgeInterface` annotation to classes that are to be part of the stable SC/LC interface.\n\nPiperOrigin-RevId: 906297782\nChange-Id: I608613c74a677f5b03e20ec4f1a4dbe29a4fa3f4\n"
    },
    {
      "commit": "66a65d7647487c621ceaf460022952c25d9aa561",
      "tree": "757e25f0b0d40398c0ea50526ee35181a49f0f5c",
      "parents": [
        "6c43beba87a4b7ed8718d0776e8c92a64f931232"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Mon Apr 27 03:32:11 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 03:33:19 2026 -0700"
      },
      "message": "Replace `@AutoValue` with record.\n\nPiperOrigin-RevId: 906252615\nChange-Id: I29c7e112a68fe6574dd761c2098f1759a58321e4\n"
    },
    {
      "commit": "6c43beba87a4b7ed8718d0776e8c92a64f931232",
      "tree": "c74333a42909eb7c31019d846778ff77ec115c4b",
      "parents": [
        "0088dbcfae04e98030cb36dc98c7732cbc92839d"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Mon Apr 27 03:04:26 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 03:05:14 2026 -0700"
      },
      "message": "Replace `@AutoBuilder` with a manual builder for BuildEventServiceClient.CommandContext.\n\nTo have full control over the shape of the generated class (which is part of the SC/LC).\n\nPiperOrigin-RevId: 906241542\nChange-Id: Ib6c5dc3076ad6c4f77ff66c7ef86c7836b0f4ffe\n"
    },
    {
      "commit": "0088dbcfae04e98030cb36dc98c7732cbc92839d",
      "tree": "b53cd0e7c43ddeff6cc755dd59ae3161d9f54d6e",
      "parents": [
        "f1d30bf758cf215f8dba7ca304a91a9f91c75b93"
      ],
      "author": {
        "name": "cushon",
        "email": "cushon@google.com",
        "time": "Mon Apr 27 02:49:07 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 02:51:52 2026 -0700"
      },
      "message": "Remove unnecessary suppressions\n\nPiperOrigin-RevId: 906235358\nChange-Id: I0e294938e643dc70e900f308acdbe2dbd2fe3246\n"
    },
    {
      "commit": "f1d30bf758cf215f8dba7ca304a91a9f91c75b93",
      "tree": "1de3f4f8280b71e4c5ba54e00c54b49066b7c91d",
      "parents": [
        "0a49063e8df22dc0b586f5767b15a81767651d60"
      ],
      "author": {
        "name": "hvd",
        "email": "hvd@google.com",
        "time": "Mon Apr 27 02:48:36 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 02:49:46 2026 -0700"
      },
      "message": "Bring back java provider documentation\n\nLosing documentation was accidental.\n\nPiperOrigin-RevId: 906235132\nChange-Id: I867d941665286eadfe46714c8968667184e6d4a6\n"
    },
    {
      "commit": "0a49063e8df22dc0b586f5767b15a81767651d60",
      "tree": "d30c161292377d21cf4c6dca6dd49308baffdc79",
      "parents": [
        "3773141bf48ce9be08f1fbc8817f38bb50fbfe05"
      ],
      "author": {
        "name": "Nikki Vijaybhaskar",
        "email": "nikki@engflow.com",
        "time": "Mon Apr 27 01:30:24 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 01:32:04 2026 -0700"
      },
      "message": "fix: replace HTML flag headers with markdown to prevent emdash rendering (https://github.com/bazelbuild/bazel/pull/29325)\n\n## Summary\n- Flag names like `--verbose` on the [flag cheatsheet](https://preview.bazel.build/reference/flag-cheatsheet) are rendered with an emdash (—) instead of double dashes (`--`) due to Mintlify\u0027s smart typography converting `--` in prose contexts\n- Replaced `\u003ch3\u003e\u003ccode\u003e\u003ca\u003e` HTML wrappers with markdown inline code links (`` [`--flag`](url) ``) for all 27 flags in `docs/reference/flag-cheatsheet.mdx`\n- Hyperlinks to the command-line reference are preserved\n- Mintlify preview: https://bazel-pr-29325.mintlify.app/reference/flag-cheatsheet\n\nFixes bazel-contrib/bazel-docs#366\n\n## Test plan\n- [ ] Verify on Mintlify preview that flag names render with `--` (not —)\n- [ ] Verify flag names are still clickable links to the command-line reference\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCloses #29325.\n\nPiperOrigin-RevId: 906201733\nChange-Id: I2b98f1ce504d7138e39034e8df0337bd34eb82f2\n"
    },
    {
      "commit": "3773141bf48ce9be08f1fbc8817f38bb50fbfe05",
      "tree": "a949e6e4849bf2d6b7df257c675cd43f6fe1291e",
      "parents": [
        "ad2e223235bcacd1d026b1ee8ff851347bc41f7f"
      ],
      "author": {
        "name": "hvd",
        "email": "hvd@google.com",
        "time": "Mon Apr 27 01:27:20 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Mon Apr 27 01:28:29 2026 -0700"
      },
      "message": "Migrate the `testResourceStripPrefix` test to Starlark\n\nThe test is removed from Bazel and added to rules_java\n\n(ignore-relnotes)\n\nPiperOrigin-RevId: 906200503\nChange-Id: If5ae802cff7aa90c63cbd6259f2adb9b92158f6c\n"
    },
    {
      "commit": "ad2e223235bcacd1d026b1ee8ff851347bc41f7f",
      "tree": "f1b743fd6440bbfc8350478e98ac4196d2470317",
      "parents": [
        "267ee7c3b5c5e8c5d906f903a374fa899d949534"
      ],
      "author": {
        "name": "Armando Montanez",
        "email": "armando@engflow.com",
        "time": "Fri Apr 24 15:27:59 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 15:29:56 2026 -0700"
      },
      "message": "Fix docs2mdx handling of \u003c\u003e and {} in inline code blocks (https://github.com/bazelbuild/bazel/pull/29328)\n\nIn the Mintlify site, some pages (like [the command line reference](https://preview.bazel.build/reference/command-line-reference)) have literal `\u0026lt;` and `\u0026lcub;` strings in code blocks. Change the converter to produce results that properly render inline curly braces and angle brackets.\n\nRELNOTES: None\n\nCloses #29328.\n\nPiperOrigin-RevId: 905248386\nChange-Id: Iea3ad6a384358878879cb50b5e7855e2ccce9983\n"
    },
    {
      "commit": "267ee7c3b5c5e8c5d906f903a374fa899d949534",
      "tree": "5f79f4468395b4ecb84cd3a69c5dc8a71d747606",
      "parents": [
        "59eb070491f9dbb9aac95895803c1c781d179cbe"
      ],
      "author": {
        "name": "dmaclach",
        "email": "dmaclach@google.com",
        "time": "Fri Apr 24 15:03:59 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 15:05:01 2026 -0700"
      },
      "message": "Docs: Add information on build setting scope and predefined settings.\n\nThis change adds a note advising users to check predefined settings before creating custom ones. It also introduces a new section explaining the `scope` attribute for build settings, detailing how to make a setting apply to both `target` and `exec` configurations.\n\nPiperOrigin-RevId: 905237486\nChange-Id: I18ef4ac7cad0b29f526b14ed9e553a263a48c09a\n"
    },
    {
      "commit": "59eb070491f9dbb9aac95895803c1c781d179cbe",
      "tree": "5a2cf8536b4fae9a38d72401af6e572d148a638c",
      "parents": [
        "84421290d1715dccc28b30aa662305d9964993f2"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Fri Apr 24 12:54:33 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 12:55:38 2026 -0700"
      },
      "message": "Drop Guava dependencies from Profiler.\n\nThe check for multiple calls to setTraceProfilerService doesn\u0027t seem terribly important; also drop it.\n\nPiperOrigin-RevId: 905177986\nChange-Id: I77e10c300e336792b2e6fdea9863d1558ab16a86\n"
    },
    {
      "commit": "84421290d1715dccc28b30aa662305d9964993f2",
      "tree": "c559d41f5aad8ad334afa97c6b8bd0fde4e0c03b",
      "parents": [
        "e4937b030b815f4879271a694857e60ebeaf1b69"
      ],
      "author": {
        "name": "cparsons",
        "email": "cparsons@google.com",
        "time": "Fri Apr 24 12:07:54 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 12:09:15 2026 -0700"
      },
      "message": "Ensure Blaze profiler provides a valid clock fallback for logging.\n\nWhen Bazel is run with profiling disabled (e.g. --generate_json_trace_profile\u003dfalse), TraceProfilerServiceImpl.nanoTimeMaybe() was returning -1. This caused certain usages of AutoProfiler to stop reporting latencies.\n\nAn alternative to this change would have been to start the TraceProfileService even regardless of having other profiling features off. However, this could have larger performance implications, as it doesn\u0027t come free (for one, it spawns a long-lived thread to handle trace writing)\n\nPiperOrigin-RevId: 905156422\nChange-Id: I9ee9a5ec8aefa1e5a8b13537d58d4d497201b0be\n"
    },
    {
      "commit": "e4937b030b815f4879271a694857e60ebeaf1b69",
      "tree": "8edea1b03b438737ef581568c713c307afae40e0",
      "parents": [
        "e211b70c1aeceeccdc5b90518dbaa1735fc0760c"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Fri Apr 24 11:28:36 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 11:29:26 2026 -0700"
      },
      "message": "Remove `tags \u003d [\"bazel\"]`.\n\nThis was added in unknown commit but doesn\u0027t seem to be useful any longer.\n\nPiperOrigin-RevId: 905135707\nChange-Id: I3f2511186e0d2665dacf9bdcd430d2db22426e88\n"
    },
    {
      "commit": "e211b70c1aeceeccdc5b90518dbaa1735fc0760c",
      "tree": "3ac7c1594aba19f93c751c95bc8766baccab216b",
      "parents": [
        "f42f6d2d6e04014d92d35be93f027ae4a6c3a6f7"
      ],
      "author": {
        "name": "Kapunahele Wong",
        "email": "kapunahelewong@gmail.com",
        "time": "Fri Apr 24 11:02:27 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 11:03:38 2026 -0700"
      },
      "message": "[Mintlify] Add 9.1.0 release docs (https://github.com/bazelbuild/bazel/pull/29389)\n\n### Description\nAdds versioned documentation snapshot for the Bazel 9.1.0 release under `docs/versions/9.1.0/`. Also fixes MDX syntax errors in the generated files so they render correctly in Mintlify.\n\n### Motivation\nAs part of the ongoing migration of Bazel docs to Mintlify (tracked in https://github.com/bazelbuild/bazel/issues/29256), each release needs a versioned docs snapshot. This PR creates the 9.1.0 snapshot by running `//scripts/docs:gen_mdx_release_docs` on the `release-9.1.0` branch and fixing the resulting MDX parse errors.\n\n### Build API Changes\nNo\n\n### Checklist\n\n- [ ] I have added tests for the new use cases (if any).\n- [x] I have updated the documentation (if applicable).\n\n### Release Notes\nRELNOTES: None\n\nCloses #29389.\n\nPiperOrigin-RevId: 905121951\nChange-Id: I40a2319ecdda5abb78de034af3b99acd3a8a0f44\n"
    },
    {
      "commit": "f42f6d2d6e04014d92d35be93f027ae4a6c3a6f7",
      "tree": "d9164f32f5ea4b164d30332520131b8435e554fa",
      "parents": [
        "422a0603b13f5fdf43002fde45f8c74950c66ff8"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Fri Apr 24 10:54:21 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 10:55:37 2026 -0700"
      },
      "message": "Add error message for %workspace% imports outside of a workspace.\n\nPiperOrigin-RevId: 905117572\nChange-Id: I022d11e4cdfda733db2478199870afc7be4ddfdf\n"
    },
    {
      "commit": "422a0603b13f5fdf43002fde45f8c74950c66ff8",
      "tree": "ca2764ed4d22d00581b644a1e9c079f72c575f20",
      "parents": [
        "79b0d523a37a5ca565a21c6f4cb480ca31e51fc1"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Fri Apr 24 10:49:34 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 10:50:19 2026 -0700"
      },
      "message": "Bazel Docs: Fix code block in user manual.\n\nGemini CLI \"fixed\" the same code block differently across all versions, resulting in suboptimal results. Some of them were treated as multi-line links in https://github.com/bazelbuild/bazel/commit/79b0d523a37a5ca565a21c6f4cb480ca31e51fc1.\n\nPiperOrigin-RevId: 905115032\nChange-Id: I53340ec611424b7080e4b30e10eeea9f4e034b38\n"
    },
    {
      "commit": "79b0d523a37a5ca565a21c6f4cb480ca31e51fc1",
      "tree": "d51f702bfeff40802af787d47c0826708971ba40",
      "parents": [
        "57aa6bbad1ba4e7dc60702293e74799fe5e69975"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Fri Apr 24 08:11:41 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 08:12:51 2026 -0700"
      },
      "message": "Bazel Docs: Merge multi-line links into a single line.\n\nThey\u0027re causing some problems for Mintlify and our scripts.\n\nPiperOrigin-RevId: 905038622\nChange-Id: I6fa32724d116b0ac06283c554fab428e805206af\n"
    },
    {
      "commit": "57aa6bbad1ba4e7dc60702293e74799fe5e69975",
      "tree": "c01b3bec0f77c5256dcdc919bfbdd0210ab67f23",
      "parents": [
        "f036224065b57bf6284be063baf70578dbc53e6e"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Fri Apr 24 08:03:37 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 08:04:39 2026 -0700"
      },
      "message": "Bazel Docs: Add missing images.\n\nAlmost all of the images were simply forked from DevSite.\n\nThe only two exceptions are mod_exampleBefore.svg and mod_exampleResolved.svg - they already existed on Mintlify, but I moved them from /images/ to /external/images/ for consistency.\n\nFor now we\u0027ll keep separate copies of each image for each version - maybe we should have a static image directory that contains all images that remain unchanged across versions.\n\nPiperOrigin-RevId: 905035168\nChange-Id: I783d4f9bdde33c58a4a241420f6b421b5ed3126f\n"
    },
    {
      "commit": "f036224065b57bf6284be063baf70578dbc53e6e",
      "tree": "762dfcae66f8d0ac8aa85ec1d9a1d20fda96cf7e",
      "parents": [
        "1ead803b3fa546b21131c1383c156e4dfbc1b4a5"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Fri Apr 24 07:54:26 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 07:55:11 2026 -0700"
      },
      "message": "Bazel Docs: Add missing link URL.\n\nPiperOrigin-RevId: 905031766\nChange-Id: I6f6625ee96f165affff82a9f31398ba9ae938e1d\n"
    },
    {
      "commit": "1ead803b3fa546b21131c1383c156e4dfbc1b4a5",
      "tree": "608b7803724f135b0126c4cebc613dfa1be91a84",
      "parents": [
        "de0d9098f358e8a7db798f4faf471f54b0737dc3"
      ],
      "author": {
        "name": "twerth",
        "email": "twerth@google.com",
        "time": "Fri Apr 24 06:19:55 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Fri Apr 24 06:21:01 2026 -0700"
      },
      "message": "Support streamed_proto in aquery_differ\n\nThis allows comparing large aquery outputs that exceed the 2GB limit for a single protobuf message by using --output\u003dstreamed_proto.\n\nPiperOrigin-RevId: 904991409\nChange-Id: I76f8af4f8b29ef5a4b51b9477acae9045055e523\n"
    },
    {
      "commit": "de0d9098f358e8a7db798f4faf471f54b0737dc3",
      "tree": "84abeb69df8d8c08bb31901a5ca850160d2d9ef4",
      "parents": [
        "567aee4a4a2bf1b93c75d689379d2c871b6c8cc0"
      ],
      "author": {
        "name": "Bazel Release System",
        "email": "noreply@google.com",
        "time": "Thu Apr 23 22:27:07 2026 +0000"
      },
      "committer": {
        "name": "Summers Pittman",
        "email": "mrsummers@google.com",
        "time": "Thu Apr 23 22:27:07 2026 +0000"
      },
      "message": "Release 10.0.0-pre.20260416.1 (2026-04-23)\n\nBaseline: ee72e6ddbcf19db6e4ddf127bde56ca5676de780\n\nImportant changes:\n\n  - Large numbers with 5+ digits in CLI output are now formatted with\n    comma separators for improved readability (e.g., \"12,345 targets\n    configured\" instead of \"12345 targets configured\")\n\nThis release contains contributions from many people at Google, as well as Anthony Pratti, giria660, Jacob Nowjack, John Cater, Keith Smiley, Sarad Pant, Sarad, Tyler Breisacher, Tyler French.\n"
    },
    {
      "commit": "567aee4a4a2bf1b93c75d689379d2c871b6c8cc0",
      "tree": "92024c73e832ffccf1b09891464a96f559b41f30",
      "parents": [
        "e02954229aff9b0e53a207ea85c692732e9f9301"
      ],
      "author": {
        "name": "fwe",
        "email": "fwe@google.com",
        "time": "Thu Apr 23 08:51:06 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 23 08:52:04 2026 -0700"
      },
      "message": "Bazel Docs: Remove previous/next page footer links.\n\nThey\u0027re broken visually and we don\u0027t need them anymore since Mintlify automatically adds these links at the bottom.\n\nPiperOrigin-RevId: 904479859\nChange-Id: I136aefa0dab9a03e7b7c7a19ddad18cae3343589\n"
    },
    {
      "commit": "e02954229aff9b0e53a207ea85c692732e9f9301",
      "tree": "7f3b5c99c701710cfd77e6934b575b3c5198a8b5",
      "parents": [
        "bae572c2d01122991270cc98471525151bbe6df1"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Thu Apr 23 08:13:26 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 23 08:14:29 2026 -0700"
      },
      "message": "Add metrics and a timeout for remote analysis cache invalidation lookups.\n\nIntroduce `InvalidationLookupMetrics` to the build event stream proto to capture details about the remote analysis cache invalidation process, including\n\n* latency\n* status (`OK`, `ERROR`, or `TIMED_OUT`)\n* and the number of keys checked and invalidated.\n\nAlso added a 10-second timeout to the future completion in `AnalysisCacheInvalidator`. Upon timeout or execution exception, all keys are considered invalidated, and the status is recorded.\n\nInvalidating all keys would result in the build attempting to get skycache hits for everything again.\n\nPiperOrigin-RevId: 904465000\nChange-Id: I34de1945a52625522bd82315afc1a9e1da11004f\n"
    },
    {
      "commit": "bae572c2d01122991270cc98471525151bbe6df1",
      "tree": "3a3ee7d4e51c0bc5a2b6d406a04178a11e24cc1a",
      "parents": [
        "f4864204d369a97c71f8b6baa85f6c02cfcf8b09"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Thu Apr 23 07:48:04 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 23 07:49:01 2026 -0700"
      },
      "message": "Fix Java warnings.\n\nPiperOrigin-RevId: 904454640\nChange-Id: Ic9fbe71bc01c7f46b42ebf67aef97473000f202e\n"
    },
    {
      "commit": "f4864204d369a97c71f8b6baa85f6c02cfcf8b09",
      "tree": "0014d2e8a91862c4b01decd24e6e8c46da80be08",
      "parents": [
        "cc35f2c781db644e7b2c3e7f076f3b25b9cc129c"
      ],
      "author": {
        "name": "chiwang",
        "email": "chiwang@google.com",
        "time": "Thu Apr 23 02:29:10 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 23 02:30:09 2026 -0700"
      },
      "message": "Create SerializedAbruptExitException to remove protobuf deps from IJ\n\nPiperOrigin-RevId: 904327337\nChange-Id: Iddf5d52dd4c1fc8d87a67b30fcb50da6b4137686\n"
    },
    {
      "commit": "cc35f2c781db644e7b2c3e7f076f3b25b9cc129c",
      "tree": "97ea2a30743e05302d4a2d8b79c5dc48eace3f54",
      "parents": [
        "2b0e0f0276b1a2dd5705581ca7e76f8e5f27f078"
      ],
      "author": {
        "name": "hvd",
        "email": "hvd@google.com",
        "time": "Thu Apr 23 02:04:50 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 23 02:05:51 2026 -0700"
      },
      "message": "Delete the empty java rule definitions from Bazel\n\nPiperOrigin-RevId: 904317433\nChange-Id: I7b7a9c13388061ea911fc121d3b563f47c72918d\n"
    },
    {
      "commit": "2b0e0f0276b1a2dd5705581ca7e76f8e5f27f078",
      "tree": "803702097933a7383a6ebabfb6a940e0b3ef375d",
      "parents": [
        "95ce4c19632621cbe776d7b82bbb793fe584cb87"
      ],
      "author": {
        "name": "twerth",
        "email": "twerth@google.com",
        "time": "Thu Apr 23 01:51:57 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Thu Apr 23 01:52:55 2026 -0700"
      },
      "message": "Optimize PackageMetricsPackageLoadingListener to reduce analysis contention.\n\nPiperOrigin-RevId: 904312161\nChange-Id: I0b36a3d232757a3c3034234f9cbc2b5dd3db7c29\n"
    },
    {
      "commit": "95ce4c19632621cbe776d7b82bbb793fe584cb87",
      "tree": "3753a36a668b9a76c24a23cbe4372ce15ed2d4b0",
      "parents": [
        "10193f1b04ab34864a4b8e73fe88012ca4cab111"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Wed Apr 22 21:38:14 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 21:39:23 2026 -0700"
      },
      "message": "Propagate discovered inputs state to actions on Skyframe restart.\n\nIntroduces `ActionWithDiscoveredInputsState` to allow actions to receive their previously discovered inputs after a Skyframe restart.\n\n`CppCompileAction` now implements this interface, ensuring that its `additionalInputs` are restored from the execution state, preventing issues like NPEs when include scanning is not re-attempted after a restart due to `InputDiscoveryState` caching.\n\nPiperOrigin-RevId: 904213269\nChange-Id: Icc06f6455a853eb7a155517ecb7bc75cad480af2\n"
    },
    {
      "commit": "10193f1b04ab34864a4b8e73fe88012ca4cab111",
      "tree": "ad27f07faaf2ec9897ea4963d8b6487c393f132d",
      "parents": [
        "e828632b6c76faa82ae35898849d23260544024e"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Wed Apr 22 09:09:27 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 09:10:49 2026 -0700"
      },
      "message": "Avoid sending bug reports in ActionLookupConflictFindingFunction when remote analysis retrieval is enabled.\n\nPiperOrigin-RevId: 903881023\nChange-Id: I0a5a017b1d640fd6fc9b69ae28e14db4d6b0286e\n"
    },
    {
      "commit": "e828632b6c76faa82ae35898849d23260544024e",
      "tree": "f506506a1d32d551b62c61c6f1cf9a53893dd9e5",
      "parents": [
        "ffcfcd74ca98a18875b97ef743f23fa1410f04a1"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Wed Apr 22 08:35:57 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 08:36:55 2026 -0700"
      },
      "message": "Remove Guava dependencies from BuildEventServiceClient.\n\nPiperOrigin-RevId: 903866902\nChange-Id: I406c482604cd57cada26b8766a67e100f0def80e\n"
    },
    {
      "commit": "ffcfcd74ca98a18875b97ef743f23fa1410f04a1",
      "tree": "e91edf8bd040173ed68902f447142373e69dc3db",
      "parents": [
        "8a5536218294809a2a1840b519a491ec66b55f0d"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Wed Apr 22 08:32:27 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 08:33:30 2026 -0700"
      },
      "message": "Remove Guava dependencies from BlazeService.\n\nPiperOrigin-RevId: 903865141\nChange-Id: I917b3256038ec618fff934421ebe6c0b2f497c84\n"
    },
    {
      "commit": "8a5536218294809a2a1840b519a491ec66b55f0d",
      "tree": "00aa95405d853c127a01bbadc5c445f36f6ce698",
      "parents": [
        "ed203a614b1f1705a2e60e8dd1029caad9492f52"
      ],
      "author": {
        "name": "shahan",
        "email": "shahan@google.com",
        "time": "Wed Apr 22 07:54:12 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 07:54:52 2026 -0700"
      },
      "message": "Handle uncaught exceptions in several places in SelectedEntrySerializer.\n\nSlight cleanup refactoring of SelectedEntrySerializer.uploadSelection.\n\nPiperOrigin-RevId: 903849544\nChange-Id: Iff567b8967063f70aea733f621411a32641ce948\n"
    },
    {
      "commit": "ed203a614b1f1705a2e60e8dd1029caad9492f52",
      "tree": "e453a7ecb041748a69b2cc4e2fdb079ecc6219cc",
      "parents": [
        "3f0dbe27c30a595d6a608f79afc2141296f9afe2"
      ],
      "author": {
        "name": "twerth",
        "email": "twerth@google.com",
        "time": "Wed Apr 22 07:39:41 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 07:40:26 2026 -0700"
      },
      "message": "Stabilize FailureCircuitBreakerTest by avoiding brittle verify calls.\n\nPiperOrigin-RevId: 903843704\nChange-Id: I96a8ca7d9bf4ade97f77eb5a4a11678e223fd843\n"
    },
    {
      "commit": "3f0dbe27c30a595d6a608f79afc2141296f9afe2",
      "tree": "0eaf28765c7bd86fc62e2a2b4057f92145061eaf",
      "parents": [
        "af7009225623d4392231a0d5c33bbfd2724ec75a"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Wed Apr 22 06:40:50 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 06:42:12 2026 -0700"
      },
      "message": "Do not treat `null` as a special value for the `--disk_cache` flag.\n\nWe have enough synonyms for disabled. No other flags treat `null` specially; note that the special handling of `null` in `defaultValue` does not apply to an explicitly set value.\n\nSee https://github.com/bazelbuild/bazel/commit/14fc00755e3d5cefe72cfa88788289ee5a21b80e for the original changes.\n\nPiperOrigin-RevId: 903817226\nChange-Id: I8745f442a7a4342d1805d396810921f86626b62c\n"
    },
    {
      "commit": "af7009225623d4392231a0d5c33bbfd2724ec75a",
      "tree": "9716a7058bd74e4325dd2f0b2129f48a3fef8b4b",
      "parents": [
        "c61716df585736f62077ef20de2594d395048a9f"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Wed Apr 22 06:29:05 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 06:30:54 2026 -0700"
      },
      "message": "Replace ImmutableMap with plain Map in OptionsProvider.\n\nSo that this class can be part of the stable LC/SC interface without bringing in Guava dependencies.\n\nPiperOrigin-RevId: 903811393\nChange-Id: I918fad42c1c65756c5b9a023e4ac4f355d10c250\n"
    },
    {
      "commit": "c61716df585736f62077ef20de2594d395048a9f",
      "tree": "2b3f71de94842de4ac9f7d5730918e2ad1534198",
      "parents": [
        "fb04aa71f3e2c6c0124ac7b73c2c1e16e9a94a22"
      ],
      "author": {
        "name": "twerth",
        "email": "twerth@google.com",
        "time": "Wed Apr 22 04:35:27 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 04:37:01 2026 -0700"
      },
      "message": "Fix NPE in aquery aspect value retrieval\n\nPiperOrigin-RevId: 903764871\nChange-Id: Ie5f2980bde560a4d9282d4046b3ceae8ccdfa297\n"
    },
    {
      "commit": "fb04aa71f3e2c6c0124ac7b73c2c1e16e9a94a22",
      "tree": "50b952bb27b22fe30f1fb3ef79fc79fedceff024",
      "parents": [
        "69686b51730ada6287bf1f7ef93e0a2e1204d652"
      ],
      "author": {
        "name": "tjgq",
        "email": "tjgq@google.com",
        "time": "Wed Apr 22 03:55:17 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 03:56:03 2026 -0700"
      },
      "message": "Delete the ill-conceived Options.createOptions.\n\nIt doesn\u0027t apply defaults, which is almost never what you want. Use Options.getDefaults() instead, which makes the intent clearer; in one instance (UiEventHandlerTest), override one of the defaults as expected by the test.\n\nPiperOrigin-RevId: 903747585\nChange-Id: Iaf990da987fbaaf1c1e9facce4394baeb90eedfd\n"
    },
    {
      "commit": "69686b51730ada6287bf1f7ef93e0a2e1204d652",
      "tree": "2327abc4b1f80f36843b18633196fc0747a8fcf5",
      "parents": [
        "4bbb2e8df14714b5821275ce22d9e1b51787521a"
      ],
      "author": {
        "name": "cushon",
        "email": "cushon@google.com",
        "time": "Wed Apr 22 03:12:35 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 03:13:41 2026 -0700"
      },
      "message": "Disable parallelism in Turbine for Bazel\n\nand add support for an optional CPU reservation.\n\nSee also https://github.com/bazelbuild/bazel/issues/29350\n\nPiperOrigin-RevId: 903729755\nChange-Id: I77464f96175d86684fec0988609a5223aea36465\n"
    },
    {
      "commit": "4bbb2e8df14714b5821275ce22d9e1b51787521a",
      "tree": "4de1a9885fce4d2ce2a80b54fed7d4dd00632609",
      "parents": [
        "9bfadce1476fbbac8657512388d842ed980b0843"
      ],
      "author": {
        "name": "hvd",
        "email": "hvd@google.com",
        "time": "Wed Apr 22 02:56:23 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 02:57:24 2026 -0700"
      },
      "message": "Migrate the `javaTestSetsSecurityManagerPropertyOnVersion17` to Starlark\n\nThe test is added to rules_java and removed from Bazel\n\n(ignore-relnotes)\n\nPiperOrigin-RevId: 903721335\nChange-Id: Ieddc21731ddfbb494c8475d6af740848fc453c68\n"
    },
    {
      "commit": "9bfadce1476fbbac8657512388d842ed980b0843",
      "tree": "5ecc3f157eb19afd2deaaeecf19ecccf81a90890",
      "parents": [
        "f876cb9ed5256149c679ddbf122ca2389125452a"
      ],
      "author": {
        "name": "jingwen",
        "email": "jingwen@google.com",
        "time": "Wed Apr 22 02:42:04 2026 -0700"
      },
      "committer": {
        "name": "Copybara-Service",
        "email": "copybara-worker@google.com",
        "time": "Wed Apr 22 02:43:06 2026 -0700"
      },
      "message": "Use `RecyclingBufferPool` for Zstd compression streams in `FileDependencySerializer`/`Deserializer` to avoid allocating new buffer objects all the time.\n\nThis optimization was previously done for SharedValues context in https://github.com/bazelbuild/bazel/commit/b9095bd7a227567da34791912b19e0f1ecf55715 and https://github.com/bazelbuild/bazel/commit/4bf9dc097f7afa8bd5b0c5e792192784ac939841.\n\nPiperOrigin-RevId: 903715652\nChange-Id: Ida0500962295a0ae121fd9aa43c5da4bd120a893\n"
    }
  ],
  "next": "f876cb9ed5256149c679ddbf122ca2389125452a"
}
