)]}'
{
  "commit": "338af8dede21fe6cfec1b6020ba2a8f5e4b354d7",
  "tree": "352683ba9007342f2e9c9bfc5120c55e044de670",
  "parents": [
    "1739927ab88a785317e8a7bdc05a66f5fe9d9b68"
  ],
  "author": {
    "name": "Mike Frysinger",
    "email": "vapier@google.com",
    "time": "Thu Jun 08 23:52:13 2023 -0400"
  },
  "committer": {
    "name": "Mike Frysinger",
    "email": "vapier@google.com",
    "time": "Fri Jun 23 23:33:10 2023 -0400"
  },
  "message": "pre-upload: allow user to run any/all of the fixups\n\nNow that we accumulate \u0026 return all the hook results for all projects,\nwe can easily summarize \u0026 prompt the user whether they want to run any\nor all of them.  We still have the problem of some fixups might clash\n(e.g. if multiple commits introduce multiple errors), but there can be\nscenarios where the fixups don\u0027t clash.  We leave this decision to the\nuser so they can figure out what makes sense for their setup.\n\nBug: 274529930\nTest: unittests\nChange-Id: Ib6a42cf4fdb0165d9cae779cef7599ef604fbf59\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bdb5b36b910679b22c352743b4a26bebcc0e4d2f",
      "old_mode": 33261,
      "old_path": "pre-upload.py",
      "new_id": "59b601a6ed3e726c83995990d402f252e54d8ea0",
      "new_mode": 33261,
      "new_path": "pre-upload.py"
    }
  ]
}
