)]}'
{
  "log": [
    {
      "commit": "80c65f431497cfc9f41e863f53abd224d6e02299",
      "tree": "f4169815c67111b01ade68443a23aea018154e42",
      "parents": [
        "86e5237687489b740921942e98d4e9bdf5354d0c",
        "8d3cf3253f4adcb854ee478c662126e9110f1b43"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Mon Aug 06 22:32:23 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Aug 06 22:32:23 2018 -0700"
      },
      "message": "Merge changes from topic \"offlinesdk-docs\" am: 003f49cf0c am: 7e1e76a6dc am: bd2aeeea3b\nam: 8d3cf3253f\n\nChange-Id: I8b72e1fa8dce81f65366136fb807879a9894a7af\n"
    },
    {
      "commit": "77cb283f93c095ca62c202087f72b4177ff2c550",
      "tree": "90f0f487f549c138a3ba49d80038bd4dd0976a19",
      "parents": [
        "577fa0555e7897c8f0340e3f7acb5362b1896c5e",
        "c8ae454bfdebf7a9a0bc0ce07a20ac9cd053618d"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Aug 06 21:33:10 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Aug 06 21:33:10 2018 -0700"
      },
      "message": "Merge branch \u0027mirror-aosp-master\u0027 of sso://googleplex-android/platform/frameworks/base into stage-aosp-master am: d18450d240 am: 86983ac0a8\nam: c8ae454bfd\n\nChange-Id: I6318c7081069dc2df41420a00d2378078d86a463\n"
    },
    {
      "commit": "bd2aeeea3beb6d40c76d8cf8f6c6646270c2d867",
      "tree": "1ef4b9fbb2d96fd55f1f6121bf41186caaa4e824",
      "parents": [
        "cb3473ce51a112c42d6996fe50ddd3a6fd96f37a",
        "7e1e76a6dc088458b159c4c89c54b78d32d7d310"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Mon Aug 06 19:09:21 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Aug 06 19:09:21 2018 -0700"
      },
      "message": "Merge changes from topic \"offlinesdk-docs\" am: 003f49cf0c\nam: 7e1e76a6dc\n\nChange-Id: I43a6d15e11e8ff4d79ceea3d6530c2899ec849ed\n"
    },
    {
      "commit": "7e1e76a6dc088458b159c4c89c54b78d32d7d310",
      "tree": "58ec7c6fe4bc8c67a79440d4698218c16f430dc3",
      "parents": [
        "361efeed1b319c7e8bac08fe10520eb0d443e6b5",
        "003f49cf0c8bda89663794ecb95881b3bd0565e3"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Mon Aug 06 18:54:35 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Aug 06 18:54:35 2018 -0700"
      },
      "message": "Merge changes from topic \"offlinesdk-docs\"\nam: 003f49cf0c\n\nChange-Id: Ie2869c671faab24bfc4f426261e4d079d0f3b5de\n"
    },
    {
      "commit": "d9cb1b429ae54c54c8d1b06749d34be4ce12f25d",
      "tree": "fe1f882c2196582981a78d81f59e4516916c6f6d",
      "parents": [
        "61f6dc4c240b710a9695fa505010f6eeb2472b8b",
        "f8e12c51d49691549efedd32e7adcc58b228826b"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Mon Aug 06 18:30:35 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Aug 06 18:30:35 2018 -0700"
      },
      "message": "Merge \"Depend on a module instead of real dir for metalava_merge_annotations_dirs\"\nam: f8e12c51d4\n\nChange-Id: Ice53109de35716bbdee921d595f015f16f559b3f\n"
    },
    {
      "commit": "86983ac0a832a46b3a623c69cdb3c91c0b016b90",
      "tree": "095baa4c1d0d0cd1880bc324905433dea0cfe7aa",
      "parents": [
        "b80a1c469c4fd7c2219381b6e117485a82ed587b",
        "d18450d240f321157fdb013d97669a96c781b6c7"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Aug 06 18:11:13 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Aug 06 18:11:13 2018 -0700"
      },
      "message": "Merge branch \u0027mirror-aosp-master\u0027 of sso://googleplex-android/platform/frameworks/base into stage-aosp-master\nam: d18450d240\n\nChange-Id: I61802a7c65b27283f34576a561ba9724ad4e11ed\n"
    },
    {
      "commit": "d18450d240f321157fdb013d97669a96c781b6c7",
      "tree": "fe1f882c2196582981a78d81f59e4516916c6f6d",
      "parents": [
        "61f6dc4c240b710a9695fa505010f6eeb2472b8b",
        "f8e12c51d49691549efedd32e7adcc58b228826b"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Aug 06 17:56:04 2018 -0700"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Aug 06 17:56:04 2018 -0700"
      },
      "message": "Merge branch \u0027mirror-aosp-master\u0027 of sso://googleplex-android/platform/frameworks/base into stage-aosp-master\n"
    },
    {
      "commit": "003f49cf0c8bda89663794ecb95881b3bd0565e3",
      "tree": "546adba3167f21e440bded74ede5ae66f03466dc",
      "parents": [
        "f8e12c51d49691549efedd32e7adcc58b228826b",
        "dbc253143b4d7fcc12810714e2fc1d78739d424c"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Tue Aug 07 00:05:27 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Aug 07 00:05:27 2018 +0000"
      },
      "message": "Merge changes from topic \"offlinesdk-docs\"\n\n* changes:\n  Add more libs for framework docs generation\n  Add offline/online-sdk-docs in Soong.\n"
    },
    {
      "commit": "dbc253143b4d7fcc12810714e2fc1d78739d424c",
      "tree": "635c20aa56ff40bdf82975f708a3b69cc142322b",
      "parents": [
        "c3ce78d660dcec54962e5093ccbb81fcee5c4be7"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Thu Aug 02 16:29:43 2018 -0700"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Thu Aug 02 16:29:43 2018 -0700"
      },
      "message": "Add more libs for framework docs generation\n\nThese two libs are not in the default libs which caused droiddoc report\nlots of \"package not found warning\" when generating offline/online docs.\n\nTest: m -j ds-static-docs\nBug: b/70351683\nChange-Id: Ibb1f5e1817895abb1b711dc537493bd93c77077b\n"
    },
    {
      "commit": "c3ce78d660dcec54962e5093ccbb81fcee5c4be7",
      "tree": "65aaf9cf73d2418db8c99fb104f5d91d9a4455e0",
      "parents": [
        "c02b2ec3f179820c31c470d89b919ce721513472"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jul 11 15:19:22 2018 -0700"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Thu Aug 02 12:16:45 2018 -0700"
      },
      "message": "Add offline/online-sdk-docs in Soong.\n\nSince support libraries have been migrated to Soong, these docs modules\ncurrently are ready to be supported in Soong.\n\nBug: b/70351683\nTest: m -j offline-sdk-docs\nChange-Id: I8739d94909c7cc830c30fa3d1047d26761cc5076\nMerged-In: I8739d94909c7cc830c30fa3d1047d26761cc5076\n"
    },
    {
      "commit": "e379f408933b2945285b36f3d6baede8b11f92b8",
      "tree": "709c74e095b92b8a64841cbcb809a503dfc84cdc",
      "parents": [
        "c14a4be7998b18ce7caea2b63ef30ca09868d1f7"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Aug 01 15:07:38 2018 -0700"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Aug 01 22:19:48 2018 +0000"
      },
      "message": "Depend on a module instead of real dir for metalava_merge_annotations_dirs\n\nBug: b/111916275\nTest: touch manual/android/support/design/widget/annotations.xml, and m\n-j metalava-api-stubs-docs, and check the built output srcjar.\n\nChange-Id: I82e8b51d66f97ebc3f9f4f5aa75ce33066c95089\n"
    },
    {
      "commit": "f3b8c6fe3aa1d8e8c54b42b2351838f5733a7f96",
      "tree": "0b7ff1559fd6d0ac1769a14f78a949a66447bcbf",
      "parents": [
        "fc0bcae4ef9d415544c77dd6669452e5b2fb419b",
        "2d87f453d94b1bc065a42217eecaa84ca8c9a14c"
      ],
      "author": {
        "name": "Bernardo Rufino",
        "email": "brufino@google.com",
        "time": "Wed Aug 01 17:56:27 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 01 17:56:27 2018 +0000"
      },
      "message": "Merge \"[KV] State machine to linear task w/ RemoteCall\""
    },
    {
      "commit": "06a97144fb5cc30428c7350bb61e87b0633bbfa6",
      "tree": "de950d8abab338068617fe95fe2e3dcd843c7b17",
      "parents": [
        "3b71cfc0df099879b2fce4d828b485e87a04aa35",
        "2a924543f6661a639a2747f6073a9baa2ffc443f"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Tue Jul 31 15:39:55 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 31 15:39:55 2018 -0700"
      },
      "message": "Merge \"Add offline/online-sdk-docs in Soong.\" into stage-aosp-master\nam: 2a924543f6\n\nChange-Id: I4572932dfa398a771a2f4a7c84ecfd2e577a7a19\n"
    },
    {
      "commit": "2a924543f6661a639a2747f6073a9baa2ffc443f",
      "tree": "93f9798a4f83b3ce23004007b272c31d0c1f2223",
      "parents": [
        "6928e50c267e3a3ab6633ad207bb71e57e02efb8",
        "e9a76f731702e62ce451a3589779e76d30add20d"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Tue Jul 31 22:14:41 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 31 22:14:41 2018 +0000"
      },
      "message": "Merge \"Add offline/online-sdk-docs in Soong.\" into stage-aosp-master"
    },
    {
      "commit": "6928e50c267e3a3ab6633ad207bb71e57e02efb8",
      "tree": "491f08acc0c6beb25be48b974c5d5cbdde0cb390",
      "parents": [
        "8b894a7d50b58f3d2eaf41f104ca02d50d27a04c",
        "37b0763a7019304ddb31f4f34a5ff50d13220469"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 30 20:30:35 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 30 20:30:35 2018 +0000"
      },
      "message": "Merge \"Frameworks: convert platformprotos to soong\" into stage-aosp-master"
    },
    {
      "commit": "2d87f453d94b1bc065a42217eecaa84ca8c9a14c",
      "tree": "c65fb4de901d26f9285d3e2e2ac4fa33c3bccfcd",
      "parents": [
        "9a64ba2602677e1ec3e0edc94e754d393983362e"
      ],
      "author": {
        "name": "Bernardo Rufino",
        "email": "brufino@google.com",
        "time": "Fri Jun 22 11:47:49 2018 +0100"
      },
      "committer": {
        "name": "Bernardo Rufino",
        "email": "brufino@google.com",
        "time": "Mon Jul 30 17:04:02 2018 +0100"
      },
      "message": "[KV] State machine to linear task w/ RemoteCall\n\nThis is the first CL of key-value backup refactor.\n\n* Method execute() that executed the state machine states is now empty\n  and run() is created with the initial version of the linear task. It\u0027s\n  basically composed of begin + loop + end. Although it still has the notion\n  of state, it\u0027s more restricted than before (with private methods returning\n  the next state). This is intentional to avoid making this CL too heavy to\n  review and to avoid too much behavioral changes here. In the next CLs I\n  intend to remove BackupState.\n\n* Introduction of RemoteCall, which encapsulates an outbound call that\n  leaves the system_server, with time-out and cancellation built-in.\n  Agent calls are now triggered using this. As a result there is no more\n  operationComplete() method either.\n\n* Cancellation now is cleaner. We don\u0027t need a step lock anymore, only a\n  (volatile) boolean that is checked in every queue iteration. If asked\n  to cancel during an ongoing agent call we rely on RemoteCall.cancel()\n  to return control of the task thread to us. We wait for the cancel\n  acknowledgement to preserve the contract of no more transport calls.\n\n* PFTBT instantiation moved from the constructor to the run() method,\n  which makes more sense.\n\n* No need for mFinished, mBackupData \u003d\u003d null bookkeeping since time-outs,\n  cancellation and legitimate agent responses won\u0027t step into one another\n  anymore.\n\n* Ternary (mQueue.isEmpty) ? BackupState.FINAL : BackupState.RUNNING_QUEUE gone\n  because we check this in the beginning of invokeNextAgent() and now we\n  don\u0027t pay the state-machine tick price associated with the handler.\n\n* PerformBackupTask call sites now call static method start(), that\n  spins up a new dedicated thread for the task. This new thread is\n  assigned the same (process) priority as the backup thread\n  (THREAD_PRIORITY_BACKGROUND).\n\nWork left for future CLs:\n\n* RemoteCall spins up a new thread for kicking off the call, this is for\n  system agents that are executed inline. Old PBT also executed in the same\n  thread (backup handler thread), so maintaining this to keep this CL at\n  a reasonable size.\n\nTest: atest PerformBackupTaskTest\nTest: atest RunFrameworksServicesRoboTests\nTest: atest frameworks/base/services/tests/servicestests/src/com/android/server/backup\nTest: atest CtsBackupTestCases\nTest: atest CtsBackupHostTestCases\nTest: atest GtsBackupTestCases\nTest: atest GtsBackupHostTestCases\nTest: adb shell bmgr backupnow \u003ckv_packages\u003e\nTest: 1. adb shell bmgr backup \u003cp1\u003e \u003cp2\u003e\n      2. adb shell bmgr run\n      A) 3. Cancel while sending \u003cp1\u003e data to transport\n         4. Verify \u003cp1\u003e is backed-up and not pending\n\t    Verify \u003cp2\u003e is not backed-up and is pending\n      B) 3. Cancel while waiting for \u003cp1\u003e agent\n         4. Verify \u003cp1\u003e is not backed-up and is pending\n\t    Verify \u003cp2\u003e is not backed-up and is pending\n\nChange-Id: Ia456c4e807de95d662c9e923245be07e8996f58a\n"
    },
    {
      "commit": "2866912853d5ed1750c28e200c4b3f12bfcb1c90",
      "tree": "a454eaa4e42b5c46f34ea82e21568a3219d8b797",
      "parents": [
        "352a72ca0961c2746fd683e0daebb38ab3f2f19e",
        "80fb13753b792f035c958a3514fda650cdc10d51"
      ],
      "author": {
        "name": "Roshan Pius",
        "email": "rpius@google.com",
        "time": "Fri Jul 27 18:24:48 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 27 18:24:48 2018 +0000"
      },
      "message": "Merge \"WifiManager: Add callback for traffic poller\""
    },
    {
      "commit": "0b015de77e40f9dc55d7add73089e4251fb43f82",
      "tree": "405c37ab84b6276ac7da422d7f8f2058ab9032ee",
      "parents": [
        "2180448421174d45e5218434de6294b2517903ff",
        "db994e2827c466fbc72bf171f14078d5205be72d"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Thu Jul 26 14:33:25 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 26 14:33:25 2018 -0700"
      },
      "message": "Merge \"Revert \"Revert \"Add offline/online-sdk-docs in Soong.\"\"\" into pi-dev-plus-aosp\nam: db994e2827\n\nChange-Id: I4b7532dd1fa59a2ab46070255f4dad46b81d8b33\n"
    },
    {
      "commit": "db994e2827c466fbc72bf171f14078d5205be72d",
      "tree": "def7e4a6a0799d23ea24cfa9ee7a1ac560ecf308",
      "parents": [
        "127ac77c3262f74dc2baf92855397b97a3363b56",
        "3e15ba88ec5a3a412d5714fea3549de14052bd27"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jul 26 20:01:47 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 26 20:01:47 2018 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Add offline/online-sdk-docs in Soong.\"\"\" into pi-dev-plus-aosp"
    },
    {
      "commit": "3e15ba88ec5a3a412d5714fea3549de14052bd27",
      "tree": "4a42f0d90bfb1bcc3c96a63f1f6530d8600dbeef",
      "parents": [
        "3c47f131d342fd0d3cfb0104610300f97d3cbfbd"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Thu Jul 26 18:41:12 2018 +0000"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Thu Jul 26 19:10:03 2018 +0000"
      },
      "message": "Revert \"Revert \"Add offline/online-sdk-docs in Soong.\"\"\n\nThis reverts commit 3c47f131d342fd0d3cfb0104610300f97d3cbfbd.\n\nReason for revert:\nAdd offline/online-sdk-docs in Soong, attempt 2.\n\nThis is the second attempt to merge this CL topic.\nThe first attempt failed because \u003csdk.atree failed to find docs/*.txt files\u003e.\nThis CL fixes this by \u003cgo/ag/4636078, go/ag/4636072\u003e\n\nTest: m -j out/target/common/docs/offline-sdk-timestamp\nBug: b/70351683\nChange-Id: I338abfcfd3a15ce54436732f0d70c693a7e063c5\n"
    },
    {
      "commit": "403b113f0a0d81ff2ccfa6545cfeefd677458941",
      "tree": "50926349cd2bf7ea199d78b29953a512e73ec637",
      "parents": [
        "356b4a40d0e6864c9b75174463262fa10b36a597",
        "127ac77c3262f74dc2baf92855397b97a3363b56"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Thu Jul 26 07:54:45 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 26 07:54:45 2018 -0700"
      },
      "message": "Merge \"Enable generating Binder#getTransactionName method.\" am: 3134def524 am: d9a8e834dd am: 8ffca7e22a\nam: 127ac77c32\n\nChange-Id: I16cdfe3102d46223f92544fe6325298bff3e6224\n"
    },
    {
      "commit": "8ffca7e22af54060dc0dd31069880dd8aeda1fc7",
      "tree": "9bf9df8f1c37875f09bb5aa06af0d722df54852c",
      "parents": [
        "9e95f67b19ed6b55c488993495aa62e5b61fd919",
        "d9a8e834dd231333954d857952d918098012c6a0"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Thu Jul 26 07:31:35 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 26 07:31:35 2018 -0700"
      },
      "message": "Merge \"Enable generating Binder#getTransactionName method.\" am: 3134def524\nam: d9a8e834dd\n\nChange-Id: I5e36a3db8bcf94aaac1376a9ca9bf5032e25eec2\n"
    },
    {
      "commit": "d9a8e834dd231333954d857952d918098012c6a0",
      "tree": "9834ef3c1e86157bd7dcdaea8461cdcb243ca8f1",
      "parents": [
        "b70a2305848bbbaec147073f86eb2eebce1c4ead",
        "3134def524b99fb24f9ac52f0ba923e105a836dc"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Thu Jul 26 07:20:50 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 26 07:20:50 2018 -0700"
      },
      "message": "Merge \"Enable generating Binder#getTransactionName method.\"\nam: 3134def524\n\nChange-Id: I5dcdceb1d1e4525576ac21a2bba964dfb6bb0006\n"
    },
    {
      "commit": "b0ea4213514be12794843a75498825a52faba157",
      "tree": "327d448db0a5a84d0b4a7f6c7d36aaf9c4302503",
      "parents": [
        "716c04b29a0bd117aab33d8b81621a3fff0af7a7"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Thu Jul 26 11:52:37 2018 +0100"
      },
      "committer": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Thu Jul 26 11:58:42 2018 +0100"
      },
      "message": "Enable generating Binder#getTransactionName method.\n\nTest: manual\nBug: 111791983\nChange-Id: I68090e6fa5a7876b1e878d0b97807856e3053b36\n"
    },
    {
      "commit": "2d1e4340805c5f7782319572d7629437fd7c3b2e",
      "tree": "6d14e73423c19220022df986812de758242efb85",
      "parents": [
        "590c716f8c158db98a8b958c09c7f9793143d34b",
        "43aaf50aab9d1b943d1cbf3c5a22fc25c8190fa6"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jul 25 21:11:47 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 21:11:47 2018 -0700"
      },
      "message": "Merge \"Revert \"Add offline/online-sdk-docs in Soong.\"\" into pi-dev-plus-aosp\nam: 43aaf50aab\n\nChange-Id: I948aee57a0551e455826f2e58922c8ec6f8e18c4\n"
    },
    {
      "commit": "43aaf50aab9d1b943d1cbf3c5a22fc25c8190fa6",
      "tree": "b2a6a11a99c06c450d7ed4a3d0f3a700d38d9172",
      "parents": [
        "f3a585475e8d7a13d984d789a9f51d4c3449e3eb",
        "3c47f131d342fd0d3cfb0104610300f97d3cbfbd"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Thu Jul 26 03:59:08 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 26 03:59:08 2018 +0000"
      },
      "message": "Merge \"Revert \"Add offline/online-sdk-docs in Soong.\"\" into pi-dev-plus-aosp"
    },
    {
      "commit": "590c716f8c158db98a8b958c09c7f9793143d34b",
      "tree": "ce912800be46dd31909d078e3ba1829586893f9d",
      "parents": [
        "a1fa888d3ea98bbc9b4c9b96a49c05917940da59",
        "6d50dcc8afb3b32d0c1c6f4ebf930faa3354ac78"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Thu Jul 26 03:56:08 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 26 03:56:08 2018 +0000"
      },
      "message": "Merge \"Moved URI grants code out of ActivityManagerService to its own service (13/n)\""
    },
    {
      "commit": "3c47f131d342fd0d3cfb0104610300f97d3cbfbd",
      "tree": "cd4d0c625cbb0c4d4dc0bd2dcec3d96119eb0325",
      "parents": [
        "2d81effc15a31d639dc04a7a6d071ed8e74f9423"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Thu Jul 26 02:16:31 2018 +0000"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Thu Jul 26 02:18:25 2018 +0000"
      },
      "message": "Revert \"Add offline/online-sdk-docs in Soong.\"\n\nThis reverts commit 2d81effc15a31d639dc04a7a6d071ed8e74f9423.\n\nReason for revert: \u003cbroke the sdk target\u003e\n\nChange-Id: I3b7c7f291723789a9bd232b133af9737df6e7967\n"
    },
    {
      "commit": "e9a76f731702e62ce451a3589779e76d30add20d",
      "tree": "68f483e181a44528926651f44f0cfc0d60ce3a22",
      "parents": [
        "37b0763a7019304ddb31f4f34a5ff50d13220469"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jul 11 15:19:22 2018 -0700"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jul 25 17:42:36 2018 -0700"
      },
      "message": "Add offline/online-sdk-docs in Soong.\n\nSince support libraries have been migrated to Soong, these docs modules\ncurrently are ready to be supported in Soong.\n\nBug: b/70351683\nTest: m -j offline-sdk-docs\nChange-Id: I8739d94909c7cc830c30fa3d1047d26761cc5076\nMerged-In: I8739d94909c7cc830c30fa3d1047d26761cc5076\n"
    },
    {
      "commit": "37b0763a7019304ddb31f4f34a5ff50d13220469",
      "tree": "29a78ba4ebdcc50f037231be0779deb129a87fd9",
      "parents": [
        "6722abdede258f834fa4bb56ff17141fb9ba7a9b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu May 17 10:49:26 2018 -0700"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jul 25 17:35:35 2018 -0700"
      },
      "message": "Frameworks: convert platformprotos to soong\n\n(cherry picked from commit af27bf6662efb8bb9fb7943b0fdbac530b0cbc99)\n\nBug: 64328974\nTest: m\nMerged-In: I3729a3132c1ef07dded69801373edf51006fa623\nChange-Id: I3729a3132c1ef07dded69801373edf51006fa623\n"
    },
    {
      "commit": "87fb33d4042a86aeb870e18f877b4e0b4d502579",
      "tree": "fcc1126ac4cdd5b2f4005673ff6cf9178f5c52c9",
      "parents": [
        "90affed38a09c47e86304477b24e80f5220d1beb",
        "f3a585475e8d7a13d984d789a9f51d4c3449e3eb"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jul 25 17:21:53 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 17:21:53 2018 -0700"
      },
      "message": "Merge \"Add offline/online-sdk-docs in Soong.\" into pi-dev-plus-aosp\nam: f3a585475e\n\nChange-Id: I64475c83600439f656c34aaa521f5050fe7b73fe\n"
    },
    {
      "commit": "f3a585475e8d7a13d984d789a9f51d4c3449e3eb",
      "tree": "a280b5cae41e0eea8a70ae67b6bd37a2948781d1",
      "parents": [
        "877d58985de80333533f95000cebd15e1df24493",
        "2d81effc15a31d639dc04a7a6d071ed8e74f9423"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jul 26 00:06:39 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 26 00:06:39 2018 +0000"
      },
      "message": "Merge \"Add offline/online-sdk-docs in Soong.\" into pi-dev-plus-aosp"
    },
    {
      "commit": "fdf49451a73dea8fccee9f827c634304b7d5dc8f",
      "tree": "c8e9e6238b01c6dcfa75805d37a55c6d192700d7",
      "parents": [
        "bf2f826a6cc70ed7ee7f1e9f0d1da8af5b56f88d",
        "877d58985de80333533f95000cebd15e1df24493"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Wed Jul 25 15:32:22 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 15:32:22 2018 -0700"
      },
      "message": "Merge \"Disable generating Binder#getTransactionName.\" am: 9119e2e49d am: 6722abdede am: 2def56fa8e\nam: 877d58985d\n\nChange-Id: I5e45762a7ef6a59e4bef61ac1394e8fc57d34d73\n"
    },
    {
      "commit": "2def56fa8e233e73ad56b1b45361231ba18112bf",
      "tree": "fe87e75e1cf149b1db97decbd276b2aa97cbfdce",
      "parents": [
        "c2b3e1c7cf11027cbf9565841ca99d48a87766a3",
        "6722abdede258f834fa4bb56ff17141fb9ba7a9b"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Wed Jul 25 15:06:56 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 15:06:56 2018 -0700"
      },
      "message": "Merge \"Disable generating Binder#getTransactionName.\" am: 9119e2e49d\nam: 6722abdede\n\nChange-Id: Ie1016f24f6d3ff6a97b2e827215730d1dc6dec41\n"
    },
    {
      "commit": "2d81effc15a31d639dc04a7a6d071ed8e74f9423",
      "tree": "4a42f0d90bfb1bcc3c96a63f1f6530d8600dbeef",
      "parents": [
        "cae7c2e95338b33eb7ce3d2497c11d4fab26f6a0"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jul 11 15:19:22 2018 -0700"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jul 25 14:32:46 2018 -0700"
      },
      "message": "Add offline/online-sdk-docs in Soong.\n\nSince support libraries have been migrated to Soong, these docs modules\ncurrently are ready to be supported in Soong.\n\nBug: b/70351683\nTest: m -j offline-sdk-docs\nChange-Id: I8739d94909c7cc830c30fa3d1047d26761cc5076\n"
    },
    {
      "commit": "6722abdede258f834fa4bb56ff17141fb9ba7a9b",
      "tree": "26baf9892b1e1ffb461b6e4adcc7f395132e925b",
      "parents": [
        "77cc79264e0416bdd745f284568a8378e1ce1bb1",
        "9119e2e49d82d59a563f848967c499e989888563"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Wed Jul 25 13:36:45 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 13:36:45 2018 -0700"
      },
      "message": "Merge \"Disable generating Binder#getTransactionName.\"\nam: 9119e2e49d\n\nChange-Id: Ic2a31bee9e6768c227dd6de8e2500e9e13f77ecf\n"
    },
    {
      "commit": "cfe95a13dd73092d3ceb85b20ec1ee4e016b60c8",
      "tree": "5d5962acd245b9269bf92fbed02311fe88364122",
      "parents": [
        "99a568088dff4b2503bf1c0f8a1c589aebedfa72",
        "9afc75d604616579d08f6c15ec14725030e86b9e"
      ],
      "author": {
        "name": "Pete Gillin",
        "email": "peteg@google.com",
        "time": "Wed Jul 25 10:51:27 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 10:51:27 2018 -0700"
      },
      "message": "Merge \"Turn droiddoc\u0027s metalava_merge_annotations_dir into a list.\" am: 8c8fb65ad3 am: c2b639218e am: d12b7f790d\nam: 9afc75d604\n\nChange-Id: I749d8e74403a91794526a91c6b538e8ed49113f4\n"
    },
    {
      "commit": "d12b7f790d8742541d126a2eaddca44b3fc4aad2",
      "tree": "bd804b997f51989c6a5fafd3a3484a690726a95c",
      "parents": [
        "d8058375f02f567c7456d6516894797b24752eba",
        "c2b639218ea3ad7b25c0be8751a39122902774aa"
      ],
      "author": {
        "name": "Pete Gillin",
        "email": "peteg@google.com",
        "time": "Wed Jul 25 10:25:28 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 10:25:28 2018 -0700"
      },
      "message": "Merge \"Turn droiddoc\u0027s metalava_merge_annotations_dir into a list.\" am: 8c8fb65ad3\nam: c2b639218e\n\nChange-Id: Iafe5f91b31e00d171ef50360adb3cb90c0128ddf\n"
    },
    {
      "commit": "c2b639218ea3ad7b25c0be8751a39122902774aa",
      "tree": "b7e280dae2469d3d178cbafa7250df4f1059f18b",
      "parents": [
        "7393f85a6ef52d0f1bfa62652f499f633800276a",
        "8c8fb65ad322fbdb7f3580797a2caa7147f979c2"
      ],
      "author": {
        "name": "Pete Gillin",
        "email": "peteg@google.com",
        "time": "Wed Jul 25 10:15:02 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 10:15:02 2018 -0700"
      },
      "message": "Merge \"Turn droiddoc\u0027s metalava_merge_annotations_dir into a list.\"\nam: 8c8fb65ad3\n\nChange-Id: I33e614584ec7b445b35872d0b84d5224c6f7c4af\n"
    },
    {
      "commit": "a657aeb185ff56cdec7aca8418db1eacdf91f04f",
      "tree": "875a410232945b1d373e8f9160fec63a086427b8",
      "parents": [
        "8c8fb65ad322fbdb7f3580797a2caa7147f979c2"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Wed Jul 25 17:16:49 2018 +0100"
      },
      "committer": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Wed Jul 25 17:18:07 2018 +0100"
      },
      "message": "Disable generating Binder#getTransactionName.\n\nIt might have introduce a performance regression.\n\nBug: 111791983\nTest: manual\nChange-Id: I459d9e4e4d2d5d0be0531742a7910848702a1384\n"
    },
    {
      "commit": "80fb13753b792f035c958a3514fda650cdc10d51",
      "tree": "0bee599afffde9f7719198baba4873efc4fab17c",
      "parents": [
        "4fdb3bc40cf22f001fbe6fab15bb43a025d8da82"
      ],
      "author": {
        "name": "Roshan Pius",
        "email": "rpius@google.com",
        "time": "Mon Jul 16 15:43:03 2018 -0700"
      },
      "committer": {
        "name": "Roshan Pius",
        "email": "rpius@google.com",
        "time": "Wed Jul 25 14:31:29 2018 +0000"
      },
      "message": "WifiManager: Add callback for traffic poller\n\nThe current mechanism for traffic poller directly exposes the wifi\nservice\u0027s internal message handler to privileged apps. Move away from\nthis mechanism and expose an API to let apps register for callbacks from\ntraffic poller. This API uses binder IPC for registration and\ninvocation of callbacks. Clients are automatically removed on binder\ndeath.\nThis will also let us mark WifiManager#getWifiMessenger() method\nprivate to prevent any apps from getting access to this internal messenger.\n\nNote: This is based on the existing SoftapCallback registration\nmechanism.\n\nAlso, fixed a bunch of checkstyle errors that were not caught\npreviously.\n\nBug: 27074039\nTest: Unit tests\nTest: Verified the data indicators on Sysui\nChange-Id: I505bd2398552be99ccca7b7d3c31a488aa72af70\n"
    },
    {
      "commit": "d6eece37abc60f1438e7a8247e0c89acd449dfdd",
      "tree": "dd676da6096e7a313a365f6aaae5b27e981e099f",
      "parents": [
        "6c32f5d18e1af7d4e2cd231577636d5dd9277719"
      ],
      "author": {
        "name": "Pete Gillin",
        "email": "peteg@google.com",
        "time": "Thu Jul 19 18:08:06 2018 +0100"
      },
      "committer": {
        "name": "Pete Gillin",
        "email": "peteg@google.com",
        "time": "Wed Jul 25 11:43:42 2018 +0100"
      },
      "message": "Turn droiddoc\u0027s metalava_merge_annotations_dir into a list.\n\nThis change replaces droiddoc\u0027s metalava_merge_annotations_dir\nparameter (which takes a single value) with\nmetalava_merge_annotations_dirs (which takes a list). This will makes\nit possible to merge libcore annotations in from a separate directory\nunder ojluni, instead of adding them in a preprocessing step.\n\nTest: `make metalava-api-stubs-docs` with a local change to add a second directory\nBug: 111639530\nChange-Id: I8eb778038c1cb52ddb6fc86d972f555f49e836b2\n"
    },
    {
      "commit": "6d50dcc8afb3b32d0c1c6f4ebf930faa3354ac78",
      "tree": "148547b798147d66267fdbb4addde0d99fa7f036",
      "parents": [
        "4ec6b12578832c30499073e677755327a08609c6"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Sat Jul 21 23:00:40 2018 -0700"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Mon Jul 23 16:37:46 2018 -0700"
      },
      "message": "Moved URI grants code out of ActivityManagerService to its own service (13/n)\n\nAllows for other services like window manager to call uri grants without\nholding AM service lock.\n\nBug: 80414790\nTest: Existing tests pass.\nChange-Id: Ie5b4ddb19a2cedff09332dbeb56bcd9292fd18ac\n"
    },
    {
      "commit": "242bf1177fc8d71f8e002940d099b61cbca48de1",
      "tree": "f34f0be3d9bcbd9f6da9f7f400a6551cb1484f32",
      "parents": [
        "a384cf613f6e56e57eafaddd627c2893e5577a26",
        "ea8970cd55fa561dbad9579925fee4db469a539b"
      ],
      "author": {
        "name": "Shuo Qian",
        "email": "shuoq@google.com",
        "time": "Mon Jul 23 20:57:41 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 23 20:57:41 2018 +0000"
      },
      "message": "Merge \"Call Redirection Surface in Telecom out going call flow\""
    },
    {
      "commit": "af49e929a9abf08198d44f527c1be94f5e915bd8",
      "tree": "2c8fec72431f6412bf9693f987a7f498e52d6b6f",
      "parents": [
        "69a30f6813de176c93616af249032ee594735444",
        "515450272d48e765684e338a2f73f50bb00f8d17"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Mon Jul 23 05:38:52 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 23 05:38:52 2018 -0700"
      },
      "message": "Merge \"Enable the generate transaction name for system server.\" am: 3e3a6e4760 am: c142f686c5 am: 5f04880926\nam: 515450272d\n\nChange-Id: I3e41fcc399e609aec59f4299a1f0231f5f376df2\n"
    },
    {
      "commit": "5f04880926c519b70990a7399660585c1f7c4c35",
      "tree": "1490340bd741484dd3e922b5c29811fe04884699",
      "parents": [
        "f28713990b89e1749bf475d7867649e985842158",
        "c142f686c5e221f7946062fb2b0cea9360260e4f"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Mon Jul 23 05:16:08 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 23 05:16:08 2018 -0700"
      },
      "message": "Merge \"Enable the generate transaction name for system server.\" am: 3e3a6e4760\nam: c142f686c5\n\nChange-Id: I15fd84d2456eebe8d49cc6c0cf8739ebdd82f7d1\n"
    },
    {
      "commit": "c142f686c5e221f7946062fb2b0cea9360260e4f",
      "tree": "0ac8d544fdf7e1054bfae106dc963ad071a821fb",
      "parents": [
        "1fad55e8681f976683ec2f5e54202fcce9f650b4",
        "3e3a6e4760e3e8f3b7ff30aac4aa1a64c13d52dc"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Mon Jul 23 05:07:33 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 23 05:07:33 2018 -0700"
      },
      "message": "Merge \"Enable the generate transaction name for system server.\"\nam: 3e3a6e4760\n\nChange-Id: I0d54112c689aeaf83c4bc108af0a303e2850e85a\n"
    },
    {
      "commit": "b19219207caa935655ff00a776a682ca6794bdbe",
      "tree": "5739c9d773982da0e6798d457a88f0c091d73028",
      "parents": [
        "bb352287c9f3631633274d2d70fc54b9b3eee851"
      ],
      "author": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Tue Jul 17 11:25:11 2018 +0100"
      },
      "committer": {
        "name": "Olivier Gaillard",
        "email": "gaillard@google.com",
        "time": "Mon Jul 23 10:15:54 2018 +0000"
      },
      "message": "Enable the generate transaction name for system server.\n\nSize of vdex,art,oat files (flag off -\u003e on)\n- framework/boot*.vdex: +10K  (3.589M -\u003e 3.599M)\n- framework/arm64/boot*.{art,oat}: +20K  (4.378M -\u003e 4.398M)\n\nTest: manual\nChange-Id: I4938ca5459004494a50ec81db9ef9e0f0e6e7a60\n"
    },
    {
      "commit": "d8fe7f57967a550822b7a9ec58f4b3351a9ff642",
      "tree": "c930c94a6f7854ece4e644bc767bc12e8052613d",
      "parents": [
        "121551621e8b17aa847db3f9a8989f9c142c1fd4",
        "b9fa97dff7490055f37fff5c9a4ce06baae81a40"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Jul 18 10:38:42 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 18 10:38:42 2018 -0700"
      },
      "message": "Merge \"IBatteryPropertiesRegistrar: remove unused functions\" into stage-aosp-master\nam: b9fa97dff7\n\nChange-Id: I55e25e25612cbb11cec025ba21b6577d635f1df9\n"
    },
    {
      "commit": "58faaa09dadaf52f940cbf3f6d5269c6616ab455",
      "tree": "073d6704aee1484ea04cf75821a5bfba2c0485f8",
      "parents": [
        "4bff76be8058a0c2948836b4fd01b35bb57e9f86"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri May 04 13:48:31 2018 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Jul 17 15:35:49 2018 -0700"
      },
      "message": "IBatteryPropertiesRegistrar: remove unused functions\n\n* Remove BatteryProperties\n* Remove IBatteryPropertiesListener\n* Remove IBatteryPropertiesRegistrar.(un)registerListener\n  functions\n\nTest: builds\nTest: boots\nBug: 68724651\nChange-Id: Ic9a9d337e5cb39784db1a2745297ef985dd31653\nMerged-In: Ic9a9d337e5cb39784db1a2745297ef985dd31653\n(cherry picked from commit dd0e942597b51e517eb65d9ea80595d46a3e89df)\n"
    },
    {
      "commit": "6a95233f8bc90a1fb271ef0f11327a4d51dec1af",
      "tree": "a5fce2d830c2ec71a039c08d91468702c65c1e01",
      "parents": [
        "7ddaac6000c5819179727b8e9e461fd767dd5e52",
        "3efb177ca6ac96720cf2cf55ac257683800a566e"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Jul 17 04:03:07 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 17 04:03:07 2018 -0700"
      },
      "message": "Merge changes If285d71a,Iffe5be7c am: f37950d8c3 am: c9b5e65747\nam: 3efb177ca6\n\nChange-Id: If7f397e4be6ace357f7a563b4546a9a7694fce65\n"
    },
    {
      "commit": "3efb177ca6ac96720cf2cf55ac257683800a566e",
      "tree": "c00e6f19ad315219b8c64dbfd0f8f15c8a69ff08",
      "parents": [
        "548c2c0710d402398a41b4cd48dfa8d7c29c7f4a",
        "c9b5e657473f6643ecc80586f36740cd503e50f3"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Jul 17 03:53:35 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 17 03:53:35 2018 -0700"
      },
      "message": "Merge changes If285d71a,Iffe5be7c am: f37950d8c3\nam: c9b5e65747\n\nChange-Id: I047358920ecc478de076c32384390ba856bd8c99\n"
    },
    {
      "commit": "c9b5e657473f6643ecc80586f36740cd503e50f3",
      "tree": "bc874507bbc85696a80ea26c24f7c2117382a8e2",
      "parents": [
        "dd540c644fc87123cc66bd98212be203d15b3adb",
        "f37950d8c338968a88c39bb0efab55bc8d487191"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Tue Jul 17 03:43:13 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 17 03:43:13 2018 -0700"
      },
      "message": "Merge changes If285d71a,Iffe5be7c\nam: f37950d8c3\n\nChange-Id: I667c07fa75e0cc5badad3f297fc14316a2acfc42\n"
    },
    {
      "commit": "ea8970cd55fa561dbad9579925fee4db469a539b",
      "tree": "7d573f9f38e02c3cd5734c7f46675ecb4181ada8",
      "parents": [
        "8726b3b84c9ef9d0961d7b594da0aec6bb5a0da9"
      ],
      "author": {
        "name": "sqian",
        "email": "shuoq@google.com",
        "time": "Wed Jun 06 22:54:04 2018 -0700"
      },
      "committer": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Mon Jul 16 20:34:07 2018 +0000"
      },
      "message": "Call Redirection Surface in Telecom out going call flow\n\n- Provide a Call Redirection API Surface\n- Provide a key \"KEY_CALL_REDIRECTION_SERVICE_COMPONENT_NAME_STRING\"\n  in the CarrierConfigManager\n- Create .aidl interfaces for Call Redirection\n(CallRedirectionService.aidl, CallRedirectionAdapter.aidl)\n\nBug: 64959558\nTest: Compile\nChange-Id: Ic119fa445e66f1275eabf944c77fdc981bc9a2a7\n"
    },
    {
      "commit": "be53388465c9c341e9b52db1adb91f1fde5428c7",
      "tree": "888f0700b436211e6698eea94957586dbe0b9b37",
      "parents": [
        "87fcbc18d2b0410f9fe57c71b7628505d5b6b65e",
        "f367f909bb754b049a7d796bb6dd686fb7dbb5d1"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 10 19:15:42 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 10 19:15:42 2018 -0700"
      },
      "message": "Mark installable jars with installable: true am: d7647c1b66\nam: f367f909bb\n\nChange-Id: Iad200867b7b73b3e9e5e6c0011ef9cea3cccfdde\n"
    },
    {
      "commit": "f367f909bb754b049a7d796bb6dd686fb7dbb5d1",
      "tree": "1922383c913d3794e9c059d1f2b88c1b6ab7d2a2",
      "parents": [
        "2ac4249f8ca9d17a43cff0c7332d55715dc9d458",
        "d7647c1b6685dbf03ff096fd73424163f2468e4e"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 10 18:10:57 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 10 18:10:57 2018 -0700"
      },
      "message": "Mark installable jars with installable: true\nam: d7647c1b66\n\nChange-Id: If2f6daf0457bae822d88a762ef79f0162ded6ebe\n"
    },
    {
      "commit": "d7647c1b6685dbf03ff096fd73424163f2468e4e",
      "tree": "e00f4e422abf544ff38320084bedc8d378130c21",
      "parents": [
        "4500790a81b5179bacecaff799b89b0d0c06f993"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 10 14:24:31 2018 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 10 14:30:07 2018 -0700"
      },
      "message": "Mark installable jars with installable: true\n\nMost jars don\u0027t need to be installed on the device.  Instead of\nusing java_library and java_library_static to distinguish between\nthem make java_library and java_library_static identical and use\ninstallable: true to identify the few jars that need to be dexed\nand installed on the device.\n\nBug: 110885583\nTest: m checkbuild\nChange-Id: I19c0e723285c7088700f50567b9c2140289f9edf\n"
    },
    {
      "commit": "0b5f738f4cb0f25c20244f09a484d4acf16f257f",
      "tree": "ab90b6e96d53681545ba7c713d43642c1bf7736d",
      "parents": [
        "09d6bd8a665da92e182e8aee80779d6ae19dedcd",
        "c47c718a3b8288ff691d3e3865ee81f6724d7a8f"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Tue Jul 10 12:02:21 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 10 12:02:21 2018 -0700"
      },
      "message": "Merge \"Add build rule for API-\u003esource mapping.\" am: b4919259ab am: 4500790a81\nam: c47c718a3b\n\nChange-Id: I7d35a2de0b5fe8c4fe9e4994de910b64c63da2b8\n"
    },
    {
      "commit": "c47c718a3b8288ff691d3e3865ee81f6724d7a8f",
      "tree": "d140432f55e6a0e22243c6ef2d22aedd112f743c",
      "parents": [
        "0da8f4070f6bb1b9e8cd7e3af4e71f365802706a",
        "4500790a81b5179bacecaff799b89b0d0c06f993"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Tue Jul 10 11:51:02 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 10 11:51:02 2018 -0700"
      },
      "message": "Merge \"Add build rule for API-\u003esource mapping.\" am: b4919259ab\nam: 4500790a81\n\nChange-Id: Idc214d73fcf555ac15f865cc9be60909399170f8\n"
    },
    {
      "commit": "4500790a81b5179bacecaff799b89b0d0c06f993",
      "tree": "feefa104138e4329e02ebca92c6138e35b7a9399",
      "parents": [
        "ccee79d9cedca4b0ba0d4179fa945f645006a7e8",
        "b4919259ab3a5caf367ca05798618c6785606182"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Tue Jul 10 11:41:48 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 10 11:41:48 2018 -0700"
      },
      "message": "Merge \"Add build rule for API-\u003esource mapping.\"\nam: b4919259ab\n\nChange-Id: I616da3024e5d310ae6993b4437611cb188c8145a\n"
    },
    {
      "commit": "b4919259ab3a5caf367ca05798618c6785606182",
      "tree": "8ab1f242d09f119e8a47161787414de86925d2ad",
      "parents": [
        "62d5e041a2c219b1ce6aaa8ccbc83e0fa7989ab7",
        "0a6a273013e8185da95646acb1b227a280787f39"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Tue Jul 10 17:12:37 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 10 17:12:37 2018 +0000"
      },
      "message": "Merge \"Add build rule for API-\u003esource mapping.\""
    },
    {
      "commit": "a977a37c85c4ea5fb785310e0ae78d4d0aa58528",
      "tree": "6515bcca981019ce80f6f14d662bd6ffdfd46408",
      "parents": [
        "0ae3baae77a2d690edc43afd9d24bd73ed2e8bfa",
        "c7f9e053eca9a0c2053ea98442a59a1010afa363"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 10 09:45:03 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 10 09:45:03 2018 -0700"
      },
      "message": "Merge \"Mark installable jars with installable: true\" am: 1035f48f61 am: 19609a7993\nam: c7f9e053ec\n\nChange-Id: I5934f14ced4a89fa234d75fde733aae1f102cc7a\n"
    },
    {
      "commit": "c7f9e053eca9a0c2053ea98442a59a1010afa363",
      "tree": "6dd69744a4a845e529046ef57c43e8d7fb0748f3",
      "parents": [
        "89e2a45c2029c56ed1b9aa1bed3fc08cdee7c88a",
        "19609a7993f30794e79f0f828b06c3ff96fdd20f"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 10 09:29:55 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 10 09:29:55 2018 -0700"
      },
      "message": "Merge \"Mark installable jars with installable: true\" am: 1035f48f61\nam: 19609a7993\n\nChange-Id: I4a345d295633892dc97789e9db21f381420e1b5c\n"
    },
    {
      "commit": "19609a7993f30794e79f0f828b06c3ff96fdd20f",
      "tree": "051454c4aca935162bede26e26cb7da6433982ee",
      "parents": [
        "06aa142232b118f4e5c4d7b0889c000164bcb4ea",
        "1035f48f612f259cfa4b6433a5d62cda7355f4ff"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Jul 10 09:12:46 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 10 09:12:46 2018 -0700"
      },
      "message": "Merge \"Mark installable jars with installable: true\"\nam: 1035f48f61\n\nChange-Id: Ia3176e68ddd7cfdb8351b2a0ea95efc9dd94d922\n"
    },
    {
      "commit": "0a6a273013e8185da95646acb1b227a280787f39",
      "tree": "0d519a301f7d5d3bb85534fa523e64295000192e",
      "parents": [
        "079f03f584e24915a296aaa4d8512ca1a7111e09"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Fri Jun 22 15:30:02 2018 +0100"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Tue Jul 10 09:20:42 2018 +0100"
      },
      "message": "Add build rule for API-\u003esource mapping.\n\nThis is used to get source positions of all class members in the boot\nclass path, to automate the addition of annotations. See\ngo/hidden-api-annotations for more context.\n\nMappings printed in:\nout/soong/.intermediates/frameworks/base/hiddenapi-mappings\n    /android_common/dex-mapping.txt\n\nTest: make hiddenapi-mappings\nBug: 110868826\nChange-Id: Ie67a8be6a5a71447a25d081bd466b8b5e01b0725\n"
    },
    {
      "commit": "02bcebede4a94424660c29ed3040c896fe80c407",
      "tree": "8312b58a950f6610f94c7c889a7600ef842b46ef",
      "parents": [
        "4b66a0f8f856e76dadfb6656a0766f7a20c7a938",
        "a56dff7339e3b2cd4d8715021442ef1754658324"
      ],
      "author": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Wed Jun 27 22:09:01 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 27 22:09:01 2018 +0000"
      },
      "message": "Merge \"6/n: Have FaceService extend BiometricService\""
    },
    {
      "commit": "a12c0f506cf509e1220f0095010350181c31c367",
      "tree": "7598f2489c53f952940acf254840648450a4b6f2",
      "parents": [
        "f40f05229c81971720ae16d20a2e629f142f39a7"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jun 27 11:00:11 2018 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Jun 27 11:49:44 2018 -0700"
      },
      "message": "Mark installable jars with installable: true\n\nMost jars don\u0027t need to be installed on the device.  Instead of\nusing java_library and java_library_static to distinguish between\nthem make java_library and java_library_static identical and use\ninstallable: true to identify the few jars that need to be dexed\nand installed on the device.\n\nBug: 110885583\nTest: m checkbuild\nChange-Id: I579da7c1a712ec4fb49e288e7f3ab369cb75baf4\n"
    },
    {
      "commit": "a56dff7339e3b2cd4d8715021442ef1754658324",
      "tree": "149145feca7b4a69205e6da682f9e4e3d49c8bdf",
      "parents": [
        "778ff3c71ba26607fb6194d477891804ce63d46c"
      ],
      "author": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Tue Jun 19 18:41:12 2018 -0700"
      },
      "committer": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Wed Jun 27 11:31:03 2018 -0700"
      },
      "message": "6/n: Have FaceService extend BiometricService\n\nIn the Service layer, this change is pretty much the same as ag/4340638.\nFingerprintService already extends BiometricService which contains all\nof the common code. FaceService now does the same after this change.\n\nUpdated the Manager layer to use the infrastructure added in P, namely\n  - Private APIs for BiometricPrompt\n  - Removed FaceManager#CryptoObject, use biometrics/CryptoObject directly\n  - Few other BiometricAuthenticator things\n\nBug: 110387294\n\nTest: enrolling FP still works\nTest: removing FP still works\nTest: changing FP name persists across reboots\nTest: enumerating still works (extra framework fp, extra hw fp)\nTest: keyguard still receives lockout reset callbacks\n\nChange-Id: I2195b08e28d024a120df56fe87b0dd4f9b96505a\n"
    },
    {
      "commit": "f18981698dc3e4d55bc1e1c6648fe62deb317674",
      "tree": "dfb2fee40e839552fddebdce17c778eaffe9a129",
      "parents": [
        "7f315a5c3c9487d42529c03b52d9ce4a83d775b8",
        "e01a7adf5ac0113edc15699d8e45b376f368be76"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jun 26 04:05:36 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 26 04:05:36 2018 -0700"
      },
      "message": "resolve merge conflicts of 55c0a6682574b881b0ccdf2b08fdc4b6c84d1b81 to stage-aosp-master\nam: e01a7adf5a\n\nChange-Id: I993dc856b8fe0f42d7ad5f766727be32d3d611fe\n"
    },
    {
      "commit": "e01a7adf5ac0113edc15699d8e45b376f368be76",
      "tree": "62067f0c7980783b94a04fcd2af83eae0dab4100",
      "parents": [
        "1239734050b0dbc40d5b06148d2d49fb8fb8e3c8",
        "55c0a6682574b881b0ccdf2b08fdc4b6c84d1b81"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jun 26 11:55:46 2018 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jun 26 11:55:46 2018 +0100"
      },
      "message": "resolve merge conflicts of 55c0a6682574b881b0ccdf2b08fdc4b6c84d1b81 to stage-aosp-master\n\nBUG: None\nTest: I solemnly swear I tested this conflict resolution.\nChange-Id: Ie524607cabc6688911eee7e4f61c50fd406c71f4\n"
    },
    {
      "commit": "4d9f7a8bc34a3944e4b3b4922dfe2be47b46da85",
      "tree": "54180730bfa3e94c65bd2481c011d263cf5eebf6",
      "parents": [
        "67f17cd6903127605cbae91198f52c1c514146ac",
        "7fb88c3928b6fef1f3d559ea23468ccd1379bd49"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Jun 25 18:47:39 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 25 18:47:39 2018 +0000"
      },
      "message": "Merge \"Minimum viable TimeZoneDetectorService\""
    },
    {
      "commit": "abe78cd313875032a3411a79dc9b687098fc1db6",
      "tree": "32d546f69f02ad47aed4c0ad95ed5b794c4aee33",
      "parents": [
        "1d4883110664ebb42c915e636b9721b4c220d4a9",
        "2ffadb38bc76a46c38fd64057ab7afa559a3f9a4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 22 18:44:27 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 22 18:44:27 2018 +0000"
      },
      "message": "Merge changes from topic \"biometrics-face\"\n\n* changes:\n  5/n: Move FaceService to biometrics directory\n  4/n: Add face authentication framework\n"
    },
    {
      "commit": "cb51b8b84730413938b3ab614bb3e16642336351",
      "tree": "819ca43039957ee5ad1af42a5a1fe2ae3e9886ad",
      "parents": [
        "55a5b59a9bd68a8b1164e1938dab3b0ad4fd9488"
      ],
      "author": {
        "name": "Gilad Bretter",
        "email": "gilad.bretter@intel.com",
        "time": "Thu Mar 22 17:04:51 2018 +0200"
      },
      "committer": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Thu Jun 21 17:00:07 2018 -0700"
      },
      "message": "4/n: Add face authentication framework\n\nThis change is cherry-picked and rebased from AOSP\nhttps://android-review.googlesource.com/c/platform/frameworks/base/+/660242\n\nAdd face recognition as an identification method, following fingerprint\ndesign. Unlike fingerprint, only one face template can be enrolled per\nuser, and a vendor message is passed from the HAL all the way to the\nclient callback to allow GUI indication about the enrolled face\ntemplates.\n\nAdd FaceAuthenticationManager and FaceService.\nAdd face authentication capability to TrustManager and Keyguard.\nModify TrustManager and KeyguardUpdateMonitorCallback fingerprint code\nto support generic biometric method to eliminate duplications.\nAdd BiometricSourceType enum to keep track of the specific biometric\nmethod.\n\nTest: biometric authentication still works on the device\n\nFixes: 110385761\n\nChange-Id: I5d04fe69a112c13d3ef7330b9c08c146e36c5335\nSigned-off-by: Gilad Bretter \u003cgilad.bretter@intel.com\u003e\n"
    },
    {
      "commit": "cccc48d0fe07349e1804dd7803db604d37a6d450",
      "tree": "5074de619835716126f01e71c1e5f55dd5559cdd",
      "parents": [
        "3b0eba44994cf35b743a09cba351427a1f700c5f"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jun 19 12:53:47 2018 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Jun 21 09:30:34 2018 +0000"
      },
      "message": "Minimum viable TimeZoneDetectorService\n\nThis is a do-nothing TimeZoneDetectorService that can be\npopulated in following commits. A temporary method has been\nadded so the service has one method.\n\nUnit tests can be run with:\n\natest FrameworksServicesTests:TimeZoneDetectorServiceTest\n\nTest: build / boot\nTest: See above\nMerged-In: I565fb5dd2f18b7aac2e5779d346bfe69e9da02af\nChange-Id: I565fb5dd2f18b7aac2e5779d346bfe69e9da02af\n"
    },
    {
      "commit": "7fb88c3928b6fef1f3d559ea23468ccd1379bd49",
      "tree": "0fcd5fa4ebbbb69f350032b424fe0f179d65735b",
      "parents": [
        "acda839b9e3fa12d0f0b40ffd8ec3708ad0a6038"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jun 19 12:53:47 2018 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Jun 21 10:28:47 2018 +0100"
      },
      "message": "Minimum viable TimeZoneDetectorService\n\nThis is a do-nothing TimeZoneDetectorService that can be\npopulated in following commits. A temporary method has been\nadded so the service has one method.\n\nUnit tests can be run with:\n\natest FrameworksServicesTests:TimeZoneDetectorServiceTest\n\nTest: build / boot\nTest: See above\nChange-Id: I565fb5dd2f18b7aac2e5779d346bfe69e9da02af\n"
    },
    {
      "commit": "381f62878d238f59b9b3bc39204c8141d80c337e",
      "tree": "1c5f8c34128fb6aee86edea975aceb6933f089e1",
      "parents": [
        "475e5357e53a9457685051838ffc594840bc6fea",
        "7c96332354d391b7b4d14e44eee29743ac115592"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Mon Jun 18 12:57:03 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 18 12:57:03 2018 -0700"
      },
      "message": "Merge \"Enabled annotations for Metalava based api-stubs.\" am: 79d3bf6e54 am: 0da95a5d64\nam: 7c96332354\n\nChange-Id: Iea928b33e984049904ca0fdba4923ee06cfd5971\n"
    },
    {
      "commit": "7c96332354d391b7b4d14e44eee29743ac115592",
      "tree": "1df380c1ca65074a5790e16f80133d0f128a6d40",
      "parents": [
        "e7f0de228b725c2e0b4fb3eb79d3a375c0c015e5",
        "0da95a5d64bbb641a6ed7ea5fec4f47e8ad039e7"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Mon Jun 18 12:37:13 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 18 12:37:13 2018 -0700"
      },
      "message": "Merge \"Enabled annotations for Metalava based api-stubs.\" am: 79d3bf6e54\nam: 0da95a5d64\n\nChange-Id: Ie3385442c0bf28a1da52cb2d687ed45921604f80\n"
    },
    {
      "commit": "0da95a5d64bbb641a6ed7ea5fec4f47e8ad039e7",
      "tree": "aeeb5ffd9bbb49ca0045b2757df639fd385787cf",
      "parents": [
        "ea044ca3734342e411cbe0b8bcd4c24b9da19c51",
        "79d3bf6e54b7651f228c7904da99a33655c4d712"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Mon Jun 18 12:13:35 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 18 12:13:35 2018 -0700"
      },
      "message": "Merge \"Enabled annotations for Metalava based api-stubs.\"\nam: 79d3bf6e54\n\nChange-Id: I8b91e2259ce3b15313d5d4b822bf77696a6ebd5b\n"
    },
    {
      "commit": "4b81658d40f8a8351c387632b7c1ed2dbaabee51",
      "tree": "16ec5f5d321f960ce2440e23149dcba024954c25",
      "parents": [
        "5392d799ab9e9a392df24780d3727a9c55664517"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jun 13 17:38:37 2018 -0700"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jun 13 17:42:09 2018 -0700"
      },
      "message": "Enabled annotations for Metalava based api-stubs.\n\nTest: m -j metalava-api-stubs-docs\nBug: b/78245848\nChange-Id: I4ba661900a52f246fc0191c31aabfc96b89fa2db\n"
    },
    {
      "commit": "6006f76ad7e15e360141369fb9deef5a76699261",
      "tree": "cbbb224b553bfab482c4aea256528ccad6955a92",
      "parents": [
        "1211216baee03ad882c7e1d7f3e8e0f3362572c0",
        "65ebd955e1b19a0d3c995e66d1d749bae5dc8575"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 12 18:18:48 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 12 18:18:48 2018 +0000"
      },
      "message": "Merge \"Split interfaces and service for activities from current AM interfaces (1/n)\""
    },
    {
      "commit": "267ef30c8ba063ebd2ad7940a861c1a70d063a9d",
      "tree": "1a1a4370c9f34be205a5be40544ed86bcde85519",
      "parents": [
        "ce2b842a02ad9e4d9e628d19deb956b53d55204a",
        "79d42a61e4c0832d8ec03da24f342de93341225c"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jun 12 06:36:14 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 12 06:36:14 2018 -0700"
      },
      "message": "resolve merge conflicts of 5e1d95b0cc05eb1a6bf25a13223601f2e8f8fccb to stage-aosp-master\nam: 79d42a61e4\n\nChange-Id: I8dcebef6e996dfaec01934552aa0f3d6f8c9053a\n"
    },
    {
      "commit": "79d42a61e4c0832d8ec03da24f342de93341225c",
      "tree": "ec2bcbc1a012ab08c711cd81b40f2d067c8694a9",
      "parents": [
        "b57dfe26cfb1dc5eae20653d6490464d977c07bc",
        "5e1d95b0cc05eb1a6bf25a13223601f2e8f8fccb"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jun 12 14:14:13 2018 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jun 12 14:23:51 2018 +0100"
      },
      "message": "resolve merge conflicts of 5e1d95b0cc05eb1a6bf25a13223601f2e8f8fccb to stage-aosp-master\n\nBUG: None\nTest: I solemnly swear I tested this conflict resolution.\nChange-Id: Ic5527b29cbe8c84d2053be849cf09df5341e4790\n"
    },
    {
      "commit": "02006355eba9ea78b3cb5ddcc1e382b9210a9026",
      "tree": "76db6da066e903f754f0b609dbbfa93b42631775",
      "parents": [
        "744d142c69243d3ff7fde5c2f5894aa27f3c419b",
        "b7a46a7ec5be04fdb92d00226d30818fa396bdf6"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Mon Jun 11 18:57:41 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jun 11 18:57:41 2018 -0700"
      },
      "message": "Merge \"Remove test-* sources for Metalava api-stubs.\" into pi-dev-plus-aosp\nam: b7a46a7ec5\n\nChange-Id: I58b0993effac259938c4f067188bb44ff1fa72cd\n"
    },
    {
      "commit": "b7a46a7ec5be04fdb92d00226d30818fa396bdf6",
      "tree": "b82b24438f72c435859e1a249967e132189edb84",
      "parents": [
        "04bdc5de638c6fd976d5afca0f380552ceda22c0",
        "5b9aa02afdba68bffc780c5c6d399c6609610750"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 11 22:10:59 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 11 22:10:59 2018 +0000"
      },
      "message": "Merge \"Remove test-* sources for Metalava api-stubs.\" into pi-dev-plus-aosp"
    },
    {
      "commit": "ccccaf99f64005d159a6e143b0acfb35b22bb158",
      "tree": "f2390ed97020b2ef34e310f5d81f50573703a421",
      "parents": [
        "779378fab0ba0fc731c578af20d6271afab774d3",
        "9eb7586f27a3952aaca2d90405856d3751340312"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 11 17:23:46 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 11 17:23:46 2018 +0000"
      },
      "message": "Merge \"Frameworks: convert platformprotos to soong\" into pi-dev-plus-aosp"
    },
    {
      "commit": "b557907f51a8a92954b60fe1d181e7f4e9f5c803",
      "tree": "c82bd687ee073b95f2ec5bb7ed363e27435917e7",
      "parents": [
        "20e243d627586ec727384aacf2cf5aa94e38b779"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed May 30 14:35:24 2018 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Jun 11 15:29:57 2018 +0100"
      },
      "message": "Minimum viable TimeDetectorService\n\nThis is a do-nothing TimeDetectorService that can be\npopulated in following commits. A temporary method has been\nadded so the service has one method.\n\nUnit tests can be run with:\n\natest FrameworksServicesTests:TimeDetectorServiceTest\n\nTest: build / boot\nTest: See above\nMerged-In: I9e4eac70b944441f34491315cd1ce7fa2b9ae150\nChange-Id: I9e4eac70b944441f34491315cd1ce7fa2b9ae150\n(cherry picked from commit feeee682a23f25760c4a1aa07c00945901911ba3)\n"
    },
    {
      "commit": "bd98091695250cce1baab64d4e47a1208873ec74",
      "tree": "cb596f548c4fe99a9ae3cec36dc0c842b5c93b7f",
      "parents": [
        "8dbd7635b7deb90d5899b10ac990e9164ea417d8",
        "15bcfcf789824490ef3af794eb339f05f4f1a159"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Sat Jun 09 05:49:22 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jun 09 05:49:22 2018 -0700"
      },
      "message": "Skip ef9f2740a7 in proposed pi-dev-plus-aosp-without-vendor merge. am: f700e7feaa\nam: 15bcfcf789\n\nChange-Id: Iec38af6624b30fcdcef4a6b3df45033eb3e15588\n"
    },
    {
      "commit": "5b9aa02afdba68bffc780c5c6d399c6609610750",
      "tree": "b416064e30325211c05a1997e51f6fe6cdaa1fab",
      "parents": [
        "741d43b7bb9e92390f80dd328ec18eaaf56ff237"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Fri Jun 08 13:49:10 2018 -0700"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Fri Jun 08 13:51:27 2018 -0700"
      },
      "message": "Remove test-* sources for Metalava api-stubs.\n\nWe didn\u0027t include any test-* sources for api-stubs generation in\ninternal Master. So also exlude them for Metalava targets.\n\nBug: b/78245848\nTest: m metalava-api-stubs-docs\n\nChange-Id: I08e197275b66d6bea026b909439dd80518465d25\n"
    },
    {
      "commit": "bb23585a65e65e41d329059b485f433b8fa73608",
      "tree": "7a62d29b71ba2437e6a893ef41a680a5ffff746e",
      "parents": [
        "70b447a378d0233dfc76cf208e5959c6070f1ed0",
        "4c67b9d449fae1482274ac5ce1d3a182482f9151"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Jun 08 09:33:18 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 08 09:33:18 2018 -0700"
      },
      "message": "Merge \"Build dark greylist from public + light grey API\" am: 60229832de am: bd0dd0e59f\nam: 4c67b9d449\n\nChange-Id: I361df3b16524e7b0be0b48d8bc507caa233fd180\n"
    },
    {
      "commit": "4c67b9d449fae1482274ac5ce1d3a182482f9151",
      "tree": "1670e4319c7300015e66dc7db647b73d76a971a5",
      "parents": [
        "5d2bab8f632e5a7c637238abb278f124e5f287b0",
        "bd0dd0e59fa5233888755b35e211bf98d1509da1"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Jun 08 09:20:59 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 08 09:20:59 2018 -0700"
      },
      "message": "Merge \"Build dark greylist from public + light grey API\" am: 60229832de\nam: bd0dd0e59f\n\nChange-Id: Icf43773b041d8058cd79da2b3f085f33f19f2078\n"
    },
    {
      "commit": "6f6a126b9c64e49abcabcb6ea7b563535d22b04e",
      "tree": "0a66c223a4e2e963ecd6f15e10a234f0648d4ec9",
      "parents": [
        "b62aa315d1d9d27c716964930205ed0681e8997b"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu May 31 13:58:41 2018 +0100"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Jun 07 09:45:01 2018 +0000"
      },
      "message": "Build dark greylist from public + light grey API\n\nThe dark greylist is meant to contain non-SDK APIs which are \"related\"\nto APIs accessible to apps without restrictions. The list used to be\nbuilt as all non-SDK APIs in the same package as those on the light\ngreylist. That is not sufficient and should include the public SDK API\npackages too.\n\nThis patch modifies the makefile to generate a list of public API DEX\nsignatures with Doclava and then use that as a basis for the dark\ngreylist generation.\n\nBug: 80461842\nBug: 64382372\nTest: make out/target/common/obj/PACKAGING/hiddenapi-blacklist.txt\nChange-Id: I4b1588013f26661207126b4006cdef0a0fc8ae2c\n"
    },
    {
      "commit": "65ebd955e1b19a0d3c995e66d1d749bae5dc8575",
      "tree": "8c6b2b82d06e0290816a8de36fc08db8e42b5c83",
      "parents": [
        "3193b1537c9b31b8345cfb98ea7fc1d7d3ee0ac2"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Wed Apr 25 15:41:44 2018 -0700"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Wed Jun 06 18:26:21 2018 -0700"
      },
      "message": "Split interfaces and service for activities from current AM interfaces (1/n)\n\nFirst step in unifying the window hierarchy that is currently split\nwithin AM and WM packages. We separate the interfaces and service dealing\nwith activities and their containers (tasks, stack, display) from the\nrest of AM interfaces and services. This will allow us to move the new\ninterfaces and services to WM when the internal states are cleaned-up.\n\nTest: Existing tests pass\nTest: go/wm-smoke-auto\nBug: 80414790\nChange-Id: Ide9b3f89123b768cdbd3e3878113c7a8021187f3\n"
    },
    {
      "commit": "ef0a261dd654b0bb03954c71edd37e7c4351e885",
      "tree": "42f04bb2ba7d1c76a166f4c931465f58e33637a3",
      "parents": [
        "047577692e53c025ef7db7fee015cf265ed917d8",
        "18543da4562d46ea256cf61111e0995fb32e4d85"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jun 06 01:34:47 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 06 01:34:47 2018 -0700"
      },
      "message": "Merge \"Add metalava based api-stubs modules in Android.bp\" am: f907578564 am: 25d4494793\nam: 18543da456\n\nChange-Id: I90124871fc88448c74439f9f4a8a66bda38a324a\n"
    },
    {
      "commit": "18543da4562d46ea256cf61111e0995fb32e4d85",
      "tree": "7c736a2e950ef3edb11e1e3c0b50759ef59f9e02",
      "parents": [
        "dc8059eea6a87eda87176f4c9e60dfcf71614669",
        "25d4494793b5718caf227957b5ba42fb6af55864"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Jun 06 01:20:55 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 06 01:20:55 2018 -0700"
      },
      "message": "Merge \"Add metalava based api-stubs modules in Android.bp\" am: f907578564\nam: 25d4494793\n\nChange-Id: I61a4f39fdef76aa49dea1b007b805cac5e55526f\n"
    },
    {
      "commit": "4212eb1beff99e0690f391547d361d5350d6b973",
      "tree": "47e02645c6469552039baa42734b574f5cfc129e",
      "parents": [
        "e72aecb6559af378da6fa0c18c60898156aa03bc"
      ],
      "author": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Wed Apr 25 17:23:33 2018 -0700"
      },
      "committer": {
        "name": "Nan Zhang",
        "email": "nanzhang@google.com",
        "time": "Tue Jun 05 17:00:52 2018 -0700"
      },
      "message": "Add metalava based api-stubs modules in Android.bp\n\nTest: m clean \u0026\u0026 m metalava-api-stubs-docs\nBug: b/78245848\nChange-Id: Ie0943d306af4176d965425ec85236cd173c1e870\n"
    },
    {
      "commit": "df3cf2b39ded7070ae695ff9cfe40992b866919f",
      "tree": "83df7927e8b98888350f97e1688a4cedb9522d4f",
      "parents": [
        "4e0524bf32202848c866693d19f3fd8927128063",
        "feeee682a23f25760c4a1aa07c00945901911ba3"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jun 05 17:52:58 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 05 17:52:58 2018 +0000"
      },
      "message": "Merge \"Minimum viable TimeDetectorService\""
    },
    {
      "commit": "feeee682a23f25760c4a1aa07c00945901911ba3",
      "tree": "d1c5851c0b5d89825648ce98e32a01ec0612be72",
      "parents": [
        "ca46c6beea7c35c0e39a2dbaa67526e0138bfbd0"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed May 30 14:35:24 2018 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu May 31 09:44:21 2018 +0100"
      },
      "message": "Minimum viable TimeDetectorService\n\nThis is a do-nothing DeviceContextualizerService that can be\npopulated in following commits. A temporary method has been\nadded so the service has one method.\n\nUnit tests can be run with:\n\natest FrameworksServicesTests:TimeDetectorServiceTest\n\nTest: build / boot\nTest: See above\nChange-Id: I9e4eac70b944441f34491315cd1ce7fa2b9ae150\n"
    },
    {
      "commit": "fa15a99fe910d0d20ab493e7ab4e39466fdd44ec",
      "tree": "34e421208ae17f58161ac998020b44a183046592",
      "parents": [
        "409e5d25a91cacdab6bd2a4c338d2ef1c84fa318"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Mar 08 16:43:07 2018 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Fri May 25 16:38:52 2018 +0900"
      },
      "message": "Remove FlpHardwareProvider\n\nAfter Treble\u0027s FLP merge into GNSS HAL, the FlpHardwareProvider is just\nan empty shell. Removing FusedLocation and/or Flp + Hardware classes\naltogether.\n\nBug: 35726697\nTest: m -j\nTest: Open Google Map and then walk around. The dot moves as I walk.\n\nMerged-In: I7f413e38b57424e8ebb9d7d14d94f145a48d10f8\nChange-Id: I7f413e38b57424e8ebb9d7d14d94f145a48d10f8\n(cherry picked from commit 4cc3a1c056f69ac4da1dc5055c36b7357e9f673c)\n"
    },
    {
      "commit": "9eb7586f27a3952aaca2d90405856d3751340312",
      "tree": "6ae09e1140106eafb85b954a34465d0053218f73",
      "parents": [
        "ac4381d357a90201d58c67743983bf361e2fe023"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu May 17 10:49:26 2018 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu May 24 19:21:49 2018 +0000"
      },
      "message": "Frameworks: convert platformprotos to soong\n\n(cherry picked from commit af27bf6662efb8bb9fb7943b0fdbac530b0cbc99)\n\nBug: 64328974\nTest: m\nMerged-In: I3729a3132c1ef07dded69801373edf51006fa623\nChange-Id: I3729a3132c1ef07dded69801373edf51006fa623\n"
    },
    {
      "commit": "af27bf6662efb8bb9fb7943b0fdbac530b0cbc99",
      "tree": "a7979d2a99895ce8d9a1c2a16d375535568207ca",
      "parents": [
        "41672de0a9fe8ea417f0c5b01f73b4778fbdadca"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu May 17 10:49:26 2018 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu May 17 10:49:26 2018 -0700"
      },
      "message": "Frameworks: convert platformprotos to soong\n\nBug: 64328974\nTest: m\nChange-Id: I3729a3132c1ef07dded69801373edf51006fa623\n"
    }
  ],
  "next": "39d2d18b8054fb0d35374d4eeb809de524e23b0b"
}
