)]}'
{
  "commit": "51abc5bd865f4a8a94772f911be1a286a32202c3",
  "tree": "bebb800c6eaac6e8afaf650d2c27bf05af4ba1f4",
  "parents": [
    "ce28f407b85d67101e4c6f783977f921c6f13788"
  ],
  "author": {
    "name": "Alan Donovan",
    "email": "adonovan@google.com",
    "time": "Fri Jan 20 23:17:55 2023 -0500"
  },
  "committer": {
    "name": "Alan Donovan",
    "email": "adonovan@google.com",
    "time": "Mon Jan 23 17:42:41 2023 +0000"
  },
  "message": "gopls/internal/lsp/source: stub: don\u0027t panic when encountering \u0027error\u0027\n\nThe built-in error interface is the only non-trivial named interface\ntype with no package. This caused v0.11.0 of gopls to panic when\nthe ApplyFix stub operation was applied to an interface that embedded\n\u0027error\u0027.  The crash was inadvertently fixed by recent changes, but still\nthe operation failed with an error that mentioned the filename \"\".\nThis change causes the operation to succeed with the proper result.\n\nIt also adds a test.\n\nI think there\u0027s a simpler implementation of this operation following\nthe approach described in the existing comment that would obviate\nthe special-case logic added in this change.\n\nFixes golang/vscode-go#2606\n\nChange-Id: I544de5f828055e999344117e4f8b2579bde21cfb\nReviewed-on: https://go-review.googlesource.com/c/tools/+/463035\ngopls-CI: kokoro \u003cnoreply+kokoro@google.com\u003e\nTryBot-Result: Gopher Robot \u003cgobot@golang.org\u003e\nReviewed-by: Robert Findley \u003crfindley@google.com\u003e\nRun-TryBot: Alan Donovan \u003cadonovan@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cf360dd41e55ef996332579746fb15dcc03d548a",
      "old_mode": 33188,
      "old_path": "gopls/internal/lsp/source/stub.go",
      "new_id": "7b6f4f45137d5c3d96bafd2661e547216cc82ed2",
      "new_mode": 33188,
      "new_path": "gopls/internal/lsp/source/stub.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "66ef2b24b97217d25069f14169268d382ac0924a",
      "new_mode": 33188,
      "new_path": "gopls/internal/lsp/testdata/stub/stub_issue2606.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4db266346e24e7d93b965803ea2ee63e5820846b",
      "new_mode": 33188,
      "new_path": "gopls/internal/lsp/testdata/stub/stub_issue2606.go.golden"
    },
    {
      "type": "modify",
      "old_id": "e0982417c814b674d22ee2ecee4669beb7e91110",
      "old_mode": 33188,
      "old_path": "gopls/internal/lsp/testdata/summary.txt.golden",
      "new_id": "478b6a6ca92d681b16098c04e2ba89415ea3dd36",
      "new_mode": 33188,
      "new_path": "gopls/internal/lsp/testdata/summary.txt.golden"
    },
    {
      "type": "modify",
      "old_id": "b402eef2e630959e5385f7a770ae755132352bd7",
      "old_mode": 33188,
      "old_path": "gopls/internal/lsp/testdata/summary_go1.18.txt.golden",
      "new_id": "735259e6428e7394cf55c8a691bf5b763830e69e",
      "new_mode": 33188,
      "new_path": "gopls/internal/lsp/testdata/summary_go1.18.txt.golden"
    }
  ]
}
