)]}'
{
  "commit": "345e24c514df74c3089cda67a724d683155fa503",
  "tree": "8bc7d1a4a11b4da53536bbfc3b60f99ba1c41686",
  "parents": [
    "749de1fc71edf058166614a0493f53dca845a21f"
  ],
  "author": {
    "name": "Hongxiang Jiang",
    "email": "hxjiang@golang.org",
    "time": "Sat Jul 18 17:35:03 2026 -0400"
  },
  "committer": {
    "name": "Hongxiang Jiang",
    "email": "hxjiang@golang.org",
    "time": "Wed Jul 22 15:42:23 2026 -0700"
  },
  "message": "gopls/internal/cmd: use localhost:0 to avoid port race\n\nPreviously, TestMCPCommandHTTP executed in the following order:\n- grab a random port using net.Listen(\"tcp\", \"localhost:0\")\n- record the port number\n- close the listener socket\n- launch gopls with -listen\u003dlocalhost:\u003cport\u003e\n\nA race condition could occur between closing the listener and gopls\nstarting up, allowing another process to claim the port and causing\ngopls to fail with \"address already in use\".\n\nThis CL shifts port selection from the test function to gopls by\npassing -listen\u003dlocalhost:0 to gopls. Since net.Listen guarantees\natomic port allocation, gopls selects and binds the port directly,\nand the test reads the allocated listening address from gopls stderr\nlogs.\n\nFixes golang/go#79983\n\nChange-Id: Ic5be1881c74d8722a9661773984ad4e0ac0bf352\nReviewed-on: https://go-review.googlesource.com/c/tools/+/802761\nReviewed-by: Madeline Kalil \u003cmkalil@google.com\u003e\nLUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com \u003cgolang-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bfb9c86f27c39eaeb549048c5e63864f7cbbf834",
      "old_mode": 33188,
      "old_path": "gopls/internal/cmd/mcp_test.go",
      "new_id": "60718041408e8ef52076b357253beed17821eaf6",
      "new_mode": 33188,
      "new_path": "gopls/internal/cmd/mcp_test.go"
    },
    {
      "type": "modify",
      "old_id": "a50b29f47f240632c2fef163e12d4c7509698121",
      "old_mode": 33188,
      "old_path": "gopls/internal/mcp/mcp.go",
      "new_id": "e00e92ce9377484563180a609939070d6d97f607",
      "new_mode": 33188,
      "new_path": "gopls/internal/mcp/mcp.go"
    }
  ]
}
