)]}'
{
  "commit": "6e4e7296867b5c082b3a1b4c3aa03051b7d11953",
  "tree": "faa64c350395bc2324a47dcbac6b0ad3c3002c34",
  "parents": [
    "ad21a28c145f7ca1cc3bc6e6510da8bfc37bdb4a"
  ],
  "author": {
    "name": "Bryan C. Mills",
    "email": "bcmills@google.com",
    "time": "Fri Jun 04 12:10:41 2021 -0400"
  },
  "committer": {
    "name": "Bryan C. Mills",
    "email": "bcmills@google.com",
    "time": "Tue Jun 08 18:58:56 2021 +0000"
  },
  "message": "modfile: clean up SetRequire\n\nI started this change by expanding the documentation and tests for\nSetRequire. Unfortunately, the tests failed when the existing\ncontents included duplicates of a module path:\n\n    --- FAIL: TestSetRequire/existing_duplicate (0.00s)\n        rule_test.go:1011: after Cleanup, len(Require) \u003d 3; want 1\n    --- FAIL: TestSetRequire/existing_duplicate_multi (0.00s)\n        rule_test.go:1011: after Cleanup, len(Require) \u003d 3; want 1\n\nSo then I fixed the detected bug, by updating the Line entries\n(possibly marking them for removal) in the same loop that updates the\nRequire entries. (We don\u0027t need to loop over f.Syntax.Stmt separately\nto remove deleted entries because f.Syntax.Cleanup already does that.)\n\nFor golang/go#45965\n\nChange-Id: I1b665c0832112de2c4273628f266dc3d966fefdd\nReviewed-on: https://go-review.googlesource.com/c/mod/+/325230\nTrust: Bryan C. Mills \u003cbcmills@google.com\u003e\nRun-TryBot: Bryan C. Mills \u003cbcmills@google.com\u003e\nTryBot-Result: Go Bot \u003cgobot@golang.org\u003e\nReviewed-by: Michael Matloob \u003cmatloob@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5be571536cf0a8695a6f58b1eeeba85b0afc1741",
      "old_mode": 33188,
      "old_path": "modfile/rule.go",
      "new_id": "71cda84c7b67abc27fd399d0cf5e9d2d70629df2",
      "new_mode": 33188,
      "new_path": "modfile/rule.go"
    },
    {
      "type": "modify",
      "old_id": "2ec24ea7e8e84207dadb1ee11bc1ca8d53772a94",
      "old_mode": 33188,
      "old_path": "modfile/rule_test.go",
      "new_id": "7c6f0e8266afedff548333a728f3949507c50260",
      "new_mode": 33188,
      "new_path": "modfile/rule_test.go"
    }
  ]
}
