)]}'
{
  "commit": "5999830557004ec70158e91cde2e9ff4e52dbb74",
  "tree": "bcb6445db933639d2e7b42df98f83907ca84d7f8",
  "parents": [
    "ef4a56f9e45687c7cc5c0f2b95c4705779b5483f"
  ],
  "author": {
    "name": "David Brazdil",
    "email": "dbrazdil@google.com",
    "time": "Fri Jun 15 14:05:42 2018 +0100"
  },
  "committer": {
    "name": "David Brazdil",
    "email": "dbrazdil@google.com",
    "time": "Mon Jun 18 15:17:55 2018 +0000"
  },
  "message": "Stabilize hidden API lists\n\nHidden API lists are auto-generated using a combination of Doclava\n/Makefile rules and manually curated lists. As OEMs make their own\nchanges to the framework, they might arrive at slightly different\nlists. This is not desirable as the entire ecosystem should enforce\nthe same rules. This patch adds the files generated by Doclava to\nthe code base, which will stabilize the lists for everyone.\n\nThe problem is exacerbated by the fact that the Doclava-generated\nprivate-dex.txt contains only classes explored by Doclava. This can\nchange rather unexpectedly as OEMs make changes and start/stop using\ninternal classes otherwise only used in unexplored code. If the file\nis extended, they might start blacklisting new APIs. If the file\nshrinks, they might start whitelisting APIs they should restrict\naccess to and have trouble passing CTS.\n\n(Avoid merging out of pi trees)\n\nTest: m ; check that produced lists have not changed\nBug: 109824927\nMerged-In: I0e9653d9cd7e4b748870bacb6fbcecae535ebb2a\nChange-Id: I1463a06d6510e7051a64d5d516f4c589638ca11c\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3553f92ae5e74d381eeb5b3fffe0811f674ad3a4",
      "old_mode": 33188,
      "old_path": "Android.mk",
      "new_id": "25d8fc61c2ae953f1b771ed8f3297c5e869b7317",
      "new_mode": 33188,
      "new_path": "Android.mk"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2c4865514c224b68377f358ccf2d597b6a4c541f",
      "new_mode": 33188,
      "new_path": "config/hiddenapi-private-dex.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cbd8bed3403acffa66498996acb81308e9edc728",
      "new_mode": 33188,
      "new_path": "config/hiddenapi-public-dex.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "268d3067000bfaef7db37e8aa3474cc311e8bb6a",
      "new_mode": 33188,
      "new_path": "config/hiddenapi-removed-dex.txt"
    }
  ]
}
