)]}'
{
  "commit": "b82bf6f0cabf2b0cb1d1d242250a37753377f716",
  "tree": "91e0c7f343224797db5927d002a6fe9a896df71d",
  "parents": [
    "082fc5838054c904b894bddc2447c812d1f12ec4"
  ],
  "author": {
    "name": "Robert Findley",
    "email": "rfindley@google.com",
    "time": "Fri Dec 09 18:38:04 2022 -0500"
  },
  "committer": {
    "name": "Robert Findley",
    "email": "rfindley@google.com",
    "time": "Mon Dec 12 15:52:23 2022 +0000"
  },
  "message": "[gopls-release-branch.0.11] gopls/internal/lsp/cache: record parse keys when they\u0027re created\n\nWhen we parse a file through snapshot.ParseGo, we must record the parse\nkey by its URI for later invalidation. This wasn\u0027t done, resulting in a\nmemory leak.\n\nFix the leak by actually recording parse keys in the parseKeysByURI map,\nwhich was previously always empty.\n\nWrite a test that diffs the cache before and after a change, which would\nhave caught this bug (and others).\n\nFixes golang/go#57222\n\nChange-Id: I308812bf1030276dff08c26d359433750f44849a\nReviewed-on: https://go-review.googlesource.com/c/tools/+/456642\nReviewed-by: Alan Donovan \u003cadonovan@google.com\u003e\nRun-TryBot: Robert Findley \u003crfindley@google.com\u003e\nTryBot-Result: Gopher Robot \u003cgobot@golang.org\u003e\ngopls-CI: kokoro \u003cnoreply+kokoro@google.com\u003e\n(cherry picked from commit a3eef2595adfe42f26e607e25f136b5d5388419c)\nReviewed-on: https://go-review.googlesource.com/c/tools/+/456815\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4f905e96f7a1b7cea3ffeed2bb4ca5cea9ce7263",
      "old_mode": 33188,
      "old_path": "gopls/internal/lsp/cache/parse.go",
      "new_id": "33ca98c682266767b1b1774c5f996c21900efec1",
      "new_mode": 33188,
      "new_path": "gopls/internal/lsp/cache/parse.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "71c8b13309f3a0f45acd5a40c437f29ef2331f59",
      "new_mode": 33188,
      "new_path": "gopls/internal/regtest/misc/leak_test.go"
    }
  ]
}
