)]}'
{
  "commit": "0352a214906667646eab0aef3e5faecf4d786bbc",
  "tree": "873c8c342ce7e5fddafec3aa79e41f21e4280ce5",
  "parents": [
    "7a1fa4755656969ea141dfbf215fd3db6fa2d6bd"
  ],
  "author": {
    "name": "Antonio Barone",
    "email": "syntonyze@gmail.com",
    "time": "Wed May 01 15:01:15 2019 +0100"
  },
  "committer": {
    "name": "Antonio Barone",
    "email": "syntonyze@gmail.com",
    "time": "Wed May 01 15:24:44 2019 +0100"
  },
  "message": "Stop expensive conversions from scala to java lists\n\nJava implementation of Gson does not know how to serialize scala\ncollections out of the box.  For this reason CommitsStatistics\nand CommitInfo objects had been modeled with java.util.List and\njava.util.Set instead, just to help gson to serialize them.\n\nThis change avoids unneded conversion from java to scala and vice-versa\nby:\n- Remodeling of CommitsStatistics and CommitInfo to use scala native\ncollections.\n- Registering a scala iterable serializer to Gson so that it knows how\nto serialize scala lists and sets.\n\nThis bumps up the latency of the contributors endpoint of around 50%.\n\nFor example, when extracting the entire history of master branch for\nGerrit repo, latency decreases from 58s to 27s.\n\nChange-Id: I1ba7e81eb81ebcffaa431a4340fb9da09e6a5976\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a62979b02ff95ddec7e8761610786f7e7caa24d5",
      "old_mode": 33188,
      "old_path": "src/main/scala/com/googlesource/gerrit/plugins/analytics/Contributors.scala",
      "new_id": "8dbd4d48f4dc4e392fda4cf1883d8dde912e93bb",
      "new_mode": 33188,
      "new_path": "src/main/scala/com/googlesource/gerrit/plugins/analytics/Contributors.scala"
    },
    {
      "type": "modify",
      "old_id": "e5f9723fc031ba7601f51afce2d9bf3eaf7d3871",
      "old_mode": 33188,
      "old_path": "src/main/scala/com/googlesource/gerrit/plugins/analytics/common/CommitsStatistics.scala",
      "new_id": "ee230a338ace6ceadc8723a2cb13f7ace9743254",
      "new_mode": 33188,
      "new_path": "src/main/scala/com/googlesource/gerrit/plugins/analytics/common/CommitsStatistics.scala"
    },
    {
      "type": "modify",
      "old_id": "58b5dc53da322a7b122020ab6a25419caa908197",
      "old_mode": 33188,
      "old_path": "src/main/scala/com/googlesource/gerrit/plugins/analytics/common/GsonFormatter.scala",
      "new_id": "cca743d48988b38aefa2b56ed10f285d114750bb",
      "new_mode": 33188,
      "new_path": "src/main/scala/com/googlesource/gerrit/plugins/analytics/common/GsonFormatter.scala"
    },
    {
      "type": "modify",
      "old_id": "c8aff83e73ccf6968b09eacd110a3ff15c02e082",
      "old_mode": 33188,
      "old_path": "src/test/scala/com/googlesource/gerrit/plugins/analytics/test/CommitInfoSpec.scala",
      "new_id": "48733284c74709059808ee7deb75e7ccba5a2b21",
      "new_mode": 33188,
      "new_path": "src/test/scala/com/googlesource/gerrit/plugins/analytics/test/CommitInfoSpec.scala"
    },
    {
      "type": "modify",
      "old_id": "c9031c6304484360a21eacf427c80a5e4fd9bf21",
      "old_mode": 33188,
      "old_path": "src/test/scala/com/googlesource/gerrit/plugins/analytics/test/CommitStatisticsCommentLinkSpec.scala",
      "new_id": "2900e69d258e9967f3c7e22d23a25a7e2ba9ae13",
      "new_mode": 33188,
      "new_path": "src/test/scala/com/googlesource/gerrit/plugins/analytics/test/CommitStatisticsCommentLinkSpec.scala"
    },
    {
      "type": "modify",
      "old_id": "d5257efbbfac2e5fd1350b0bcdf6bf3f8babf248",
      "old_mode": 33188,
      "old_path": "src/test/scala/com/googlesource/gerrit/plugins/analytics/test/CommitStatisticsSpec.scala",
      "new_id": "332c724384834e3aae2e244e70edf77a07ad27d9",
      "new_mode": 33188,
      "new_path": "src/test/scala/com/googlesource/gerrit/plugins/analytics/test/CommitStatisticsSpec.scala"
    }
  ]
}
