)]}'
{
  "commit": "2907e78ac7eb67ec8543bfc389043b7c75d28ea6",
  "tree": "d530f12c87fea40d8564b0991d656654f6ef891b",
  "parents": [
    "e5a9b5579bea4149c10ebd563982220213d7a303"
  ],
  "author": {
    "name": "Hongxiang Jiang",
    "email": "hxjiang@golang.org",
    "time": "Fri Aug 14 16:24:19 2026 -0400"
  },
  "committer": {
    "name": "Hongxiang Jiang",
    "email": "hxjiang@golang.org",
    "time": "Mon Aug 17 08:30:57 2026 -0700"
  },
  "message": "extension/src: provide two commands for implement interface\n\nAfter some investigation, I noticed the cursor position has\ndifferent meaning between two implementations.\n- For gopls, the cursor position means the type that needs to\nimplement an interface. Methods will be added right after\ntype decl.\nCursor: within type decl \"Foo\"\nInput: \"net.Error\"\n- For impl, the cursor position means the location where the\nmethods will be added. The user will have to type the type\nthat needs to implement an interface.\nCursor: after type decl \"Foo\"\nInput: \"f *Foo net.Error\"\n\nI\u0027m afraid user may find is surprising so I suggest to keep\ntwo commands instead just swap the implementation underneath.\n\nAs a result, the \"impl\" tool need to be installed for test env.\n\nFix golang/vscode-go#4063\n\nChange-Id: I07720b7e06ae40f4a3fc24afef5e8a1615f742eb\nReviewed-on: https://go-review.googlesource.com/c/vscode-go/+/815720\nLUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com \u003cgolang-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\nReviewed-by: Madeline Kalil \u003cmkalil@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3d15848474a1e4e1f714c564261490b992fe2f14",
      "old_mode": 33188,
      "old_path": "CHANGELOG.md",
      "new_id": "2f3bbd035fb2a03d5035c4f9192f479d9c5aee90",
      "new_mode": 33188,
      "new_path": "CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "7780fb924c98cdc52b507bc59f506a400ee8b3cc",
      "old_mode": 33188,
      "old_path": "docs/commands.md",
      "new_id": "1434d165b13cbccd33996f3d4b1076a5a75f54e4",
      "new_mode": 33188,
      "new_path": "docs/commands.md"
    },
    {
      "type": "modify",
      "old_id": "ac473fdbb1e51ec1c1e67a043eb4727580cf0724",
      "old_mode": 33188,
      "old_path": "docs/features.md",
      "new_id": "a54ed6b92378c90967590c23d23ea4fae510aa16",
      "new_mode": 33188,
      "new_path": "docs/features.md"
    },
    {
      "type": "modify",
      "old_id": "20238f09ac364cc3fd22f1cdb5ee5d4d54ab5122",
      "old_mode": 33188,
      "old_path": "docs/tools.md",
      "new_id": "d61acc581295bbffd6961cb8b741081488bb2075",
      "new_mode": 33188,
      "new_path": "docs/tools.md"
    },
    {
      "type": "modify",
      "old_id": "0cd5171ef9c00ef331ab9575a877506638b48d46",
      "old_mode": 33188,
      "old_path": "extension/package.json",
      "new_id": "428d3926c325946bec00b67ceff89c0bdd6145ed",
      "new_mode": 33188,
      "new_path": "extension/package.json"
    },
    {
      "type": "modify",
      "old_id": "820ffec58e955e1d684cfa2ce76add4b50434e8e",
      "old_mode": 33188,
      "old_path": "extension/src/commands/index.ts",
      "new_id": "2efa2ff62983727ec54246742db297f440b54321",
      "new_mode": 33188,
      "new_path": "extension/src/commands/index.ts"
    },
    {
      "type": "modify",
      "old_id": "83b361b76598434a7b68cda084b6530f3d0750bf",
      "old_mode": 33188,
      "old_path": "extension/src/goImpl.ts",
      "new_id": "d023778ddd65c938e73454f0a5f3de610453f9a0",
      "new_mode": 33188,
      "new_path": "extension/src/goImpl.ts"
    },
    {
      "type": "modify",
      "old_id": "9595c09a6e6bf4c35ab3b14b3ae84ee20042113e",
      "old_mode": 33188,
      "old_path": "extension/src/goMain.ts",
      "new_id": "88aadc9ebacfcf57d2c22a577a294cc08bcf487e",
      "new_mode": 33188,
      "new_path": "extension/src/goMain.ts"
    },
    {
      "type": "modify",
      "old_id": "b8643bbb4b2d86c7889a63df60ef69242720ff67",
      "old_mode": 33188,
      "old_path": "extension/test/gopls/interactive.test.ts",
      "new_id": "6c989ef2ea8f76977a94cd3266420262c39f96d7",
      "new_mode": 33188,
      "new_path": "extension/test/gopls/interactive.test.ts"
    },
    {
      "type": "modify",
      "old_id": "81fe64d8b3e5de678ba351fad0d78fb6396785f9",
      "old_mode": 33188,
      "old_path": "extension/tools/installtools/main.go",
      "new_id": "74ea77f34189e0f058a4569b1429da3b5635a39e",
      "new_mode": 33188,
      "new_path": "extension/tools/installtools/main.go"
    }
  ]
}
