)]}'
{
  "commit": "e149e84fbc7f9a4ece95b9598970d89e9144152e",
  "tree": "fb5e3c4a00ff67144ab9f8d9684a51c33415d40d",
  "parents": [
    "ff28778d1ef4713ec521c855ccbacd1c7f9819fe"
  ],
  "author": {
    "name": "Alan Donovan",
    "email": "adonovan@google.com",
    "time": "Tue May 07 23:35:50 2024 -0400"
  },
  "committer": {
    "name": "Alan Donovan",
    "email": "adonovan@google.com",
    "time": "Wed May 08 16:57:03 2024 +0000"
  },
  "message": "gopls: rationalize code generation\n\n- Replace the settings.APIJSON global variable (a JSON-encodable\n  data structure) with a JSON string in gopls/internal/doc.JSON,\n  of type doc.API. The JSON types are no longer part of gopls itself,\n  only of the build-time generator.\n- Publish the JSON types that describe the output of\n  \u0027gopls api-json\u0027 as doc.API etc, and document this.\n- Change \u0027gopls api-json\u0027 to simply print doc.JSON, instead of\n  JSON-encoding a large data structure that is otherwise unused.\n  This eliminates the dependency on github.com/jba/printsrc.\n- Document the various inputs and outputs of the build scripts.\n- Delete api-diff. Diffing the api.json file is a simple git command.\n\nChange-Id: Ibfbff4d9e9845ef1c4b8c07b483459688d95d243\nReviewed-on: https://go-review.googlesource.com/c/tools/+/583977\nLUCI-TryBot-Result: Go LUCI \u003cgolang-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\nReviewed-by: Robert Findley \u003crfindley@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "delete",
      "old_id": "7194ced9fdf03fd2583cb47373fa9b84b7c3dc76",
      "old_mode": 33188,
      "old_path": "gopls/api-diff/api_diff.go",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "rename",
      "old_id": "ce12146194e781cb9d6d55332e1d80f221b03d48",
      "old_mode": 33188,
      "old_path": "gopls/doc/generate.go",
      "new_id": "a6334608ac5212d85809dbeb8f2d57ab14474972",
      "new_mode": 33188,
      "new_path": "gopls/doc/generate/generate.go",
      "score": 74
    },
    {
      "type": "rename",
      "old_id": "f92ff1fb8e1359fbc2df2600eefb566349af23c0",
      "old_mode": 33188,
      "old_path": "gopls/doc/generate_test.go",
      "new_id": "da3c6792d8f7e34aac066e59a8bb72698936db0c",
      "new_mode": 33188,
      "new_path": "gopls/doc/generate/generate_test.go",
      "score": 97
    },
    {
      "type": "modify",
      "old_id": "48ab1ad86779d855fc8b98aaab2c5e1d6e3ad62f",
      "old_mode": 33188,
      "old_path": "gopls/doc/settings.md",
      "new_id": "b672e44aaa5f8d7512a76d8ef419c63e590e2a73",
      "new_mode": 33188,
      "new_path": "gopls/doc/settings.md"
    },
    {
      "type": "modify",
      "old_id": "dbfe973a4930113049e627cf0f05fd3455ebf2e7",
      "old_mode": 33188,
      "old_path": "gopls/go.mod",
      "new_id": "19f57d99129981a69d8377e95fa6f80a4b8e886d",
      "new_mode": 33188,
      "new_path": "gopls/go.mod"
    },
    {
      "type": "modify",
      "old_id": "4674d207cd6a9a76bc5e98c3181682a87c1f4128",
      "old_mode": 33188,
      "old_path": "gopls/go.sum",
      "new_id": "163d60621121ecd11d78c628b7f814d52d9637dc",
      "new_mode": 33188,
      "new_path": "gopls/go.sum"
    },
    {
      "type": "modify",
      "old_id": "75ebc0da3430492a01d951c07830c9a381f2eca5",
      "old_mode": 33188,
      "old_path": "gopls/internal/cmd/info.go",
      "new_id": "93a668802345c87767dbd07284d6434c70318653",
      "new_mode": 33188,
      "new_path": "gopls/internal/cmd/info.go"
    },
    {
      "type": "modify",
      "old_id": "529cca976ba2db76e2137687c0150e41211d94a3",
      "old_mode": 33188,
      "old_path": "gopls/internal/cmd/usage/api-json.hlp",
      "new_id": "304c43d3b4791c51a68a5a90cb6d5c3ce46273ae",
      "new_mode": 33188,
      "new_path": "gopls/internal/cmd/usage/api-json.hlp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4423ed877469cee888fc2dda26ee088d8a36c482",
      "new_mode": 33188,
      "new_path": "gopls/internal/doc/api.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fdd44746f9ae593dd722f2abf7d6b52b42608986",
      "new_mode": 33188,
      "new_path": "gopls/internal/doc/api.json"
    },
    {
      "type": "modify",
      "old_id": "60830c51997533e510f3ede8c85651cdbc1b3e4b",
      "old_mode": 33188,
      "old_path": "gopls/internal/golang/inlay_hint.go",
      "new_id": "6cf19b6f3c9ea06eca78ea5886968b7330e9eeac",
      "new_mode": 33188,
      "new_path": "gopls/internal/golang/inlay_hint.go"
    },
    {
      "type": "modify",
      "old_id": "9009a7710861bfb24425fd65e6ef36eba372cd67",
      "old_mode": 33188,
      "old_path": "gopls/internal/protocol/command/command_gen.go",
      "new_id": "cab106d7852be7e5b22f46ddde635a3bb8a8a217",
      "new_mode": 33188,
      "new_path": "gopls/internal/protocol/command/command_gen.go"
    },
    {
      "type": "modify",
      "old_id": "1ecfce712cd9194ec60b7ca395b674a4d8a5e1fb",
      "old_mode": 33188,
      "old_path": "gopls/internal/protocol/command/gen/gen.go",
      "new_id": "866eb3b67acd12b362917c346ce6605c314e82fc",
      "new_mode": 33188,
      "new_path": "gopls/internal/protocol/command/gen/gen.go"
    },
    {
      "type": "modify",
      "old_id": "f63b2e6e5ba7b1d518d29ffc3e3a9a6de54a82b5",
      "old_mode": 33188,
      "old_path": "gopls/internal/protocol/command/generate.go",
      "new_id": "324bc51ccabe80351ad9605fad65f9c9bea9f9b4",
      "new_mode": 33188,
      "new_path": "gopls/internal/protocol/command/generate.go"
    },
    {
      "type": "modify",
      "old_id": "4ddc5fa2e677d2a1ed85caf720b4569cf41f1fa8",
      "old_mode": 33188,
      "old_path": "gopls/internal/protocol/command/interface_test.go",
      "new_id": "ca880619f0e48855c6dfcf9a21829f6f33d12b12",
      "new_mode": 33188,
      "new_path": "gopls/internal/protocol/command/interface_test.go"
    },
    {
      "type": "modify",
      "old_id": "9a41039f3521615cb7f37e48c8069023b838a4ad",
      "old_mode": 33188,
      "old_path": "gopls/internal/settings/analysis.go",
      "new_id": "8a08952aabfda8875a809ed6712464555c789ea7",
      "new_mode": 33188,
      "new_path": "gopls/internal/settings/analysis.go"
    },
    {
      "type": "delete",
      "old_id": "41b001a13c358b710b3202ee9264b02cfb6741e5",
      "old_mode": 33188,
      "old_path": "gopls/internal/settings/api_json.go",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "e37cd6421022c710929b4370671a39a80f3e94c7",
      "old_mode": 33188,
      "old_path": "gopls/internal/settings/default.go",
      "new_id": "3ac3d2b86a9c318687406181085deae18b4e6989",
      "new_mode": 33188,
      "new_path": "gopls/internal/settings/default.go"
    },
    {
      "type": "delete",
      "old_id": "30d8f1192521f5b8835a4df2cd1d4e7847e806f9",
      "old_mode": 33188,
      "old_path": "gopls/internal/settings/json.go",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "b8f2c26f8091d235c032b075b06d3620c490acff",
      "old_mode": 33188,
      "old_path": "gopls/main.go",
      "new_id": "aeb4ce9280fb69e2d25b908ed1ddf669afacfcde",
      "new_mode": 33188,
      "new_path": "gopls/main.go"
    }
  ]
}
