)]}'
{
  "commit": "649cc4b9166e1c34afacacc432261d865845358b",
  "tree": "881757fa5597c872facfbfca0a731b373fcb24b9",
  "parents": [
    "5ffc912fd2c8a00e9081ec8703977682033e8c53"
  ],
  "author": {
    "name": "Ian (Hee) Cha",
    "email": "heec@google.com",
    "time": "Fri Oct 30 19:54:07 2026 +0000"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Oct 30 19:54:07 2026 +0000"
  },
  "message": "[9.4.0] Deduplicate repository mappings before sorting (#32066) (#32269)\n\nRepoMappingManifestAction deduplicates repository names in a HashMap\nbefore sorting the distinct names. It preserves the first mapping for a\nduplicate repository and keeps both expanded and compact output order;\nidentical entry maps are still grouped for compact manifests.\n\nIn the original 32,768-package, 256-manifest fixture with 1,024\nrepositories, manifest generation improved from 1.829 to 1.483 s. The\n32-repository control was unchanged. The complete patch matches the\noriginal and git diff --check passes upstream.\n\n@fmeum\n\nCloses #32066\n\n\nCOPYBARA_INTEGRATE_REVIEW\u003dhttps://github.com/bazelbuild/bazel/pull/32066\nfrom dzbarsky:dzbarsky/upstream-bazel-151\na9a0cf8e79ae442f3d96662dcbb967e4160c1bdb PiperOrigin-RevId: 1008281270\nChange-Id: I08f73a5516830412c2d81bf327db079c558ca4eb\n\n\u003c!--\nThank you for contributing to Bazel!\nPlease read the contribution guidelines: https://bazel.build/contribute\nand guidelines for AI-assisted contributions:\nhttps://bazel.build/contribute/ai-assisted-contributions\n--\u003e\n\n### Description\n\u003c!--\nPlease provide a brief summary of the changes in this PR.\n--\u003e\n\n### Motivation\n\u003c!--\nWhy is this change important? Does it fix a specific bug or add a new\nfeature?\nIf this PR fixes an existing issue, please link it here (e.g. \"Fixes\n#1234\").\n--\u003e\n\n### Build API Changes\n\u003c!--\nDoes this PR affect the Build API? (e.g. Starlark API, providers,\ncommand-line flags, native rules)\nIf yes, please answer the following:\n1. Has this been discussed in a design doc or issue? (Please link it)\n2. Is the change backward compatible?\n3. If it\u0027s a breaking change, what is the migration plan?\n--\u003e\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\n\u003c!--\nIf this is a new feature, please add \u0027RELNOTES[NEW]: \u003cdescription\u003e\u0027\nhere.\nIf this is a breaking change, please add \u0027RELNOTES[INC]: \u003creason\u003e\u0027 here.\nIf this change should be mentioned in release notes, please add\n\u0027RELNOTES: \u003creason\u003e\u0027 here.\n--\u003e\n\nRELNOTES: None\n\nCommit\nhttps://github.com/bazelbuild/bazel/commit/d4b6b2218906c92ef4848fa243ca4ffef923af8a\n\nCo-authored-by: David Zbarsky \u003cdzbarsky@gmail.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a13b278f63ec56cc9b546aff7ae3383c9c3d67e6",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/analysis/RepoMappingManifestAction.java",
      "new_id": "0c781062a48fb503557e809c803c27d085e9a6ca",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/analysis/RepoMappingManifestAction.java"
    }
  ]
}
