)]}'
{
  "commit": "56e88b2da9a3594725d3e22ed812977426e98d33",
  "tree": "616de4330e855c41d237355ca443544c8f13edc5",
  "parents": [
    "0ccfe933fab7ce45848ca08f2ec7ff59a1d920e8"
  ],
  "author": {
    "name": "Alan Donovan",
    "email": "adonovan@google.com",
    "time": "Fri Jul 24 14:19:08 2026 -0400"
  },
  "committer": {
    "name": "Gopher Robot",
    "email": "gobot@golang.org",
    "time": "Fri Jul 24 12:12:50 2026 -0700"
  },
  "message": "gopls/internal/analysis/unusedfunc: use non-heuristic std check\n\nThis CL changes the logic for detecting whether a package is\npart of std, from packagepath.IsStdPackage (a purely formal\ncheck) to stdlib.HasPackage, which checks the manifest.\n\nAlso, rename IsStdPackage to MaybeStdPackage to indicate its\nheuristic nature, flag this in its documentation, and audit\nall other uses. And fix two tests that had the same latent\nbug.\n\nFixes golang/go#80555\n\nChange-Id: Ifc2bbc5ebaeddf45f3d59edef9c1a01fbe16ad9d\nReviewed-on: https://go-review.googlesource.com/c/tools/+/805440\nLUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com \u003cgolang-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\nReviewed-by: Alex Putman \u003caputman@golang.org\u003e\nAuto-Submit: Alan Donovan \u003cadonovan@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2231abf92b136bfa757ede8d0818160d500e9114",
      "old_mode": 33188,
      "old_path": "go/analysis/passes/modernize/modernize.go",
      "new_id": "0483a379ef335c7ffa6d7bc6649455f8e2c69998",
      "new_mode": 33188,
      "new_path": "go/analysis/passes/modernize/modernize.go"
    },
    {
      "type": "modify",
      "old_id": "244f6507e82c312726d8cd9efeb538eeb5414128",
      "old_mode": 33188,
      "old_path": "go/packages/packages_test.go",
      "new_id": "f93ec0e0e3add188cc9440c8f8b06e8abefc13b2",
      "new_mode": 33188,
      "new_path": "go/packages/packages_test.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "05bdfa42dcacdcb239554231cdab71cc715a9104",
      "new_mode": 33188,
      "new_path": "gopls/internal/analysis/unusedfunc/testdata/issue80555.txtar"
    },
    {
      "type": "modify",
      "old_id": "48380c07733e1ed92503c578a12ff86472271d63",
      "old_mode": 33188,
      "old_path": "gopls/internal/analysis/unusedfunc/unusedfunc.go",
      "new_id": "7dcf1dbf473844220b566f40a31ff5b8e93105a9",
      "new_mode": 33188,
      "new_path": "gopls/internal/analysis/unusedfunc/unusedfunc.go"
    },
    {
      "type": "modify",
      "old_id": "db117b1e801dc77a23aa90e67dfe2805b7cc5f83",
      "old_mode": 33188,
      "old_path": "gopls/internal/analysis/unusedfunc/unusedfunc_test.go",
      "new_id": "5f376e155ee464b581278b6f28f425e976cde13e",
      "new_mode": 33188,
      "new_path": "gopls/internal/analysis/unusedfunc/unusedfunc_test.go"
    },
    {
      "type": "modify",
      "old_id": "f7ec8ff2fb4a13a2a9fc2105cfd2d031fa5cd49b",
      "old_mode": 33188,
      "old_path": "gopls/internal/mcp/context.go",
      "new_id": "13b665d21933ffda0f88e14f259da248a2f1618f",
      "new_mode": 33188,
      "new_path": "gopls/internal/mcp/context.go"
    },
    {
      "type": "modify",
      "old_id": "a5a5e58b4e547fce839e1d74324d72758ebf19a1",
      "old_mode": 33188,
      "old_path": "gopls/internal/test/marker/testdata/codeaction/extract_variable-toplevel.txt",
      "new_id": "d0e3fad9ebbdfee64b67fa5eb2f7f00322c19102",
      "new_mode": 33188,
      "new_path": "gopls/internal/test/marker/testdata/codeaction/extract_variable-toplevel.txt"
    },
    {
      "type": "modify",
      "old_id": "81e91b87fe89fa8780f690d6c0ad6e3b6f6aa9e4",
      "old_mode": 33188,
      "old_path": "gopls/internal/test/marker/testdata/token/shadowing.txt",
      "new_id": "546035ca52235041e2ae129ed31c101007eabacc",
      "new_mode": 33188,
      "new_path": "gopls/internal/test/marker/testdata/token/shadowing.txt"
    },
    {
      "type": "modify",
      "old_id": "700d53effc6464f5e4990284b279cd4829e02d02",
      "old_mode": 33188,
      "old_path": "internal/analysis/analyzerutil/version.go",
      "new_id": "60d7253c0e5dc3c08164bc29fb5a9bc02ad98be3",
      "new_mode": 33188,
      "new_path": "internal/analysis/analyzerutil/version.go"
    },
    {
      "type": "modify",
      "old_id": "fa39a13f9eae51bfe60650622062ed9279cd47a7",
      "old_mode": 33188,
      "old_path": "internal/packagepath/packagepath.go",
      "new_id": "7b25340da42bc2437e6f9eb90e0216645216971d",
      "new_mode": 33188,
      "new_path": "internal/packagepath/packagepath.go"
    },
    {
      "type": "modify",
      "old_id": "18ee7b16c777782cde44a763ad89ad1e2a7125e4",
      "old_mode": 33188,
      "old_path": "internal/packagepath/packagepath_test.go",
      "new_id": "ac7e3238f1738605adbe5058ab255a701587bd43",
      "new_mode": 33188,
      "new_path": "internal/packagepath/packagepath_test.go"
    },
    {
      "type": "modify",
      "old_id": "5ce70aee837d3a3705961592bcb563e87d7b125e",
      "old_mode": 33188,
      "old_path": "internal/refactor/imports.go",
      "new_id": "046038cc85e4cf0e54e1677dd49336d97b30a235",
      "new_mode": 33188,
      "new_path": "internal/refactor/imports.go"
    }
  ]
}
