)]}'
{
  "log": [
    {
      "commit": "c497348c7441598fc81aa12fd15ee3fd208fbe63",
      "tree": "d860a72d7f548c32f309c1392a2fd18781f8f865",
      "parents": [
        "057c7c3164d49845ccd8a9950750bbba9f1ee0f7",
        "91abf9f6e2c60b05377b2b82ea2a09fc25476e56"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri May 05 21:00:38 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri May 05 21:00:40 2017 +0000"
      },
      "message": "Merge changes from topic \u0027update-conscrypt\u0027\n\n* changes:\n  Delete obsolete and unused KeyStoreTests\n  Track updates to Conscrypt\n"
    },
    {
      "commit": "68f666693a465eb8a66d9252b7b7ac035b9f0b7b",
      "tree": "a26f0e86a4928a06f3de324c290ce1413edd89e1",
      "parents": [
        "622b140f9450afcc403fb03079202ea8df3a0430"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Mar 16 18:32:21 2017 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu May 04 19:46:47 2017 +0100"
      },
      "message": "Add (disabled) time zone update system server impl\n\nThis commit builds on top of prior API commits. It\nadds code to the system server, but in a disabled way.\n\nThe system server is responsible for monitoring two\n(configured) package names: one for the \"updater app\"\n(provided by the platform) and one for the \"data app\"\n(provided by the OEM). When either package changes\nthe updater app is triggered via a privileged\nintent.\n\nThe updater is then required to communicate with the\ndata app and report back to the system server.\n\nUnit tests are included for the major components.\n\nTo run:\nmake -j30 FrameworksServicesTests\nadb install -r -g \"out/target/product/angler/data/app/FrameworksServicesTests/FrameworksServicesTests.apk\"\nadb shell am instrument -e package com.android.server.timezone -w com.android.frameworks.servicestests \\\n    \"com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner\"\n\nTest: See above.\nBug: 31008728\nMerged-In: I8f82cdcc2b574778a7e0d0184270f305b69ee17b\nChange-Id: I8f82cdcc2b574778a7e0d0184270f305b69ee17b\n"
    },
    {
      "commit": "c301339498a2449fbf8d954f9c6f3a1376f8a639",
      "tree": "1b0f4964fb048cfe4c1ea3e5e44a7ee9c9da8e01",
      "parents": [
        "cfe0c2f1ec875280d34cfb790ebd119a2c979858",
        "a8889fa7faf8511c2cef9c09fa66e97682c32c0e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 04 14:41:08 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu May 04 14:41:10 2017 +0000"
      },
      "message": "Merge \"More time zone update API classes\""
    },
    {
      "commit": "cfe0c2f1ec875280d34cfb790ebd119a2c979858",
      "tree": "f9873978e475b05c2c5acb744177187ac2e3cfdb",
      "parents": [
        "5669550a8326359449daa5c52cfd167bffb2432e",
        "bede17c216815a849be0c43d5ce7daaf750a9fac"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu May 04 13:51:38 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu May 04 13:51:39 2017 +0000"
      },
      "message": "Merge \"Time zone update API classes\""
    },
    {
      "commit": "a8889fa7faf8511c2cef9c09fa66e97682c32c0e",
      "tree": "39abdd854d2ce67afbd5468191b4fc3d0cbeeede",
      "parents": [
        "bede17c216815a849be0c43d5ce7daaf750a9fac"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Mar 16 18:31:56 2017 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu May 04 14:11:09 2017 +0100"
      },
      "message": "More time zone update API classes\n\nThis class forms the contract between the updater app\n(the app provided by and triggered by the system)\nand the data app (the app provided by the OEM to\nprovide time zone data).\n\nBug: 31008728\nTest: make only, just constants\nChange-Id: I687b75954e132884aec962fcf8955f3f38a00b2f\n"
    },
    {
      "commit": "bede17c216815a849be0c43d5ce7daaf750a9fac",
      "tree": "ed0c74ae15f345514a2118de3ba93bce0dfdebd7",
      "parents": [
        "af5f00ee5e6eda69584d90ba96dc4e726cd2e8a2"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Mar 16 18:29:36 2017 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu May 04 12:32:53 2017 +0100"
      },
      "message": "Time zone update API classes\n\nTime zone update API classes. Currently hidden but they\nwill go on to be unhidden in future.\n\nThis forms the basis of client and system server code to\nsupport time zone updates.\n\nTests can be run with:\n\nmake -j30 FrameworksCoreTests\nadb install out/target/product/angler/data/app/FrameworksCoreTests/FrameworksCoreTests.apk\nadb shell am instrument -e package android.app.timezone \\\n    -w com.android.frameworks.coretests \\\n    \"com.android.frameworks.coretests/android.support.test.runner.AndroidJUnitRunner\"\n\nBug: 31008728\nTest: See above.\nMerged-In: I668bc8ac0cb78f3d4d9a4b7ad6ac1534b88af833\nChange-Id: Icde574f8974152617a1f7ac9fa225bd5011dcce1\n"
    },
    {
      "commit": "36247646e37b9c5aea83e6adb4ac70fd0d0ee24a",
      "tree": "16bf76575379151d979e3b6ab189d2c67076ada9",
      "parents": [
        "7485f047ba4d213efe43200d6bcc65cdac5a4dcf",
        "d66a86bf50d5805bd0bb32014a058fa0b20a1c0e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 04 03:37:36 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu May 04 03:37:37 2017 +0000"
      },
      "message": "Merge \"fix KeyEvent can\u0027t correctly finish when inputmethod time out happend\""
    },
    {
      "commit": "d66a86bf50d5805bd0bb32014a058fa0b20a1c0e",
      "tree": "b0ecc8211e0c5894a82ed53c9302c60f9af8d94e",
      "parents": [
        "fe86a197a112e248f6defede035657c508f41e8b"
      ],
      "author": {
        "name": "gaoshang",
        "email": "gaoshang@xiaomi.com",
        "time": "Thu Apr 20 14:14:18 2017 +0800"
      },
      "committer": {
        "name": "gaoshang",
        "email": "gaoshang@xiaomi.com",
        "time": "Thu May 04 02:19:42 2017 +0000"
      },
      "message": "fix KeyEvent can\u0027t correctly finish when inputmethod time out happend\n\nSymptom: If inputmethod handle an KeyEvent time out ,\nDid not finish this event correctly , eventually lead to app ANR\nRoot Cause: without seq number when obtainMessage MSG_TIMEOUT_INPUT_EVENT\nSolution: add seq parameter\n\nTest: Input\nTest: InputMethod\n\nFixes: 37648930\nChange-Id: I3a2b964b34aa57267bd777305200a2bfdc66f65c\nMerged-In: I3a2b964b34aa57267bd777305200a2bfdc66f65c\nSigned-off-by: gaoshang \u003cgaoshang@xiaomi.com\u003e\n"
    },
    {
      "commit": "2db2f6d2654769354a0e47f372969f3235101f36",
      "tree": "4ef6ebc8ec5321522b9cb61040259c393f41e9d4",
      "parents": [
        "ed112e3c11286bb8263185c2d30ab6a933686fff",
        "223edeb272e84105e0ad5cc4d68286f60fc4bd38"
      ],
      "author": {
        "name": "Tianjie Xu",
        "email": "xunchang@google.com",
        "time": "Wed May 03 17:34:27 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 03 17:34:29 2017 +0000"
      },
      "message": "Merge \"Add error/cause code reporting for Non A/B OTA failures\""
    },
    {
      "commit": "223edeb272e84105e0ad5cc4d68286f60fc4bd38",
      "tree": "88fab16b5aa06ac3a23e98fb6be4d2afc971a613",
      "parents": [
        "1be8fb23eb9cb3414c1436a672b3a2d60abb2fef"
      ],
      "author": {
        "name": "Tianjie Xu",
        "email": "xunchang@google.com",
        "time": "Tue May 02 12:41:56 2017 -0700"
      },
      "committer": {
        "name": "Tianjie Xu",
        "email": "xunchang@google.com",
        "time": "Tue May 02 23:02:11 2017 -0700"
      },
      "message": "Add error/cause code reporting for Non A/B OTA failures\n\nRead and report the error_code \u0026 cause_code from last_install.\n\nBug: 36866437\nTest: mma \u0026 observe the sysui event in logcat -b events\nChange-Id: I5357861fc758e14ed3235bfc8cc76d7561ccea58\n"
    },
    {
      "commit": "34e0a257d5cc12d7409d4513278f322219bbd81f",
      "tree": "bcf287ea004d21b057609591a42d7bac671d0afb",
      "parents": [
        "e74483074ea3ae1b3ac947cb7a9a05a98551717d",
        "47145a07556c2fcbc1d07bdfaf2592445782c228"
      ],
      "author": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Tue May 02 20:36:37 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 02 20:36:38 2017 +0000"
      },
      "message": "Merge \"Change MANAGE_OWN_CALLS permission to be a \"normal\" permission.\""
    },
    {
      "commit": "47145a07556c2fcbc1d07bdfaf2592445782c228",
      "tree": "747410af126b21d2f3585fe315f11654404dd331",
      "parents": [
        "6d033475b307ae95d0e733a3be9260525aa2879d"
      ],
      "author": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Fri Apr 28 10:45:23 2017 -0700"
      },
      "committer": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Tue May 02 10:46:37 2017 -0700"
      },
      "message": "Change MANAGE_OWN_CALLS permission to be a \"normal\" permission.\n\nAlso remove from Phone group since this isn\u0027t really related to phone\ncalls as much as interacting with Telecom APIs.\n\nTest: Manual\nBug: 37722558\nMerged-In: Ia972db4bd79a34bc9b9d3896910adc205c286367\nChange-Id: Icc4d2170cc7c83f653eeb0438938f7c0c91a0a7c\n"
    },
    {
      "commit": "3e21b1745c6785870a0295bf614a07029b04bf3c",
      "tree": "9301f7ee2b3401c16bfe4439fb09356d0b87f247",
      "parents": [
        "b0e408450cb4199adee79a7bec0f931e7033ba2b",
        "93f45916845814e5a50c26f770e0473212517fe1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 02 08:44:27 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 02 08:44:29 2017 +0000"
      },
      "message": "Merge \"NsdManager: add test coverage for discoverServices()\""
    },
    {
      "commit": "b0e408450cb4199adee79a7bec0f931e7033ba2b",
      "tree": "67bcb8ecaaecc414c4036a42455fcb9cf2aa3783",
      "parents": [
        "c00af4c533689074e3bf635378190c90aa310d6f",
        "8c5eeb0afc5dad35ee8ce11b9e82f7219a1a609d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 02 06:27:08 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 02 06:27:10 2017 +0000"
      },
      "message": "Merge \"NsdManager: unit test coverage for servive registration\""
    },
    {
      "commit": "93f45916845814e5a50c26f770e0473212517fe1",
      "tree": "80a2a3b7e6c40cffaae0d21c42b3c57aace5d1a3",
      "parents": [
        "8c5eeb0afc5dad35ee8ce11b9e82f7219a1a609d"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 28 13:29:21 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue May 02 15:26:33 2017 +0900"
      },
      "message": "NsdManager: add test coverage for discoverServices()\n\nTest: added new tests\nBug: 37013369, 33298084\nChange-Id: If6c1113ee1bd4690db90abd5a61c3e229c827aec\n"
    },
    {
      "commit": "8c5eeb0afc5dad35ee8ce11b9e82f7219a1a609d",
      "tree": "cc7bd650e637235283a90bf56433d8ec37be9eee",
      "parents": [
        "3cff7deecbdad5f30f7db23a9b21e9bc2cf767d6"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 28 11:01:22 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue May 02 13:31:24 2017 +0900"
      },
      "message": "NsdManager: unit test coverage for servive registration\n\nThis patch adds test coverage for NsdManager#registerService() and\nNsdManager#unregisterService(). This test shows a potential defect in\nthe api: if unregisterService() fails, the associated listener is always\nunregistered from NsdManager. If the service initially registered is\nstill registered, this potentially make it impossible to unregister.\n\nTest: added new unit test\nBug: 37013369, 33298084\nChange-Id: Ia089b6d2f2a349907a8b29d9a3acd7f59e177887\n"
    },
    {
      "commit": "7fdce769c3ef3885ec8f1716bdeedfc8b056a1d7",
      "tree": "c9513871dde78b2ce97ecd3a8ed834920a195370",
      "parents": [
        "c00af4c533689074e3bf635378190c90aa310d6f"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Mar 28 10:02:23 2017 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon May 01 14:11:03 2017 -0700"
      },
      "message": "Track updates to Conscrypt\n\nTest: cts-tradefed run cts -m CtsLibcoreOkHttpTestCases -a arm64-v8a\nTest: cts-tradefed run cts -m CtsLibcoreTestCases -a arm64-v8a\nChange-Id: I1487d694c5abe7cf2b938d9f1869d9aeb5285ac5\n"
    },
    {
      "commit": "4f8a375958c1284c871cbb73776153e423a96298",
      "tree": "11349d34b7c4d40857ef528dbd15e08021406114",
      "parents": [
        "f62e38583a713221b282e90ccd46dc4e268956af",
        "1bda67369ca48d284a9a55300f58f6cf13ad9aa6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Apr 29 03:00:06 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Apr 29 03:00:08 2017 +0000"
      },
      "message": "Merge \"Add android.os.VintfRuntimeInfo\""
    },
    {
      "commit": "1bda67369ca48d284a9a55300f58f6cf13ad9aa6",
      "tree": "e357d0e4c19b365c4816e044735153de56285026",
      "parents": [
        "41f48e3f188dc867645714c3f6b94b8864e1c618"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Apr 26 11:38:01 2017 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Apr 28 17:10:28 2017 -0700"
      },
      "message": "Add android.os.VintfRuntimeInfo\n\nThis is the Java API for ::android::vintf::RuntimeInfo.\nThis will be used by CTS for device info report purposes.\n\nBug: 28656227\nTest: cts-tradefed run cts -m CtsEdiHostTestCases --skip-preconditions\nChange-Id: Id87c95a17e77d7ec1794a6f850de97edf9ae892d\n"
    },
    {
      "commit": "9d4abb5631c7719de8d919e0c37c9aee54354266",
      "tree": "d11ce00655f15b5e4008d708a9d488d7489d2c46",
      "parents": [
        "30a34ec0e23e8f96ceefaf78e835488353076dff"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Fri Apr 28 04:11:26 2017 -0700"
      },
      "committer": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Fri Apr 28 21:35:53 2017 +0000"
      },
      "message": "Bluetooth: bluetooth.le API fixes\n\nFix minor spelling problems.\nThrow IllegalStateException instead of IllegalArgumentException in\nbuild().\n\nBug: 37532634\nTest: none\nChange-Id: I73b6f04aec98f5baffb06a363e2a3f71e8cec3c4\n"
    },
    {
      "commit": "30a34ec0e23e8f96ceefaf78e835488353076dff",
      "tree": "bbe6ec02fbedc230a63424281f044357740f9dc8",
      "parents": [
        "fd810d8727d0a79fdc9e467d3834e22628547025",
        "dd767065fe354c25dc22a982deb136c9262bed5b"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Fri Apr 28 20:09:03 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 28 20:09:04 2017 +0000"
      },
      "message": "Merge \"Fix equality method implementation in BandConfig class.\""
    },
    {
      "commit": "dd767065fe354c25dc22a982deb136c9262bed5b",
      "tree": "f0acc32efc1cb4d8385cecde8d9163c5502e8125",
      "parents": [
        "e08bd750c8f96ba59a12a5a7fa9ed3652f6c5149"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Fri Apr 28 08:19:34 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Fri Apr 28 08:19:34 2017 -0700"
      },
      "message": "Fix equality method implementation in BandConfig class.\n\nTest: instrumentation (in master branch)\nBug: b/36863239\nChange-Id: I2f3b68ba3fac75b849ee99dc06d0a13478168b7e\n"
    },
    {
      "commit": "7c00639a6802a9235ca9f2ad21577515215a4ee6",
      "tree": "9622ae1e419b84903a2f07f3d49229bfa639282d",
      "parents": [
        "5bd39aaf42a7d70438cb7c2de5293192e945145e"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Tue Apr 18 15:54:43 2017 -0700"
      },
      "committer": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Thu Apr 27 16:24:26 2017 -0700"
      },
      "message": "Validate incoming data properly.\n\nMake sure calls to readBuffer() and readEmbeddedBuffer()\nget the correct size, parent and offset passed in, so\nthese can be validated by libhwbinder.\n\nModified HwBlob to take a length argument as well,\nso it can be validated.\n\nBug: 30498700\nTest: hidl_test, hidl_test_java, Youtube, Maps, Netflix, Camera\nChange-Id: I28712db97ae29b46acfe952d3d92d1ce5f666a4d\nMerged-In: I28712db97ae29b46acfe952d3d92d1ce5f666a4d\n"
    },
    {
      "commit": "c7c01a28774e431a408744b443a674f2622fde9f",
      "tree": "16f1062d5c454b57e2b1903dcae2da42e96a01de",
      "parents": [
        "1be8fb23eb9cb3414c1436a672b3a2d60abb2fef"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Thu Apr 27 08:37:04 2017 -0700"
      },
      "committer": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Thu Apr 27 21:03:46 2017 +0000"
      },
      "message": "Bluetooth: Add constants to ScanResult\n\nAdd TX_POWER_NOT_PRESENT and PERIODIC_INTERVAL_NOT_PRESENT\n\nTest: none\nBug: 37536707\nChange-Id: Ia48a30f44a961c6e0babd17ecaed0eb93c98ecad\n"
    },
    {
      "commit": "0e4ac75f2e291305a493796186d44a081926f3a8",
      "tree": "d9eefbed609552d4907b4d50e4ea8c2969531592",
      "parents": [
        "4898b704de5f726b513f17e1368960044c880b4c"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Thu Apr 27 07:04:15 2017 -0700"
      },
      "committer": {
        "name": "Andre Eisenbach",
        "email": "eisenbach@google.com",
        "time": "Thu Apr 27 19:37:35 2017 +0000"
      },
      "message": "Fix NPE when accessing mCallback in BluetoothGatt\n\nThis issue was introduced in commit\n4eab49652e48159fd37f827d30b822f2f187551e.\n\nBug: 37710354\nTest: none\nChange-Id: I2d985ce97c44d4e096713e156e57437f44ea3ddb\n"
    },
    {
      "commit": "998eb212bd5bd2acc8b0127859d50f21e0f59407",
      "tree": "0498ddb67fc9dfb49e043095ad0727ca7b92ca54",
      "parents": [
        "0c83ef2c72080b24f4b88b23d1811d0a2b825772",
        "5259d8c9ffde747b5cd33f65c21055e7b3552141"
      ],
      "author": {
        "name": "Chen Xu",
        "email": "fionaxu@google.com",
        "time": "Thu Apr 27 17:46:02 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 27 17:46:04 2017 +0000"
      },
      "message": "Merge \"Add getVisualVoicemailPackageName()\""
    },
    {
      "commit": "37cad12cb1d34f321b75d34b580f6f2eef6244af",
      "tree": "d426c8894c0ec548662abf939bfd9214fbc51c41",
      "parents": [
        "5e253647ad609fb67acd0bd25aca98018c340edd",
        "731a26666d0c357952989cf6fb7df1e376558e9b"
      ],
      "author": {
        "name": "Ajay Panicker",
        "email": "apanicke@google.com",
        "time": "Thu Apr 27 17:29:35 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 27 17:29:37 2017 +0000"
      },
      "message": "Merge \"Limit btsnoop file size (3/8)\""
    },
    {
      "commit": "5e253647ad609fb67acd0bd25aca98018c340edd",
      "tree": "a1566f0791b17f2e1906c4dbb44a1041137c0c28",
      "parents": [
        "4418eb4ddf839c8cb24e365f6687b049705c7820",
        "c2a56b279eb418cf48bdb96da21c75ea7b25a741"
      ],
      "author": {
        "name": "Mukesh Agrawal",
        "email": "quiche@google.com",
        "time": "Thu Apr 27 16:40:48 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 27 16:40:48 2017 +0000"
      },
      "message": "Merge \"Log: increase visibility of Log.TerribleFailure\""
    },
    {
      "commit": "0b711e2c868e58cf2ce8965253b55f98b02c9786",
      "tree": "264e5d58b1e2610b208bd3bdfade69c621cd770d",
      "parents": [
        "3cff7deecbdad5f30f7db23a9b21e9bc2cf767d6",
        "93f2e38160cc774c311ee8fcf6e8d7975b0912ff"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Apr 27 15:26:50 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 27 15:26:51 2017 +0000"
      },
      "message": "Merge \"AndroidRuntime: pipe down dalvik.vm.stack-trace-dir\""
    },
    {
      "commit": "431bc340963f35887af3c300b00f5388b00b40e1",
      "tree": "242c1a3a87b52ba2f62d213a4707a735f01512b6",
      "parents": [
        "7ca060aa95ce8425b8d69d8dee3a472c968f28e0",
        "be7b0d18a7d68aa79dc8256ee904f0a94767d5d9"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Apr 27 11:40:05 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 27 11:40:07 2017 +0000"
      },
      "message": "Merge \"Update frameworks/base to new compiler filters.\""
    },
    {
      "commit": "731a26666d0c357952989cf6fb7df1e376558e9b",
      "tree": "f82664b2ba153a2c15c3aa852268e305e1fd7329",
      "parents": [
        "d065cf049e870465571afb9c55d3d033a314015b"
      ],
      "author": {
        "name": "Ajay Panicker",
        "email": "apanicke@google.com",
        "time": "Mon Apr 17 20:42:22 2017 -0700"
      },
      "committer": {
        "name": "Ajay Panicker",
        "email": "apanicke@google.com",
        "time": "Thu Apr 27 00:05:31 2017 +0000"
      },
      "message": "Limit btsnoop file size (3/8)\n\nLimit btsnoop file size by rotating between snoop files. The rotation occurrs\nwhen a fixed number of packets have been logged and will start overwriting\nthe older file.\n\nBug: 35998031\nTest: Enable snoop logs from developer options and let logs get large\nMerged-In: I40d5da4c1b1c9b45908e5790d130f1c5e804c773\nChange-Id: I40d5da4c1b1c9b45908e5790d130f1c5e804c773\n"
    },
    {
      "commit": "ebc94ecac9199729ae7b46faa4ef6908181cad91",
      "tree": "b1e74ae02eeaf992cdefa045f3c43291061c45db",
      "parents": [
        "ce94c07ffdbd77c12a0e6ac4447c1bb78c8254d6",
        "0fabba396fe2ff0be864ea6c6a1ed8030ce5de7d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 27 00:01:53 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 27 00:01:55 2017 +0000"
      },
      "message": "Merge \"Allow Bluetooth CAP_SYS_NICE\""
    },
    {
      "commit": "0fabba396fe2ff0be864ea6c6a1ed8030ce5de7d",
      "tree": "17783e091e053af935e4dc22d95741b62964d159",
      "parents": [
        "41f48e3f188dc867645714c3f6b94b8864e1c618"
      ],
      "author": {
        "name": "Philip Cuadra",
        "email": "philipcuadra@google.com",
        "time": "Wed Apr 26 13:49:37 2017 -0700"
      },
      "committer": {
        "name": "Philip Cuadra",
        "email": "philipcuadra@google.com",
        "time": "Wed Apr 26 14:45:47 2017 -0700"
      },
      "message": "Allow Bluetooth CAP_SYS_NICE\n\nBluetooth needs CAP_SYS_NICE in order to make important threads use RT\nscheduling policy.\n\nBug 37518404\n\nTest: Play Bluetooth audio, confirm RT priority in systrace\nChange-Id: I388ef78d1aaf3f5fe1aa901b48d76c5c992acacc\nMerged-In: I0ee55a2f2cfd80cbb066d9c034bb85d8d85ba470\n"
    },
    {
      "commit": "5259d8c9ffde747b5cd33f65c21055e7b3552141",
      "tree": "8d23866162ad6cafd1efe4b06018d60d4fac3124",
      "parents": [
        "01e368f26dc1c9390bc606f5b52afcb69e29df88"
      ],
      "author": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Fri Jan 20 12:11:40 2017 -0800"
      },
      "committer": {
        "name": "fionaxu",
        "email": "fionaxu@google.com",
        "time": "Wed Apr 26 14:03:30 2017 -0700"
      },
      "message": "Add getVisualVoicemailPackageName()\n\nMake NMR2 voicemail columns public\n\ngetVisualVoicemailPackageName() and the IS_OMTP_VOICEMAIL is used by\nthe voicemail UI to filter out voicemails not from the current visual\nvoicemail app, for example legacy telephony voicemails or previous\ndefault dialer. These voicmails all represent the same source and are\nlikely duplicates.\n\nBACKED_UP and RESTORED are used by the system dialer voicemail back\nup and restore feature in NMR2. Since there are no API bump, it was\nhidden and made public in this CL instead. See ag/1803794\n\nARCHIVED is used to prevent locally saved voicemails from being\ndeleted during a sync because it does not exist on the server.\n\nBug: 34463609\nFixes: 34463609\nBug: 32414216\nTest: cts test android.provider.cts.VoicemailContractTest\n    android.telephony.cts.VisualVoicemailServiceTest\n\nChange-Id: Iec1e499e763ad92f4a822715b6022e9cbe557c11\nMerged-in: Iec1e499e763ad92f4a822715b6022e9cbe557c11\n"
    },
    {
      "commit": "be7b0d18a7d68aa79dc8256ee904f0a94767d5d9",
      "tree": "8e580ad509cc3c9b46819a02db7445e80c6d0e77",
      "parents": [
        "7d4a354fd572ac0dc01f9b815a9e0af2d127bc5b"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Apr 25 12:29:07 2017 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed Apr 26 15:34:29 2017 +0100"
      },
      "message": "Update frameworks/base to new compiler filters.\n\nAlso fix a merge issue with duplicated code.\n\nbug:34715556\nTest: build and boot aosp bullhead\nChange-Id: I3b913878c83f708e752ec06f79bada1873213823\n"
    },
    {
      "commit": "93f2e38160cc774c311ee8fcf6e8d7975b0912ff",
      "tree": "2d9393d81910766ac6b155d13f7914c4e4024cdc",
      "parents": [
        "2529f65e872b08690ccb9754fa5fa22767eb514c"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Apr 25 14:24:07 2017 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Apr 26 13:02:59 2017 +0100"
      },
      "message": "AndroidRuntime: pipe down dalvik.vm.stack-trace-dir\n\nFall back to dalvik.vm.stack-trace-file if it doesn\u0027t exist.\n\nTest: make\nTest: manual testing with the property set / empty\nBug: 32064548\n\nChange-Id: I23b4c7b26eda5d0fcaf6b976bf1e973a872555c7\n"
    },
    {
      "commit": "ac11ccb1f66d5dadb6c6fd1d47408e36c48c94ce",
      "tree": "e352829b3c85c0940cf36f9c61d0bce86b36e498",
      "parents": [
        "3a8ad81ab42f030526cdf54d59a170d74478993e"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Tue Apr 25 14:21:52 2017 -0700"
      },
      "committer": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Wed Apr 26 06:50:54 2017 +0000"
      },
      "message": "Hide IpSecManager, IpSecTransform, and IpSecAlgorithm\n\nThese classes, originally planned to be part of the\npublic API, are not ready for public consumption.\nThey are planned to be un-hidden in a future release.\n\nBug: 37681043\nTest: make update-api and make\nChange-Id: I8caccd3f8455341cb56a2256354eacbadedff047\n"
    },
    {
      "commit": "c2a56b279eb418cf48bdb96da21c75ea7b25a741",
      "tree": "0ff7954eae35908bbf99a46cf5c4adc1dc59270e",
      "parents": [
        "9a029b52625c3852f2b7628c208d57cf4f64b34e"
      ],
      "author": {
        "name": "mukesh agrawal",
        "email": "quiche@google.com",
        "time": "Mon Apr 17 14:26:40 2017 -0700"
      },
      "committer": {
        "name": "Mukesh Agrawal",
        "email": "quiche@google.com",
        "time": "Wed Apr 26 00:49:34 2017 +0000"
      },
      "message": "Log: increase visibility of Log.TerribleFailure\n\nThe Log.setWtfHandler() provides a way to override\nthe default TerribleFailureHandler, so that we can\ntest that a piece of code reports as terrible\nfailure as expected.\n\nUnfortunately, we can\u0027t actual use setWtfHandler()\nat the moment. The problem is as follows:\n1. The Log.setWtfHandler() method requires a\n   Log.TerribleFailureHandler instance.\n2. The Log.TerribleFailureHandler interface requires\n   subclasses to implement a onTerribleFailure()\n   method. The method requires a Log.TerribleFailure\n   argument.\n3. Log.TerribleFailure is a private inner class.\n\nGiven the above, classes outside of Log can\u0027t create\nan appropriate argument to pass to Log.setWtfHandler().\n\nTo resolve this, we update the visibility of\nLog.TerribleFailure to be the same as that of\nLog.setWtfHandler(), and Log.TerribleFailureHandler.\n\nTest: m -j32\nBug: 37425059\nChange-Id: Ie646b931869582398d61495e367e0d36e767a3e3\n"
    },
    {
      "commit": "8c6925a88f87136635b2087ed97ca2d554a8b9a2",
      "tree": "6d60a1c122a85b1b003e3d199fb4841baf0c030a",
      "parents": [
        "bdeb8539e8956cde97c67866ce2f1750f4b16f35",
        "4a6df3c3832e14bedb20d85d3b30bbe89989c621"
      ],
      "author": {
        "name": "Chen Xu",
        "email": "fionaxu@google.com",
        "time": "Tue Apr 25 21:54:51 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 25 21:54:53 2017 +0000"
      },
      "message": "Merge \"Add VisualVoicemailService\""
    },
    {
      "commit": "bdeb8539e8956cde97c67866ce2f1750f4b16f35",
      "tree": "75c7d392c8f51909e8ff69c5b2a5b37664372652",
      "parents": [
        "1f4e1118085f14db13f0ec584732c9651a1dd89c",
        "60c7dac77533163ed951dee09ec7b42a49bdf54a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 25 19:36:35 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 25 19:36:37 2017 +0000"
      },
      "message": "Merge \"Bluetooth: expand comments on new PHY constants\""
    },
    {
      "commit": "1f4e1118085f14db13f0ec584732c9651a1dd89c",
      "tree": "ceacb91f52b1ea100441dd32456f1effde59d9df",
      "parents": [
        "06abc2c4042eb558c368edd91047060553941bd5",
        "4eab49652e48159fd37f827d30b822f2f187551e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 25 19:36:20 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 25 19:36:22 2017 +0000"
      },
      "message": "Merge \"Bluetooth: Add handler parameter to connectGatt\""
    },
    {
      "commit": "60c7dac77533163ed951dee09ec7b42a49bdf54a",
      "tree": "fd790826a0ffef642e3921fa11bf34fba8a7ce04",
      "parents": [
        "4eab49652e48159fd37f827d30b822f2f187551e"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Fri Apr 21 04:26:12 2017 -0700"
      },
      "committer": {
        "name": "Andre Eisenbach",
        "email": "eisenbach@google.com",
        "time": "Tue Apr 25 17:46:50 2017 +0000"
      },
      "message": "Bluetooth: expand comments on new PHY constants\n\nBug: 37544152\nTest: the all-knowing eyes of the reviewers\nChange-Id: I8f5a756a204fe90960700e1dc42f64824d3b844a\n"
    },
    {
      "commit": "e55c4469771f9f88626b362aa7b7226c4f424ed7",
      "tree": "b5875007ae3b6dccdccc3387656cd7967ca9aa25",
      "parents": [
        "41f48e3f188dc867645714c3f6b94b8864e1c618"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Tue Apr 25 08:07:11 2017 -0700"
      },
      "committer": {
        "name": "Andre Eisenbach",
        "email": "eisenbach@google.com",
        "time": "Tue Apr 25 17:46:40 2017 +0000"
      },
      "message": "Bluetooth: document status value in PHY read/update\n\nBug: 37544152\nTest: none\nChange-Id: I2bac468f833c73cd282b1dac80b6553917996604\n"
    },
    {
      "commit": "4eab49652e48159fd37f827d30b822f2f187551e",
      "tree": "31b399a90589585803a9a650f46aa54fb5c3d3f0",
      "parents": [
        "41f48e3f188dc867645714c3f6b94b8864e1c618"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Fri Apr 21 03:49:00 2017 -0700"
      },
      "committer": {
        "name": "Andre Eisenbach",
        "email": "eisenbach@google.com",
        "time": "Tue Apr 25 17:46:33 2017 +0000"
      },
      "message": "Bluetooth: Add handler parameter to connectGatt\n\nBug: 37544152\nTest: sl4a GattReadTest GattWriteTest\nChange-Id: I043dfefaafe9f3700418f2c855c52aac3644310f\n"
    },
    {
      "commit": "2fd19ffa060f1c8678f42b8062816aa6900412d5",
      "tree": "44ef3eeef993de38548302c2155a55712581d71b",
      "parents": [
        "7d4a354fd572ac0dc01f9b815a9e0af2d127bc5b",
        "859748f08c42ddff5693c48d17bed633cbfe9cce"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Tue Apr 25 13:21:35 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 25 13:21:36 2017 +0000"
      },
      "message": "Merge \"[AWARE] Add UID checking to WifiAwareNetworkSpecifier\""
    },
    {
      "commit": "4a6df3c3832e14bedb20d85d3b30bbe89989c621",
      "tree": "1b7c0e4c87bca206cdd9adacdb61c975f7ad739f",
      "parents": [
        "7d4a354fd572ac0dc01f9b815a9e0af2d127bc5b"
      ],
      "author": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Fri Dec 16 12:17:30 2016 -0800"
      },
      "committer": {
        "name": "Chen Xu",
        "email": "fionaxu@google.com",
        "time": "Tue Apr 25 01:23:37 2017 +0000"
      },
      "message": "Add VisualVoicemailService\n\nVisualVoicemailService can be implemennted by the default dialer to\nprovide a visual voicemail client similar to the OMTP visual voicemail\nspec.\n\nOther APIs such as the SMS filter and hidden text SMS sending are made\npublic and consolidated into the service interface.\n\nTest: make. CTS tests in a follow up CL\nChange-Id: Ib5e9aa15fc098f4c13b15e5dbecf9ab646e0e400\nMerged-in: Ib5e9aa15fc098f4c13b15e5dbecf9ab646e0e400\n"
    },
    {
      "commit": "89e10d3eb4a4728ffdb5a5eba76d772d28bcb855",
      "tree": "84a8a4a9a7d6e47542e4bb0df3967efab8ceb116",
      "parents": [
        "21b9b3a8ffddde5044b428b086bbb601318d231b"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Wed Apr 19 05:44:34 2017 -0700"
      },
      "committer": {
        "name": "Andre Eisenbach",
        "email": "eisenbach@google.com",
        "time": "Mon Apr 24 15:42:57 2017 +0000"
      },
      "message": "Get rid of the IAdvertiserCallabck\n\nBug: 30622771\nTest: none\nChange-Id: I2c55f96e71cd3be67f88201ab07c91730cd85971\n"
    },
    {
      "commit": "21b9b3a8ffddde5044b428b086bbb601318d231b",
      "tree": "b1ca084b0b4b4e80123038a778dc3e6055b5aa55",
      "parents": [
        "10b5024d5e52178f5ba6609c066862f5c8aaddec",
        "495a17b332e57ea4c0162a4ae63d820b947e3719"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Apr 24 06:39:37 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 24 06:39:39 2017 +0000"
      },
      "message": "Merge \"Move byte logics from ApfFilter into BitsUtil\""
    },
    {
      "commit": "10b5024d5e52178f5ba6609c066862f5c8aaddec",
      "tree": "0055dfd80d5aebed56511a950ce8318e48bbe1e6",
      "parents": [
        "53a122986d0aba4a9a4c3ccb85c7d756b655dc99",
        "9910dbc682118d2527fc17d4b50e8dcb94318534"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Sun Apr 23 23:35:52 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Apr 23 23:35:53 2017 +0000"
      },
      "message": "Merge \"Add BitUtils bit packing methods (Connectivity metrics: add transports pretty printing)\""
    },
    {
      "commit": "53a122986d0aba4a9a4c3ccb85c7d756b655dc99",
      "tree": "0ed803cc8a3997d7b509250ea89e1e9d18ee39df",
      "parents": [
        "c90fcbd6600d63dede8480801586c1e561f55918",
        "f3b8a45f86f24057ffb1469c619846cecf314718"
      ],
      "author": {
        "name": "Robin Lee",
        "email": "rgl@google.com",
        "time": "Sat Apr 22 21:59:55 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Apr 22 21:59:57 2017 +0000"
      },
      "message": "Merge \"Remove unused network management RPCs\""
    },
    {
      "commit": "495a17b332e57ea4c0162a4ae63d820b947e3719",
      "tree": "9f53928fc478332032e0c44f6ac101e79a590b97",
      "parents": [
        "9910dbc682118d2527fc17d4b50e8dcb94318534"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Jan 12 15:31:05 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Sat Apr 22 10:07:03 2017 +0900"
      },
      "message": "Move byte logics from ApfFilter into BitsUtil\n\nThis patch extracts into BitUtils byte manipulation helper methods\nand unsigned type manipulation helper methods from ApfFilter into\nan independent and reusable structure.\n\nTest: $ runtest frameworks-net\nChange-Id: I0f33af10457a63dbde5983f14353a79b8cd877d9\n"
    },
    {
      "commit": "9910dbc682118d2527fc17d4b50e8dcb94318534",
      "tree": "f7d2895638178053b454e7987c6db548bcff0a6c",
      "parents": [
        "7781a6d4c138dab056459d9e3dfc017a763b70d0"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Wed Mar 22 18:29:58 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Sat Apr 22 09:58:42 2017 +0900"
      },
      "message": "Add BitUtils bit packing methods (Connectivity metrics: add transports pretty printing)\n\nThis patch is a partial cherry-pick from commit\ndf456e13a1127e3c8594b1d22ea4a9b3dca67a4b for the BitUtils and\nNetworkCapabilities classes.\n\nBug: 34901696\nTest: none\n\n(cherry picked from commit df456e13a1127e3c8594b1d22ea4a9b3dca67a4b)\n\nMerged-In: Id04f9080e7f75608deeb49306aec34941e71794c\nChange-Id: I64eae49f646365b7cd1683a689315fe03bf0bdd9\n"
    },
    {
      "commit": "dc54ad7fc37888a1bb3db0d19dec5a6aca167cf0",
      "tree": "861f27397d908e3016a61e8e5aaae8cd2600d27e",
      "parents": [
        "d065cf049e870465571afb9c55d3d033a314015b",
        "db8adb798394af6381974444bfa0c47f4b30f0fb"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Sat Apr 22 00:31:27 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Apr 22 00:31:28 2017 +0000"
      },
      "message": "Merge \"NsdManager: add unit tests\""
    },
    {
      "commit": "b90b2015d3d4e1e165c587738c136709ed8a409c",
      "tree": "b7b9901f859002780c0eff04041729435aef1868",
      "parents": [
        "e4f56a7e44aa707db45970e9471e2603ee0ee24e",
        "a7e148a87440a047cdd99179a99939a73e383d44"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 21 23:12:51 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 21 23:12:52 2017 +0000"
      },
      "message": "Merge \"Mark Restricted APN connections as restricted.\""
    },
    {
      "commit": "a7e148a87440a047cdd99179a99939a73e383d44",
      "tree": "9c084dbaf8cee30f2994db966ff10b785bbc571c",
      "parents": [
        "9487dff8ab8a55202016137f464567b0adbf1f7f"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Mon Apr 10 14:32:23 2017 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Apr 21 22:00:17 2017 +0000"
      },
      "message": "Mark Restricted APN connections as restricted.\n\nIf anything unrestricted is bundled in the whole thing has to be\nunrestricted (we can\u0027t restrict based on destination or intent)\nbut the NOT_METERED flag wasn\u0027t taken into account.\n\nThis wasn\u0027t a problem before because telephony set that statically\nand late, but a change caused it to be marked NOT_METERED earlier\nwhich exposed this bug.\n\nbug: 37208956\nMerged-In: I7b7a1c38621ce0ecde8cf041e82b1ebb7a9c6f15\nTest: new NetworkCapabilitiesTest.  Fails without fix, works with.\nChange-Id: I86c1b2854413a94662aa53e697d32380695ab9ac\n"
    },
    {
      "commit": "4634b5cd27b274105e550f58f9d5fc51c79eb3fb",
      "tree": "2d1401684fe3ccd0abfd43c3b241b7f4a5ef7e23",
      "parents": [
        "946410eef568ecb9f3771b9c78b16290e694b10e"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Fri Apr 21 04:59:55 2017 -0700"
      },
      "committer": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Fri Apr 21 20:28:39 2017 +0000"
      },
      "message": "Bluetooth: improve getLeMaximumAdvertisingDataLength comment\n\nBug: 37534792\nTest: none\nChange-Id: Ieff71356aceb0e2a4c6e81d9053f854448e0c927\n"
    },
    {
      "commit": "859748f08c42ddff5693c48d17bed633cbfe9cce",
      "tree": "8a222bf7820976fce23144109781f47b3bba39d7",
      "parents": [
        "946410eef568ecb9f3771b9c78b16290e694b10e"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Mon Apr 03 17:42:34 2017 -0700"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Fri Apr 21 18:47:35 2017 +0000"
      },
      "message": "[AWARE] Add UID checking to WifiAwareNetworkSpecifier\n\nWifi Aware networks are per app - i.e. a requestor gets\na dedicated network. Change verifies that the only the\noriginal requestor matches the created network (using UID).\n\nBug: 36053921\nTest: Integration (sl4a) tests\nChange-Id: I4ff3994731dd7ccb88e2bea333d1e6905b136f02\n"
    },
    {
      "commit": "db8adb798394af6381974444bfa0c47f4b30f0fb",
      "tree": "782297a36a79493350589887d4bd7bacb35c76bd",
      "parents": [
        "1321e592fe8ba8f3d975d0e8af6c4fec84481ff4"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Apr 17 15:27:52 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 21 05:16:37 2017 +0000"
      },
      "message": "NsdManager: add unit tests\n\nThis prepares some refactoring and the addition of a timeout to\nresolveService.\n\nTest: new tests pass\nBug: 37013369, 33298084\nChange-Id: Ie8277bd5983278507bfa70495b4ce7d13895b24b\n"
    },
    {
      "commit": "1321e592fe8ba8f3d975d0e8af6c4fec84481ff4",
      "tree": "3f25f94e3cdf651e6e98a868d068fd9c85520d3f",
      "parents": [
        "c5680c9b05a645bfe474f2885f72fa669854f11c",
        "8ab86a6dc69df639a61a52ed54a3caaf747e95df"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 21 01:58:14 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 21 01:58:16 2017 +0000"
      },
      "message": "Merge \"Add BitUtils (from \"Support multiple filters per association request\")\""
    },
    {
      "commit": "ad4d1d8e28618546953e75d4983335631feb6f2a",
      "tree": "031392afe3e46fb64dacf79f6b5b6c846f8652a5",
      "parents": [
        "b44f4d2f51f21fa2c91888328612380c86cfedf6"
      ],
      "author": {
        "name": "Stanley Tng",
        "email": "stng@google.com",
        "time": "Mon Apr 17 22:35:45 2017 -0700"
      },
      "committer": {
        "name": "Andre Eisenbach",
        "email": "eisenbach@google.com",
        "time": "Thu Apr 20 23:34:20 2017 +0000"
      },
      "message": "Allow the Bluetooth MAC address to be updated asynchronously (2/3)\n\nThere are intermittent issues where either the returned Bluetooth\nMAC address to Java framework is uninitialized or this address update\narrives too late. This fix will do 2 things:\n(1) Returns error when MAC address is unavailable in the native code.\n(2) Updates the MAC address later by adding a new broadcast event.\n\nTest: Check address for these cases: factory reset, system reboot, and\nBluetooth re-enable.\nBug: 36709382\n\nChange-Id: I09720193e38fdf9139e1bb146f8e1847e2b65b1a\n"
    },
    {
      "commit": "4c7a999d79eabbd8d0fea831ab3ae8162bd29a7e",
      "tree": "eb625939e02fffd896b277b8b2d9c0d94c63df3b",
      "parents": [
        "458f75ef698441e69d2d7dc2189b5fd634b2999e",
        "8351faa900acdba1022f03bb3f18e26f539eadae"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 20 12:47:53 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 20 12:47:55 2017 +0000"
      },
      "message": "Merge \"Add local-only hotspot info into tether state change broadcast\""
    },
    {
      "commit": "458f75ef698441e69d2d7dc2189b5fd634b2999e",
      "tree": "03c365e42438ee78bb2bd994f418e575bf528ba2",
      "parents": [
        "fe86a197a112e248f6defede035657c508f41e8b",
        "dba33db57294f4b2d8a2207c91f910d4de5c5262"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 20 12:38:27 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 20 12:38:29 2017 +0000"
      },
      "message": "Merge \"ConnectivityManager: remove obsolete callback types\""
    },
    {
      "commit": "8351faa900acdba1022f03bb3f18e26f539eadae",
      "tree": "96a9213838c4ef9e49915530d0c1be7e6ed020ca",
      "parents": [
        "fe86a197a112e248f6defede035657c508f41e8b"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Mon Apr 17 16:47:23 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 20 19:44:01 2017 +0900"
      },
      "message": "Add local-only hotspot info into tether state change broadcast\n\nTest: as follows\n    - build\n    - flashed\n    - booted\n    - \"runtest frameworks-net\" passes\n    - manually starting tethering shows Settings and icon updates\nBug: 31466854\nBug: 32163131\n\nChange-Id: I938074587dfeec221c5cdb43a392802ad3fc3589\n"
    },
    {
      "commit": "fe86a197a112e248f6defede035657c508f41e8b",
      "tree": "a7e88571b4ab58ce1ae73387b5020e8a49839790",
      "parents": [
        "0a4dc6a5d239d712bed79854f1d296149d6160da",
        "335d2edee28fdd9991d87f3df8799c7ff1bcd3cd"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Apr 20 04:28:52 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 20 04:28:53 2017 +0000"
      },
      "message": "Merge \"Make tetherChangePermission to be secured for AppOps permission\""
    },
    {
      "commit": "8ab86a6dc69df639a61a52ed54a3caaf747e95df",
      "tree": "825399a34cb1afa9396c89789ad70fba719be400",
      "parents": [
        "f2e698835073a03f993010824b2da458d7ccfa92"
      ],
      "author": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Thu Feb 23 18:24:39 2017 -0800"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 20 12:16:48 2017 +0900"
      },
      "message": "Add BitUtils (from \"Support multiple filters per association request\")\n\nThis patch is a cherry-pick of the BitUtils class from commit\n36e866b8e0ec08e45b5e7fbc65aeeb3a9bb7b11e.\n\n(cherry picked from commit 36e866b8e0ec08e45b5e7fbc65aeeb3a9bb7b11e)\n\nTest: none\nChange-Id: Iaf33929f6841db273a92d650e84287bf2964fa3d\nMerged-In: I0a978787551a1ee5750ec5544b241d3bbfed5a7c\n"
    },
    {
      "commit": "dba33db57294f4b2d8a2207c91f910d4de5c5262",
      "tree": "100dfb1ee4272ae5e17e03b4f268edbe4ae38226",
      "parents": [
        "a0385686769c077a163768f1eb3f8df10e30ccd9"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Mar 23 22:40:44 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 20 10:42:38 2017 +0900"
      },
      "message": "ConnectivityManager: remove obsolete callback types\n\nThis patch also:\n  - suppresses callback triggers from ConnectivityService for these\n    obsolete callback types.\n  - marginally refactors callCallbackForRequest().\n\nTest: runtest frameworks-net\nChange-Id: Idfb75640732943c599de4975f252f706d21ad594\n"
    },
    {
      "commit": "a0385686769c077a163768f1eb3f8df10e30ccd9",
      "tree": "f3a909cdabf0638f65bf3e73c37f54103ec1d263",
      "parents": [
        "f2e698835073a03f993010824b2da458d7ccfa92"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Wed Mar 22 17:07:57 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 20 10:42:38 2017 +0900"
      },
      "message": "ConnectivityManager: unify prety printing of callback types.\n\nAnd also remove some small code duplication (checkNotNull).\n\nTest: built, flashed, runtest frameworks-net\nChange-Id: Id6c13bca9d12f70b88806032e0a4fa198efbedc6\n"
    },
    {
      "commit": "4bc4a441007e0a9ef6ccd1816c831ffd2dfa4c18",
      "tree": "0431a537eecbfd823e00f21e855c3c939bdf6157",
      "parents": [
        "9487dff8ab8a55202016137f464567b0adbf1f7f"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Wed Apr 19 06:52:08 2017 -0700"
      },
      "committer": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Wed Apr 19 21:32:57 2017 +0000"
      },
      "message": "Expose LE advertiser address for easier PTS tests (1/6)\n\nThis patchset adds a hidden method getOwnAddress, that lets app with\nBLUETOOTH_PRIVILEGED permission to lear their own addreess. This is done\nexclusively for PTS tests.\n\nBug: 35147497\nTest: manual\nChange-Id: Iaf0f2fe0613de44b8430ac25e691d66a4ad44f8d\n"
    },
    {
      "commit": "335d2edee28fdd9991d87f3df8799c7ff1bcd3cd",
      "tree": "0d7fbde157ae6b32e1ed332da5b688ea27ed6e5c",
      "parents": [
        "58b5789cdee9265453c20454219cf2fd927a7d73"
      ],
      "author": {
        "name": "Tetsutoki Shiozawa",
        "email": "tetsutoki.x.shiozawa@sonymobile.com",
        "time": "Wed Mar 16 23:30:57 2016 +0900"
      },
      "committer": {
        "name": "Shunta Sato",
        "email": "shunta.sato@sonymobile.com",
        "time": "Wed Apr 19 16:50:33 2017 +0900"
      },
      "message": "Make tetherChangePermission to be secured for AppOps permission\n\nSymptom:\nAppOps verified the incorrect package of calling tether state\nchanging API.\nIt threw SecurityException by mistake.\n\nSolution:\nPass the correct package name to enforceTetherChangePermission.\n\nBug: 32931147\nChange-Id: Ia1167f26f556678b189a24a4a716f1a7e5cb12eb\n"
    },
    {
      "commit": "de74891d1c603326691678ec301c80b4525bc4ef",
      "tree": "dc07e39ee931f296df635d5227a634dc2c9e605e",
      "parents": [
        "fe358c6adfb67afe42071f94ccad3d9e4a920f34"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Fri Apr 14 07:21:20 2017 -0700"
      },
      "committer": {
        "name": "Andre Eisenbach",
        "email": "eisenbach@google.com",
        "time": "Tue Apr 18 20:47:03 2017 +0000"
      },
      "message": "Read by UUID for PTS tests (1/5)\n\nAdd a hidden api for reading characteristic by UUID for PTS.\n\nBug: 35150313\nTest: sl4a GattReadTest.byUuid\nChange-Id: Ice4076d99e4694d20374ba0fdcae74d5ae841147\n"
    },
    {
      "commit": "da18b028f85e9a2c969c636aea6abf7f4bac3922",
      "tree": "a5a341cbdc4b387e5cf5051e6624e1b45af09924",
      "parents": [
        "0bfb2075320a9f648fc2b3fcdfc58f425c9a685a"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Mon Apr 17 19:34:33 2017 -0700"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Mon Apr 17 19:41:08 2017 -0700"
      },
      "message": "Hide Socket+DatagramSocket IpSecTransform methods\n\nThese methods do not currently work for IPv4 sockets,\nso they need to be hidden until the underlying kernel\ncode can be made to work properly in a dual-stack\nenvironment.\n\nBug: 36073210\nTest: compilation\nChange-Id: Idce367f638a42da374a7f1dc5ebb8931c9555e06\n"
    },
    {
      "commit": "0bfb2075320a9f648fc2b3fcdfc58f425c9a685a",
      "tree": "8347a5da380c99817916f46402efc2b24080273a",
      "parents": [
        "6d033475b307ae95d0e733a3be9260525aa2879d"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Mon Apr 17 17:11:58 2017 -0700"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Mon Apr 17 17:57:41 2017 -0700"
      },
      "message": "Consistenly Throw IOExceptions from IpSecManager\n\nBug: 36073210\nTest: api-update\nChange-Id: Ia3825e85b09b6330f1326a26cf9e1cadf9dacf71\n"
    },
    {
      "commit": "6d033475b307ae95d0e733a3be9260525aa2879d",
      "tree": "146ae7963bf7274f7abfd0491814432e05147d59",
      "parents": [
        "286b5f117deb105b5550eb579d543c761de7ad74",
        "875a4ba352271ca0a7469d27a42b21247ba62ee3"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Apr 17 18:12:27 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 17 18:12:30 2017 +0000"
      },
      "message": "Merge changes from topic \u0027vintf_check_compat_native\u0027\n\n* changes:\n  Update for removing mount arg to VintfObject::CheckCompatibility\n  Add Java API for libvintf.\n"
    },
    {
      "commit": "875a4ba352271ca0a7469d27a42b21247ba62ee3",
      "tree": "2c6dbd663a5ec20a7ecea686349b380212f7ac68",
      "parents": [
        "4e01db8c12a497f4380a8e5855de98fbe25686e6"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Fri Apr 14 15:39:20 2017 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Sat Apr 15 00:53:42 2017 -0700"
      },
      "message": "Update for removing mount arg to VintfObject::CheckCompatibility\n\nIt is default to false.\n\nTest: pass\nBug: 36814503\n\nChange-Id: Ib06850d3355f54996b17cc6c2980a7d17af132e5\n"
    },
    {
      "commit": "1a8f04b1b2b859cd1d40e338dc91d6932d0a3a16",
      "tree": "55089bfdbf76fe99116878b25d1eb6c2a1b4f1b9",
      "parents": [
        "76b3537dfdee282a0028e6a96d670eb0aa607e99",
        "dafed3d00818713b60ec09cfff482487a3405202"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 14 15:10:08 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 14 15:10:10 2017 +0000"
      },
      "message": "Merge \"ConnectivityManager: release all requests mapping to a callback.\""
    },
    {
      "commit": "dafed3d00818713b60ec09cfff482487a3405202",
      "tree": "a1cb5a5e865a8dc9aaf55d164bb47ed3fe086138",
      "parents": [
        "9ea45b6106cefad09e1cb0235801ec9ec4f918f1"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Mar 06 09:17:06 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 14 22:17:21 2017 +0900"
      },
      "message": "ConnectivityManager: release all requests mapping to a callback.\n\nThis patch changes how callback unregistration works in order to be\nconsistent with undocumented use cases currently de-facto supported\nby the API (although in a buggy way):\n  - callback recycling: releasing then reregistering a callback again.\n  - multiple request registrations with the same callback.\n\nThe second use case is not desirable but needs to be taken into account\nfor now for the purpose of correctly releasing NetworkRequests\nregistered in ConnectivityService.\n\nIn order to support request release in both use cases with minimal\namount of complexity for the time being the following changes are done:\n  - request to callback unmapping is done synchronously at callback\n    release time.\n  - all requests associated to a callback are unmapped at callback\n    release time.\n\nThis fixes the following issues:\n  - a callback stops being triggered as soon as it is released.\n    Otherwise when recycling the callback immediately, it is possible\n    the previous request associated with it triggers it, confusing the\n    app.\n  - when a callback is registered multiple times, the requests are not\n    leaked.\n  - when a callback is registered multiple times and then released, the\n    N-1 first registrations do not trigger the callback anymore.\n\nIn the future it would be desirable to enforce the intended 1:1 mapping\nbetween callbacks and requests at registration time.\n\nBug: 35921499, 35955593, 20701525\nTest: - added new tests in ConnectivityManagerTest to test releasing,\n      recycling, and a disabled test for no multiple regristration.\n      - new tests catch regression causing b/35921499, b/35955593.\nChange-Id: Ia0917ac322fc049f76adb4743bc745989fed6d26\n"
    },
    {
      "commit": "76b3537dfdee282a0028e6a96d670eb0aa607e99",
      "tree": "9d4f187559d7e152b3ae1e29179e18ca9f4016aa",
      "parents": [
        "e98a2942a47c26d7c1e54717cfc518ab9486d795",
        "eef918a66c984ac7bb1f541665f4dc9bb88ea7ac"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Apr 14 06:41:07 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 14 06:41:08 2017 +0000"
      },
      "message": "Merge \"Captive portal: rotate fallback urls\""
    },
    {
      "commit": "e98a2942a47c26d7c1e54717cfc518ab9486d795",
      "tree": "1df2d1c22b4fddd0477bf23e5c121c01fea0b6a9",
      "parents": [
        "9ea45b6106cefad09e1cb0235801ec9ec4f918f1",
        "84b3139de576e8cb864375415a842e7c6d16a11b"
      ],
      "author": {
        "name": "Rebecca Silberstein",
        "email": "silberst@google.com",
        "time": "Fri Apr 14 04:03:48 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 14 04:03:50 2017 +0000"
      },
      "message": "Merge \"Add a default SSID prefix for local only hotspot\""
    },
    {
      "commit": "4e01db8c12a497f4380a8e5855de98fbe25686e6",
      "tree": "e908a3ea4d7eae272fed9071bdd165d2b7f06580",
      "parents": [
        "183c93f6a09a879fbb0e079cb4cb351aa0fa9846"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Apr 05 14:42:05 2017 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Thu Apr 13 18:04:30 2017 -0700"
      },
      "message": "Add Java API for libvintf.\n\nandroid.os.VintfObject has two methods:\n\n- report: return device info that can be reported to OTA server\n- verify: verify that metadata for a given OTA package is\n          compatible.\n\nTest: pass\nTest: adb shell am instrument -w -e class android.os.VintfObjectTest \\\ncom.android.frameworks.coretests/android.support.test.runner.AndroidJUnitRunner\n\nBug: 36814503\n\nChange-Id: Iff8fae289eec8ae9cfc327d0d0d36a1cdd5e6800\n"
    },
    {
      "commit": "eef918a66c984ac7bb1f541665f4dc9bb88ea7ac",
      "tree": "7e95cc2721f9d44d3d57682cde4f1feb815d0f24",
      "parents": [
        "9ea45b6106cefad09e1cb0235801ec9ec4f918f1"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Apr 10 17:43:08 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Apr 14 08:19:39 2017 +0900"
      },
      "message": "Captive portal: rotate fallback urls\n\nThis patch introduces a new settings value to specify more than one url\nfor the fallback http probe in addition to the existing settings value.\nIf more than one url exists, a network will rotate urls for the fallback\nprobe one by one everytime the fallback probe is sent.\n\n(not like commit 0908daaaf00e6b56ebed0a0fce9c3e3fe183a06b, this patch\nuses a comma to separate fallback urls, which works as expected with\nJava\u0027s String.split())\n\nTest: built, flashed, tested manually with various portal networks.\nBug: 36532213\nChange-Id: I3c010bfee5b99db03a500776fbf47959a29d0578\n"
    },
    {
      "commit": "9ea45b6106cefad09e1cb0235801ec9ec4f918f1",
      "tree": "aea12e6dd0b7d4226fb99e358ba27e678a3b707e",
      "parents": [
        "891cab55d3d1c9465dba95ae0fd7c8174c9f07ac",
        "2e43e45e1e108fa4ac9ee66da7de7a4447e7bad7"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 13 13:25:40 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 13 13:25:42 2017 +0000"
      },
      "message": "Merge \"Revert \"Captive portal: rotate fallback urls\"\""
    },
    {
      "commit": "2e43e45e1e108fa4ac9ee66da7de7a4447e7bad7",
      "tree": "d63b614adbb5b5ea2ef138b4b2ae87b3c05358d5",
      "parents": [
        "0908daaaf00e6b56ebed0a0fce9c3e3fe183a06b"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 13 12:43:49 2017 +0000"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 13 12:43:49 2017 +0000"
      },
      "message": "Revert \"Captive portal: rotate fallback urls\"\n\nAfter discussion in the cl we agreed to use \"|\" as a separator. However  String.split() input arg is a regex and not a literal string, so that \"|\" will actually split the urls characters per characters.\n\nWill revert and resubmit with a comma.\n\nThis reverts commit 0908daaaf00e6b56ebed0a0fce9c3e3fe183a06b.\n\nChange-Id: Ifab25e41bec806fbc1d2c13ffd81d4ad91598c89\n"
    },
    {
      "commit": "c923752929e8221fdcaf75bae3db00872b894bb7",
      "tree": "34ec7fd5a0173159fc2109b18a4f66c5ecc29f4a",
      "parents": [
        "0ef8df6d52adf157ed931ef9d346043d28ecac0a",
        "a415870221ec732290a0c77698da3c1b87818e8d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Apr 13 09:24:32 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 13 09:24:33 2017 +0000"
      },
      "message": "Merge changes Ia15f77e2,Icaa1f95c\n\n* changes:\n  Captive portal: regroup hardcoded http response codes.\n  Captive portal: rotate fallback urls\n"
    },
    {
      "commit": "0908daaaf00e6b56ebed0a0fce9c3e3fe183a06b",
      "tree": "0570237d83753987a65d1c07eefe91a237860f97",
      "parents": [
        "d0f476bdaef85ac178c97b76f0589604f11fd109"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Apr 10 17:43:08 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Apr 13 16:45:44 2017 +0900"
      },
      "message": "Captive portal: rotate fallback urls\n\nThis patch introduces a new settings value to specify more than one url\nfor the fallback http probe in addition to the existing settings value.\nIf more than one url exists, a network will rotate urls for the fallback\nprobe one by one everytime the fallback probe is sent.\n\nTest: built, flashed, tested manually with various portal networks.\nBug: 36532213\nChange-Id: Icaa1f95c5914e8840c83ccdf071047358a5b760f\n"
    },
    {
      "commit": "84b3139de576e8cb864375415a842e7c6d16a11b",
      "tree": "b6aa99e3bf9d4cc2a88495ff401f57900fbc7805",
      "parents": [
        "4a43598bd6c622d1e45b6b5d138cae72f5ea2e47"
      ],
      "author": {
        "name": "Rebecca Silberstein",
        "email": "silberst@google.com",
        "time": "Sat Mar 25 17:19:38 2017 -0700"
      },
      "committer": {
        "name": "Rebecca Silberstein",
        "email": "silberst@google.com",
        "time": "Thu Apr 13 00:43:18 2017 -0700"
      },
      "message": "Add a default SSID prefix for local only hotspot\n\nAdd a default prefix for local only hotspot that will be used to\ngenerate WifiConfiguration objects.  This prefix will have\nrandom digits appended to reduce AP name collisions.\n\nBug: 36704909\nTest: compiles\n\nChange-Id: I2b9478a12de27cabe13ece2973bce7cd4976ba2f\n"
    },
    {
      "commit": "ab3901dc8b1a8e77b83be362415920b955fdcbae",
      "tree": "c5c7b6a9319fe72d51509383283f2944816e923c",
      "parents": [
        "d0f476bdaef85ac178c97b76f0589604f11fd109",
        "c86013be936f36c61fa0cdfad95141f6de3c6ef7"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 13 05:18:46 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 13 05:18:47 2017 +0000"
      },
      "message": "Merge \"Move some NetworkStats tests to tests/net.\""
    },
    {
      "commit": "d0f476bdaef85ac178c97b76f0589604f11fd109",
      "tree": "d63b614adbb5b5ea2ef138b4b2ae87b3c05358d5",
      "parents": [
        "a9acf9db97db75457fc37880ca7f14e605ea1f17",
        "39c6014666e778a48212a60216ab89152aafd3ae"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Apr 12 22:27:35 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Apr 12 22:27:37 2017 +0000"
      },
      "message": "Merge changes from topic \u0027network_specifier\u0027\n\n* changes:\n  [CM] Unhide the NetworkSpecifier as object API\n  Make the NetworkSpecifier a class instead of a string.\n"
    },
    {
      "commit": "a9acf9db97db75457fc37880ca7f14e605ea1f17",
      "tree": "aa301f269b573aafb1709c81a9f81ac2b966addb",
      "parents": [
        "4718606368ddc73580078d5a5ccfbbf3a71a666f",
        "9e377194e35c0fb9ac5771f5658c095ed97e0838"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Wed Apr 12 21:22:26 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Apr 12 21:22:29 2017 +0000"
      },
      "message": "Merge \"Bluetooth 5 PHY simplification\""
    },
    {
      "commit": "fddf677b8b7caea1784c316b96f8fcd73eb28775",
      "tree": "fd8ca1353ea01d4bcf9bae28a46f3d1df6dd5e49",
      "parents": [
        "70fea2df2a1bfc6f4981a6d3f636e26f3cb96490",
        "b64993559b049327365bb63e81e8046a892a1033"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Wed Apr 12 18:13:55 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Apr 12 18:13:57 2017 +0000"
      },
      "message": "Merge changes from topic \u0027ipsec-api-tweaks\u0027\n\n* changes:\n  Add FileDescriptor Versions of applyTransportModeTransform()\n  IpSecManager and IpSecAlgorithm API Tweaks\n"
    },
    {
      "commit": "9e377194e35c0fb9ac5771f5658c095ed97e0838",
      "tree": "3b447ccd072693429ee95483478a7255bef60dfd",
      "parents": [
        "70fea2df2a1bfc6f4981a6d3f636e26f3cb96490"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Wed Apr 12 08:51:22 2017 -0700"
      },
      "committer": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Wed Apr 12 10:57:03 2017 -0700"
      },
      "message": "Bluetooth 5 PHY simplification\n\nHaving PHY_LE_* constants defined in four different places, with one\nvalue being different than others is misleading. Leave just PHY_LE_*\ndefinitions in BluetoothDevice, and add PHY_LE*_MASK for the mask used\nin PHY update API.\n\nThis patch also removes need to translate PHY value between PHY update\nrequest and event, as mask is used for request, and the value is\nreturned in event.\n\nBug: 30622771\nTest: manual\nChange-Id: I897effa1204a024465d55501c83c542566c4d37c\n"
    },
    {
      "commit": "c86013be936f36c61fa0cdfad95141f6de3c6ef7",
      "tree": "9937e64aabc108e781468ff5ef9c5594b3094b06",
      "parents": [
        "70fea2df2a1bfc6f4981a6d3f636e26f3cb96490"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 13 01:18:05 2017 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Thu Apr 13 02:38:11 2017 +0900"
      },
      "message": "Move some NetworkStats tests to tests/net.\n\nThis groups them together with the rest of the networking unit\ntests. It also speeds up compile/test cycles (\"runtest -x\" of one\nfile goes from 1m15s to 30s).\n\nTest: runtest frameworks-net passes on internal tree\nChange-Id: I53cb0c51355fe4b4b30e451fa09fbbf58da39efd\n"
    },
    {
      "commit": "70fea2df2a1bfc6f4981a6d3f636e26f3cb96490",
      "tree": "d1d20c45715b560163ca7582000cce804ae5965a",
      "parents": [
        "923ef69ae739fc60ed192b55bf7601c161222062",
        "38623f09e712ea2bf280d20f0c20c453a6f0abb3"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Wed Apr 12 15:15:32 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Apr 12 15:15:34 2017 +0000"
      },
      "message": "Merge \"Adding 20 free short codes for DCB and other purposes\""
    },
    {
      "commit": "d269f30d62d9ea142790736c7509bb3b5637a38c",
      "tree": "889dff9e8f58105cba33127dd742e0f37515c75f",
      "parents": [
        "cf39eea407efc9cd9196cecd042d91a07b4bfcce",
        "1886a155f21ea33b71ed76871eb22cdb6a3dbe3f"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Apr 11 23:59:28 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 11 23:59:30 2017 +0000"
      },
      "message": "Merge \"Fix some maps to be HEAP_DALVIK_CODE_CACHE instead of HEAP_DALVIK_ACCOUNTING\""
    },
    {
      "commit": "1886a155f21ea33b71ed76871eb22cdb6a3dbe3f",
      "tree": "e3be75efdc597ade4ace09e4640d94c57c5097a4",
      "parents": [
        "d3128d4b55d6ef8ea1e73d205f1ed450ca58681b"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Apr 10 18:28:03 2017 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Apr 11 13:52:53 2017 -0700"
      },
      "message": "Fix some maps to be HEAP_DALVIK_CODE_CACHE instead of HEAP_DALVIK_ACCOUNTING\n\ndalvik-data-code-cache and dalvik-CompilerMetadata should be counted\nin JITCache instead of .GC in dumpsys.\n\nBug: 37224159\nTest: adb shell dumpsys meminfo -d\n\n(cherry picked from commit 874c4cf56c0a9ea3b48468a13ec7fb78a3e2594b)\n\nChange-Id: I41def949d91b2fdef0b3f502fe16ae436d058051\n"
    },
    {
      "commit": "b64993559b049327365bb63e81e8046a892a1033",
      "tree": "6b633415e43b808551bf41e1328d99624655071e",
      "parents": [
        "6045429b35ca4c1cbd920e5e0872dec9de493fde"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Thu Apr 06 17:46:00 2017 -0700"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Tue Apr 11 10:14:11 2017 -0700"
      },
      "message": "Add FileDescriptor Versions of applyTransportModeTransform()\n\nBecause there is no way using the Java sockets API to actually\nget a socket of AF_INET on mode machines, it is necessary to\nprovide a way to apply transforms to sockets made using the\nnative wrapper API, which uses POSIX APIs and will create a\nsocket that is AF_INET.\n\nBug: 36073210\nTest: b/34811227\nChange-Id: I28ac7cc4f36045ce523a54111e5be975b0331356\n"
    },
    {
      "commit": "6045429b35ca4c1cbd920e5e0872dec9de493fde",
      "tree": "52abf8136002dbbb625493274eb4151d6ca18b3d",
      "parents": [
        "4a43598bd6c622d1e45b6b5d138cae72f5ea2e47"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Thu Apr 06 18:16:28 2017 -0700"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Tue Apr 11 10:14:10 2017 -0700"
      },
      "message": "IpSecManager and IpSecAlgorithm API Tweaks\n\n-Add a reserveSecurityParamterIndex() function that allows the\n system to select an SPI.\n-Disallow INVALID_SECURITY_PARAMETER_INDEX from being passed as\n an explicit SPI request.\n-Remove the ALGO_ prefix from constants in IpSecAlgorithm\n\nBug: 36073210\nTest: Updated CTS tests still pass on bullhead\nChange-Id: Ic94809996076b0718f153f550b82192fe7048a2e\n"
    },
    {
      "commit": "8143fa57adfbb4a5cc253e4ef68663525a8f81eb",
      "tree": "ca1b74f94f6780e5743f32aa86d40424af538f67",
      "parents": [
        "763765b1b11dfd2e83ba738c0e3aad8196240714"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Fri Apr 07 11:26:26 2017 -0700"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Tue Apr 11 07:31:40 2017 -0700"
      },
      "message": "jni: isLoggable: adapt to removal of property name size limit\n\nThere is no longer a name size limit to the properties, remove\nillegalArgumentException if tag length is too large.\n\nTest: build\nBug: 36696208\nChange-Id: I4b4329c8c951082ed0d777cdd70ee3e773bed16c\n"
    },
    {
      "commit": "e6c453d828fec3df82708d2b0c3bb00bd0a0dbf8",
      "tree": "0d9093f21cee7a4a3702ece5eef0d8df54e5c50e",
      "parents": [
        "bc0f610b25a8e708d7dbf411fb80a028064008fe"
      ],
      "author": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Mon Apr 10 13:45:16 2017 -0700"
      },
      "committer": {
        "name": "Jakub Pawlowski",
        "email": "jpawlowski@google.com",
        "time": "Tue Apr 11 06:18:44 2017 +0000"
      },
      "message": "Remove enable from PeriodicAdvertisingPariameters (1/2)\n\nInstead of setting enable to true, one can just pass null\nPeriodicAdvertisingParameters and achieve same result when starting the\nset.\nPassing the \"enable\" when updating the parameters make no sense, and\nmight be confusing.\nExperience with \"timeout\" field, which was a part of AdvertiseSettings\nshow that merging fields that go into different HCI commands can cause\nproblems during processing, so keep enable as separate field.\n\nTest: manual\nBug: 30622771\nChange-Id: Ida02c59eb8433537179b4d22202fe745f8b4bb3e\n"
    },
    {
      "commit": "e86bdcaed1372aa05bdfba175007b05613aecd9b",
      "tree": "7f0176f1f9bb026271d261405c6a624101c73255",
      "parents": [
        "d3128d4b55d6ef8ea1e73d205f1ed450ca58681b"
      ],
      "author": {
        "name": "Jack He",
        "email": "siyuanh@google.com",
        "time": "Thu Nov 17 16:19:43 2016 -0800"
      },
      "committer": {
        "name": "Andre Eisenbach",
        "email": "eisenbach@google.com",
        "time": "Mon Apr 10 19:49:36 2017 +0000"
      },
      "message": "Add developer setting and system API for inband ringing support\n\n* Add 1 system API to check inband ringing flag in config.xml\n\tstatic isInbandRingingSupported(Context)\n* Add developer menu options to enable this feature\n\nBug: 19171297\nTest: mm -j 40, HFP regression testing, testplans/82144\nChange-Id: Iaf56ea41911f546bbc7ae1f82e399d0f8d48f75f\n"
    },
    {
      "commit": "7a12f7efc79ba3848c82ebc7b74d1ada11f970e0",
      "tree": "ec93745c7cdd95aac8a7d9a13ad31d7c36924da7",
      "parents": [
        "b2adaad26b7f7f204234bab087437527717d5d48",
        "46aa9c022ed059f1e38f4dbf54d8850e090bce13"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Apr 10 05:40:08 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 10 05:40:10 2017 +0000"
      },
      "message": "Merge \"Add an API hint for metered multipath traffic.\""
    }
  ],
  "next": "35786735df3b2813eec6de687bddc49e459141fc"
}
