)]}'
{
  "log": [
    {
      "commit": "04d72abde1efc963ebb2f145f859552e83b92d13",
      "tree": "62e2d74e3cb0d336d0d02afa4d89c650e83c4e6b",
      "parents": [
        "b334b8f0f26d93e50c07bbb90ade097025d795c1"
      ],
      "author": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Tue Jan 10 09:31:51 2017 -0800"
      },
      "committer": {
        "name": "Clara Bayarri",
        "email": "clarabayarri@google.com",
        "time": "Mon Jan 23 15:02:23 2017 +0000"
      },
      "message": "Expose fonts.xml via public API with a service\n\nThis change creates a new FontManagerService, in charge of providing\nfont management data. It exposes a public API to retrieve the\ninformation in fonts.xml without accessing it directly. To do this,\nit also refactors FontListParser\u0027s internal classes into a new public\nFontConfig class holding all the font data.\n\ngetSystemFonts() returns all the available information in fonts.xml\nas well as file descriptors for all the fonts. This allows us to\nshare the memory consumed by these files between all clients.\n\nBug: 34190490\nTest: See attached CTS change in topic\nChange-Id: I0e922f8bcc9a197a1988d04071eb485328d66fb7\n"
    },
    {
      "commit": "b334b8f0f26d93e50c07bbb90ade097025d795c1",
      "tree": "8387129dfa68c1d600ced29493a07d63a2888252",
      "parents": [
        "2317b64f02500377c10ade0bda68cfeb69fda32a",
        "83b4f7daba75e73ca9aad6033ed513902dc3b5bb"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 23 11:48:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 23 11:48:12 2017 +0000"
      },
      "message": "Merge \"AAPT: Add support for \u0027font\u0027 resource type\""
    },
    {
      "commit": "6788212d17f54475ca9c3dd689a863e031db868f",
      "tree": "5965f1582fbb023e48f37bdedc6818c3f561b8a4",
      "parents": [
        "9a33bda0709f112d67635dbd72cb82d306726200"
      ],
      "author": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Sun Dec 11 16:36:34 2016 -0800"
      },
      "committer": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Sun Jan 22 14:05:15 2017 -0800"
      },
      "message": "Platform support for static shared libraries\n\nThis change adds support for static shared libraries that\nemulate static linking allowing apps that statically link\nagainst the same library version to share a common\nimplementation. A library is hosed by a package in a standard\nAPK.\n\nStatic shared libraries have a name and a version declared\nby a dedicated manifest tag. A client uses also a new tag\nto refer to the static library it uses by specifying the\nlib name, version, and the hash of the signing certificate.\nThis allows two apps to rely on two different library versions\nand prevents impersonation of the shared library by a side-loaded\napp with the same package name.\n\nInternally apps providing static libs use synthetic package\nname generated from the manifest package name and the library\nversion. This allows having different \"versions\" of the same\npackage installed at the same time.\n\nAn application cannot be installed if a static shared lib it\ndepends on is missing. A used shared library cannot be uninstalled.\nShared libraries can rotate certificates like normal apps. The\nversions of these libs should be ordered similarly to the version\ncodes of the hosting package. Such libs cannot use shared user\nid, cannot be ephemeral, cannot declare other libraries, cannot\nrename their package, cannot declare child-packages. They must\ntarget O SDK. Also they cannot be suspended or hidden or their\nuninstall blocked. Generally, speaking policy regarding code in\nstatic shared libs should be applied to the packages using the\nlibrary as it could have just statically linked the code.\n\nWe now have APIs to query information about the shared libraries\non the device in general. To clients static shared libraries are\npresented as multiple versions of the same package which is how\nthey are declared and published. Therefore, one can have two\nversions of the same package which means we need way to query\nfor and uninstall a specific version of a package. Also static\nshared libs can depend on other static shared libs which are\nversioned packages. To ease representation we add the concept\nof a versioned package which should be used in the case of\nstatic shared libs.\n\nA client can see only the static shared libs it depends on and\nmore specifically only the versions it depends would be retrieved\nby using the standard package manager APIs. There is a new\ndedicated API to get info about all shared libraries which\nwould provide data about all static shared lib versions. Also\nthese libraries must use v2 signing scheme.\n\nTest: CTS tests pass\n\nbug:30974070\n\nChange-Id: I4f3d537ee7a81f880950377b996e1d9d4813da5c\n"
    },
    {
      "commit": "83b4f7daba75e73ca9aad6033ed513902dc3b5bb",
      "tree": "4090a3c3fc497aeb26197cca1fbcc9807197e640",
      "parents": [
        "1f9f11007db09bbbc156965e77b10de82a32a544"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 20 13:19:27 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 20 13:19:27 2017 -0800"
      },
      "message": "AAPT: Add support for \u0027font\u0027 resource type\n\nChange-Id: I5bc459e34715779ab3b1c415f40f592a4ccbb96e\nTest: manual\n"
    },
    {
      "commit": "a9da39cb645243e334505cd072488593521ea42c",
      "tree": "1175e59c043dde4cbd93323d95b25cb380ea00e8",
      "parents": [
        "f552a6f90d49120be291ab5a5b7def9b56b6fb3f",
        "c9ba55902123be5abcf2dcda5af9995be0b8d3d8"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 20 04:09:59 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 20 04:10:04 2017 +0000"
      },
      "message": "Merge \"Add wide color gamut and HDR resource qualifiers\""
    },
    {
      "commit": "f552a6f90d49120be291ab5a5b7def9b56b6fb3f",
      "tree": "57cc309a6567e1d7418ae881b0565b71b0e4b71b",
      "parents": [
        "4c0659f5313bcc70be704a3808af9e670f467ee6",
        "cc3c55afdcf0e0b2375e7e4f4d64e5435f789d14"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Jan 20 04:04:27 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 20 04:04:31 2017 +0000"
      },
      "message": "Merge \"Revert \"Update layoutlib following Change Id10ca97f on FontFamily\"\""
    },
    {
      "commit": "4c0659f5313bcc70be704a3808af9e670f467ee6",
      "tree": "94da0aa44a73285c1dd6c5c41f201c6078dd8dbf",
      "parents": [
        "596915de30f53312eb9d3176f6b558943967c9b6",
        "42a386b7717300bf6d75cbd3b4f7ad00f294be0d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 20 02:55:25 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 20 02:55:30 2017 +0000"
      },
      "message": "Merge \"Enable background restrictions\""
    },
    {
      "commit": "cc3c55afdcf0e0b2375e7e4f4d64e5435f789d14",
      "tree": "77facc62358dfac8f7475690dbb6bcdf5c167cc5",
      "parents": [
        "7a1cab2c9606ca5aab0f030c0022b864d5c05888"
      ],
      "author": {
        "name": "Siyamed Sinir",
        "email": "siyamed@google.com",
        "time": "Fri Jan 20 02:51:36 2017 +0000"
      },
      "committer": {
        "name": "Siyamed Sinir",
        "email": "siyamed@google.com",
        "time": "Fri Jan 20 02:51:36 2017 +0000"
      },
      "message": "Revert \"Update layoutlib following Change Id10ca97f on FontFamily\"\n\nReason: The changes that this CL depends on, had to be reverted.\n\nThis reverts commit 7a1cab2c9606ca5aab0f030c0022b864d5c05888.\n\nBug: 34378805\nChange-Id: I6bd05082060199c1907743b9f72d4c2438371aa6\n"
    },
    {
      "commit": "c9ba55902123be5abcf2dcda5af9995be0b8d3d8",
      "tree": "953bf264c1f748816ad8ebc4898f580d163ce959",
      "parents": [
        "a2b1774d758b58fc5977f631eff76fa21d303906"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jan 18 16:34:42 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu Jan 19 18:44:00 2017 -0800"
      },
      "message": "Add wide color gamut and HDR resource qualifiers\n\nBug: 32984164\nTest: Config_test, AaptConfig_test and aapt2_tests\nChange-Id: Ie9c82bfe2d36b1d6180ee223250ab5bb2ce90dd4\n"
    },
    {
      "commit": "42a386b7717300bf6d75cbd3b4f7ad00f294be0d",
      "tree": "740fd669223d48a609ce52cd0af3e5eff65936d8",
      "parents": [
        "4ea4f63d28efe745051f0887c8a1e70f916fe500"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Nov 07 12:21:21 2016 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jan 19 16:23:02 2017 -0800"
      },
      "message": "Enable background restrictions\n\nApps that target O+ are always subject to background restrictions.\nLegacy apps\u0027 background restriction is subject to the OP_RUN_IN_BACKGROUND\napp op.\n\nApps with these properties are exempted from background restrictions:\n  - persistent process\n  - currently on the idle battery whitelist\n  - global whitelist for things like bluetooth services\n\nBug 30953212\n\nChange-Id: Icc19b2fbc05f40dcf8c3fc4abf718c373dc8d4f6\n"
    },
    {
      "commit": "1f9f11007db09bbbc156965e77b10de82a32a544",
      "tree": "e715a9edb691da38726c2c5487625bd35b05ec94",
      "parents": [
        "12375e9e0d14868cf63c0d6584c7a7d9440c30c4",
        "d5083f6f6b9bc76bbe64052bcec639eee752a321"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 19 23:40:02 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 19 23:40:06 2017 +0000"
      },
      "message": "Merge \"Move StringPiece to libandroidfw\""
    },
    {
      "commit": "9e83cbbc10014b3ed560b3181f594868cd89f9ae",
      "tree": "4171a4fb0aac65969c1f46d83614405b70ad008e",
      "parents": [
        "0e39a438bfa5c279d361cf59e745df1d326c57ba"
      ],
      "author": {
        "name": "Chris Tate",
        "email": "ctate@android.com",
        "time": "Thu Jan 19 01:09:52 2017 +0000"
      },
      "committer": {
        "name": "Chris Tate",
        "email": "ctate@android.com",
        "time": "Thu Jan 19 01:12:19 2017 +0000"
      },
      "message": "Revert \"Enable background restrictions\"\n\nThis reverts commit 21f778060badb1e78bffde05e8de7662d275003d.\n\nChange-Id: I65586f9739da84fb32b51b0ea166b8288c41d1b3\n"
    },
    {
      "commit": "21f778060badb1e78bffde05e8de7662d275003d",
      "tree": "55663b93c3f879cb3f2ed7a8037cb954f9a2c49f",
      "parents": [
        "b7a77d24a68accc30c45890d47c5da7f00cc2d00"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Mon Nov 07 12:21:21 2016 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jan 18 11:30:41 2017 -0800"
      },
      "message": "Enable background restrictions\n\nApps that target O+ are always subject to background restrictions.\nLegacy apps\u0027 background restriction is subject to the OP_RUN_IN_BACKGROUND\napp op.\n\nApps with these properties are exempted from background restrictions:\n  - persistent process\n  - currently on the idle battery whitelist\n  - global whitelist for things like bluetooth services\n\nBug 30953212\n\nChange-Id: Ib444829a2d222125f64ff19e8218823fa78373f9\n"
    },
    {
      "commit": "2d00c0952eba704f2226cf3d264f708c72a2746b",
      "tree": "9a76a384322308f8bf8f28c84ac7e68e20e041be",
      "parents": [
        "f07d408798bf383991a5a994313c12151456dfa3",
        "9bddb4841371de1d83affeddef12b5bca3e69647"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Wed Jan 18 17:03:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 18 17:03:35 2017 +0000"
      },
      "message": "Merge \"Update locale data from in-tree ICU\""
    },
    {
      "commit": "d5083f6f6b9bc76bbe64052bcec639eee752a321",
      "tree": "29b5dfb74c7e9b12164ced408315b0ad8d5cf527",
      "parents": [
        "04e7b6c6de620406348142ba9dd65bad094e264b"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 16 15:07:21 2017 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jan 17 18:55:51 2017 -0800"
      },
      "message": "Move StringPiece to libandroidfw\n\nlibandroidfw needs to make use of StringPiece, so\nmove it to libandroidfw and update all code referencing\nStringPiece in aapt2.\n\nTest: make libandroidfw_tests libaapt2_tests\nChange-Id: I68d7f0fc7c651b048d9d1f5e7971f10ef5349fa1\n"
    },
    {
      "commit": "d8cb7dcc4150b1ad2a087e8f3c9acf88b64e32d0",
      "tree": "f4a97d7eeba248400a693d006070d9a83059900f",
      "parents": [
        "1bb70191766c25a6463295c88bd2e2b5886dc2f8",
        "191602091bafb08228a6d3708871c314faff681e"
      ],
      "author": {
        "name": "Fabien Sanglard",
        "email": "sanglardf@google.com",
        "time": "Tue Jan 17 16:34:01 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 17 16:34:06 2017 +0000"
      },
      "message": "Merge \"AAPT2: Convert Android.mk to Android.bp\""
    },
    {
      "commit": "373259f2960b2fa508e524a035818b390f99e574",
      "tree": "4839905afb6a456ef078b2f957a6be0c331e1387",
      "parents": [
        "66dc364046c7634dfbb63617827c9303244bbbe9"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Dec 14 17:03:15 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 18:14:34 2017 +0000"
      },
      "message": "Adds test to collect performance metrics\n\nTest: Adds performance tests\nChange-Id: I7d112ddad4efb2c1c84ac177d230225cc031f7f3\n"
    },
    {
      "commit": "66dc364046c7634dfbb63617827c9303244bbbe9",
      "tree": "28172eb21cef17146404ed132f67a99c0af47612",
      "parents": [
        "27c2ce3c4078c54df0a0ff98101e409344a70532"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Dec 15 17:19:46 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 18:13:54 2017 +0000"
      },
      "message": "Add Main back to run in buildbot\n\nMain is now a Suite that contains all the test needed for CI\n\nTest: No new tests needed\nChange-Id: I4374faacfa38f00d404151276580de636984638c\n"
    },
    {
      "commit": "27c2ce3c4078c54df0a0ff98101e409344a70532",
      "tree": "b0f6df8a322438f4578fe690cc024df2bca5a60f",
      "parents": [
        "1ea5da6d7051c886ee8051f88850ae2effd0bd1a"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Dec 13 18:10:03 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 18:13:44 2017 +0000"
      },
      "message": "Refactor tests structure\n\nMove all the render test utility methods to a separate class and leave\nonly tests in RenderTests class (old Main).\nThe idea is to improve the organization to allow to create a set of\nperformance tests and also to allow the tests to grow more structured.\n\nTest: Just moved tests around\nChange-Id: I3b773d0745700dd2a52f937b9b668a2d374b8686\n"
    },
    {
      "commit": "1ea5da6d7051c886ee8051f88850ae2effd0bd1a",
      "tree": "f7c3cd22a198f706d751ae0e30cc4121dfcdb69d",
      "parents": [
        "ef99fb85f95a2cc17e5d41f452d4632f0ec12fb7"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Tue Nov 15 13:54:49 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 18:13:35 2017 +0000"
      },
      "message": "Update Config.getTime method after the N release\n\nAnd update the relevant golden files as the time in the status bar\nis changed.\n\nTest: Run layoutlib tests\nChange-Id: I421b5495291f2d62091366bc0c066e77e0f3e107\n"
    },
    {
      "commit": "74f50acfc485f79564a2c2dae54731cbf7bbd985",
      "tree": "19754fd9bfd334df18bccf7f9e84465b5e8bb86a",
      "parents": [
        "e92b15ca062453d4ecbf8101cabb18ab1fad87ef",
        "0c864fde5882488623665c793701641329e5955f"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 18:05:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 16 18:05:51 2017 +0000"
      },
      "message": "Merge changes Ia7a8a27f,I0646aab6,Ia324f18d,I38c6c6df,Ic9214929, ...\n\n* changes:\n  Add missing attributes to old themes\n  Fix plurals support in layoutlib\n  Do not log errors while loading string arrays\n  Hack to deal with android:pointerIcon in layoutlib\n  Force animateFirstValue to false\n  Avoid passing antialias when measuring scaled text\n  Catch all exceptions in NativeAllocationRegistry free\n"
    },
    {
      "commit": "e92b15ca062453d4ecbf8101cabb18ab1fad87ef",
      "tree": "8fd4ea44dab2400bd919f6bbd88221b3500030fe",
      "parents": [
        "57415885f0819df44b3cdf253e3bb19ff9648740",
        "e6052ae44301da905c4edd4fca52475f355f20f4"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 16 17:40:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 16 17:40:16 2017 +0000"
      },
      "message": "Merge \"Call layout when doing an only-measure pass\""
    },
    {
      "commit": "0c864fde5882488623665c793701641329e5955f",
      "tree": "7bfd3658621133d193304304446b892650a38a27",
      "parents": [
        "37f9ddb1c41286ac22697c958e3ee31dd193f8dd"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Dec 09 13:59:57 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 15:37:12 2017 +0000"
      },
      "message": "Add missing attributes to old themes\n\nBecause we always use the latest framework code, some resources might\nfail to resolve when using old themes (they haven\u0027t been backported).\nSince this is an artifact caused by us using always the latest code, we\ncheck for some of those values and replace them here.\n\nBug: http://b.android.com/225105\nTest: Included new testActivityOnOldTheme\nChange-Id: Ia7a8a27fb81fe0b4a1e0c9610a2033a87720864d\n"
    },
    {
      "commit": "37f9ddb1c41286ac22697c958e3ee31dd193f8dd",
      "tree": "c3e88797ae72423eda9a6b91995f9e64c85883f0",
      "parents": [
        "df0c47e566c667e9bffb4957dcd5341a723a7103"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Dec 05 17:47:23 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 15:37:04 2017 +0000"
      },
      "message": "Fix plurals support in layoutlib\n\nBug: http://b.android.com/213000\nTest: Manually tested on Android Studio. Adding tests for this specific\ncase requires bringing a new sdk-common prebuilt to the the maintenance\nbranch so it\u0027s not really practical.\n\nChange-Id: I0646aab656d5d5769355c6cc026e877b8784d173\n"
    },
    {
      "commit": "df0c47e566c667e9bffb4957dcd5341a723a7103",
      "tree": "0d59211fe38fdd5c0cbcb7388c38205cdc3c5bfe",
      "parents": [
        "7d7ef8400da668e39306612ad19642427c642622"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Dec 02 11:16:26 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 15:36:41 2017 +0000"
      },
      "message": "Do not log errors while loading string arrays\n\nWhen arrays contain references, if we can not resolve them, just return\nthe reference string. This matches the behaviour of resource resolution\nin BridgeTypeArray.\n\nBug: http://b.android.com/228620\nTest: Updates existing tests\nChange-Id: Ia324f18d9128b8abf2ba676a83d4b424914e2c88\n"
    },
    {
      "commit": "7d7ef8400da668e39306612ad19642427c642622",
      "tree": "52155aa144c719973e9f95feeb17e6ca6d01dacc",
      "parents": [
        "6782b0e74a1420ff112e23094ca922f801df2ec5"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Nov 25 17:28:05 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 15:35:15 2017 +0000"
      },
      "message": "Hack to deal with android:pointerIcon in layoutlib\n\nandroid:pointerIcon is a View attribute that can be an enum or a\nreference. Layoutlib cannot easily deal with the way that is handled\nin the platform. As the property would not have any impact on the\nresult in layoutlib, that property is bypassed.\n\nTest: Main.testAllWidgets\nChange-Id: I38c6c6df45c1836d44b4f80245a453fb432ea251\n"
    },
    {
      "commit": "6782b0e74a1420ff112e23094ca922f801df2ec5",
      "tree": "67c3d81de00ef6ad12d58afd572802fdd63698d8",
      "parents": [
        "f31c1e98d4fda5a1296a4dde4bc1ff6f73c5db64"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Nov 10 16:29:22 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 15:34:58 2017 +0000"
      },
      "message": "Force animateFirstValue to false\n\nThis CL forces both animateFirstValue and animateLayoutChanges to false\nin themes when running layoutlib. This helps with the rendering of some\nwidgets so they do not rely on animations.\n\nTest: Test as part of testActivity\nChange-Id: Ic9214929d3582bc3e0a196d198cc4fb36347c782\n"
    },
    {
      "commit": "f31c1e98d4fda5a1296a4dde4bc1ff6f73c5db64",
      "tree": "1824134ec52e870fabc9cfae26e7722ecb4b2b57",
      "parents": [
        "c5708ef76d6ace5251f2d7f05bc7e8bd97655185"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Aug 02 13:48:08 2016 +0100"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 15:34:00 2017 +0000"
      },
      "message": "Avoid passing antialias when measuring scaled text\n\nThis is a workaround for a JDK bug that crashes the VM when\nmeasuring scaled antialsed text.\nThis disables antialiasing when measuring scaled text in a specific\nversion of the VM.\n\nBug: http://b.android.com/211659\nChange-Id: I637ed03cf827b65c993550998ac55d42869237ad\n"
    },
    {
      "commit": "c5708ef76d6ace5251f2d7f05bc7e8bd97655185",
      "tree": "7a3584cc168431aa5fd7fbdb53e8ffcbfa5392fd",
      "parents": [
        "02d091aa2a7b2281497b3535dca5503a9091c241"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Jul 21 17:54:42 2016 +0100"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Jan 16 15:33:50 2017 +0000"
      },
      "message": "Catch all exceptions in NativeAllocationRegistry free\n\nThe NativeAllocationRegistry delegate free calls might run in the\ncontext of the finalizer thread. If a crash happens during the free\ncall, it might bring down the finalizer thread and the VM.\n\nBug: http://b.android.com/213927\nChange-Id: I8d4b8ab5b8d0532aad46f27d039a943894e021a0\n"
    },
    {
      "commit": "57415885f0819df44b3cdf253e3bb19ff9648740",
      "tree": "5858e62a3265188e984f54c3d5627be989a1068c",
      "parents": [
        "02d091aa2a7b2281497b3535dca5503a9091c241"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 16 15:16:20 2017 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 16 15:22:42 2017 +0000"
      },
      "message": "Delete Canvas_Delegate.nClipRegion after Change I71f9bd68\n\nTest: layoutlib tests\nChange-Id: I9c04fa258cdaf06972b205e5dd5d3b505e5bea17\n"
    },
    {
      "commit": "e6052ae44301da905c4edd4fca52475f355f20f4",
      "tree": "a2effe23f8240b657772eac1ad6e5a83b19e523f",
      "parents": [
        "02d091aa2a7b2281497b3535dca5503a9091c241"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Nov 21 15:10:34 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 16 14:29:56 2017 +0000"
      },
      "message": "Call layout when doing an only-measure pass\n\nTest: Modified testScrolled to check the only-measure behaviour\nChange-Id: Ie86c329e0f7d9135d53274977e24f431f5edc201\n(cherry picked from commit 2d657bc344717281e470430b05adaa32fbd0af00)\n"
    },
    {
      "commit": "02d091aa2a7b2281497b3535dca5503a9091c241",
      "tree": "80c10a9f22d4d86f0a70ca9977cad5dfae193821",
      "parents": [
        "8dd288f420e54b76c5cccec23ad95bf332f15373",
        "7a1cab2c9606ca5aab0f030c0022b864d5c05888"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 16 14:24:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 16 14:24:57 2017 +0000"
      },
      "message": "Merge \"Update layoutlib following Change Id10ca97f on FontFamily\""
    },
    {
      "commit": "8dd288f420e54b76c5cccec23ad95bf332f15373",
      "tree": "3fd3b2d309a7a5971c12ef429e6c0a7ba1777e40",
      "parents": [
        "1a376e2df4a1b9eaf4c4a169ec403b354662cc28",
        "54ffb4358c3d6f2f0f55e4b39f524375f6ffb12f"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 16 14:24:09 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 16 14:24:15 2017 +0000"
      },
      "message": "Merge \"Add measure only call to layoutlib\""
    },
    {
      "commit": "1a376e2df4a1b9eaf4c4a169ec403b354662cc28",
      "tree": "487cf52e5115b586f3b6749216f1a5a9b505f588",
      "parents": [
        "f5bda2874f353106bf86aaba77876590218f89bf",
        "57c3440fdc392e003875c795684e2fd85db1a992"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 16 14:20:46 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 16 14:20:51 2017 +0000"
      },
      "message": "Merge \"Create a mock Display Mode\""
    },
    {
      "commit": "9e0642287e1f6d907356f1724272332f0db7f7af",
      "tree": "393a1dc30ef3f7f4b1ad3546788b54c585092873",
      "parents": [
        "88dd9b5df0cb05f8fad429a448ba0f5ce3f42216",
        "a34f53f61be31b7171d6cbcb12490ee143acffff"
      ],
      "author": {
        "name": "Bartosz Fabianowski",
        "email": "bartfab@google.com",
        "time": "Sat Jan 14 12:58:16 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 14 12:58:20 2017 +0000"
      },
      "message": "Merge \"Add install reason\""
    },
    {
      "commit": "9bddb4841371de1d83affeddef12b5bca3e69647",
      "tree": "f5df5991e8191929e4b52a19654dc2d23b735c4a",
      "parents": [
        "383679bc1b6fe33d80dcb9578f7b62f1e914a3ee"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Fri Jan 13 17:37:04 2017 -0800"
      },
      "committer": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Fri Jan 13 17:37:04 2017 -0800"
      },
      "message": "Update locale data from in-tree ICU\n\nAlso add back script information for Yiddish old code (ji) that was\nremoved in ICU.\n\nBug: 26756576\nTest: none\nChange-Id: Ia785f86bf0407aeed6134ef9d44e504494256da2\n"
    },
    {
      "commit": "191602091bafb08228a6d3708871c314faff681e",
      "tree": "07bd02f297a357950232e163cb7e7ff0dbe8fdc8",
      "parents": [
        "ba5124b48bff2455c089e803ea6ffcc197a26c51"
      ],
      "author": {
        "name": "Fabien Sanglard",
        "email": "sanglardf@google.com",
        "time": "Thu Jan 12 14:24:31 2017 -0500"
      },
      "committer": {
        "name": "Fabien Sanglard",
        "email": "sanglardf@google.com",
        "time": "Fri Jan 13 18:56:55 2017 -0500"
      },
      "message": "AAPT2: Convert Android.mk to Android.bp\n\nChange-Id: I6c563993b57e3f04165ca57743f9a2878aba556c\n"
    },
    {
      "commit": "9013325c3a6f34f6a44c1b5f20a6981e37089afb",
      "tree": "4d4118745b578e7279626aea103e1e73619fd7e5",
      "parents": [
        "e446c98bd1b79bcf1fb21cf59a8ec594c5fd5c23",
        "1a70573a683cd930b21c8e3f17cd4a9f37e5dfd2"
      ],
      "author": {
        "name": "Zak Cohen",
        "email": "zakcohen@google.com",
        "time": "Fri Jan 13 23:14:57 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 13 23:15:00 2017 +0000"
      },
      "message": "Merge changes from topic \u0027vrmode\u0027\n\n* changes:\n  Set ui mode in UiModeManagerService to vrheadset when VR mode is enabled.\n  Introduce new UI_MODE_TYPE_VR_HEADSET and qualifier.\n"
    },
    {
      "commit": "a34f53f61be31b7171d6cbcb12490ee143acffff",
      "tree": "b0d15d434faede85150c30203345d2438b218e8e",
      "parents": [
        "d26d2af79e5bb52f4392bdbfd1858f905f80480d"
      ],
      "author": {
        "name": "Bartosz Fabianowski",
        "email": "bartfab@google.com",
        "time": "Wed Jan 11 18:08:47 2017 +0100"
      },
      "committer": {
        "name": "Bartosz Fabianowski",
        "email": "bartfab@google.com",
        "time": "Fri Jan 13 16:51:28 2017 +0100"
      },
      "message": "Add install reason\n\nThis CL allows a reason to be specified when installing a package. The\ninstall reason is a sticky piece of metadata: When a package is e.g.\ninstalled via enterprise policy and an update is then manually\ninstalled or sideloaded, the install reason will remain \"policy.\"\nThe install reason is tracked separately for each user.\n\nWith this CL, two install reasons exist: \"policy\" and \"unknown.\" Other\ninstall reasons will likely be supported in the future.\n\nBug: 32692748\nBug: 33415829\nTest: Tested manually with \"adb install\" / \"adb uninstall\"\n\nChange-Id: I0c9b9e1b8eb666bb6962564f6efd97e41703cd86\n"
    },
    {
      "commit": "4391fae30e29371673e3de947f344f9b1073dc12",
      "tree": "5eff581a31ad55b80871cb5958eefcf9e2d614d6",
      "parents": [
        "d26d2af79e5bb52f4392bdbfd1858f905f80480d",
        "d973affed21e490a9eef1ae76dfcc3bd0358cb0e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 12 19:38:49 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 12 19:38:54 2017 +0000"
      },
      "message": "Merge \"Compile bit on darwin, use -j when invoking make\""
    },
    {
      "commit": "d96cc6e25081237d42a39d7e2ec48cbbc97988db",
      "tree": "27700bd808cdc72fb6b3d5900725c4f39e1ce5bb",
      "parents": [
        "fcd0a8bd2b429e5b066dab664ea2dd0f141f5153",
        "e2c77f903504766102fe545af40c3e4ebcb3adc7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 12 17:39:11 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 12 17:39:15 2017 +0000"
      },
      "message": "Merge changes I2ff9bd44,I946e681e,If72df07b\n\n* changes:\n  Handle content insets for snapshots\n  Always remove starting window in performShow\n  Initial implementation of snapshots\n"
    },
    {
      "commit": "9bc89af3f1bce8003ee4f93b89a1770d8f5b9cc9",
      "tree": "281fb2873aef53de09d95fa7c738b38cc1eacc7a",
      "parents": [
        "cb2c57338b5c018629fb488f7729779b7934a913"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jan 11 11:25:50 2017 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 12 09:53:44 2017 -0700"
      },
      "message": "Add API for apps to declare their \"category\".\n\nUpcoming platform features need to cluster apps together into broad\ncategories to help summarize information to users.  (For example,\nwhen presenting battery, network, and disk usage.)\n\nWe are tightly limiting the set of categories to keep them easily\npresentable to users when summarizing information.  This feature is\nnot designed to be a general-purpose taxonomy, nor should it be\nallowed to become one.\n\nOlder apps may not have defined a category in their manifests, so\nallow the installing app to define a category on their behalf.\n\nTest: builds, boots\nBug: 33815939\nChange-Id: I785b882ee7c18072ef47d56e0fc19ad72888e1b7\n"
    },
    {
      "commit": "e2c77f903504766102fe545af40c3e4ebcb3adc7",
      "tree": "3573b1f4787d499fc4cd14927c33982cd7c684e2",
      "parents": [
        "a50da607da58e7ee29ef73c506a526e490b86b7c"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Dec 29 14:57:22 2016 +0100"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Jan 12 16:28:19 2017 +0100"
      },
      "message": "Handle content insets for snapshots\n\nPass information about content insets of a snapshotted task to\nSystemUI and use it there to correctly offset the snapshot\nwhen drawing.\n\nTest: Open app, go to recents, make sure app aligns before\nand after the animation.\nBug: 31339431\nChange-Id: I2ff9bd44534bd8f66b591385da1e1e3aec40b6c5\n"
    },
    {
      "commit": "02886a82d876aa5e31a92444fec70208599c509c",
      "tree": "7a457a81fa28dcc5795eb60486aa8b20ef62ba74",
      "parents": [
        "e86e6d75959787389fcc9b51082b0f33c4553fcd"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Dec 06 09:10:06 2016 -0800"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Jan 12 16:28:01 2017 +0100"
      },
      "message": "Initial implementation of snapshots\n\nAll this functionality is hidden behind a flag. If this flag is\nactive, we disable the regular screenshots.\n\nInstead, we take a screenshot when an app transition for which a\ntask is disappearing is starting. The screenshot gets stored\ninto a gralloc buffer. SystemUI uses a new method to retrieve\na snapshot gralloc buffer and then draws it using GraphicBuffer.\ncreateHardwareBitmap().\n\nWhen starting an existing activity in an existing tasks, or when\nbringing an existing tasks to front from recents, we add a new\nsnapshot starting window. For that, we reuse the existing\nstarting window, but when creating the window, we use a fake\nwindow that draws the contents of the starting window.\n\nTest: runtest frameworks-services -c\ncom.android.server.wm.TaskSnapshotControllerTest\nBug: 31339431\nChange-Id: If72df07b3e56f30413db5029d0887b8c9665aaf4\n"
    },
    {
      "commit": "7a1cab2c9606ca5aab0f030c0022b864d5c05888",
      "tree": "ff62c83ad8b675c8a1d3aab565536ecf68ec8377",
      "parents": [
        "b237ddcb84875382f1124ad68ae5446ec2c24c5f"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Jan 12 11:58:56 2017 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Jan 12 15:06:46 2017 +0000"
      },
      "message": "Update layoutlib following Change Id10ca97f on FontFamily\n\nTest: layoutlib tests\n\nChange-Id: Ic8872a43993bcb0a157c5e3f0ce423af9b47f606\n"
    },
    {
      "commit": "e96cbd277352ef3001a0acca41a270671e76fba9",
      "tree": "34602cc265eaf636f9aabd0298153f6c0d0b1df4",
      "parents": [
        "1b3470b1b232bdd6ab2c996eb5e7ed0b01ddde04",
        "9092dc2fa8457858a8e9eab10d91e36225359f5a"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Thu Jan 12 06:02:55 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 12 06:02:58 2017 +0000"
      },
      "message": "Merge \"Check the count of the families in a default collection.\""
    },
    {
      "commit": "d973affed21e490a9eef1ae76dfcc3bd0358cb0e",
      "tree": "7ba9092ddfb9b8110e2db97b3f5548c259515c99",
      "parents": [
        "bede012069321f7e1a264ac3ed55f45f39102627"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jan 11 18:34:57 2017 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jan 11 18:34:57 2017 -0800"
      },
      "message": "Compile bit on darwin, use -j when invoking make\n\nTest: ran the host tool and checked the output\nChange-Id: Idd561139348779982b8c01977fcc18fdfbd0134d\n"
    },
    {
      "commit": "9fa89381bfc47447fc6ef42edba1766f321323a3",
      "tree": "101dcf76104d3689ceb8bb11cd533ce398752fdd",
      "parents": [
        "7f53ac150485c8178c14272a52e36f25d1578f53",
        "4acc16d1b611074baa9eeb7ec5628350b7eb5fa5"
      ],
      "author": {
        "name": "Phil Weaver",
        "email": "pweaver@google.com",
        "time": "Wed Jan 11 21:57:05 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 11 21:57:09 2017 +0000"
      },
      "message": "Merge \"Add flag and listener for a11y volume requests.\""
    },
    {
      "commit": "54ffb4358c3d6f2f0f55e4b39f524375f6ffb12f",
      "tree": "edf30d482dd95a1b3533f654a79a2ad2f01e09df",
      "parents": [
        "5058633a587a80cdb1a6d8fb5d8e047f10e99962"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Oct 28 16:17:05 2016 +0100"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Wed Jan 11 20:12:14 2017 +0000"
      },
      "message": "Add measure only call to layoutlib\n\nChange-Id: Ie36a5218a0356f394356fce2b327f35f57a26951\n(cherry picked from commit 7a6d487f9254aaa175976e5832cea78a1a79c9e7)\n"
    },
    {
      "commit": "57c3440fdc392e003875c795684e2fd85db1a992",
      "tree": "7eac2b1bb8228f54dff7467717050a1abf28ca2d",
      "parents": [
        "5058633a587a80cdb1a6d8fb5d8e047f10e99962"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Oct 25 11:36:13 2016 +0100"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Wed Jan 11 20:11:51 2017 +0000"
      },
      "message": "Create a mock Display Mode\n\nRecycler view gets the refresh rate of the display during its setup.\nImplementing a Mode that returns a fake refresh rate.\n\nBug: 32328330\nChange-Id: I1025641ec37ca3ec90309b30ad270fd996fd8d46\n(cherry picked from commit 4a1c85c71f4de5faeeab2791f80dd7a1ad423f2c)\n"
    },
    {
      "commit": "5058633a587a80cdb1a6d8fb5d8e047f10e99962",
      "tree": "174fd0d290b2d504b9422aece368fcb7b8a68bf0",
      "parents": [
        "772ff11cb5edc111447ff41bb72e050cbc9b1d59",
        "8a7546e1fcb0f4161e6068d326253b5bfd390c4c"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Wed Jan 11 19:54:44 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 11 19:54:46 2017 +0000"
      },
      "message": "Merge \"Separate render and verify in tests\""
    },
    {
      "commit": "1a6acdbb86c3e72bdb0a4dcab3bda58cbc4ea34c",
      "tree": "1b243f434a14a25dc0eb39097293c3f27b74a54a",
      "parents": [
        "3c6f28aa5968b1edb823495efa15e7358de5261e"
      ],
      "author": {
        "name": "Zak Cohen",
        "email": "zakcohen@google.com",
        "time": "Mon Dec 12 15:21:21 2016 -0800"
      },
      "committer": {
        "name": "Zak Cohen",
        "email": "zakcohen@google.com",
        "time": "Wed Jan 11 11:44:47 2017 -0800"
      },
      "message": "Introduce new UI_MODE_TYPE_VR_HEADSET and qualifier.\n\nBug: 30989383\nTest: Unit test for aapt2\nChange-Id: I66dc65af6327b94fed74538bee08cada0b8be4fa\n"
    },
    {
      "commit": "e1fe7fa288a34ecaaab390f49ef540edc4a6c52d",
      "tree": "5cb843481c021da20d06cd5e0be88ee4b9f3d67e",
      "parents": [
        "74bf35017635f896c449f78d37144124d445b918"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Thu Dec 15 18:27:00 2016 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Wed Jan 11 09:19:35 2017 -0800"
      },
      "message": "Added TaskWindowContainerController\n\nFor linking TaskRecord in AMS to Task window container in WMS.\n\nBug: 30060889\nTest: bit FrameworksServicesTests:com.android.server.wm.AppWindowContainerControllerTests\nTest: bit FrameworksServicesTests:com.android.server.wm.TaskWindowContainerControllerTests\nTest: Existing test pass and manual testing.\nChange-Id: I16248f3e96e5087ba24198a48a3bd10a12ae76a6\n"
    },
    {
      "commit": "8a7546e1fcb0f4161e6068d326253b5bfd390c4c",
      "tree": "2aa36f9a8a7b98016ffd6ff91cfac0f3855d0bbc",
      "parents": [
        "5becc4872f507a5399d2ccfdd174e97eab6bd699"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Nov 17 16:04:39 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Wed Jan 11 15:58:31 2017 +0000"
      },
      "message": "Separate render and verify in tests\n\nTest: Test refactoring. Tests still pass\nChange-Id: Icdee3eb9ef1b2639418110583ac74a3fd5362166\n(cherry picked from commit 564b00dd5201711c25a3580aa21be8b36bfaf923)\n"
    },
    {
      "commit": "5becc4872f507a5399d2ccfdd174e97eab6bd699",
      "tree": "99ab15217ed7ccf7321b29ee6af8cfd17bed1ae2",
      "parents": [
        "c70ca2d8f27ed7ac4ad229328b2fe349a2b2525a",
        "b076ee1a83099f1394b3fc4850513fcee1ca8bde"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Jan 11 15:57:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 11 15:57:15 2017 +0000"
      },
      "message": "Merge \"Call onApplyWindowInsets after requestApplyWindowInsets\""
    },
    {
      "commit": "9092dc2fa8457858a8e9eab10d91e36225359f5a",
      "tree": "f2ac11185210459e311106ee1941f7ab3d94d750",
      "parents": [
        "3b6bcfb65d3a869ac36f5fea9a78820e1268470a"
      ],
      "author": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Fri Jan 06 16:54:52 2017 +0900"
      },
      "committer": {
        "name": "Seigo Nonaka",
        "email": "nona@google.com",
        "time": "Wed Jan 11 17:46:52 2017 +0900"
      },
      "message": "Check the count of the families in a default collection.\n\nAfter I9e01d237c9adcb05e200932401cb1a4780049f86, Minikin can\naccept up to 254 font families. To make sure we don\u0027t exeed this limit,\nintroduce an assertion to fontchain_lint.py\n\nBug: 33562608\nTest: m fontchain_lint\nChange-Id: I35fc104fd4763f77145bef0e7c5facf30fa99644\n"
    },
    {
      "commit": "6a893bc04e51e7365a5a3634b05d384b751fb091",
      "tree": "40f274682e5e332b4a3fe5e32640b714543d6327",
      "parents": [
        "ec4e0b075f53ac83cb03db07c00a67ea0f1e3a34",
        "2386df23ac9e932a385b9c2fbddbf9e445eaada0"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 09 18:56:03 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 09 18:56:07 2017 +0000"
      },
      "message": "Merge \"AAPT: Dump maxSdkVersion for implicit permissions\""
    },
    {
      "commit": "9758e22d2c852e9f1152b540775360b28dbc2b3e",
      "tree": "3eb7c3b1d4400f47b8df9c59aa86befae2a2959a",
      "parents": [
        "82e955fcfe4eddad8e42219c048d6015af13691a"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Wed Jan 04 19:12:02 2017 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 09 14:27:01 2017 +0000"
      },
      "message": "Implement delegate for new native method from Bitmap\n\nThe method Bitmap.nativeCopyPreserveInternalConfig was introduced by\nChange Ic128dfed.\n\nTest: Run layoutlib tests\nChange-Id: I13da7deece9eb1d0d3e6a42203522fcf0b332ba9\n"
    },
    {
      "commit": "63389daeed949326debb65c268709825e7c4ee53",
      "tree": "bd4f4bf54b97f128313e3a01bd3ac9ec2a4b06b2",
      "parents": [
        "0ec8a24a94c42e6e54390d558a0c0ca95da531f3",
        "39bdc174ae51f85ec65983314d4aa18de02758f2"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 09 13:12:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 09 13:12:52 2017 +0000"
      },
      "message": "Merge \"Update layoulib following changes in Android source code\""
    },
    {
      "commit": "4acc16d1b611074baa9eeb7ec5628350b7eb5fa5",
      "tree": "0fffc136fa7c9e80df440b5a15faf8fb9d9e9c1b",
      "parents": [
        "3eca29e119cf3b1a3c2f214e27478137f97befe8"
      ],
      "author": {
        "name": "Phil Weaver",
        "email": "pweaver@google.com",
        "time": "Wed Sep 14 17:04:49 2016 -0700"
      },
      "committer": {
        "name": "Phil Weaver",
        "email": "pweaver@google.com",
        "time": "Fri Jan 06 09:38:53 2017 -0800"
      },
      "message": "Add flag and listener for a11y volume requests.\n\nWe\u0027re adding a dedicated volume level for accessibility. Services\ncan use the new flag to request that this volume be activated for\naccessibility usages.\n\nTo let AudioManager know when the request state changes, adding a\nhidden convenience method to check if any active service requests\nthe a11y volume stream. This method can be used to enable the\nstream and to decide when to show the UI to change its volume.\n\nAudioManager wanted a listener for changes to this flag, so rather\nthan add yet another special-purpose listener, I\u0027ve added one that\ngets called back whenever there are state changes in a11y services.\nThese changes happen infrequently enough that we shouldn\u0027t need\nmore targeted methods.\n\nBug: 30448020\nBug: 27899567\n\nTest: Adding CTS in linked CL.\nChange-Id: Ifc53314dc7d9a6ee3d50b04ebcc1a87280cafa5e\n"
    },
    {
      "commit": "26c0dfed7a0cd54abafdd0ccbb5b757506d51c76",
      "tree": "4850c302aac142f72b57b4ea946ca463744bb074",
      "parents": [
        "aedb707aa3dbc1e8ca9073247f2b6e60205a1893"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Wed Dec 14 14:42:30 2016 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Fri Jan 06 09:11:02 2017 -0800"
      },
      "message": "Support for WindowContainer controllers and listeners\n\n- WindowContainerController class allows a component outside window manager\nto create a window container and communicate directly with it to make\nchanges. For example, the ActivityRecord class in activity manager uses the\nAppWindowContainerController class to create and communicate with\nAppWindowToken window container class which is its counterpart on the window\nmanager side.\n- WindowContainerListener interface allows a component outside WM to get\nnotified of changes to a window container. For example, the ActivityRecord\nclass in AM implements the AppWindowContainerListener interface to get\nnotified of changes to the AppWindowToken container.\n\nBug: 30060889\nTest: Existing tests pass and manual testing.\nTest: bit FrameworksServicesTests:com.android.server.wm.WindowContainerControllerTests\nTest: bit FrameworksServicesTests:com.android.server.wm.WindowContainerTests\nChange-Id: I2896bfa46a80b227052528c7da8cf4e56beab4bc\n"
    },
    {
      "commit": "39bdc174ae51f85ec65983314d4aa18de02758f2",
      "tree": "3280fed63fbf84afe280cd3b6a3a3acd440085d4",
      "parents": [
        "9b01193770fe57cab003e7ab3d35749bb82dd88d"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Tue Jan 03 15:03:31 2017 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Tue Jan 03 15:32:53 2017 +0000"
      },
      "message": "Update layoulib following changes in Android source code\n\nThis reflects modifications from Id2374bba and I99e1942d.\n\nTest: Run layoutlib tests\nChange-Id: I5cd56d8417b997b99be668825d950de661d75818\n"
    },
    {
      "commit": "2386df23ac9e932a385b9c2fbddbf9e445eaada0",
      "tree": "732478e94226133cffcccd921a9d7f6ced16729c",
      "parents": [
        "280cdfcbc0755ba5eb233a9162d0ccf92d45b761"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Dec 28 15:08:58 2016 -0500"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Dec 28 16:07:24 2016 -0500"
      },
      "message": "AAPT: Dump maxSdkVersion for implicit permissions\n\nBug: 32599997\nTest: Manual\nChange-Id: I13bdcf097625e3cb5fb35da1eb2544b0f8906e79\n"
    },
    {
      "commit": "280cdfcbc0755ba5eb233a9162d0ccf92d45b761",
      "tree": "d6a418c9b51ca358ddfe02b00cdf18c0adc154d5",
      "parents": [
        "9c6eebe8485dc63f9a8cecb0f06f8b6d97cdba43",
        "38665547bb10f65f72d3358fb16cdc63d5febf15"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 28 19:29:18 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 28 19:29:22 2016 +0000"
      },
      "message": "Merge \"AAPT2: Treat non-AAPT attributes as Attributes with no format specified.\""
    },
    {
      "commit": "38665547bb10f65f72d3358fb16cdc63d5febf15",
      "tree": "6a8053ce0d89d81546ed966c0c6fed082d7ff4a9",
      "parents": [
        "db10a2094c7e12ea0f30972a91ed892e085c836f"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Dec 28 12:25:46 2016 -0500"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Dec 28 12:40:35 2016 -0500"
      },
      "message": "AAPT2: Treat non-AAPT attributes as Attributes with no format specified.\n\nAttributes in XML like \"class\" should be treated as attributes with no\nformat specified. That means that something like \u0027version\u003d\"1\"\u0027 will\nbe interpreted as an Integer value instead of as a string.\n\nThis is more in line with the old AAPT behaviour.\nBug: 30763349\nTest: make libaapt2_tests\n\nChange-Id: I02fe41617e3c62c354714056198ef480d62afee7\n"
    },
    {
      "commit": "0abb3003a1055212d61d5b4af9f4c138c6d2f7ff",
      "tree": "612b2fa0195256d0cdb2707e03cafac91733b2ad",
      "parents": [
        "fa83dea8a28dd706a59bc4c63f507e9d24fcdd8c",
        "40d623e676daff9f60ad6ffa6c723a7640eece04"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 22 00:49:08 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 22 00:49:12 2016 +0000"
      },
      "message": "Merge \"Tighter equals/hashCode method checking.\""
    },
    {
      "commit": "a090de5c8bf04fc14fae31a9a9e2e632ab7be81e",
      "tree": "a2b1cd023273c8fd96e69f7a49c5647d2a76eea2",
      "parents": [
        "87c7b34807630e47332467b24ebfdd75964baf73",
        "26c809064747d62a139f33c3c5124102cbba7e83"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 21 22:21:13 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 21 22:21:17 2016 +0000"
      },
      "message": "Merge \"Detect non-static abstract inner classes.\""
    },
    {
      "commit": "40d623e676daff9f60ad6ffa6c723a7640eece04",
      "tree": "1e392a74abfa7f37ce116279ebcad3371e676f4b",
      "parents": [
        "26c809064747d62a139f33c3c5124102cbba7e83"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Dec 21 13:46:33 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Dec 21 13:58:42 2016 -0700"
      },
      "message": "Tighter equals/hashCode method checking.\n\nTest: false-positive no longer triggered\nBug: 32721082\nChange-Id: I49b6225a7282d0bb84b0dfb4cabe56e9f68186a9\n"
    },
    {
      "commit": "26c809064747d62a139f33c3c5124102cbba7e83",
      "tree": "f2afcd7a7bb830eab27656137e14cb8b30f0a9dc",
      "parents": [
        "d0abcbeb3b96a09a1e8962504c0b9f4a47aa0d7c"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Dec 21 13:41:17 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Dec 21 13:42:03 2016 -0700"
      },
      "message": "Detect non-static abstract inner classes.\n\nTest: script detects issue\nBug: 32982018\nChange-Id: I4e3521bf603f6272bfe5583e3d4977dd5b59afe8\n"
    },
    {
      "commit": "73c109a0894b5cbc1007470ae4db27a4a397eff7",
      "tree": "40a87f227779fa01eb5a35e18ef2beae1ba6fcfd",
      "parents": [
        "5a991adaf5a362761b2600af34989f38fbfc74ec"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Dec 20 12:29:48 2016 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Dec 20 22:28:56 2016 -0800"
      },
      "message": "turn off warning that proto generated code causes.\n\nTest: make\nChange-Id: Ife3006dc16691dd95a2cc3d36c9b8832970601c9\n"
    },
    {
      "commit": "5a991adaf5a362761b2600af34989f38fbfc74ec",
      "tree": "fbc76a313b17ca32fc398d572afb6491531a0f8f",
      "parents": [
        "7669012623a18855913c84ec0690066fbfd823ea"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Dec 20 08:21:38 2016 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Dec 20 22:28:56 2016 -0800"
      },
      "message": "Fix varargs bug that made incident_report print incorrectly.\n\nTest: incident_report 3000\nChange-Id: I397677ecd6e50ad143518416c8fa3e408139189b\n"
    },
    {
      "commit": "7669012623a18855913c84ec0690066fbfd823ea",
      "tree": "edca24d00ab306b3abeae8777b189159a174eb26",
      "parents": [
        "fe9a2a799f0f388c7c531454b8ec964ed8497499"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Dec 20 08:18:32 2016 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Tue Dec 20 22:28:56 2016 -0800"
      },
      "message": "Clean up file names for protos\n\nTest: cts-tradefed run singleCommand cts -d --module CtsIncidentHostTestCases\nChange-Id: Iea2fc81768082e8e01afa8df86e113665020e7f6\n"
    },
    {
      "commit": "0521b69fd9893b00be6407d55fb939a5f99470e3",
      "tree": "737f576ce0f4336ed27524afacb8599d45d68e18",
      "parents": [
        "be64e039935e328de5905436775bf35e11aae843",
        "bf5546b1e2c5c067a4c63aaf1c4714ba727a33ca"
      ],
      "author": {
        "name": "Michael Rosenfeld",
        "email": "mrosenfeld@google.com",
        "time": "Mon Dec 19 18:28:38 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Dec 19 18:28:38 2016 +0000"
      },
      "message": "Merge \"Clean up local hprofs\" am: 9ab94e15c7 am: 1876d82450 am: 67fd9f3968\nam: bf5546b1e2\n\nChange-Id: I0a84ef4f43e10cc9692b5541eb3379b042daab17\n"
    },
    {
      "commit": "9b34676d5d341622e42608af2987724f691e569b",
      "tree": "18b09ebe9946d2b6990a987a2c25251635c445d6",
      "parents": [
        "0de5d03c9d6cca001706e93f5e35a95f6320b77b"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Dec 06 11:59:36 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Dec 19 12:03:49 2016 +0000"
      },
      "message": "Create new layoutlib-legacy to be included in the SDK\n\nThis version of the jar file only contains a Bridge that returns an\nerror (or an image if you ask for it) contaning a message that says that\nthe SDK version of layoutlib is not supported.\n\nTest: Manually tested\nChange-Id: I3d24df86a3112c52858649c3286270a31496961b\n"
    },
    {
      "commit": "bf5546b1e2c5c067a4c63aaf1c4714ba727a33ca",
      "tree": "a39876792566513b4b3ddae3e2d21096d4bf977e",
      "parents": [
        "02daba1e72c35fd998fd0fda3fbecb6a1dc543a7",
        "67fd9f3968f5270415bee35c9d2e40477a5a79c3"
      ],
      "author": {
        "name": "Michael Rosenfeld",
        "email": "mrosenfeld@google.com",
        "time": "Sun Dec 18 00:28:42 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sun Dec 18 00:28:42 2016 +0000"
      },
      "message": "Merge \"Clean up local hprofs\" am: 9ab94e15c7 am: 1876d82450\nam: 67fd9f3968\n\nChange-Id: I8eaea581cfda4844c3ea81f7ee63f0cfc40ef3e0\n"
    },
    {
      "commit": "2b62809c70555b76726bee812b5b962addb31606",
      "tree": "cafde2e17fb8fc3c56bebda21d7ae07261bc5b3b",
      "parents": [
        "0b4df21aacf5ae24ae75ca547f5d35d139baf53e"
      ],
      "author": {
        "name": "Michael Rosenfeld",
        "email": "mrosenfeld@google.com",
        "time": "Fri Dec 16 12:42:01 2016 -0800"
      },
      "committer": {
        "name": "Michael Rosenfeld",
        "email": "mrosenfeld@google.com",
        "time": "Fri Dec 16 16:24:29 2016 -0800"
      },
      "message": "Clean up local hprofs\n\n* After use\n* Upon failure\n\nTest: manual tool use\nChange-Id: I2669e190c3792522c121158ea2aec84fe577c9e3\n"
    },
    {
      "commit": "b69b95f0bd8ce69761cad878629edaab6ac17443",
      "tree": "d3f423a2209d8495fcc05fb4b5828484234a3309",
      "parents": [
        "52680b5de4c8ee3a9f7327247a43bd7cb6c726d8"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Dec 16 13:16:40 2016 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Dec 16 13:16:40 2016 -0800"
      },
      "message": "Fix the mac build\n\nChange-Id: Id4a5c3b1a6fbebcf2079152c31a907536d7f950d\n"
    },
    {
      "commit": "1754d744a7a34731ffc07af1bc3dbfcb06864ab0",
      "tree": "8596241d2c9ccfb1b1748e3a5a37f2befa155a87",
      "parents": [
        "de5b027d2cbd430ef5007911cd73084c081afaab"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Mon Nov 21 17:51:35 2016 -0800"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Dec 15 11:23:05 2016 -0800"
      },
      "message": "First checkin of incident reporting.\n\nThere are a few major pieces here:\n\nincidentd\n---------\nThis daemon (started by init) runs and accepts incoming requests to take\nincident reports.  When prompted, it calls into various system services\nand fills in an IncidentProto data structure, and then writes the report\ninto dropbox.\n\nThe next steps for incidentd:\n    - Security review of SELinux policies. These will be a subset of\n      the dumpstate permissions.  Until this is done, incidentd is\n      not started at boot time.\n\nincident\n--------\nThis shell command calls into incidentd, and can initiate an incident\nreport and either capture the output or leave for dropbox.\n\nincident_report\n---------------\nThis host side tool can call adb shell with the correct parameters\nand also format the incident report as text.  This formatting code\nwas left of the device on purpose.  Right now it\u0027s pretty small, but\nas the number of fields increases, the metadata and code to do the\nformatting will start to grow.\n\nThe incident_report command also contains a workaround to let it\nwork before incidentd is turned on by default.  Right now, it is\nimplemented to call adb shell dumpsys \u003cservice\u003e --proto directly,\nwhereas in the future it will go through the full incidentd flow.\n\nincident_section_gen\n--------------------\nA build-time tool that generates a stripped down set of information\nabout the fields that are available.\n\nlibincident\n-----------\nThis library contains the code to connect to incidentd, and the\nmeta proto definitions that are used by the framework protos.\nThe basics are here now, but they are not fully fleshed out yet.\nThe privacy.proto file contains annotations that can go in the\nproto file that we will later use to filter which fields are\nuploaded, and which are used by local sources.  For example, a\ndevice in a test lab is safe to upload much much more information\nthan a real user.  These will share the same mechanism, but the\nuser\u0027s output will be filtered according to these annotations.\n\nframeworks/core/proto\n---------------------\nThese .proto files contain the definitions of the system\u0027s\noutput.  There is one master android.os.IncidentProto file that\nis the top level of an incident report, but some other services\n(notification, fingerprint, batterystats, etc) will have others\nthat are used directly by the logging mechanism.\n\nOther files which are shared by several of the services also go\nhere, such as ComponentName, Locale, Configuration, etc.  There\nwill be many more.\n\nThere is also a first iplementation of a dump method handling\n--proto in the fingerprint service.\n\nIncidentManager\n---------------\nThe java API to trigger an incident report.\n\nTest: Not written yet\nChange-Id: I59568b115ac7fcf73af70c946c95752bf33ae67f\n"
    },
    {
      "commit": "2894d0ac51d6dbcbdf5025f01de3e9fedc10c877",
      "tree": "27709d30e9cc3325e23281e4c9b5dc3c4596e336",
      "parents": [
        "fab84ceb8cdd5f66e5dd3b0c873c2882e5936d30",
        "72919d2c310db04fdb860e926ccb0bfe6e3aef08"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 13 00:56:03 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 13 00:56:09 2016 +0000"
      },
      "message": "Merge \"Untangle creation of Task from addition of AppToken in WM.\""
    },
    {
      "commit": "72919d2c310db04fdb860e926ccb0bfe6e3aef08",
      "tree": "ed6a621c4f23032516a822fc97816070113fa700",
      "parents": [
        "00f9a1a4735f8ba6b40cee5294a034bd60b28df4"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Thu Dec 08 18:58:50 2016 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Mon Dec 12 15:09:03 2016 -0800"
      },
      "message": "Untangle creation of Task from addition of AppToken in WM.\n\nMakes it easier to follow what is going on and also clean-up in\npreparation of stand way for AM to interact with containers in WM.\n\nTest: Existing tests pass and manual testing\nChange-Id: I91754b6d974dce2f696453cdaed175efb0f10c73\n"
    },
    {
      "commit": "3be8766edc965130413e92a414518e94b030e20a",
      "tree": "8eec4c4aa856a3a8bd8a156d5ba8f3ded2eadb55",
      "parents": [
        "7a7c921e189774c1ea174891da749e918533b598",
        "41bcee32fec03e8c745d726e80feef8227a80dab"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Dec 12 21:13:21 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 12 21:13:26 2016 +0000"
      },
      "message": "Merge \"Fix path to JUnit jar for IDEA module in layoutlib\""
    },
    {
      "commit": "dae2232ca7065f866f1fb7a9ab0b0a2880f0875e",
      "tree": "c0859a053bfe5fd2e8a684e6399698bef411bf89",
      "parents": [
        "6997bf20eeae417f1b9e96d1427fda5775e61771",
        "48a285ce1bfc663187731830627410cc6ff406c8"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Dec 12 18:16:27 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 12 18:16:32 2016 +0000"
      },
      "message": "Merge \"Fix status and nav bar translucency\""
    },
    {
      "commit": "3966e89c7afe279c256e94d431b99ba8e93db847",
      "tree": "a01b2aa420a4a46707d93ead95d84f9c64cd9722",
      "parents": [
        "37437b7a480b064c7c0e5003f4ec8fbea851f87e",
        "28c9cd63d05c4846cffd66cab00eec6919258711"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Dec 12 17:51:23 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Dec 12 17:51:23 2016 +0000"
      },
      "message": "Merge \"Track BufferIterator changes in libcore\" am: 021e8ff2af am: 4ff3c27817 am: 228793a0c9\nam: 28c9cd63d0\n\nChange-Id: Ie08fb740f1c8683cdef7115937f448918cd29a4d\n"
    },
    {
      "commit": "28c9cd63d05c4846cffd66cab00eec6919258711",
      "tree": "252222ddc032f5b9e5018c14a57c0d99dedc21b8",
      "parents": [
        "f6246c087d3ed4244a7e5240e1500bc4adb2804c",
        "228793a0c96c18d15b2e392e689f9237eb2ec19e"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Dec 12 17:45:15 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Dec 12 17:45:15 2016 +0000"
      },
      "message": "Merge \"Track BufferIterator changes in libcore\" am: 021e8ff2af am: 4ff3c27817\nam: 228793a0c9\n\nChange-Id: I86aa0f62941802a7f26957d475575bf9c92ba2ca\n"
    },
    {
      "commit": "021e8ff2afeedf1e096a0709867c615a955a978c",
      "tree": "b0fd9c2a3fdd09029e20ea373e60f03350504f92",
      "parents": [
        "7552e2de9daecc1aaa63c1a799c16c095daa38a0",
        "5ba69e46ed368e901ac0696f10ebabad055181ea"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Dec 12 17:23:18 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 12 17:23:18 2016 +0000"
      },
      "message": "Merge \"Track BufferIterator changes in libcore\""
    },
    {
      "commit": "71fc5791fd1b669f03dabdd42bc540380d81c3a9",
      "tree": "292c413526fdc5c7b5726124fc203d98c563e3f8",
      "parents": [
        "fa496209d02fd38f1004878e1ceb68335a6a6eb9",
        "404091b0a9dd7107dced52319f06ed39cf981e4d"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Dec 12 12:37:35 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 12 12:37:39 2016 +0000"
      },
      "message": "Merge \"Implement NativeInterpolatorFactoryHelper_Delegate method\""
    },
    {
      "commit": "e70c9095b02ec46111c3e3677b43dab1a78e6188",
      "tree": "30c6c653aef610cb103c705459fd3cdf66ccc277",
      "parents": [
        "b62655ed9b0b45a0d70076d0956b5a227e687930",
        "cc3b7793a57eb000c9170dc39442e05dd69d50fc"
      ],
      "author": {
        "name": "Michael Rosenfeld",
        "email": "mrosenfeld@google.com",
        "time": "Sat Dec 10 01:16:46 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Dec 10 01:16:46 2016 +0000"
      },
      "message": "Merge \"Copy preload2.jar to build artifacts\" am: 64583c332a am: dc017c4e49 am: 6952303c28\nam: cc3b7793a5\n\nChange-Id: I1461c4c4f93c6cba60b23d0b4d57d32a69ce1848\n"
    },
    {
      "commit": "cc3b7793a57eb000c9170dc39442e05dd69d50fc",
      "tree": "ef37ecbd661ef70e808815d81ab52344cfba2283",
      "parents": [
        "735bb46ff5869a86418ba5d856b0f868d6626b04",
        "6952303c285028ba00c76f10865fa518eaca9dd2"
      ],
      "author": {
        "name": "Michael Rosenfeld",
        "email": "mrosenfeld@google.com",
        "time": "Sat Dec 10 01:11:46 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Dec 10 01:11:46 2016 +0000"
      },
      "message": "Merge \"Copy preload2.jar to build artifacts\" am: 64583c332a am: dc017c4e49\nam: 6952303c28\n\nChange-Id: I66fa8374ec9257e43b7fea02ef13ce51c2f628fc\n"
    },
    {
      "commit": "d19ea14f30869c6d7116f19ce405ec13eaa2f635",
      "tree": "6bab4d0823adfed5094bcaaa31d1af9c70a0ad5a",
      "parents": [
        "faf3aa697fc569180cc029c09affe08ade9c5e82"
      ],
      "author": {
        "name": "Michael Rosenfeld",
        "email": "mrosenfeld@google.com",
        "time": "Wed Dec 07 11:49:34 2016 -0800"
      },
      "committer": {
        "name": "Michael Rosenfeld",
        "email": "mrosenfeld@google.com",
        "time": "Fri Dec 09 16:16:54 2016 -0800"
      },
      "message": "Copy preload2.jar to build artifacts\n\nTest: local build\nBug: 33492076\nChange-Id: I76de648cd1947e49278a678a4c6f1dce8092bbd4\n"
    },
    {
      "commit": "ea93fe75396465b26429cfe1c1dcfadf7351354f",
      "tree": "cc979179513a34dc41035455d74ee10dba2d078a",
      "parents": [
        "eddb8b0cf4abf12e662dd7032275d54485da1fe9"
      ],
      "author": {
        "name": "Steve McKay",
        "email": "smckay@google.com",
        "time": "Fri Dec 02 11:35:35 2016 -0800"
      },
      "committer": {
        "name": "Steve McKay",
        "email": "smckay@google.com",
        "time": "Fri Dec 09 12:31:44 2016 -0800"
      },
      "message": "Replace ContentProvider SQL args w/ Bundle \u0026 Constants.\n\nTest: cts-tradefed run cts-dev -m CtsContentTestCases\nBug: 30927484\nChange-Id: Idb9dbc2b80896e9f8474a0db71353b7a3810d597\n"
    },
    {
      "commit": "404091b0a9dd7107dced52319f06ed39cf981e4d",
      "tree": "006591c7e4c470d8b0be50d84b1f389c97dd1a21",
      "parents": [
        "d81a26353e5535c4f57452d8b487c2e7a2b4c33e"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Dec 09 15:58:40 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Dec 09 15:58:40 2016 +0000"
      },
      "message": "Implement NativeInterpolatorFactoryHelper_Delegate method\n\nThe method createPathInterpolator was add in Commit 9e9eeeeb78.\n\nTest: Run layoutlib tests\nChange-Id: Id17e05762bf7e5a994aa8066f11805b58a00f5ce\n"
    },
    {
      "commit": "5ba69e46ed368e901ac0696f10ebabad055181ea",
      "tree": "d927ee0e01b4456eb46b36eb2a714b7cefac9ac1",
      "parents": [
        "21ed56daacea56274372773ba807a30f00eaac4e"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Dec 09 14:59:26 2016 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Dec 09 14:59:26 2016 +0000"
      },
      "message": "Track BufferIterator changes in libcore\n\nAddition of a new method pos().\n\nBug: 31008728\nTest: make\nChange-Id: Id5fcb13104a8580ffaa7d4f8d3c473fe14ac5ccd\n"
    },
    {
      "commit": "41bcee32fec03e8c745d726e80feef8227a80dab",
      "tree": "b1320d83d4f935b24030d26644ee06eb08684d08",
      "parents": [
        "d81a26353e5535c4f57452d8b487c2e7a2b4c33e"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Dec 09 14:55:14 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Dec 09 14:55:14 2016 +0000"
      },
      "message": "Fix path to JUnit jar for IDEA module in layoutlib\n\nNecessary after change in makefiles from AOSP commits 21cf84f8b3\nand 4a064d2010.\n\nTest: Run layoutlib tests from IDEA\nChange-Id: I7359c5f41726972c45ff99f34ed5ecb036946034\n"
    },
    {
      "commit": "579a04fd59072aa8d985d613800177c510010196",
      "tree": "9c201c2c2afe0e43e5e4f3c9ceb238dbcf5be8a1",
      "parents": [
        "a5626d74309619349f23fc65df462dd3f8bf79b2",
        "289f090abef627e08af6ec228a555830d018f59e"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Dec 08 17:25:36 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 08 17:25:40 2016 +0000"
      },
      "message": "Merge \"Adding missing SurfaceView methods\""
    },
    {
      "commit": "b38ac0b15dfa8d28d47e5d5a18ed6d1cf26b3a96",
      "tree": "7ccb8736c88f0857d2a139f7453285b6491adeb7",
      "parents": [
        "5e4b9f17cac402c9b8fdc0eb447a5012a5bcbcca"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Oct 28 13:10:25 2016 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Dec 07 13:24:54 2016 -0800"
      },
      "message": "Give protoc-gen-javastream the ability to output multiple java files.\n\nIf there are file-level enums, it still will generate what would have\notherwise been the outer class to hold them, since enums don\u0027t get\ntheir own class in the streaming proto scheme.\n\nMake the proto apis not @TestApi for now -- there\u0027s too much churn.\n\nTest: make\nChange-Id: I01fb7dca935261775efe2573ee009df4d0b07fd0\n"
    },
    {
      "commit": "289f090abef627e08af6ec228a555830d018f59e",
      "tree": "acf0fbf7ac645eedc8871b4a3f6b3a7bfe3d0550",
      "parents": [
        "6b87b3df2c5493cda939a1678ceabb49801120be"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Dec 07 12:24:18 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Dec 07 12:28:14 2016 +0000"
      },
      "message": "Adding missing SurfaceView methods\n\nSome methods were not implemented in the mock SurfaceView and they were\ncausing some custom components to fail on the preview.\n\nBug: http://b.android.com/158592\nTest: This is a mock class, not tested.\nChange-Id: Id8faa7e6b5edf1238b02ae07f3dd59dc6539cb62\n"
    },
    {
      "commit": "48a285ce1bfc663187731830627410cc6ff406c8",
      "tree": "bcfc4bfcb01560718caa28e5e11821b663e7e056",
      "parents": [
        "82ddb5e118e92cecb07e8850217c1b333563237a"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Dec 06 18:22:00 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Dec 07 09:41:42 2016 +0000"
      },
      "message": "Fix status and nav bar translucency\n\nBug: http://b.android.com/204831\nTest: Added new UI tests\nChange-Id: I992f4ccc391d9a4a0dda941689ec29fb44acf69b\n"
    },
    {
      "commit": "5119e517308b84011fbd4d1a013296f4f5ffb8e4",
      "tree": "e926e96418644b4af981623aa28d06ba376adc8e",
      "parents": [
        "7dbbf956f73012ad0ea50bba37a21555cccfc726"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Dec 05 19:48:20 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Dec 05 21:09:52 2016 -0800"
      },
      "message": "AAPT2: Allow \u003cmeta-data\u003e in \u003cmanifest\u003e\n\nBug:32171613\nTest: libaapt2_tests\nChange-Id: I30fdd9475ff7dff6ceb0ff46a4a00991b72db68b\n"
    },
    {
      "commit": "f32adf447511d54c2aa0948d3c1ef44d461538ac",
      "tree": "20cff4b57e17bea6cf131cb3fa630e7320b300a0",
      "parents": [
        "0730df7369147a5f21ef95eef347361d9ad308b3"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Nov 23 10:39:40 2016 -0800"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Dec 02 12:49:20 2016 -0800"
      },
      "message": "Clean up ApplyStyle JNI\n\nBug: 32573798\n\nMark input uint32_t[] as const. Use Read-only JNI\narray access for input as it\u0027s faster than critical access.\n\nUse non-movable arrays for TypedArray so that the address can\nbe resolved and stored, avoiding the need to do JNI array\naccess for the output.\n\nIndicies is always non-null, so remove the optional checks.\n\nEliminate unused return value.\n\nBenchmark results:\ntwelveKeyInflate 4963us -\u003e 4713us\nsimpleViewInflate 73us -\u003e 60us\n\nTest: Device boots, benchmarks show faster\n\nChange-Id: Ic3bde5aee31407d8903913f97f2218daf074499a\n"
    },
    {
      "commit": "3d76f235e32358d3e83aeaa1a5edbe623c4f3a76",
      "tree": "87dc467af26077b36be9de32e6bcd450d73bc7ab",
      "parents": [
        "d758eda3c0e1a0ab7f1a354d298c49998ae5d387",
        "c853f3a5ff40d8ff5718d276cc0e5fab74c9acc0"
      ],
      "author": {
        "name": "Michael Rosenfeld",
        "email": "mrosenfeld@google.com",
        "time": "Thu Dec 01 22:34:03 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 01 22:34:03 2016 +0000"
      },
      "message": "Merge \"Add command line action sequencing.\" am: 880c9acf4a am: 3711f2f0c2 am: 2f5f210f7d\nam: c853f3a5ff\n\nChange-Id: Id157a2d7afc5c49967d804edb734c4b277bf0d20\n"
    }
  ],
  "next": "c853f3a5ff40d8ff5718d276cc0e5fab74c9acc0"
}
