)]}'
{
  "commit": "9b8df07b91d4b6173fcdd3d9118ce57eeec01259",
  "tree": "cf8e2cab646e0d2fa0a9a9f79c19fbbfaa854002",
  "parents": [
    "f1f686b0d060cbc07f56e124aa09d5c7826c21ac"
  ],
  "author": {
    "name": "Heschi Kreinick",
    "email": "heschi@google.com",
    "time": "Tue Jan 26 18:18:51 2021 -0500"
  },
  "committer": {
    "name": "Heschi Kreinick",
    "email": "heschi@google.com",
    "time": "Mon Feb 01 17:36:10 2021 +0000"
  },
  "message": "internal/lsp: enable -mod\u003dreadonly in workspace module mode\n\nNow that workspace module mode generates a combined go.sum there are\nrelatively few blockers to enabling -mod\u003dreadonly. Fix them and do it.\n\nThis CL is a bit of a grab bag, but the fixes are relatively separate. I\ncan split it into multiple CLs if desired.\n\n- If module A depends on module B at v1.0.0, the go command will want to\nupgrade the workspace module from v0.0.0-goplsworkspace to v1.0.0. To\nprevent that, use vN.999999.0 as the base pseudoversion, adjusting v0 to\nv1 where appropriate. A few test cases needed updating as a result.\n- For old Go versions, sort the generated workspace module and\nsynthesize a go statement from the maximum go version declared in the\nworkspace.\n- Some regtests need go.sum files created.\n- matchErrorToModule created incorrect quick fixes: it would try to\ndownload the top-level module mentioned in the error message, not the\none that actually caused the problem. Now it issues quick fixes for the\nlowest-level module.\n- TestMultiModuleModDiagnostics accidentally included the same module\nin the workspace twice. Fix it, and make that an error.\n\nFixes golang/go#43346.\n\nChange-Id: I605f762a4d23bedd914241525e64c1b3ecc42150\nReviewed-on: https://go-review.googlesource.com/c/tools/+/287032\nTrust: Heschi Kreinick \u003cheschi@google.com\u003e\nReviewed-by: Robert Findley \u003crfindley@google.com\u003e\nReviewed-by: Rebecca Stambler \u003crstambler@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c7c3d636baff82268f4ca94af4889701c2c14882",
      "old_mode": 33188,
      "old_path": "gopls/internal/regtest/modfile/modfile_test.go",
      "new_id": "86154db9d00824b32779e678854bbff374d435a3",
      "new_mode": 33188,
      "new_path": "gopls/internal/regtest/modfile/modfile_test.go"
    },
    {
      "type": "modify",
      "old_id": "534174e585531f0db3ffa1f86de2cd434eb276ba",
      "old_mode": 33188,
      "old_path": "gopls/internal/regtest/workspace/workspace_test.go",
      "new_id": "cad358e692a3c6f2603adcdbfe791879d18588d4",
      "new_mode": 33188,
      "new_path": "gopls/internal/regtest/workspace/workspace_test.go"
    },
    {
      "type": "modify",
      "old_id": "28bf692048eae3ec9fc52e010ebd816a4b7b556a",
      "old_mode": 33188,
      "old_path": "internal/lsp/cache/mod.go",
      "new_id": "7949918dfe65e39d21f7e1871e7eb54fefd89d19",
      "new_mode": 33188,
      "new_path": "internal/lsp/cache/mod.go"
    },
    {
      "type": "modify",
      "old_id": "55bb91040350ce143a96db4b8c16692792b92a49",
      "old_mode": 33188,
      "old_path": "internal/lsp/cache/snapshot.go",
      "new_id": "7bea58e2a3ed56c344e958ad64ecc63fd1343708",
      "new_mode": 33188,
      "new_path": "internal/lsp/cache/snapshot.go"
    },
    {
      "type": "modify",
      "old_id": "c07e31bd740536794bf693528709b49cb01661c0",
      "old_mode": 33188,
      "old_path": "internal/lsp/source/view.go",
      "new_id": "7a576a6dac0403ea3dba00883c9015f1230fee57",
      "new_mode": 33188,
      "new_path": "internal/lsp/source/view.go"
    }
  ]
}
