)]}'
{
  "commit": "544f4f5869c4497eb186d0d42a825245fe7dce71",
  "tree": "3bbe7e91aec880c5933da75b5ce63efb70f6a6b1",
  "parents": [
    "e4867b998af70d4c7d3f38a744e6b956b365c04e",
    "94eab9f8d0ded3c91d7ae7f324011747539da47b"
  ],
  "author": {
    "name": "David Pursehouse",
    "email": "dpursehouse@digital.ai",
    "time": "Tue Jun 23 14:43:23 2020 +0900"
  },
  "committer": {
    "name": "David Pursehouse",
    "email": "dpursehouse@digital.ai",
    "time": "Tue Jun 23 14:43:23 2020 +0900"
  },
  "message": "Merge branch \u0027stable-3.1\u0027\n\n* stable-3.1:\n  PathToLockId: Refactor to use a FunctionalInterface\n  LfsAuthUserProvider: Refactor to avoid name hiding\n  LfsLocksHandle: Collapse duplicate if-block\n  LfsLocksHandler: Simplify lambda expression\n  LfsLocksHandler: Call Optional#isPresent before #get\n  Use Truth8 to assert about Optional#isPresent\n  LfsCipherTest: Extract repeated string to a constant\n  InitLfs: Remove unnecessary empty overridden method\n  LfsSshAuth: Remove redundant \u0027throws\u0027 declaration\n  LfsGson: Remove unnecessary \u0027throws\u0027 declarations\n  LfsDateTime: Add private constructor to hide default constructor\n  Remove LfsDateTimeTest and dependency on joda-time\n  Bazel: Mark joda-time as test only\n\nChange-Id: I37393a8e50b2f8c014f366dcfc660e4759d4760d\n",
  "tree_diff": []
}
