)]}'
{
  "log": [
    {
      "commit": "d25cf04e9880c69d370bab21de0068cec5502267",
      "tree": "8a8ce7f80a548ec4cd1e17e6f535b4ab26d2cb34",
      "parents": [
        "3e68bb5d281d8eddac11ad64b64f8869b068a776",
        "241ae10b2189f449e57d8d660235ac56d8fb1b80"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 29 14:30:43 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 29 14:30:46 2016 +0000"
      },
      "message": "Merge \"Add explicit method to dismiss Keyguard\""
    },
    {
      "commit": "4aab5717578d52e3bf4db05932813c5b70b31b19",
      "tree": "fc582c362a2ced4c4f7cf6f9347377e4a4b09c2c",
      "parents": [
        "c6b4d6d23c26e2e2c2c773ca167ffa7c3e04f0d9",
        "2d4183ffa58df5b14698eb7bb4ed8fc4a65f81bb"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 29 10:39:06 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 29 10:39:06 2016 +0000"
      },
      "message": "Merge \"Use junit-host instead of junit\" am: 7dda7e1e81 am: bbb501281e am: 52277efa6c\nam: 2d4183ffa5\n\nChange-Id: I1cc3bc8b73d7756c850a1573ca5ff9090e64c184\n"
    },
    {
      "commit": "bbb501281e5212a8c0b9420f3bd72d92f3632145",
      "tree": "18eee2a138fd50705c840ab7335d07a706478cf3",
      "parents": [
        "b4248148da02231c9527bdc976477508b0aa6cb0",
        "7dda7e1e81a638a63d1266f4cabb912a4a2cc1ec"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 29 10:22:34 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 29 10:22:34 2016 +0000"
      },
      "message": "Merge \"Use junit-host instead of junit\"\nam: 7dda7e1e81\n\nChange-Id: Ie070bf5329899f21e3fb65dae6db5fdd50e74ba9\n"
    },
    {
      "commit": "7dda7e1e81a638a63d1266f4cabb912a4a2cc1ec",
      "tree": "97a766446e89ccdc87bb8ab8061ed369f64718ee",
      "parents": [
        "9309f1cbf308281be87b80cfbee7b61ba3725e78",
        "21cf84f8b3561d61e39d77cc00c520951f1ddd0f"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Nov 29 10:12:51 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 29 10:12:52 2016 +0000"
      },
      "message": "Merge \"Use junit-host instead of junit\""
    },
    {
      "commit": "d6d10b6c78577e031082a327ede2d170f89ae505",
      "tree": "250dd3ac4a25926dbaba092e8ec93938e1193134",
      "parents": [
        "8e2338f72d99aa4c36e967e03e979888837dd88f",
        "190dbbd0af4776f1cf0ebc89358e1f0d81686d93"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Nov 29 03:47:50 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 29 03:47:50 2016 +0000"
      },
      "message": "Preload2: Add isSingleThreaded am: 3bf65c916c am: 57c14c8ee6 am: 80ae2ed225\nam: 190dbbd0af\n\nChange-Id: I1728bb69b359ece93ba2e89f5aa86407e9b17787\n"
    },
    {
      "commit": "8e2338f72d99aa4c36e967e03e979888837dd88f",
      "tree": "aa88b0832524eab4baa992b8987013439d05e2db",
      "parents": [
        "f237a11fb09270eddd9519e0d1db2634f4657ed7",
        "26c94b74304d27ac67f6669e6288c4d6820562ec"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Nov 29 03:46:38 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 29 03:46:38 2016 +0000"
      },
      "message": "Preload2: Fix action inheritance am: 1c809a3d32 am: 24cd3418c7 am: 2b34ac2bd6\nam: 26c94b7430\n\nChange-Id: Ic6fde07acce3b6d0ab1708c3aff57e8aabb3fe96\n"
    },
    {
      "commit": "f237a11fb09270eddd9519e0d1db2634f4657ed7",
      "tree": "6556e5e0122ca0f97d5cc5c23ff213380f7550ff",
      "parents": [
        "0ec10ac7cf551853272299c6e15bcf37b336e329",
        "af5b2c301005f9f1b69b1a195d8759b015cb5e66"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Nov 29 03:45:41 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 29 03:45:41 2016 +0000"
      },
      "message": "Preload2: Abstract out UI am: 5cb8998363 am: 826ec71e96 am: eab0eadbf6\nam: af5b2c3010\n\nChange-Id: I17fe36f9d2df61f0da1bc229f7a77a5e3f16f45b\n"
    },
    {
      "commit": "57c14c8ee6c1eda33469ba672df9d496bf940531",
      "tree": "0a2b22652a8a738437d9f8eec0e0e6eb2c702a6e",
      "parents": [
        "24cd3418c76f03ff092a782a48c872114374aeba",
        "3bf65c916ce65c06b0920ec4b8f68d3ef6c5e721"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Nov 29 03:20:51 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 29 03:20:51 2016 +0000"
      },
      "message": "Preload2: Add isSingleThreaded\nam: 3bf65c916c\n\nChange-Id: I6bf6c5b934cb89937bb329ea7b9f50c70b3a898d\n"
    },
    {
      "commit": "24cd3418c76f03ff092a782a48c872114374aeba",
      "tree": "6aab1921b43f708a387486497611a028e87257a3",
      "parents": [
        "826ec71e969f51f20d996c01c1d33620903c247f",
        "1c809a3d3240978ab393b48ec5501090ec5a0e57"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Nov 29 03:20:12 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 29 03:20:12 2016 +0000"
      },
      "message": "Preload2: Fix action inheritance\nam: 1c809a3d32\n\nChange-Id: I8ef23a6ee16b1462d65ef2d7a3f62e9d586c92ff\n"
    },
    {
      "commit": "826ec71e969f51f20d996c01c1d33620903c247f",
      "tree": "988c609a4c96b0de5dde2ae06b96222be3a46d9a",
      "parents": [
        "01106c45cafa18acb16817e8519c9dcf02b32760",
        "5cb8998363a16e667faee4eaa7e5040bce7e702b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Nov 29 03:19:34 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Nov 29 03:19:34 2016 +0000"
      },
      "message": "Preload2: Abstract out UI\nam: 5cb8998363\n\nChange-Id: Ia4a147e061397951ada72beac7c5781b8dbac918\n"
    },
    {
      "commit": "3bf65c916ce65c06b0920ec4b8f68d3ef6c5e721",
      "tree": "c338cc3e99b383e1271e9609ccc6684bb294eb64",
      "parents": [
        "1c809a3d3240978ab393b48ec5501090ec5a0e57"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 15:06:35 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 15:06:35 2016 -0800"
      },
      "message": "Preload2: Add isSingleThreaded\n\nExpose whether a UI is single-threaded to avoid spawning threads\nin actions.\n\nBug: 31961946\nTest: manual\nChange-Id: I37c8daa6a00784e833bad53b8e83ab4417955df7\n"
    },
    {
      "commit": "1c809a3d3240978ab393b48ec5501090ec5a0e57",
      "tree": "b13e751a2cf77d3c95a7a86c00efaa1538617d4e",
      "parents": [
        "5cb8998363a16e667faee4eaa7e5040bce7e702b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 15:04:25 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 15:04:25 2016 -0800"
      },
      "message": "Preload2: Fix action inheritance\n\nUse AbstractThreadedAction as a base.\n\nBug: 31961946\nTest: manual\nChange-Id: I5a05b65d753be775c8b8382bb1a81e869c388f8d\n"
    },
    {
      "commit": "5cb8998363a16e667faee4eaa7e5040bce7e702b",
      "tree": "ea629bbb341dbfcefa2ba92e6445b54969957eb6",
      "parents": [
        "d7e597a2e7843b7269d4972abae820424c9d460e"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 13:15:10 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 28 13:15:10 2016 -0800"
      },
      "message": "Preload2: Abstract out UI\n\nCreate IUI interface and move UI to SwingUI.\n\nBug: 31961946\nTest: manual\nChange-Id: If56347fdde8b441c0c01337a3f5eac002ea5b4f3\n"
    },
    {
      "commit": "21cf84f8b3561d61e39d77cc00c520951f1ddd0f",
      "tree": "707c83c6695acf708cccb7ecc2f4d1a55cf9cfcf",
      "parents": [
        "d7e597a2e7843b7269d4972abae820424c9d460e"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Nov 28 16:44:44 2016 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Mon Nov 28 16:44:44 2016 +0000"
      },
      "message": "Use junit-host instead of junit\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: I5d3efbfbe3245a631113674bff1b0aabdc9fe8be\n"
    },
    {
      "commit": "f149ca784dd09bd97bd479ae254935ff3edaa617",
      "tree": "a500b866736a00e29b9aea267e9e5e0d9f905cfe",
      "parents": [
        "f666c0e2eaceb265069a77c520e84c1a08f08ae4"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Nov 28 15:54:55 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Nov 28 15:54:55 2016 +0000"
      },
      "message": "Override TextServicesManager in layoutlib\n\nWhen a TextServicesManger is required in layoutlib, provide a fake\none.\n\nTest: Run layoutlib tests\nChange-Id: I8c25f4919a2e97b56f705b59747e81cb6f45b07b\n"
    },
    {
      "commit": "f666c0e2eaceb265069a77c520e84c1a08f08ae4",
      "tree": "bd0903bf82d8ed45b800141b9d2409a2860b39cd",
      "parents": [
        "d0835e45f7663cb6abef383b9d903429c824cd20"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Nov 24 21:51:22 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Nov 28 10:40:33 2016 +0000"
      },
      "message": "Fix layoutlib to reflect recent changes in platform code\n\nTest: Layoutlib tests\nChange-Id: I81964233a9e580ccee9c9e9b0cf3525babf30bd4\n"
    },
    {
      "commit": "5017ece9835e93f56589ff6565298e40324d0ce8",
      "tree": "14bd1598622b908e695dbaade28f79a416900f56",
      "parents": [
        "8deff10ff9603bd19e34905e87851b6e517b9bb2"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Nov 01 16:01:31 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Nov 25 12:36:12 2016 +0000"
      },
      "message": "Update allwidgets golden image\n\nTest: Updating existing test\nChange-Id: Ie66abc77ec6013a8094d6b8be2666b69c973a295\n(cherry picked from commit 48d6ec53f9c75571217880ef77902f582723418b)\n"
    },
    {
      "commit": "8deff10ff9603bd19e34905e87851b6e517b9bb2",
      "tree": "e2ed7e92ef592455eeaede63dc20dfd2d4b232fa",
      "parents": [
        "2dd5018a0f1f7514c2de4cefbe2fd33dcb2ea506",
        "555fcd5579aa4719e182eda964071e649076684f"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Nov 25 12:03:59 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 25 12:04:03 2016 +0000"
      },
      "message": "Merge \"Fix shadow painting in layoutlib\""
    },
    {
      "commit": "2dd5018a0f1f7514c2de4cefbe2fd33dcb2ea506",
      "tree": "ec1f2a285bb32d44b8b4b8e36a50987ac9335c59",
      "parents": [
        "03221c248b168a16d67cac5126da6994d04b14b5",
        "e3607d2cc7296568fa4f56b537529da70cb09188"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Nov 24 21:49:43 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 24 21:49:48 2016 +0000"
      },
      "message": "Merge \"Add missing ServiceNotFoundException class\""
    },
    {
      "commit": "d38fffd38d92da2f5833004f6ca141e752affa6e",
      "tree": "b38b2ff7a0fd96c2a78fe033700d1b0074accfe3",
      "parents": [
        "5ce42bba5080fec4987a4a9ae2b93978d2266c35"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Nov 14 14:40:26 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Nov 24 16:43:30 2016 +0000"
      },
      "message": "Store failure thumbnails in CWD/out/failures\n\nWhen a test fails in layoutlib, store the resulting png files in\nout/failures subdirectory of the current working directory.\nThat avoids the risk of collisions if tests for several branches\nof layoutlib are run at the same time.\n\nTest: Run tests in layoutlib with at least one failing test\nChange-Id: I31594a871e481e6aa410a165926ce544dc7ddcf2\n(cherry picked from commit 82ebb9058479de56860f348ab969160e0d8294b6)\n"
    },
    {
      "commit": "555fcd5579aa4719e182eda964071e649076684f",
      "tree": "e002ecd14e1e1afff97a96d08923dfeaea325ad4",
      "parents": [
        "5ce42bba5080fec4987a4a9ae2b93978d2266c35"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Aug 12 15:43:48 2016 -0700"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Nov 24 16:42:12 2016 +0000"
      },
      "message": "Fix shadow painting in layoutlib\n\nShadows could be painted outside of the allowed drawing region\nfor the components for which they are the shadow.\n\nBug: http://b.android.com/215402\nChange-Id: I2d2821b745147f3723e8f11d648094fcd684fe51\n(cherry picked from commit 9702fffc768db43d0aba4fb1bea54af50af11361)\n"
    },
    {
      "commit": "e3607d2cc7296568fa4f56b537529da70cb09188",
      "tree": "44e22277c36b09ee54ea8f5d032dab18b755d68c",
      "parents": [
        "5ce42bba5080fec4987a4a9ae2b93978d2266c35"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Nov 24 16:19:42 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Nov 24 16:24:28 2016 +0000"
      },
      "message": "Add missing ServiceNotFoundException class\n\nThis class was added in ServiceManager.java in commit 49ca529a85.\nLayoutlib rewrites the entire ServiceManager class, so it also\nneeds to define ServiceNotFoundException.\n\nTest: TestDelegates.testMethodDelegates\nChange-Id: Ia68399e8baa973ae961eabe929ca3d1019f20ba7\n"
    },
    {
      "commit": "241ae10b2189f449e57d8d660235ac56d8fb1b80",
      "tree": "a6048e4406bff9ffc789c5a9af53a0eeea0718a6",
      "parents": [
        "d4f9d37424752a0774cdf9190dc12887c70daec2"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Nov 02 21:57:33 2016 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Nov 23 16:27:35 2016 +0100"
      },
      "message": "Add explicit method to dismiss Keyguard\n\nThe flag is a bit clunky for most cases, and a method is more\nclear.\n\nTest: cts/hostsidetests/services/activityandwindowmanager/util/run-test\nandroid.server.cts.KeyguardTests\n\nTest: cts/hostsidetests/services/activityandwindowmanager/util/run-test\nandroid.server.cts.KeyguardLockedTests\n\nTest: runtest systemui -c\ncom.android.systemui.keyguard.DismissCallbackRegistryTest\n\nBug: 30961403\nBug: 27422134\nChange-Id: I39de90c7cfecd99350a74f72cd76418e337f2b79\n"
    },
    {
      "commit": "dc3bb324ceeaa5e0b42b977b8f92ac7a04bcd5b1",
      "tree": "3c1a1ca3420f654e8a4f22eb41d5a816ed4e518c",
      "parents": [
        "3e416cf4a8d8c4c4722095979f4cc44a397e7807"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Nov 17 13:20:04 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Wed Nov 23 11:01:44 2016 +0000"
      },
      "message": "Fix tests when running from the command line\n\nWhen loading classes from the jar file, we can\u0027t just use the\nURLClassLoader since it can not enumerate files in a jar directory.\nRestoring the ModuleClassLoader and making all paths relative to the\nsystem class loader (as opposed to relative to the class location).\n\nChange-Id: Ib3f5d12dd5c964d0ba9cc6c5ec9cb556c989e653\n(cherry picked from commit 2a4a6c81f8a103be5c48d8a0605a3e4416e8f7f1)\n"
    },
    {
      "commit": "1133424c2bf28640299a6de375aaa19cfcb407b5",
      "tree": "57b1a76bb5ea9bafe1729a16baaf9c512df98433",
      "parents": [
        "0d11dc0cbb2c7f1fb7b6cb9575823f6ceb66fbc9"
      ],
      "author": {
        "name": "Bartosz Fabianowski",
        "email": "bartfab@google.com",
        "time": "Thu Nov 17 20:49:16 2016 +0100"
      },
      "committer": {
        "name": "Bartosz Fabianowski",
        "email": "bartfab@google.com",
        "time": "Thu Nov 17 20:49:16 2016 +0100"
      },
      "message": "Wire up PM.getInstalledApplicationsAsUser(flags, userId) as hidden API\n\nSettings needs to access a variant of getInstalledApplications() which\ntakes a |userId| argument. Since this is not currently exposed by\nPackageManager, Settings calls into PackageManagerService directly. This\nis ugly and breaks the regular abstraction layer hierarchy.\n\nThe CL fixes the problem by exposing the required variant of\ngetInstalledApplications() as a hidden API, analogously to what was done\nbefore with getInstalledPackages().\n\nBug: 32692748\nTest: Will be CTS-verifier-tested together with Settings\nChange-Id: Id9c4e8e18524d312159821f1a4d5527263c7e950\n"
    },
    {
      "commit": "6a0cb767b271f2a40b06926aa4e44ae108d40e00",
      "tree": "fd2161c5a9a759ab279218e4b0377585d8a631e6",
      "parents": [
        "c41c889b3e9c801c5c2af025f42296bd99866409",
        "c89bd30ceea5b556e579c9b2d3dcd638fa1b6f9f"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 16 18:47:34 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 16 18:47:34 2016 +0000"
      },
      "message": "Merge \"Preload2: Fix dependencies\" am: 3b379ee94e am: 74b4e070be am: 6a454c86db\nam: c89bd30cee\n\nChange-Id: I613d29d4a32266282d73a1c61482fd5a35f58953\n"
    },
    {
      "commit": "74b4e070be80962b3b00992f5083cadb033b6cdd",
      "tree": "3a06dc6a1366969a42add6b005c5895ea0335d92",
      "parents": [
        "d03b17c29ac972151ec1b509b4bf013085efd2c1",
        "3b379ee94e049bedaddb504136b9fb3d5113cab6"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Nov 16 18:25:37 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Nov 16 18:25:37 2016 +0000"
      },
      "message": "Merge \"Preload2: Fix dependencies\"\nam: 3b379ee94e\n\nChange-Id: If3ecad631e5f7deb9b2f348a26d9b41f8a00b4f5\n"
    },
    {
      "commit": "c318f0b40872a91215801f851e38189f42c4b7ea",
      "tree": "2880ab372aafc6a835d338e2940d2834210bb0c7",
      "parents": [
        "063f75d65b990647e2a01c6f6ac914b3219b3274"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Nov 15 12:06:49 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Nov 15 14:11:33 2016 +0000"
      },
      "message": "More layoutlib testing infra fixes\n\n- Remove ModuleClassLoader as it can be replaced with a URLClassLoader\n  for now.\n- Move CustomCalendar and CustomDate to a separate package that can be\n  used both by the Bridge tests and the actual test app.\n- Move empty.xml out of the test app so it compiles.\n- Update test app to use the latest build tools and SDK (some attributes\n  being used by the app weren\u0027t supported in API 21).\n- Update gitignore to remove the new out directory.\n\nTest: Update to existing tests\nChange-Id: Ieb7324d5ae559f9c581771c57f2127cd83909015\n"
    },
    {
      "commit": "da69216ac681189c6b92f5252df442958ee9d927",
      "tree": "e94072ae6931885b50231b084007584ba8ee019e",
      "parents": [
        "584b5cee49f1da297c7e2a4a5568110fa4ad4e3e"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 14 19:08:22 2016 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Nov 14 19:08:22 2016 -0800"
      },
      "message": "Preload2: Fix dependencies\n\nAlso depend on and package tools-common.\n\nTest: m\nTest: preload-tool\nChange-Id: I19a8844f87417f2292e50ffaaebb5fa24a2eca24\n"
    },
    {
      "commit": "e6f30eec368c28fca564a02c21f657a759320f4f",
      "tree": "f5e67a15460ce5153a349a9d15fbd5f3ae2c6931",
      "parents": [
        "18fe8f6359a4892f6008ecba4dc357b01ec16568"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Nov 14 17:11:38 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Nov 14 18:05:57 2016 +0000"
      },
      "message": "Fix testActivity on buildbot\n\nFollow-up to commit 896cc3a794, the class file also needed to be\nupdated. The golden file of testActivity is also updated to be\nthe one built with jdk1.8.0_60 which is the one running on buildbot.\n\nTest: Run testActivity\nChange-Id: I7f3cfc1123160005c3cb5fa4213db6ae3a48457d\n(cherry picked from commit aab13aee9a11c340952c24f2410940df59996816)\n"
    },
    {
      "commit": "7638c49c845be3122ff25b0fc48218c6ec64754e",
      "tree": "39530c6a1f1f52c4635c250dbc42bc9d8f53f707",
      "parents": [
        "4570fc9f28e03b211551b6ac53f4ecf93a05fc82"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Nov 11 15:17:09 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Nov 14 11:01:33 2016 +0000"
      },
      "message": "Change date on CustomCalendar\n\nThe date of the calendar is set by converting the epoch time based on\nthe local time zone. We choose at date at 12:00 GMT so that it will\nbe on the same day no matter which time zone is considered.\n\nTest: part of testActivity\nChange-Id: Ib36a5b45f69323265dd5ceaa17eeac553fc2d071\n(cherry picked from commit 896cc3a794bb6e173c1e53e97f70007c3e24de38)\n"
    },
    {
      "commit": "4570fc9f28e03b211551b6ac53f4ecf93a05fc82",
      "tree": "1c4e6cc7d641fa25e2960a663f7d75fc0e9d6336",
      "parents": [
        "d1b6feeef307fa05b5685243f72302ca7f2677d4",
        "a10973ebd1ca33c14f0cb06c22ea9d2f9828ac99"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Nov 14 11:00:47 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 14 11:00:51 2016 +0000"
      },
      "message": "Merge \"Rename native methods that were changed in the platform\""
    },
    {
      "commit": "bbd711c2a5bb91cc070bf4d45d29c049b080d281",
      "tree": "89f89f38a0c68dfe4cb53b5c5a53cc1dfa4d74a2",
      "parents": [
        "bb9a5ee042b8d5823cf34f4c525ed539f5e4d20e",
        "1cf454fcb69f63cfb2c5576aab310679df502516"
      ],
      "author": {
        "name": "Ben Lin",
        "email": "linben@google.com",
        "time": "Fri Nov 11 19:13:35 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 11 19:13:40 2016 +0000"
      },
      "message": "Merge \"Adding ContentProvider#refresh and ContentResolver#refresh.\""
    },
    {
      "commit": "a10973ebd1ca33c14f0cb06c22ea9d2f9828ac99",
      "tree": "81874156b2c3d47f54746a1e26aebc7066e343a9",
      "parents": [
        "126dd25d5b06503cfcc39263ee38a1f7fe0e9b4e"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Nov 11 12:39:34 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Nov 11 14:11:03 2016 +0000"
      },
      "message": "Rename native methods that were changed in the platform\n\nThis is following commits f22859757b, 94931bd87e, 4387190d8e\nand caa08ff5e9.\n\nTest: Run TestDelegates\nChange-Id: If90028492c036fc5f69913e4dcad5a1a5fca4b55\n"
    },
    {
      "commit": "1cf454fcb69f63cfb2c5576aab310679df502516",
      "tree": "810843dd9bd64a498941897f2654bec2d14f1b19",
      "parents": [
        "05675c80c11b5414ecee20afce727fe25698452d"
      ],
      "author": {
        "name": "Ben Lin",
        "email": "linben@google.com",
        "time": "Thu Nov 10 13:50:54 2016 -0800"
      },
      "committer": {
        "name": "Ben Lin",
        "email": "linben@google.com",
        "time": "Thu Nov 10 13:53:27 2016 -0800"
      },
      "message": "Adding ContentProvider#refresh and ContentResolver#refresh.\n\nOriginal CL is from ag/1568530.\n\nBug: 31647485\nChange-Id: Ib45fc995a361b8c75cd3600f638910b18a263d51\n"
    },
    {
      "commit": "3911cee2cf9d99613a3375d5a0c99e7c3648530c",
      "tree": "f02b5a1c54b58474596ab5b03c912d634943ed80",
      "parents": [
        "c61139824682183a67fbe8d34e3c874274d7c4bb"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Nov 07 17:01:16 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Nov 10 16:35:09 2016 +0000"
      },
      "message": "Update testActivity\n\nPut android:animateFirstView false in the test application theme\nso that the date picker view displays fully.\nUpdate the golden image to reflect the changes.\n\nChange-Id: If57fac5c182dd69b4b4d4fcc30d6f17a8f67ad68\n(cherry picked from commit 96970138fc1c8d928a6d3ec362865e6c626f56e4)\n"
    },
    {
      "commit": "67387af732f1b5e9b9bc270f03dbb1aedd5632cc",
      "tree": "113d9d560a625cb3f622789b506b8f489f14ad31",
      "parents": [
        "2fb2556833d9f6384004be9cbce4ba8321820909",
        "383db5ebcc3a4a615faf249bf4f126f42e80b82e"
      ],
      "author": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Wed Nov 09 13:38:50 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 09 13:38:58 2016 +0000"
      },
      "message": "Merge \"Update package names to work with the proto3 compiler\""
    },
    {
      "commit": "f96789d37c71064f3222d9a628af16f5711145e2",
      "tree": "e08cb8095f88d9b322e50f4558d3e2c146c74a69",
      "parents": [
        "80361c9ea7f3ff694425b6bd9e42e8c933b1196c",
        "c0c366394c658e3787b12e65833b520c9a9a34d9"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Nov 08 23:03:54 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 08 23:03:58 2016 +0000"
      },
      "message": "Merge \"Add font type to AAPT2\""
    },
    {
      "commit": "383db5ebcc3a4a615faf249bf4f126f42e80b82e",
      "tree": "75bf14fb2ad46cc7f0cdb8c9c008d1f8c37fa519",
      "parents": [
        "e7f6ca32de6eebfed88e31156f2e264dc72fc3f1"
      ],
      "author": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Wed Jun 22 15:21:38 2016 +0100"
      },
      "committer": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Tue Nov 08 14:06:09 2016 +0000"
      },
      "message": "Update package names to work with the proto3 compiler\n\nBug: b/28974522\nChange-Id: I5f3adf4946ee4ba1e09e4f40afe83c151405972a\n"
    },
    {
      "commit": "8f61cb3301201c24f53ed649482f05e4249d1c74",
      "tree": "cf6f4cf2857b9cff19af5767915fe4fd9901d05d",
      "parents": [
        "310f176c26c681cd5481630d608043a4e8364bb8",
        "58658eaa642012733a36676b01f6d53b2f662e06"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Nov 08 12:03:15 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 08 12:03:19 2016 +0000"
      },
      "message": "Merge \"Fix themed attributes resolution\""
    },
    {
      "commit": "946d11d2169a28c827a4719934405ebdf2ab0b66",
      "tree": "befd5c3771c34ab9671e050e06a7141b0b0c3195",
      "parents": [
        "2fe13541ad632c3484dd7b816672b6bf4cf3364f",
        "e43444a00b2df128ad612bbf813bf49f4ed3589b"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Nov 04 21:47:34 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Nov 04 21:47:34 2016 +0000"
      },
      "message": "Merge \"Re-unite sources with their headers\"\nam: e43444a00b\n\nChange-Id: I8f3ef6a1ddcf78d28f7444b6e83c552b8305fd8c\n"
    },
    {
      "commit": "03b5d506bc2735e080863712d9d2e8ce6f7ecb43",
      "tree": "cc107aa2cf2ad5ad885398b545e6c1bc43e46f85",
      "parents": [
        "0bebfe76fc216ce2b1b7405eec93c9fe21f5a059"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Nov 03 16:16:47 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Nov 04 13:27:37 2016 -0700"
      },
      "message": "Re-unite sources with their headers\n\nMove all the includes for androidfw under\na common base path for that library instead\nof frameworks/base/includes.\n\nAlso fixes -Werror issues that resulted in\nno longer being -isystem.\n\nTest: builds\nChange-Id: Ic4312eb61b197af114dded5691d5ae1ec82923f7\nMerged-In: Ic4312eb61b197af114dded5691d5ae1ec82923f7\n(cherry picked from commit f6113af2d6f6eebee68d3ac510fe96d38a7a39e9)\n"
    },
    {
      "commit": "437d4e0daf641bb0ce729a21fc9b6ce8783a6bbf",
      "tree": "eb354609402a4dc3a71bd3e617f2f5dc8a6201bf",
      "parents": [
        "e5227d443e7b3c05f859d587dfe386a48db8814b",
        "f6113af2d6f6eebee68d3ac510fe96d38a7a39e9"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Fri Nov 04 19:32:03 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 04 19:32:06 2016 +0000"
      },
      "message": "Merge \"Re-unite sources with their headers\""
    },
    {
      "commit": "a256408b243cc9851655b10d4a9d99ef44915e17",
      "tree": "64a6fe8f0a7ab61933cfe5ed7e91cc7ace2d972b",
      "parents": [
        "cb291f38f8aa1517ca66c7331765becb47442edd"
      ],
      "author": {
        "name": "Paulo Casanova",
        "email": "pasc@google.com",
        "time": "Fri Nov 04 11:28:44 2016 +0000"
      },
      "committer": {
        "name": "Paulo Casanova",
        "email": "pasc@google.com",
        "time": "Fri Nov 04 11:28:44 2016 +0000"
      },
      "message": "Renamed Aapt2.java to Aapt2Jni.java.\n\nSee http://ag/1590668 for a discussion.\n\nTest: Done in tools\nChange-Id: I3bfced0da98ab24531c1c1a79970841b32bfa1fa\n"
    },
    {
      "commit": "f6113af2d6f6eebee68d3ac510fe96d38a7a39e9",
      "tree": "dc4e58122ad130f79315b5d11ec04ac21b7e1099",
      "parents": [
        "a46f009bbfc693319290c273b4e647dea2eebe10"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Nov 03 16:16:47 2016 -0700"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Nov 03 16:26:59 2016 -0700"
      },
      "message": "Re-unite sources with their headers\n\nMove all the includes for androidfw under\na common base path for that library instead\nof frameworks/base/includes.\n\nAlso fixes -Werror issues that resulted in\nno longer being -isystem.\n\nTest: builds\nChange-Id: Ic4312eb61b197af114dded5691d5ae1ec82923f7\n"
    },
    {
      "commit": "573cccfea713d54bb6c962112b65fa1679e4e58c",
      "tree": "699093b2df068693b6fe3d7c3f134e7e1ae339b3",
      "parents": [
        "eff7a8e4aab1cccd5b961e5ff4343a3f32e06f31",
        "b555b59f2e53c18e8bd10b51fd963c849eff2cef"
      ],
      "author": {
        "name": "Paulo Casanova",
        "email": "pasc@google.com",
        "time": "Thu Nov 03 18:39:02 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 03 18:39:04 2016 +0000"
      },
      "message": "Merge \"Updated JNI interface.\""
    },
    {
      "commit": "b555b59f2e53c18e8bd10b51fd963c849eff2cef",
      "tree": "96cb13336317741a3800508ed2d6973f069cece4",
      "parents": [
        "88dea2dd23e3df5f87826aa6e524233f37b17588"
      ],
      "author": {
        "name": "Paulo Casanova",
        "email": "pasc@google.com",
        "time": "Tue Nov 01 14:50:46 2016 +0000"
      },
      "committer": {
        "name": "Paulo Casanova",
        "email": "pasc@google.com",
        "time": "Thu Nov 03 10:14:42 2016 +0000"
      },
      "message": "Updated JNI interface.\n\nAdded new \"ping\" method used to detect if the shared\nlibrary has already been loaded.\n\nFixed a few bugs in the implementation (and now it works\nfrom the Java side).\n\nSee http://ag/1590668 for the implementation on devtools.\n\nTest: Done on the tools side\nChange-Id: Ifa41073dc3b6ac69cdb9f77e655bf261c3b4c3d1\n"
    },
    {
      "commit": "3497b265076f338e320fcf01d3e46379492669b2",
      "tree": "842d1f034b3f00afdb6f44ba1ae33ccce477e65e",
      "parents": [
        "88dea2dd23e3df5f87826aa6e524233f37b17588"
      ],
      "author": {
        "name": "Paulo Casanova",
        "email": "pasc@google.com",
        "time": "Tue Nov 01 17:07:06 2016 +0000"
      },
      "committer": {
        "name": "Paulo Casanova",
        "email": "pasc@google.com",
        "time": "Thu Nov 03 09:39:43 2016 +0000"
      },
      "message": "Added Windows support for aapt/JNI.\n\nThis includes copying and slightly modifying\nlibnativehelper\u0027s ScopedUtfChars\u0027 implementation.\n\nTest: Done in studio-master-dev\nChange-Id: I2aacc67b444668478aaa5bb0db991a201c571d1f\n"
    },
    {
      "commit": "d5a422d62e9c8cf9cf6577048973dcc84ebccd7d",
      "tree": "5b1dabf0c5df4c350c0e7ae26235b5e6f4fd8226",
      "parents": [
        "aa2a530e64926d6b3a6e3c471a4b65f1ec9fe436",
        "fcb5f7bf36cb77a359fd3fb01af7bf0140da16be"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Nov 02 22:18:47 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 02 22:18:49 2016 +0000"
      },
      "message": "Merge \"AAPT: fix error message\""
    },
    {
      "commit": "fcb5f7bf36cb77a359fd3fb01af7bf0140da16be",
      "tree": "4afefb025e0bb714bc04c93ce2f0723b91a0e7db",
      "parents": [
        "71a7b9ad7cd6286e2f4cd4141344a17fa9d3038d"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Nov 02 13:17:10 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Nov 02 13:17:10 2016 -0700"
      },
      "message": "AAPT: fix error message\n\nTest: none\nBug:9779154\nChange-Id: Iebda7d4f0061cdc51db0103977195964fcc1211d\n"
    },
    {
      "commit": "ac2561e8206ac42921bb6ddbb0a5972fb360e394",
      "tree": "15f2bef8479d20bfda1927a2d55e7634e3c47b42",
      "parents": [
        "87045377c464ed6ec97dc7d4f5c6d8b473cd4ed9"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Tue Nov 01 15:43:46 2016 -0700"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Wed Nov 02 10:28:45 2016 -0700"
      },
      "message": "Make window token add/remove APIs require displayId\n\nWindow tokens can now only be on one display, so we now require clients\nthat want to add/remove window tokens to specify the display they would\nlike the token to be created on. This simplifies the token handling code\nin WM and will be useful moving forward for clients that want to add\nwindows to external displays.\n\nTest: Existing tests pass\nChange-Id: I6b2d8d58a913b3624f1a9a7bebbb99315613f103\n"
    },
    {
      "commit": "8d78693157cb3fa7ab1c9072ef913af4d67c6314",
      "tree": "1528eef1e9723065d45e4e97fd3bc40e55ed18aa",
      "parents": [
        "ab7ad3898c91dfc2afe6e776917f96dc8a096a44"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Oct 26 19:08:36 2016 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Nov 01 15:36:40 2016 -0700"
      },
      "message": "The big keyguard transition refactor (6/n)\n\nCleanup:\n- Make sure all the state is nicely dumped.\n- Remove some unused stuff.\n- Fix a flicker when occluded -\u003e unlocked\n\nBug: 32057734\nChange-Id: Id87e26adccef740d608b325c2dc1f6db14dd4ec3\n"
    },
    {
      "commit": "e48170bcbb099c2898a1152a4c407ea43e7c8d27",
      "tree": "434c5d71286fe3861e3bc9652eca9d4f4fd9c5f6",
      "parents": [
        "9ec830d8a43922dd030b25a56599be4d908c7398",
        "c93beed4e670f05104c4615d47265d125251b499"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Nov 01 10:29:26 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 01 10:29:29 2016 +0000"
      },
      "message": "Merge \"Remove refSkPixelRef\""
    },
    {
      "commit": "655332c641ccb12ee1ae3ce89135ca847fba1abf",
      "tree": "af816a1e92685ffe020112a69833facd99eeccdd",
      "parents": [
        "4b3c306268b745153b1efa093d74f88044accff1"
      ],
      "author": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Mon Oct 31 13:14:28 2016 -0700"
      },
      "committer": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Mon Oct 31 13:21:55 2016 -0700"
      },
      "message": "Creating PinnedStackController.\n\n- Creating a PinnedStackController to keep track of the state of the PIP\n  to prevent changes in the system (ie. IME showing) and user interaction\n  from clobbering each other.\n- Refactoring calls in AM into WM/controller\n\nTest: android.server.cts.ActivityManagerPinnedStackTests\n\nChange-Id: Ie59dfd45d5c54764ba69a589b3b8148845e92cc3\nSigned-off-by: Winson Chung \u003cwinsonc@google.com\u003e\n"
    },
    {
      "commit": "c93beed4e670f05104c4615d47265d125251b499",
      "tree": "80a086bcaa4d6940126162c4dc12620c72a7193a",
      "parents": [
        "0daded40468fb4d1d0bc4755a3c77058a8ef25e5"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Oct 31 17:52:12 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Oct 31 17:54:01 2016 +0000"
      },
      "message": "Remove refSkPixelRef\n\nChange-Id: I4d6e7076d2b87dd208c0eba27491c13f56567420\n"
    },
    {
      "commit": "c0c366394c658e3787b12e65833b520c9a9a34d9",
      "tree": "0f8edb0b05d1d2899100fd114053ba1b8baa39a0",
      "parents": [
        "9212fc742ff4fc92561c8055388d119d8ef195ae"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Oct 19 18:37:53 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Oct 27 18:09:00 2016 -0700"
      },
      "message": "Add font type to AAPT2\n\nTest: make libaapt2_tests AaptTestAppOne\nChange-Id: I8fbf01675a218cc3c0b59598b6b1ec173851e946\n"
    },
    {
      "commit": "e343eb145c42d00c4fd3fdde93cd0be55cb5b855",
      "tree": "687304b2b9ca6106eaa7387c304ac4e46570ddc1",
      "parents": [
        "584264f6af08faea57653c65db4abcb8111009c0"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Oct 27 16:31:58 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Oct 27 16:31:58 2016 -0700"
      },
      "message": "AAPT2: Insert \u003cuses-sdk\u003e element before \u003capplication\u003e\n\nPackageParser on the device uses the targetSdkVersion of the\napp while it parses \u003capplication\u003e. That means that if the\n\u003cuses-sdk\u003e tag comes after \u003capplication\u003e, the targetSdkVersion\nis assumed to be 0.\n\nTest: make libaapt2_tests\nChange-Id: I60f2179a7ff44e7419217afb53f3d24f8c030f6e\n"
    },
    {
      "commit": "4bcf5e7c473e9eab4bae3a6bd1c6e323da2e4ba6",
      "tree": "3265a0f2308254f8216815b62770d5ed208d1200",
      "parents": [
        "debcf7603f574478e8dd11af415796f4fa6976f0",
        "906f2ad1c857077368d5ca154d8e849f4ad420fc"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Oct 27 10:15:39 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 27 10:15:41 2016 +0000"
      },
      "message": "Merge \"Remove use of refSkPixelRef\""
    },
    {
      "commit": "b629f36601eb5e16f76c2aedf64fc1f18e448b1a",
      "tree": "15ad1f82c714678242de54418cb5c0a3b95b4abf",
      "parents": [
        "ed9ee581709541f00c1c222772454e4c17d55724",
        "ce5e56e243d262a9b65459c3bd0bb9eaadd40628"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 27 04:31:02 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 27 04:31:05 2016 +0000"
      },
      "message": "Merge \"AAPT2: Rename to match new style\""
    },
    {
      "commit": "ce5e56e243d262a9b65459c3bd0bb9eaadd40628",
      "tree": "cf0ecea98883d090d8d2856fc6d32046c7e3d9e8",
      "parents": [
        "0f7cc4dc2c49a30c072cbc7aa6c0c5d5c31496d4"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Oct 21 17:56:45 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Oct 26 19:30:23 2016 -0700"
      },
      "message": "AAPT2: Rename to match new style\n\nUse Google3 naming style to match new\nprojects\u0027 and open source google projects\u0027 style.\n\nPreferred to do this in a massive CL so as to avoid\nstyle inconsistencies that plague legacy code bases.\nThis is a relatively NEW code base, may as well keep\nit up to date.\n\nTest: name/style refactor - existing tests pass\nChange-Id: Ie80ecb78d46ec53efdfca2336bb57d96cbb7fb87\n"
    },
    {
      "commit": "303c6b78b645a9a655e09677e4856269d278a85d",
      "tree": "08768d0a52794c437571ae3d3ad03489fabcc88c",
      "parents": [
        "2fbeaa2745df1b48909991ac5c16c7f4b17a41db"
      ],
      "author": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Mon Oct 24 17:12:49 2016 -0700"
      },
      "committer": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Wed Oct 26 12:49:40 2016 -0700"
      },
      "message": "Fix wrong bounds being used in landscape.\n\n- Ensure we use the right display size when calculating PIP bounds.\n- Also update interface to take the display id.\n\nTest: android.server.cts.ActivityManagerPinnedStackTests\nTest: #testPinnedStackDefaultBounds\nTest: #testPinnedStackMovementBounds\n\nChange-Id: I01fd8ba6dee212c29a9a092673ee8f7843e41af6\n"
    },
    {
      "commit": "906f2ad1c857077368d5ca154d8e849f4ad420fc",
      "tree": "062cfd2c2b17b9d806e49e531653a879619d2de8",
      "parents": [
        "daf7229047c44947b9b02ee187fe5b13f30ebd4b"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Oct 26 15:52:48 2016 +0100"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Oct 26 16:08:44 2016 +0100"
      },
      "message": "Remove use of refSkPixelRef\n\nTest: refactoring, existing tests pass\nChange-Id: I4ea51f25b3a2e4cb6a3391d059fb1f0b74f0e90d\n"
    },
    {
      "commit": "5406e7ade87c33f70c83a283781dcc48fb67cdb9",
      "tree": "32f090c0d0a7a34dc51aa955f128677e24345aee",
      "parents": [
        "fa4c311438dc174df7acac822a9aa91ae91e9879"
      ],
      "author": {
        "name": "Andrii Kulian",
        "email": "akulian@google.com",
        "time": "Fri Oct 21 11:55:23 2016 -0700"
      },
      "committer": {
        "name": "Andrii Kulian",
        "email": "akulian@google.com",
        "time": "Tue Oct 25 13:22:10 2016 -0700"
      },
      "message": "Apply display override config for secondary displays\n\nNow display-specific settings, such as dimensions and orientation,\nare stored in display override config. For default display it is\nmirroring the global config. Each time when global config is updated,\noverride of the default display should be updated too and vice versa.\n\nTest: Existing and manual tests still pass.\nChange-Id: Ic6c2190092d328820f314a05bed43c875db18170\n"
    },
    {
      "commit": "418063c63f1af7ed5373c524fce7672cc84bd752",
      "tree": "6b2b8fd06dcadaf299537efffe63a0d63feb9157",
      "parents": [
        "ff356a5661422d6753ad4df74e807b76eb53067c",
        "255960857d7682fdad4fe461ac1348b618d1dbb2"
      ],
      "author": {
        "name": "Paulo Casanova",
        "email": "pasc@google.com",
        "time": "Sat Oct 22 08:19:16 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Oct 22 08:19:19 2016 +0000"
      },
      "message": "Merge \"Added JNI interface for aapt2.\""
    },
    {
      "commit": "b366402a687193ae584ea0ff040b2a1231333e8c",
      "tree": "dd69d681212cd7c85e6bce2d3265ce766c1d392e",
      "parents": [
        "f524e1c67f34b3fe842eda16052861f522845f68",
        "b54ef10f55ab9f11fdc73b0436b708e518fb5029"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Oct 22 00:37:16 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Oct 22 00:37:20 2016 +0000"
      },
      "message": "Merge \"AAPT2: Ensure string pool ordering is compact\""
    },
    {
      "commit": "8e16c1d458fe5fc6c8c5f1dfc13949709bfb6a6d",
      "tree": "3ee5267f7b839df0e52c0d3e76c36367b495f70f",
      "parents": [
        "5066f9513b48f24bc9462da182e090a77a26ffbb",
        "31617e3b8ff01bb016446a0d2cb687b25aee42c6"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Oct 21 22:32:32 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 21 22:32:34 2016 +0000"
      },
      "message": "Merge \"Another mac fix\""
    },
    {
      "commit": "31617e3b8ff01bb016446a0d2cb687b25aee42c6",
      "tree": "1fee34290d7cd81940c106b510c1ac9bc19e7145",
      "parents": [
        "95376c1d36600982c6546ad2101b3bf4a1973aa1"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Oct 21 15:18:18 2016 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Oct 21 15:29:51 2016 -0700"
      },
      "message": "Another mac fix\n\nTest: make (on linux)\nChange-Id: I3f0561f3a1fc08dad5d3dd8ba860da56b51d273c\n"
    },
    {
      "commit": "5066f9513b48f24bc9462da182e090a77a26ffbb",
      "tree": "a8edf37d78117fa6d707f00f4062610dc0cb566f",
      "parents": [
        "7984eb58bec58e881b800939cf76a5d355d41bee",
        "c1ef4b25a7fc466c1b18be16beb0784c045ac43a"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Oct 21 22:22:59 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 21 22:23:02 2016 +0000"
      },
      "message": "Merge \"Fix mac build.\""
    },
    {
      "commit": "8a5bb6370cd01990d2bb9f74dc4c777d68e95adc",
      "tree": "888948f4c1e77df9d17d4cdfb9fc7b5b86b23dfa",
      "parents": [
        "909bbd31177ebc131f91453a9aa206baec4afb9a"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Oct 21 14:31:42 2016 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Oct 21 14:32:01 2016 -0700"
      },
      "message": "Fix mac build of bit\n\nTest: make bit\nChange-Id: I8005e77babfbe2d48806f9315800e699d1917bb4\n"
    },
    {
      "commit": "b54ef10f55ab9f11fdc73b0436b708e518fb5029",
      "tree": "52b1225899d166dd1f65a576bdf7fcc6796f0224",
      "parents": [
        "011cef54ee0a8260f6b4381c7ea28a450cd3cbce"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Oct 21 13:38:42 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Oct 21 13:51:59 2016 -0700"
      },
      "message": "AAPT2: Ensure string pool ordering is compact\n\nKeep styledstrings at the beginning of the StringPool\nto reduce the padding in the StyledString array.\n\nBug:32336940\nTest: manual\nChange-Id: Iec820c21a54daac40ecc3b2f87517a0f1efc9d3d\n"
    },
    {
      "commit": "c1ef4b25a7fc466c1b18be16beb0784c045ac43a",
      "tree": "5fd91e666321f5a11616d6630fa6ace750f3978a",
      "parents": [
        "586bfe54298b0e363d38651e728d6cde90179b1a"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Oct 21 12:56:06 2016 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Oct 21 12:56:35 2016 -0700"
      },
      "message": "Fix mac build.\n\nDo not build the bit tool on darwin.\n\nTest: Make sure this still builds on linux.\n\nChange-Id: Ie958649893016771f1fa3df6f10d443d0117c171\n"
    },
    {
      "commit": "2f99e60d71684d0f0296ce252a0683dc02cd93bd",
      "tree": "bb0621fe13b3387f11f339aa2edb88e54599ca6a",
      "parents": [
        "10842783e1955c4a0aa2e640cd4531b17a0b4b1d",
        "0578cbc6c527bc09a38a0fcd8b9642c25c8ea023"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Fri Oct 21 17:55:42 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 21 17:55:46 2016 +0000"
      },
      "message": "Merge changes from topic \u0027am_instrument\u0027\n\n* changes:\n  Add a new build, install, test development (bit) tool\n  am instrument gets protobuf\n  Fix bad type codes in streaming proto compiler\n"
    },
    {
      "commit": "577e66cc432a348c5fe811b006472d2026c7d12a",
      "tree": "1809b85eed6c84fd51c720b1f579063e0a2c00ff",
      "parents": [
        "09731444e72aba92e248238ff361a4c2084e122c",
        "dfaecafbe9fb7c5800191edfe3aa5d5938705204"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Oct 21 03:04:10 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 21 03:04:12 2016 +0000"
      },
      "message": "Merge \"AAPT2: Fail compile on bad output file/dir\""
    },
    {
      "commit": "0578cbc6c527bc09a38a0fcd8b9642c25c8ea023",
      "tree": "fc29b7b8f9b92269bd25e5b17046685d3a3b008c",
      "parents": [
        "f0c719821dfdd32e37c4de6b4d640cefcda7b32a"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Oct 19 17:03:06 2016 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Oct 20 18:20:40 2016 -0700"
      },
      "message": "Add a new build, install, test development (bit) tool\n\nThis is a cleaned up version of a utility that I\u0027ve had sitting around\nfor a while.\n\nThe bit tool can run an android platform build, then sync or install\nthe outputs of that, and then run instrumentation tests.  It\u0027s better\nthan what we usually do:\n\n  make \u0026\u0026 adb shell stop \u0026\u0026 adb sync system \u0026\u0026 adb shell start\n\nHere\u0027s the help text:\n\nusage: bit OPTIONS PATTERN\n\n  Build, sync and test android code.\n\n  The -b -i and -t options allow you to specify which phases\n  you want to run. If none of those options are given, then\n  all phases are run. If any of these options are provided\n  then only the listed phases are run.\n\n  OPTIONS\n  -b     Run a build\n  -i     Install the targets\n  -t     Run the tests\n\n  PATTERN\n  One or more targets to build, install and test. The target\n  names are the names that appear in the LOCAL_MODULE or\n  LOCAL_PACKAGE_NAME variables in Android.mk or Android.bp files.\n\n  Building and installing\n  -----------------------\n  The modules specified will be built and then installed. If the\n  files are on the system partition, they will be synced and the\n  attached device rebooted. If they are APKs that aren\u0027t on the\n  system partition they are installed with adb install.\n\n  For example:\n    bit framework\n      Builds framework.jar, syncs the system partition and reboots.\n\n    bit SystemUI\n      Builds SystemUI.apk, syncs the system partition and reboots.\n\n    bit CtsProtoTestCases\n      Builds this CTS apk, adb installs it, but does not run any\n      tests.\n\n  Running Unit Tests\n  ------------------\n  To run a unit test, list the test class names and optionally the\n  test method after the module.\n\n  For example:\n    bit CtsProtoTestCases:*\n      Builds this CTS apk, adb installs it, and runs all the tests\n      contained in that apk.\n\n    bit framework CtsProtoTestCases:*\n      Builds the framework and the apk, syncs and reboots, then\n      adb installs CtsProtoTestCases.apk, and runs all tests\n      contained in that apk.\n\n    bit CtsProtoTestCases:.ProtoOutputStreamBoolTest\n    bit CtsProtoTestCases:android.util.proto.cts.ProtoOutputStreamBoolTest\n      Builds and installs CtsProtoTestCases.apk, and runs all the\n      tests in the ProtoOutputStreamBoolTest class.\n\n    bit CtsProtoTestCases:.ProtoOutputStreamBoolTest\\#testWrite\n      Builds and installs CtsProtoTestCases.apk, and runs the testWrite\n      test method on that class.\n\n    bit CtsProtoTestCases:.ProtoOutputStreamBoolTest\\#testWrite,.ProtoOutputStreamBoolTest\\#testRepeated\n      Builds and installs CtsProtoTestCases.apk, and runs the testWrite\n      and testRepeated test methods on that class.\n\n  Launching an Activity\n  ---------------------\n  To launch an activity, specify the activity class name after\n  the module name.\n\n  For example:\n    bit StatusBarTest:NotificationBuilderTest\n    bit StatusBarTest:.NotificationBuilderTest\n    bit StatusBarTest:com.android.statusbartest.NotificationBuilderTest\n      Builds and installs StatusBarTest.apk, launches the\n      com.android.statusbartest/.NotificationBuilderTest activity.\n\nChange-Id: I9cff7a23852fa1a67369e7807f7ae9f6e45d6131\nTest: none\n"
    },
    {
      "commit": "dfaecafbe9fb7c5800191edfe3aa5d5938705204",
      "tree": "5e4c34cebdb64a146d4cb6ee91f0ed70060e9bf0",
      "parents": [
        "011cef54ee0a8260f6b4381c7ea28a450cd3cbce"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Oct 20 17:08:51 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Oct 20 17:08:51 2016 -0700"
      },
      "message": "AAPT2: Fail compile on bad output file/dir\n\nTest: manual\nChange-Id: I2578e32c52430a62df942822ddf6bd3f06357bce\n"
    },
    {
      "commit": "12bfe65410ba7f01f5d70038332467d061747263",
      "tree": "b0d8de73a345225eed4b8a8c98eb868d02ea9ba6",
      "parents": [
        "c9eb24ceab80639b015395fc19ce4805c5c66a89",
        "6a396c1abb4e52f5a8fed5fab204ebc7b8e16dec"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 20 23:58:13 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Oct 20 23:58:15 2016 +0000"
      },
      "message": "Merge \"AAPT2: Error on uncompiled XML or PNG files in link phase\""
    },
    {
      "commit": "6a396c1abb4e52f5a8fed5fab204ebc7b8e16dec",
      "tree": "7494b207c6cc2a37a84ee988cec11b2ffc4831d4",
      "parents": [
        "011cef54ee0a8260f6b4381c7ea28a450cd3cbce"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Oct 20 14:38:23 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Oct 20 14:40:49 2016 -0700"
      },
      "message": "AAPT2: Error on uncompiled XML or PNG files in link phase\n\nIncorrectly passing text XML and unprocessed PNG files to\nthe AAPT2 link phase should raise an error.\n\nTest: manual incorrect invocation of aapt2\nChange-Id: Iab47f99bc378b5d1c4f4d87098f08243b9a4dc6a\n"
    },
    {
      "commit": "092db3c88ae5f2ba1b34516666c2b87ed7404965",
      "tree": "8d3b157d3a1336745afa8398d36d8806391ca885",
      "parents": [
        "3e934442faa0627d05ac45ee87c67792ff34d292",
        "281e9f30c05d033b49141922e438eb47afaa0e8f"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Thu Oct 20 19:35:45 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 20 19:35:45 2016 +0000"
      },
      "message": "Merge \"Fix a static-analyzer warning.\" am: 63b4f6f5db am: ea4423b181\nam: 281e9f30c0\n\nChange-Id: If34a4265ceb5bc6f4bf31c35e82270f90e970457\n"
    },
    {
      "commit": "ea4423b181ab793b7ec9eebe5bc388abbc7be35a",
      "tree": "f6be23ebb39018cb6480eb5510b889f192b4b641",
      "parents": [
        "abfd527d0924b56bc2e4e8b4281300bfabd791f7",
        "63b4f6f5db4d5ea0114d195a0f33970e7070f21b"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Thu Oct 20 19:19:15 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 20 19:19:15 2016 +0000"
      },
      "message": "Merge \"Fix a static-analyzer warning.\"\nam: 63b4f6f5db\n\nChange-Id: I85fd6d25733d59da76eb0bab381fdbd3b5a0430d\n"
    },
    {
      "commit": "63b4f6f5db4d5ea0114d195a0f33970e7070f21b",
      "tree": "6db996d60120e2110c2664bbb6af09ee6c57c07e",
      "parents": [
        "2202b164d8ae2693cd263d4bd6aa34c9a9f0cfd1",
        "56f5f7b79bca91d6b241d35be0f4bf56155cf855"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Oct 20 19:06:58 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 20 19:06:58 2016 +0000"
      },
      "message": "Merge \"Fix a static-analyzer warning.\""
    },
    {
      "commit": "3a5eb297205b4c468d35912e3df5cdf014f6e188",
      "tree": "3edcc9d82501bdb0d9774537f64a2489513961d6",
      "parents": [
        "011cef54ee0a8260f6b4381c7ea28a450cd3cbce"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Oct 20 11:27:37 2016 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Oct 20 11:57:22 2016 -0700"
      },
      "message": "Fix bad type codes in streaming proto compiler\n\nChange-Id: I4623f0a726107ec1321cadcaaf83b23353d0728e\nTest: make StreamingProtoTest\n"
    },
    {
      "commit": "255960857d7682fdad4fe461ac1348b618d1dbb2",
      "tree": "52f0e74f56c725a08c92bb86b7964f21c19dc5d0",
      "parents": [
        "c4ee093bf618cc73788ee07df1051054ac10b585"
      ],
      "author": {
        "name": "Paulo Casanova",
        "email": "pasc@google.com",
        "time": "Fri Oct 07 12:00:26 2016 +0100"
      },
      "committer": {
        "name": "Paulo Casanova",
        "email": "pasc@google.com",
        "time": "Thu Oct 20 12:03:34 2016 +0100"
      },
      "message": "Added JNI interface for aapt2.\n\nTest: None (tests will be made on the Android Studio Tools project)\n"
    },
    {
      "commit": "cacb28f2d60858106e2819cc7d95a65e8bda890b",
      "tree": "c8ac4af72b0a9599983567029e5680c40f9883a3",
      "parents": [
        "733f0bc08ea0c93d095016a791c2914658d0cdde"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Oct 19 12:18:14 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Oct 19 12:18:14 2016 -0700"
      },
      "message": "Use Google3 style guide with .clang-format\n\nTest: style change only, builds ok\nChange-Id: I885180e24cb2e7b58cfb4967c3bcb40058ce4078\n"
    },
    {
      "commit": "21c2e9e60c9e66e848fc9276b878c1ab1bd66aa9",
      "tree": "be6eef39574167ff885bf6f71e8a41de88ea3e24",
      "parents": [
        "4ede0e9b59681dc2a970898171b662b5db9c674f",
        "6e60ab12e709d6e72659c823540e8591cc2412de"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Mon Oct 17 21:38:33 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Oct 17 21:38:33 2016 +0000"
      },
      "message": "Merge \"missing includes\" am: 78929f3ee0 am: 6a8f0d70b0\nam: 6e60ab12e7\n\nChange-Id: I1b5c6f49d2ae565ebd59c6ce8d590512ab306487\n"
    },
    {
      "commit": "6a8f0d70b09d3e628f2b3472b1c534dd213be3ec",
      "tree": "131a3b13c17555fef4145f22323a8d5762d6f160",
      "parents": [
        "95319337979b2c6fe81c17d6a14c2704bcaa5a0d",
        "78929f3ee0b9420fc282f1fe0db69c87a629751c"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Mon Oct 17 21:25:59 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Oct 17 21:25:59 2016 +0000"
      },
      "message": "Merge \"missing includes\"\nam: 78929f3ee0\n\nChange-Id: I3e7a25ded484d516fab453abe434c2e53cf0f27e\n"
    },
    {
      "commit": "4d6c372eaebc6d227f7222a92950a64c76fd4baf",
      "tree": "c119ce520a4cdf5870380544f202ab6ba56d6625",
      "parents": [
        "9a904d68c75ceae85086b03493f4bc7f23a3acd3"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Mon Oct 17 10:10:55 2016 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Mon Oct 17 12:32:54 2016 -0700"
      },
      "message": "missing includes\n\nAssumptions are made about header side effects\n\nTest: compile\nBug: 30465923\nChange-Id: Icc9415aed5e54b2bc00b70aa0da6df4148f30654\n"
    },
    {
      "commit": "46bf9f3b5cf6d7973c474b5a5328a7372694fae3",
      "tree": "e7b2f2b47dc96f863687d5b50d677e80d32d519f",
      "parents": [
        "5bc2953f6e128af865f368008c3bd3c740d13205",
        "12055fecef2c0f38fdb4fdb80dd18f24ac5e3db7"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Oct 17 11:36:16 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 17 11:36:19 2016 +0000"
      },
      "message": "Merge \"Account for horizontal offset when calculating borders\""
    },
    {
      "commit": "011c85729ae5799b85c694b831ad6a8e632878cd",
      "tree": "fdcf0cd177c6b2a878aabfc951ff585732839bbd",
      "parents": [
        "156254da9512f929edf418327c98e1156ea86a34",
        "412754816d2b8e83f0f5f860b13f09f53d2da05f"
      ],
      "author": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Fri Oct 14 22:34:00 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 14 22:34:03 2016 +0000"
      },
      "message": "Merge \"Adding PIP input consumer.\""
    },
    {
      "commit": "8607c7016fed0581545d6de03d39b12b20c6d9d9",
      "tree": "92757f3ecdf4e453cb89a105f1970423413de05e",
      "parents": [
        "be15b9643b868e4926dc2ff0bcd354ea168b3001",
        "a40eeb09795755c05ccbc53fe480722f2ea7cd38"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Fri Oct 14 20:07:51 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 14 20:07:51 2016 +0000"
      },
      "message": "Merge \"Fix static-analyzer warning.\" am: 2fbf30d3fe am: a52992e290 am: c88628da5e\nam: a40eeb0979\n\nChange-Id: I973bb3f7f72f38133472874727b4297042ee0a50\n"
    },
    {
      "commit": "412754816d2b8e83f0f5f860b13f09f53d2da05f",
      "tree": "a73d850fcc61b02d910018241de2e75ec0652dc4",
      "parents": [
        "85fe52dacdc5054e0eb0db82a98992298947c95f"
      ],
      "author": {
        "name": "Winson",
        "email": "winsonc@google.com",
        "time": "Mon Oct 10 15:17:45 2016 -0700"
      },
      "committer": {
        "name": "Winson",
        "email": "winsonc@google.com",
        "time": "Fri Oct 14 11:21:48 2016 -0700"
      },
      "message": "Adding PIP input consumer.\n\n- This CL provides the framework for manipulating the pinned stack using\n  an input policy (to be determined later) provided by the SystemUI.\n\nTest: android.server.cts.ActivityManagerPinnedStackTests\nTest: #testNonTappablePipActivity\n\nChange-Id: I025c41fff26ed05a35d68e59f10330680ed11ea8"
    },
    {
      "commit": "a40eeb09795755c05ccbc53fe480722f2ea7cd38",
      "tree": "8f1720a3add9f78a873cf814aa15be07786c8510",
      "parents": [
        "414c77ce1c8b924330f8cdfa9f1b8cab31155029",
        "c88628da5e74c3d0e044ffcd92d74f622a21aeee"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Fri Oct 14 14:39:06 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 14 14:39:06 2016 +0000"
      },
      "message": "Merge \"Fix static-analyzer warning.\" am: 2fbf30d3fe am: a52992e290\nam: c88628da5e\n\nChange-Id: Iece80dfbd8a5d01ffdcf6edf1decd8078af31511\n"
    },
    {
      "commit": "56f5f7b79bca91d6b241d35be0f4bf56155cf855",
      "tree": "309a11ef2d9c053c79dcb20ec22f1014dd403a42",
      "parents": [
        "c98b34bdce1fb1b43755af7fb8538efb0d0dc953"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Tue Oct 11 18:08:23 2016 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Thu Oct 13 15:52:34 2016 -0700"
      },
      "message": "Fix a static-analyzer warning.\n\nframeworks/base/tools/aapt2/util/Files.cpp:81:21: warning: Null pointer\npassed as an argument to a \u0027nonnull\u0027 parameter\n     while ((entry \u003d readdir(dir))) {\n\nBug: None.\nTest: Warning no longer appears.\nChange-Id: If242598405e995928378ce317a2e909654e1e985\n"
    },
    {
      "commit": "0c2774b16a72d13f432cd8b7e8dedd2d6f5ed0ba",
      "tree": "3a1cb092a818d7daa0d93e56569477678c0fc7a1",
      "parents": [
        "c98b34bdce1fb1b43755af7fb8538efb0d0dc953"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Tue Oct 11 17:51:10 2016 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Thu Oct 13 15:51:04 2016 -0700"
      },
      "message": "Fix static-analyzer warning.\n\nframeworks/base/tools/aapt/Images.cpp:845:17: warning: Assigned value is\ngarbage or undefined\n     row +\u003d bpp;\n\nBug: None.\nTest: The warning is gone.\nChange-Id: Idf4623d2510111a9188ed39922e109a8db225c76\n"
    },
    {
      "commit": "6c9547d8e1c35d7afa9bc9be11d5ff86ec60db14",
      "tree": "e541af3eda20820eaa81c1e306f704046ac3ea54",
      "parents": [
        "87ff355f0a91785a44d50f8e15392781c2065f1d"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Sep 07 18:43:49 2016 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Oct 12 16:37:18 2016 -0700"
      },
      "message": "Add android.util.proto package as an @TestApi.\n\nThe classes there add a way for the platform to write out\nprotocol buffers that doesn\u0027t require lots of small objects,\ngenerate code, and extra copying.\n\nIncludes the plugin for protoc to generate the constants.\n\nTest: proto cts tests\n\nChange-Id: I6385c198cecda9ac6fa533151609e3ace341af01\n"
    },
    {
      "commit": "253f2c213f6ecda63b6872aee77bd30d5ec07c82",
      "tree": "45fcfd8633a122fc4509e58732743123daf8af79",
      "parents": [
        "9cf75061b143196c97c31726655c7e5c4ada8814"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Sep 28 17:34:42 2016 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Oct 11 17:47:58 2016 -0700"
      },
      "message": "Linear blending, step 1\n\nNOTE: Linear blending is currently disabled in this CL as the\n      feature is still a work in progress\n\nAndroid currently performs all blending (any kind of linear math\non colors really) on gamma-encoded colors. Since Android assumes\nthat the default color space is sRGB, all bitmaps and colors\nare encoded with the sRGB Opto-Electronic Conversion Function\n(OECF, which can be approximated with a power function). Since\nthe power curve is not linear, our linear math is incorrect.\nThe result is that we generate colors that tend to be too dark;\nthis affects blending but also anti-aliasing, gradients, blurs,\netc.\n\nThe solution is to convert gamma-encoded colors back to linear\nspace before doing any math on them, using the sRGB Electo-Optical\nConversion Function (EOCF). This is achieved in different\nways in different parts of the pipeline:\n\n- Using hardware conversions when sampling from OpenGL textures\n  or writing into OpenGL frame buffers\n- Using software conversion functions, to translate app-supplied\n  colors to and from sRGB\n- Using Skia\u0027s color spaces\n\nAny type of processing on colors must roughly ollow these steps:\n\n[sRGB input]-\u003eEOCF-\u003e[linear data]-\u003e[processing]-\u003eOECF-\u003e[sRGB output]\n\nFor the sRGB color space, the conversion functions are defined as\nfollows:\n\nOECF(linear) :\u003d\nlinear \u003c\u003d 0.0031308 ? linear * 12.92 : (pow(linear, 1/2.4) * 1.055) - 0.055\n\nEOCF(srgb) :\u003d\nsrgb \u003c\u003d 0.04045 ? srgb / 12.92 : pow((srgb + 0.055) / 1.055, 2.4)\n\nThe EOCF is simply the reciprocal of the OECF.\nWhile it is highly recommended to use the exact sRGB conversion\nfunctions everywhere possible, it is sometimes useful or beneficial\nto rely on approximations:\n\n- pow(x,2.2) and pow(x,1/2.2)\n- x^2 and sqrt(x)\n\nThe latter is particularly useful in fragment shaders (for instance\nto apply dithering in sRGB space), especially if the sqrt() can be\nreplaced with an inversesqrt().\n\nHere is a fairly exhaustive list of modifications implemented\nin this CL:\n\n- Set TARGET_ENABLE_LINEAR_BLENDING :\u003d false in BoardConfig.mk\n  to disable linear blending. This is only for GLES 2.0 GPUs\n  with no hardware sRGB support. This flag is currently assumed\n  to be false (see note above)\n- sRGB writes are disabled when entering a functor (WebView).\n  This will need to be fixed at some point\n- Skia bitmaps are created with the sRGB color space\n- Bitmaps using a 565 config are expanded to 888\n- Linear blending is disabled when entering a functor\n- External textures are not properly sampled (see below)\n- Gradients are interpolated in linear space\n- Texture-based dithering was replaced with analytical dithering\n- Dithering is done in the quantization color space, which is\n  why we must do EOCF(OECF(color)+dither)\n- Text is now gamma corrected differently depending on the luminance\n  of the source pixel. The asumption is that a bright pixel will be\n  blended on a dark background and the other way around. The source\n  alpha is gamma corrected to thicken dark on bright and thin\n  bright on dark to match the intended design of fonts. This also\n  matches the behavior of popular design/drawing applications\n- Removed the asset atlas. It did not contain anything useful and\n  could not be sampled in sRGB without a yet-to-be-defined GL\n  extension\n- The last column of color matrices is converted to linear space\n  because its value are added to linear colors\n\nMissing features:\n- Resource qualifier?\n- Regeneration of goldeng images for automated tests\n- Handle alpha8/grey8 properly\n- Disable sRGB write for layers with external textures\n\nTest: Manual testing while work in progress\nBug: 29940137\n\nChange-Id: I6a07b15ab49b554377cd33a36b6d9971a15e9a0b\n"
    },
    {
      "commit": "56f823be9ad6626234300e7c787a74eb0186ee18",
      "tree": "b7bdf447b958a937f150ea163aa83ee57893c134",
      "parents": [
        "7a31d42c5ded0e81839d5685facfbe14419b8a35",
        "437b8c95a803736a8917bd2b89c5653ba48976b6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 10 17:42:08 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Oct 10 17:42:08 2016 +0000"
      },
      "message": "Merge \"Rely on the platform -std default.\" am: 66f15cc01b am: 5a989a504a am: 39ad1b92fa\nam: 437b8c95a8\n\nChange-Id: Idacd1cad6e0e241404c99b680974aae2b8f81926\n"
    },
    {
      "commit": "437b8c95a803736a8917bd2b89c5653ba48976b6",
      "tree": "ced0844dd0c946b2e05ad1a09b199888fd67ef97",
      "parents": [
        "3590533125d0f352104f2b0c739ee7ffffc89d0b",
        "39ad1b92fa808c5a4f67cc50d72531ad6ad8fdb5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Oct 08 22:03:56 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Oct 08 22:03:56 2016 +0000"
      },
      "message": "Merge \"Rely on the platform -std default.\" am: 66f15cc01b am: 5a989a504a\nam: 39ad1b92fa\n\nChange-Id: Iec4bca8e96c776d61c5da5540a74acc6773c2bce\n"
    },
    {
      "commit": "c08e32e0beb52400e3957f03429b83bbee1832de",
      "tree": "cf13fdbc53e7155db98b0ee36ad8c985fa0a96f1",
      "parents": [
        "f12c6e4f5e0eecef53a75b6f3eb323018ff2ec7c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 07 15:57:17 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 07 15:57:17 2016 -0700"
      },
      "message": "Rely on the platform -std default.\n\nBug: http://b/32019064\nTest: builds\nChange-Id: I7180f1eb539ff8cbe33832d010775f053a922946\n"
    },
    {
      "commit": "f9b5c2fadc2f621a4b36214d9ac08a638399d196",
      "tree": "a811829d97a3c1927c173cc915abd04d7d2c1e2d",
      "parents": [
        "1e0094eb17e3941fcc535a736b627863f1a775ab",
        "edba94106473b8d7b3aa8a4805d2e45497084755"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Oct 05 03:48:17 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 05 03:48:20 2016 +0000"
      },
      "message": "Merge \"AAPT2: Ensure PNG endianness in 9-patch serialization\""
    },
    {
      "commit": "edba94106473b8d7b3aa8a4805d2e45497084755",
      "tree": "4d7dac70d4531859acde8f65931862903544265f",
      "parents": [
        "1b219d06e397880e65b7af25a000954a3a39567a"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Oct 04 17:33:04 2016 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Oct 04 17:50:19 2016 -0700"
      },
      "message": "AAPT2: Ensure PNG endianness in 9-patch serialization\n\n9-patch serialization requires PNG endianness\n\nBug:31942900\nTest: manual + added serialization test to libaapt2_tests\nChange-Id: Iea521718f88e80d3fa7a8723a47584973738748a\n"
    }
  ],
  "next": "a77685fa59a327b33e7acbcefe35e63243014cbd"
}
