)]}'
{
  "log": [
    {
      "commit": "a1dff7719602bad1d98d241442008c006ed9cc59",
      "tree": "c457b5929d41ffb58606d0a84fb72837b1d58c48",
      "parents": [
        "520caf4a75ae374a96e7893b60b3533dfb2224a4"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Thu Jul 06 07:18:28 2017 -0700"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Thu Jul 20 14:00:41 2017 +0000"
      },
      "message": "[P2P] Public API to clean-up resources of P2P\n\n1. Add public API to close a Channel and allow configuration to be\n   cleaned-up. Actual clean-up will only happen when the last p2p\n   client executes close or terminates (binder death is triggered\n   for the service).\n2. Add Close Guard to verify that API is called - issue warning\n   otherwise. Note that to actually get the warning an app needs\n   to use the StrictMode policy:\n\n   StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()\n       .detectLeakedClosableObjects().build());\n\nBug: 37443149\nTest: (new) unit tests, CtsVerifier, Settings/WFD app\nChange-Id: I9590101ef7f7ba0a90812634ac1b931d1482fe72\n"
    },
    {
      "commit": "5a1f7ff0fe1bce8be53a991a0cfb67ec1bb48bf9",
      "tree": "2b9b5aa159284a375e8a5a6a8141f86525537106",
      "parents": [
        "6d626c24e3a0f2ee41cbb0abed77c162dafedacb",
        "ac3bd38735d1e0d7c26ca16721018a17a192c856"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jul 20 03:42:13 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 20 03:42:13 2017 +0000"
      },
      "message": "Merge \"Rename vendorExtension fields to vendorInfo.\""
    },
    {
      "commit": "6d626c24e3a0f2ee41cbb0abed77c162dafedacb",
      "tree": "de86401967521f3dcca14cb2aecc2cecdf5960f0",
      "parents": [
        "bd77b8e920c72fc8ba922747a543cb1d55a67afa",
        "7beabc264b371be485b136319d54e3cfac75dc41"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Thu Jul 20 03:20:22 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 20 03:20:22 2017 +0000"
      },
      "message": "Merge \"Let\u0027s get a constant for O_MR1.\""
    },
    {
      "commit": "7beabc264b371be485b136319d54e3cfac75dc41",
      "tree": "29ae2658f732033538f1a1ec2ec86749d5dff599",
      "parents": [
        "1d47c55407f539d7d57ed16bd088de0a79a6ad82"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jul 19 13:57:35 2017 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Thu Jul 20 03:19:33 2017 +0000"
      },
      "message": "Let\u0027s get a constant for O_MR1.\n\nTest: none\nExempt-From-Owner-Approval: HULK SMASH!\nChange-Id: I440ebae4d0891d9044bbbfb5beaaaa98639aea98\n"
    },
    {
      "commit": "bba76b2d09ca267a947494e3cd4087c357148479",
      "tree": "b5f2647638f4ccfff78a2cc8b841d96256fc812e",
      "parents": [
        "f4b76b6a0c4ca8118d724f7bae1168aa1bbbcd9d",
        "22101ca5a91e36f56b4d7cab2bb8517f679c6c86"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jul 20 01:55:46 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 20 01:55:46 2017 +0000"
      },
      "message": "Merge \"Don\u0027t show a custom description if any transformation fail.\""
    },
    {
      "commit": "5263ad6f8ae1922b5d2066b15a0a7f0d67e4b88f",
      "tree": "e4c0595c02bac5e303248c58eb3049ecde0271be",
      "parents": [
        "2b8d44f907d92941b74d12c3abf7a41e8eff893d",
        "89234305b20551068a88866d802e8ebd63f8b0e7"
      ],
      "author": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Thu Jul 20 00:19:37 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 20 00:19:37 2017 +0000"
      },
      "message": "Merge \"Make EXTRA_IS_REFRESH for voicemail notification public\""
    },
    {
      "commit": "ef8d73353a0e7c47df036c3e9e8bcc92f89a5584",
      "tree": "022973be947d5eb4c1c3058e672cce78979b8dac",
      "parents": [
        "4de4de3fa3e0929f8e5d6d9be1c040708248c667",
        "9da5f1ba583d8e42b6690ddf414298a947c8f07f"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Jul 19 23:43:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 19 23:43:51 2017 +0000"
      },
      "message": "Merge \"media: Add constants for CBP and CHP for AVC codecs\""
    },
    {
      "commit": "ac3bd38735d1e0d7c26ca16721018a17a192c856",
      "tree": "aeae0ac50219ce9f288e189d136c88299aad8c3b",
      "parents": [
        "6b4b646d9c0fa42973a429dbe78c8919a2772961"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Wed Jul 19 14:47:18 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Wed Jul 19 16:26:46 2017 -0700"
      },
      "message": "Rename vendorExtension fields to vendorInfo.\n\nBug: b/63634552\nTest: instrumentation\nChange-Id: Ic552f41dfd5be57fcbc64690358b14070b7efa60\n"
    },
    {
      "commit": "6e292694612780d8d5ce90917c12a33c517c6993",
      "tree": "2fcfe9cdea1e5786cb712c4ca06fab7cc4b4c9b8",
      "parents": [
        "d98427b1bcf42b669dd0ad3c51b7b67fa7bf629f",
        "4482b1413656b9c0c5937b4d7a73235f872a6678"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Wed Jul 19 23:20:26 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 19 23:20:26 2017 +0000"
      },
      "message": "Merge \"Implement out-of-band metadata images.\""
    },
    {
      "commit": "9da5f1ba583d8e42b6690ddf414298a947c8f07f",
      "tree": "07d5bac52df42c46804849cab09cc2cc33c74afe",
      "parents": [
        "ce30ccceafe42a85f4fe376b11a7e281225e3f7c"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Jul 19 15:35:09 2017 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Jul 19 16:02:44 2017 -0700"
      },
      "message": "media: Add constants for CBP and CHP for AVC codecs\n\nBug: 63864332\nChange-Id: Ifd6b8c097df2ca8e706d5797ad9c1e7e7d02b6bc\n"
    },
    {
      "commit": "9fa81d232da0c322a2b813b548e686d045a3a0b3",
      "tree": "304f40658c4b2e4fd8c59a9c99497f0403ccc36b",
      "parents": [
        "b0bcf793a53ec0b3900d212874bfd9b6a2b956f2",
        "d14099d231fa14736aac0f2b822151b0acc4debc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 19 19:02:19 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 19 19:02:19 2017 +0000"
      },
      "message": "Merge \"Unhide several Fingerprint APIs\""
    },
    {
      "commit": "598225ae7b772f9eafb16d6b48b1928ce7ec5959",
      "tree": "dd040a8a29d442a3b4bc4d3fef838685d8379db0",
      "parents": [
        "1e249aeafa3539f2a4a2bb47b1fb2996f7627b01",
        "445c304f5a2a2a93d06bdb24d0cd9472beb0a1fd"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Wed Jul 19 18:40:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 19 18:40:48 2017 +0000"
      },
      "message": "Merge \"UpdateEngine: Expose unbind as system API.\""
    },
    {
      "commit": "4482b1413656b9c0c5937b4d7a73235f872a6678",
      "tree": "ab208b2bfd66c2f5e8eb2d0dd6b90586110209d9",
      "parents": [
        "c05ea28fc5b6d09f79f7fdedb27a84c661d0784c"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Mon Jul 17 13:57:12 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Wed Jul 19 11:20:06 2017 -0700"
      },
      "message": "Implement out-of-band metadata images.\n\nThis saves a lot of HIDL bandwidth, by not including raw image data in\nmetadata vector.\n\nBug: b/63702941\nTest: instumentalization, none added\nChange-Id: I4aa3df126e4e9ab1821d98ea91d4badec5a2cf82\n"
    },
    {
      "commit": "74a77919c897a029d54ebc9a0eaf90801efb3213",
      "tree": "677d38c6d453c66f339180cfd1b5daa8fd12c292",
      "parents": [
        "71b257b5f4fe5a7cbd46ae82a8d33a51fe43b6ac",
        "ea0302a9580c6b026007ca631cd44a8bd9861bc3"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Wed Jul 19 13:55:55 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 19 13:55:55 2017 +0000"
      },
      "message": "Merge \"Add DRMO_MODULATION program identifier type.\""
    },
    {
      "commit": "ea0302a9580c6b026007ca631cd44a8bd9861bc3",
      "tree": "b8c919fb592ae8b4f9cbb7381334d37e5d2475c9",
      "parents": [
        "fee9758c4b15a216eead8d5fec6ecda2231090f3"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Mon Jul 17 15:40:33 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Wed Jul 19 06:53:24 2017 -0700"
      },
      "message": "Add DRMO_MODULATION program identifier type.\n\nBug: b/63702941\nTest: it builds\nChange-Id: I430af5a98fa29f7666be815947c8456fc37e54ab\n"
    },
    {
      "commit": "22101ca5a91e36f56b4d7cab2bb8517f679c6c86",
      "tree": "a1efa9ee522d00bf6c115424519c2fc2cb2efe69",
      "parents": [
        "906b85371766dd696158557987d9b05dc30583e8"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jul 18 08:58:50 2017 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jul 18 17:40:45 2017 -0700"
      },
      "message": "Don\u0027t show a custom description if any transformation fail.\n\nThat could result in an inconsistent, confusing UI. For example, if the\nsuccessfully description for a credit card was \"Exp. date: 04/20\", one with a\nfailure could be \"Exp. date: /20\" - it\u0027s better to not show a custom description\nin these cases.\n\nTest: CtsAutoFillServiceTestCases pass\nTest: CustomDescriptionTest.failFirstFailAll\nTest: CustomDescriptionTest.failSecondFailAll\n\nBug: 62534917\n\nChange-Id: I6554e3470ead2f84d7ef8715192d863c01ab1190\n"
    },
    {
      "commit": "906b85371766dd696158557987d9b05dc30583e8",
      "tree": "796829f544dc309e59d52f87a183449f2cd9cb17",
      "parents": [
        "7fc29dd9311cc36c3eb2a6a05aeed2d39ddcc604"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Jul 17 14:56:17 2017 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jul 18 17:40:45 2017 -0700"
      },
      "message": "Uses Pattern instead of String for new Autofill Save API.\n\nTest: CtsAutoFillServiceTestCases pass\nBug: 62534917\n\nChange-Id: Ic285838465c2aa55e4935cdd8f00c551faa6a972\n"
    },
    {
      "commit": "7fc29dd9311cc36c3eb2a6a05aeed2d39ddcc604",
      "tree": "25861766cfd833c6edd90568496006dfd296fee8",
      "parents": [
        "af11a49d8c2952b7d40611340b8fc4381601920d"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Jul 17 11:38:40 2017 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jul 18 17:40:44 2017 -0700"
      },
      "message": "Changed SaveInfo so it supports just optional ids.\n\nTest: existing CtsAutoFillServiceTestCases pass\nTest: new tests on LoginActivityTest pass\nTest: new SaveInfoTest pass\n\nFixes: 38044993\n\nChange-Id: Iefcf9610b27361585444157616325e9e9a89158f\n"
    },
    {
      "commit": "89234305b20551068a88866d802e8ebd63f8b0e7",
      "tree": "71a7060aa7dd1d4cd6b0cf77fedbfb15de26b744",
      "parents": [
        "3698fc8ea6254c18a87fa6bb5cf459c04c7bcf68"
      ],
      "author": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Tue Jul 18 17:30:35 2017 -0700"
      },
      "committer": {
        "name": "Ta-wei Yen",
        "email": "twyen@google.com",
        "time": "Tue Jul 18 17:35:36 2017 -0700"
      },
      "message": "Make EXTRA_IS_REFRESH for voicemail notification public\n\nThis extra is added in ag/2333070 to let the dialer know if a\nnotification should be silent since the user has alread been notified\n\nChange-Id: Ib2b4ab4cfa1c4baaef4eceb6fa1dab6a8fcfb84d\nFixes: 62202833\nTest: manual - leave voicemail, toggle airplane mode.\n"
    },
    {
      "commit": "af11a49d8c2952b7d40611340b8fc4381601920d",
      "tree": "6388ef8840994b6ccef70c63931c9cd99c4178ca",
      "parents": [
        "d480015b602c6d1d7c1ac99920944b1e3a73c1e0",
        "530b93aae428bf528ac1d2c0b69c179478f0622a"
      ],
      "author": {
        "name": "The Android Automerger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 19 00:27:08 2017 +0000"
      },
      "committer": {
        "name": "The Android Automerger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 19 00:27:08 2017 +0000"
      },
      "message": "Manually merge commit \u0027530b93aae428\u0027\n\n* commit \u0027530b93aae428\u0027:\n  NetworkCapabilities: Unhide TRANSPORT_LOWPAN\n\nBUG:31038431\n"
    },
    {
      "commit": "4b90b5f884fc2f5039f4aa4aa387c48a7084d5a1",
      "tree": "bb5283d979b8dc5fa8b7cad6e39601d91f8a939d",
      "parents": [
        "a6a668317cad51e20c91222c3c0c3e92f68d4c35",
        "dbc78509ae948f47fcafca64778b77ee3cd2b266"
      ],
      "author": {
        "name": "Robert Quattlebaum",
        "email": "rquattle@google.com",
        "time": "Tue Jul 18 23:51:04 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 18 23:51:04 2017 +0000"
      },
      "message": "Merge \"NetworkCapabilities: Unhide TRANSPORT_LOWPAN\" am: 777c408a22 am: 6b0e6946c3\nam: dbc78509ae\n\nChange-Id: I017036f8c63ea1e9c1934daad55ef087b3a83012\n"
    },
    {
      "commit": "6b0e6946c3e1cf65e0b9f6b45902551ea1cf9e62",
      "tree": "87256ce2d66bfcf4c6da159ea100933dafce7098",
      "parents": [
        "8e82bc9961ffe95ec938501bb8960ead5d3d7db2",
        "777c408a220a0bc75b207ab7684b4fba84e1d316"
      ],
      "author": {
        "name": "Robert Quattlebaum",
        "email": "rquattle@google.com",
        "time": "Tue Jul 18 23:33:08 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jul 18 23:33:08 2017 +0000"
      },
      "message": "Merge \"NetworkCapabilities: Unhide TRANSPORT_LOWPAN\"\nam: 777c408a22\n\nChange-Id: I3ae9566ca52b9dae87cace18b1e97897eb8de0ad\n"
    },
    {
      "commit": "777c408a220a0bc75b207ab7684b4fba84e1d316",
      "tree": "50b06b646acdbe9dc08b2f25fc537d4a70b32135",
      "parents": [
        "f126c41de7104a75fbe36bf7b9b1c78d09737001",
        "d95f73c338ed55371c958eeabafc4568f601d2a2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 18 23:09:58 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 18 23:09:58 2017 +0000"
      },
      "message": "Merge \"NetworkCapabilities: Unhide TRANSPORT_LOWPAN\""
    },
    {
      "commit": "445c304f5a2a2a93d06bdb24d0cd9472beb0a1fd",
      "tree": "c859f31e353d8e41368ac3d007d25fe36d78ee9b",
      "parents": [
        "38d9ee4cd661c10e012f71051d23644c65607eed"
      ],
      "author": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Sun Jul 16 11:21:03 2017 -0700"
      },
      "committer": {
        "name": "Tao Bao",
        "email": "tbao@google.com",
        "time": "Tue Jul 18 15:45:12 2017 -0700"
      },
      "message": "UpdateEngine: Expose unbind as system API.\n\nAdd android.os.UpdateEngine.unbind() that unbinds the last bound\ncallback function. update_engine will no longer send status update\nafter unbinding.\n\nBug: 62293007\nTest: Check api/system-current.txt.\nChange-Id: Ide9704986caa7aeb233ba064bb8145972e3b5749\n"
    },
    {
      "commit": "fa9c0be3574ca20fa613f358c876500da90d885a",
      "tree": "252f0016cdcf8b17b86b19a9a0d5002e4531f1e4",
      "parents": [
        "3481d3d8e31d90f83b33815b5c58882a96c2169d",
        "3673863f3b2ec692201b7fb3089a1c05973e08e4"
      ],
      "author": {
        "name": "Charles He",
        "email": "qiurui@google.com",
        "time": "Tue Jul 18 18:47:45 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 18 18:47:45 2017 +0000"
      },
      "message": "Merge \"Opt-out for always-on VPN\""
    },
    {
      "commit": "72e8ceda91733750611a47a86d272f8f3f4867d9",
      "tree": "b21a10858b0f9fb0703cb6e3914029c0b2d6906e",
      "parents": [
        "b70b9f65cb5160cf4616462f8896b088e432d5c2",
        "54587ced033aca263d05e784a038cc717a1d2f3c"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Tue Jul 18 17:00:54 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 18 17:00:54 2017 +0000"
      },
      "message": "Merge \"Make it possible to check if a given program/identifier type is supported.\""
    },
    {
      "commit": "c7cb51099ce9ddb6c82ea32703a943a7cb6be818",
      "tree": "a7c5354aef05d8e688d99960c3c47de288aaecdc",
      "parents": [
        "7e909308d2a6b395b2cc06d526cec81458f59aff",
        "c4cd823a2e4ce62d3a1c6ee6c71bb406c564608c"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Tue Jul 18 16:49:17 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 18 16:49:17 2017 +0000"
      },
      "message": "Merge \"Fill announcement-related gaps in Broadcast Radio APIs.\""
    },
    {
      "commit": "7e909308d2a6b395b2cc06d526cec81458f59aff",
      "tree": "cab61deac01cd038ab5d246d9ca900b0f8dc866e",
      "parents": [
        "9f02a4ee69ff56f964c8bf8aa3e4248c6aa60df4",
        "9f09e6a73df1748e980eff26a57e611d68c7ee9a"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Tue Jul 18 16:17:02 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 18 16:17:02 2017 +0000"
      },
      "message": "Merge \"Unify permissions under UPDATE_DEVICE_STATS.\""
    },
    {
      "commit": "9f02a4ee69ff56f964c8bf8aa3e4248c6aa60df4",
      "tree": "310347bc3039f6a57b2ee2012d9e4b378e0056ec",
      "parents": [
        "38d9ee4cd661c10e012f71051d23644c65607eed",
        "24250ef9481da08f26cdeb2ef7075783662f05ee"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Tue Jul 18 16:15:17 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 18 16:15:17 2017 +0000"
      },
      "message": "Merge \"Deprecate onMetadataChanged.\""
    },
    {
      "commit": "38d9ee4cd661c10e012f71051d23644c65607eed",
      "tree": "0dda3bc5db88275e639f94e06e930bf0c74ff81f",
      "parents": [
        "3779fb5f575adb17152a27b1c86c658217f60a6d",
        "8cfb0e81fdd91b7fe1c02287394ac068287281d5"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Tue Jul 18 15:36:22 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 18 15:36:22 2017 +0000"
      },
      "message": "Merge \"Implement ProgramSelector for font-end Java APIs.\""
    },
    {
      "commit": "8e82f01280ced8361e086232611724822264f752",
      "tree": "75f7093d27bf63cfeaabf36a2331136870b02ba8",
      "parents": [
        "a109f9753e37c211ac2af8995d58ee521aad27d0",
        "d6385d326b59e99c8c0ed7a19cfd6b103ceb3bee"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 18 00:54:41 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 18 00:54:41 2017 +0000"
      },
      "message": "Merge \"WebView: change setSafeBrowsingWhiteList signature\""
    },
    {
      "commit": "3673863f3b2ec692201b7fb3089a1c05973e08e4",
      "tree": "906b7ca09045581374fe55cec1f78e4efa97481b",
      "parents": [
        "2ee0de2593740e3d60829b0f5d3d47bdfbc0ff4e"
      ],
      "author": {
        "name": "Charles He",
        "email": "qiurui@google.com",
        "time": "Mon May 15 17:07:18 2017 +0100"
      },
      "committer": {
        "name": "Charles He",
        "email": "qiurui@google.com",
        "time": "Tue Jul 18 00:55:38 2017 +0100"
      },
      "message": "Opt-out for always-on VPN\n\nAlways-on VPN is a feature introduced in N. Since then, all VPN apps\ntargeting N+ are assumed to support the feature, and the user or the DPC\ncan turn on / off always-on for any such VPN app. However, a few VPN\napps are not designed to support the always-on feature. Enabling\nalways-on for these apps will result in undefined behavior and confusing\n\"Always-on VPN disconnected\" notification.\n\nThis feature provides a new manifest meta-data field through which a VPN\napp can opt out of the always-on feature explicitly. This will stop the\nalways-on feature from being enabled for the app, both by the user and\nby the DPC, and will clear its existing always-on state.\n\nA @hide API is provided to check whether an app supports always-on VPN.\nDocumentation is updated to reflect the behavior change.\n\nBug: 36650087\nTest: runtest --path java/com/android/server/connectivity/VpnTest.java\nTest: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test \u0027com.android.cts.devicepolicy.MixedDeviceOwnerTest#testAlwaysOnVpnUnsupportedPackage\u0027\nTest: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test \u0027com.android.cts.devicepolicy.MixedDeviceOwnerTest#testAlwaysOnVpnUnsupportedPackageReplaced\u0027\nTest: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test \u0027com.android.cts.devicepolicy.MixedProfileOwnerTest#testAlwaysOnVpnUnsupportedPackage\u0027\nTest: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test \u0027com.android.cts.devicepolicy.MixedProfileOwnerTest#testAlwaysOnVpnUnsupportedPackageReplaced\u0027\nTest: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test \u0027com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testAlwaysOnVpnUnsupportedPackage\u0027\nTest: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test \u0027com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testAlwaysOnVpnUnsupportedPackageReplaced\u0027\n\nChange-Id: I477897a29175e3994d4ecf8ec546e26043c90f13\n"
    },
    {
      "commit": "d6385d326b59e99c8c0ed7a19cfd6b103ceb3bee",
      "tree": "8b292fb4561368b6f826546437681766d2538e89",
      "parents": [
        "c7a0402c6ecfba9d4f10707b42b1bd3cbac6f829"
      ],
      "author": {
        "name": "Nate Fischer",
        "email": "ntfschr@google.com",
        "time": "Mon Jul 17 12:58:18 2017 -0700"
      },
      "committer": {
        "name": "Nate Fischer",
        "email": "ntfschr@google.com",
        "time": "Mon Jul 17 23:32:22 2017 +0000"
      },
      "message": "WebView: change setSafeBrowsingWhiteList signature\n\n * Renames WhiteList -\u003e Whitelist\n * Adds a callback to indicate malformed URLs to the application\n\nBug: 63660204\nBug: 63084528\nBug: 63765158\nTest: N/A\nChange-Id: Ia12f0822c5d3a339633a820c40bdbff4137f510b\n"
    },
    {
      "commit": "54587ced033aca263d05e784a038cc717a1d2f3c",
      "tree": "4ec73125e0e55d9199e195bb6cd482f408f4b2b1",
      "parents": [
        "c4cd823a2e4ce62d3a1c6ee6c71bb406c564608c"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Sun Jul 16 15:15:40 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Mon Jul 17 16:28:18 2017 -0700"
      },
      "message": "Make it possible to check if a given program/identifier type is supported.\n\nTest: instrumentalization\nBug: b/63702941\nChange-Id: I436b62fa4cda8458a92a15a75543bedd43e65dcd\n"
    },
    {
      "commit": "c4cd823a2e4ce62d3a1c6ee6c71bb406c564608c",
      "tree": "097ffbdc685c1b81ba84db6af0a2c41901f2b0bc",
      "parents": [
        "24250ef9481da08f26cdeb2ef7075783662f05ee"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Fri Jul 14 10:46:15 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Mon Jul 17 16:28:17 2017 -0700"
      },
      "message": "Fill announcement-related gaps in Broadcast Radio APIs.\n\n- adds TA and TP flags to ProgramInfo struct\n- adds a callback to cancel announcement\n\nBug: b/63702941\nTest: Instrumentalization, VTS\nChange-Id: I09317c8ee837ee3f522037d0a727b095ef9a87a6\n"
    },
    {
      "commit": "24250ef9481da08f26cdeb2ef7075783662f05ee",
      "tree": "e70b52b1b3022beeb5ef59e0876ecbd66e547105",
      "parents": [
        "8cfb0e81fdd91b7fe1c02287394ac068287281d5"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Thu Jul 13 15:59:08 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Mon Jul 17 16:28:17 2017 -0700"
      },
      "message": "Deprecate onMetadataChanged.\n\nAll ProgramInfo changes are passed now by onProgramInfoChanged callback.\n\nThe onMetadataChanged callback is still called for compatibility reasons.\n\nBug: b/32621193\nTest: instrumentalization (none added)\nChange-Id: I80be8d3b55614c618514ac1e081a3ba60f4060b3\n"
    },
    {
      "commit": "8cfb0e81fdd91b7fe1c02287394ac068287281d5",
      "tree": "40c1aec73b5b4a6886f59395aca998b9d27098f4",
      "parents": [
        "e83dbb90fa03173e80fba7de44adab9c023b93e6"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Wed Jul 12 13:59:20 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Mon Jul 17 16:23:05 2017 -0700"
      },
      "message": "Implement ProgramSelector for font-end Java APIs.\n\nBug: b/32621193\nTest: instrumentalization\nChange-Id: Ibb9841fed76ef3568c2e36ca28ea31addf9175f1\n"
    },
    {
      "commit": "9f09e6a73df1748e980eff26a57e611d68c7ee9a",
      "tree": "cb742002214a750dd9fc490a1e9cd1ae464e4ce1",
      "parents": [
        "1d47c55407f539d7d57ed16bd088de0a79a6ad82"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Jun 26 11:24:47 2017 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Jul 17 16:10:55 2017 -0600"
      },
      "message": "Unify permissions under UPDATE_DEVICE_STATS.\n\nThe UPDATE_DEVICE_STATS permission has become the de-facto mechanism\nthat platform components use to shift blame for resource usage, so\nit\u0027s confusing to also have a separate MODIFY_NETWORK_ACCOUNTING\npermission.  So this change replaces MODIFY_NETWORK_ACCOUNTING with\nUPDATE_DEVICE_STATS.\n\nBug: 62483389\nTest: builds, boots\nExempt-From-Owner-Approval: Bug 63673347\nChange-Id: I872759f02327b6d531ec2338bd876890aded60ad\n"
    },
    {
      "commit": "4ce1e255859da1fa41b4ef6b62c4fdc2db9a3b9e",
      "tree": "142823e4e4c315a1b57ad64189d70b0564d4bc02",
      "parents": [
        "09bd539969d73b4100c146cbe4ac395b1acbd963",
        "6870033d374a15fd212675d570a2877c28f1cbf0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 17 20:28:04 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 17 20:28:04 2017 +0000"
      },
      "message": "Merge \"Enforce permission for print system APIs\""
    },
    {
      "commit": "e6edaa9ea190a6e1bedb21332d1e0aa93d68aeff",
      "tree": "0fd0c4d7c102921c90d8a493b7efa932cda6d54b",
      "parents": [
        "62bf2b96d2c1d161c126b0276beb08c645d21c44"
      ],
      "author": {
        "name": "Rebecca Silberstein",
        "email": "silberst@google.com",
        "time": "Mon Jul 10 11:34:55 2017 -0700"
      },
      "committer": {
        "name": "Rebecca Silberstein",
        "email": "silberst@google.com",
        "time": "Mon Jul 17 18:46:27 2017 +0000"
      },
      "message": "WifiManager: deprecate and remove setWifiApEnabled\n\nOfficially deprecate and remove the setWifiApEnabled call.\n\nBug: 38436773\nTest: frameworks/opt/net/wifi/tests/wifitests/runtests.sh\nTest: frameworks/base/wifi/tests/runtests.sh\nTest: cts-tradefed run cts-dev --mo CtsNetTestCases -t android.net.wifi.cts.WifiManagerTest\nChange-Id: Ifefe0b186d074b49ab1cc94e1c166117f3d7bdf7\n"
    },
    {
      "commit": "ba85991139bc727cd014aa57f2355e516ba62880",
      "tree": "ae76700ca9d08a84e893a2d6c1c24582b0455ce3",
      "parents": [
        "c863ce56e99059db94da72a0535605be1812bb07",
        "baf1c3df80499b6c9895a0988dfc0e6fd602674e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 17 16:44:47 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 17 16:44:47 2017 +0000"
      },
      "message": "Merge \"Add TimeZoneRulesDataContract to system API\""
    },
    {
      "commit": "9c308e6a369fcf760cc0944c713e11903ebbef91",
      "tree": "0f908c5cdbe4b8aa2d45d52eb54719653dcf2bf6",
      "parents": [
        "a780907d9f343726e6d9baee5f4de802b8b8f5e0",
        "9022cf0c2e7f1041c6eff0b0c71945259fbf8dd3"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Jul 17 11:11:52 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 17 11:11:52 2017 +0000"
      },
      "message": "Merge \"Track libcore commit 58228b82c64808eddac02736f18f5003730443a0\" am: 29926838d4 am: 40dfadda77 am: 004ae3ae71\nam: 9022cf0c2e\n\nChange-Id: Ic50e0daa27503660cce8f65a3fbb84f8ee5d323e\n"
    },
    {
      "commit": "9022cf0c2e7f1041c6eff0b0c71945259fbf8dd3",
      "tree": "db82dd0f2bb2214076b9ea786bd9a8d4fd95c552",
      "parents": [
        "65b6f8bf7923f9ce949edb8c594c04e3fbddff32",
        "004ae3ae7108436882b2360de292caaa1edd6813"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Jul 17 11:02:55 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 17 11:02:55 2017 +0000"
      },
      "message": "Merge \"Track libcore commit 58228b82c64808eddac02736f18f5003730443a0\" am: 29926838d4 am: 40dfadda77\nam: 004ae3ae71\n\nChange-Id: I74a0d7f3623bb1e6fdf6142a702c0e5dcfe1d5ee\n"
    },
    {
      "commit": "40dfadda77639e2f262a1ecf4040d8f05bee627a",
      "tree": "d0386d39ac772223568a49e9cad95d1100bc4ff7",
      "parents": [
        "41718e2413201f9040a78f493ead3adf160e0318",
        "29926838d4deaa7e2c12baeb0656db2c92dbd1f8"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Jul 17 10:48:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 17 10:48:50 2017 +0000"
      },
      "message": "Merge \"Track libcore commit 58228b82c64808eddac02736f18f5003730443a0\"\nam: 29926838d4\n\nChange-Id: I7c0f6b9c064ce7eba1eb0cd4c6bca7464ce24100\n"
    },
    {
      "commit": "29926838d4deaa7e2c12baeb0656db2c92dbd1f8",
      "tree": "a0ce8a4d5e973759652aef13ba503700fd4646d6",
      "parents": [
        "4ccf8b83a171bc3b3028fd193cf5a2ec4ad3f31f",
        "f36ecf37f3d1dbf6542a290f1e881bbceb1e8719"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Jul 17 10:37:35 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jul 17 10:37:35 2017 +0000"
      },
      "message": "Merge \"Track libcore commit 58228b82c64808eddac02736f18f5003730443a0\""
    },
    {
      "commit": "080838c0a4cc9ea070346e9fc7e4d9265946f027",
      "tree": "c6cf54c5062890cdf148a4d6dda8370c91346cd5",
      "parents": [
        "42b4446b0eeb60e01db8174f6e286742a7357ba1",
        "4233f032fd41e82d1ce09b48860f8ae3f73fa5e0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sun Jul 16 05:18:36 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jul 16 05:18:36 2017 +0000"
      },
      "message": "Merge \"Test if allocation supported; @removed clean up.\""
    },
    {
      "commit": "4233f032fd41e82d1ce09b48860f8ae3f73fa5e0",
      "tree": "311d8c0b7136e473895491681062a11e8f7a7d96",
      "parents": [
        "53313d7e8153982f842910118371e1dc061248cd"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Jul 15 12:58:38 2017 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Jul 15 21:08:56 2017 -0600"
      },
      "message": "Test if allocation supported; @removed clean up.\n\nSM.allocateBytes() doesn\u0027t offer a clear way to detect if a failed\nrequest could ever succeed.  (For example, we can never work with\npipes, or files on an unsupported storage device.)  So give\ndevelopers a first-class API to test if allocation is supported.\n\nIf the underlying filesystem doesn\u0027t support fallocate(), fall back\nto ftruncate() instead of failing completely.\n\nClean up @removed APIs that were refactoring during API 26 review\nprocess.\n\nRemove support for storing downloads on the /cache partition, which\ndoesn\u0027t exist on many devices.\n\nBug: 63057877\nTest: bit DownloadProviderTests:*\nTest: bit DocumentsUITests:com.android.documentsui.services.CopyJobTest\nTest: bit DocumentsUITests:com.android.documentsui.services.MoveJobTest\nChange-Id: I85d42a1a7240034b4f2a6f359011ac182bdce36e\n"
    },
    {
      "commit": "42b4446b0eeb60e01db8174f6e286742a7357ba1",
      "tree": "f01d32f91bea1069cec7479df1893a85beec906d",
      "parents": [
        "06820aa04a4a87bcbad0d37d6f1be9ac832a3ed4",
        "53313d7e8153982f842910118371e1dc061248cd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jul 15 19:57:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 15 19:57:08 2017 +0000"
      },
      "message": "Merge \"Iterate NetworkPolicy towards SubscriptionPlan.\""
    },
    {
      "commit": "99b254be5cc8ac800206480113dc09e4e19b6eb1",
      "tree": "c7a6cf53aaf16253ddda5cf283685c9dc7505248",
      "parents": [
        "213d919f856ab0bcc0582603929b064a3e00c1f9",
        "c5420ea31be8b382636f5ff336b483c98b955660"
      ],
      "author": {
        "name": "Evan Rosky",
        "email": "erosky@google.com",
        "time": "Sat Jul 15 01:17:35 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jul 15 01:17:35 2017 +0000"
      },
      "message": "Merge \"Clean up @hide usages in cts tests\""
    },
    {
      "commit": "6870033d374a15fd212675d570a2877c28f1cbf0",
      "tree": "c338bdb0eb15205a50bcec7a1b82a5cd86e62f17",
      "parents": [
        "b8e4695fe8a2542bd3351ba96431d77dcc39dc5c"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Jun 19 10:55:09 2017 -0700"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Fri Jul 14 16:16:13 2017 -0700"
      },
      "message": "Enforce permission for print system APIs\n\nThe permission is preinstalled as we want to leave the PrintSpooler\nunpriviledged.\n\nTest: Checked that Settings, PrintSpooler and BuiltInPrintService still\n      behave as expected.\nFixes: 62350107\nChange-Id: Id33896f2899533f2d05cafa926df29cf1c6bfa77\n"
    },
    {
      "commit": "53313d7e8153982f842910118371e1dc061248cd",
      "tree": "01f69d857d3abc6915b7d4b9daf1379abf303732",
      "parents": [
        "43d2a1700b6eb1d804924c6a1e5e0161a13a5348"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jul 13 16:47:32 2017 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Jul 14 16:18:40 2017 -0600"
      },
      "message": "Iterate NetworkPolicy towards SubscriptionPlan.\n\nAdd new SubscriptionPlan API to describe the various types of carrier\ndata plans.  Internally the OS will only use the first plan for\ndriving policy, but it will blindly plumb through the details for\nSettings to display any secondary plans.\n\nAs part of getting Settings ready to roll towards SubscriptionPlan,\nreduce references to NetworkPolicy internal fields.  All usage cycle\ndetails are now obtained from an Iterator which converts to\nSubscriptionPlan under the hood.\n\nReplace all data usage cycle calculation with new SubscriptionPlan\nimplementation, and retrofit large suite of existing tests to\nexercise and verify the new logic.\n\nOffer a debugging property that can be used to return \"fake\" plan\nexamples for testing.\n\nBug: 63391323\nTest: bit FrameworksServicesTests:com.android.server.NetworkPolicyManagerServiceTest\nExempt-From-Owner-Approval: Bug 63673347\nChange-Id: I889c653980eeb7887abdfa4f5b6986f35855ee6d\n"
    },
    {
      "commit": "c5420ea31be8b382636f5ff336b483c98b955660",
      "tree": "7721d4ec2c314b7a2b791f5fff510a05b444abdd",
      "parents": [
        "41db5cf504b4e896fb72b3c5150f72c0f87e9cbb"
      ],
      "author": {
        "name": "Evan Rosky",
        "email": "erosky@google.com",
        "time": "Thu Jul 13 15:24:16 2017 -0700"
      },
      "committer": {
        "name": "Evan Rosky",
        "email": "erosky@google.com",
        "time": "Thu Jul 13 15:36:56 2017 -0700"
      },
      "message": "Clean up @hide usages in cts tests\n\nBug: 62066671\nBug: 62067303\nTest: ViewGroupTest and View_FocusHandlingTest still pass\nChange-Id: I010a570bfcea212f1319a26f616c7841e841c00d\n"
    },
    {
      "commit": "e83dbb90fa03173e80fba7de44adab9c023b93e6",
      "tree": "7dd840ecb7280474c5181b0f1bfe83cb1033f097",
      "parents": [
        "a8519d2f63be8e1e1c7f46a25dd750a4364ba559",
        "05392d6360b89538aa8fcbb1afd50775adfadcf4"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Thu Jul 13 20:50:10 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 13 20:50:10 2017 +0000"
      },
      "message": "Merge \"Publish new Broadcast Radio APIs.\""
    },
    {
      "commit": "05392d6360b89538aa8fcbb1afd50775adfadcf4",
      "tree": "c8aca7bc1f8d45fdfee0efe28a14a6d4ed245e0d",
      "parents": [
        "3c3acf8bf1f48d5a1d33282ff24be5e1300d3298"
      ],
      "author": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Mon Jul 10 19:33:22 2017 -0700"
      },
      "committer": {
        "name": "Tomasz Wasilczyk",
        "email": "twasilczyk@google.com",
        "time": "Thu Jul 13 07:46:25 2017 -0700"
      },
      "message": "Publish new Broadcast Radio APIs.\n\nAlso, rename FEATURE_RADIO to FEATURE_BROADCASTRADIO.\n\nBug: b/34348946\nBug: b/63405337\nTest: instrumentalization\nChange-Id: Ibf5851a10b94f9e82db85f740fde6f28efe48666\n"
    },
    {
      "commit": "f36ecf37f3d1dbf6542a290f1e881bbceb1e8719",
      "tree": "f5255d1641c0d2c86a636caed90427144eb51437",
      "parents": [
        "b1eb85c9a8d314461f44a30d37604f7a0eb7315c"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Wed Jul 12 16:48:41 2017 +0100"
      },
      "committer": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Thu Jul 13 14:23:44 2017 +0100"
      },
      "message": "Track libcore commit 58228b82c64808eddac02736f18f5003730443a0\n\nTest: CtsLibcoreTestCases\nBug: 62949898\nChange-Id: Icc41052e9476cc08bf3fa9579964f141d164c36c\n"
    },
    {
      "commit": "465104817d60607d2293d02c9870d36df4fce173",
      "tree": "7b3f2f8c27a7e3782bbab46645376cd9a1f69af4",
      "parents": [
        "ebb6049f7243d21a7f208f5dda4ad018d8b57164",
        "6aabdc4dbc52a15826b4d711cd00736395f053ed"
      ],
      "author": {
        "name": "Nate Fischer",
        "email": "ntfschr@google.com",
        "time": "Thu Jul 13 05:17:39 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 13 05:17:39 2017 +0000"
      },
      "message": "Merge \"WebView: Fix SafeBrowsingResponse API\""
    },
    {
      "commit": "520a8ba279366eff652e168633f3be279d998be9",
      "tree": "72784fa608a2ec068285dffb0261bf92a99b6b04",
      "parents": [
        "19b49f6c3ca051f91243c290e7868f7e83ba7005"
      ],
      "author": {
        "name": "Nate Fischer",
        "email": "ntfschr@google.com",
        "time": "Wed Jul 12 17:37:07 2017 -0700"
      },
      "committer": {
        "name": "Nate Fischer",
        "email": "ntfschr@google.com",
        "time": "Wed Jul 12 17:37:07 2017 -0700"
      },
      "message": "WebView: fix WebView#setSafeBrowsingWhiteList\n\nThis corrects the WebView#setSafeBrowsingWhiteList method to accept a\nList\u003cString\u003e instead of a String[], as per API council recommendation.\n\nBug: 63084528, 63615148\nTest: N/A\nChange-Id: I53f490c6ab9c10fffe6c89010d7509747ac8f95f\n"
    },
    {
      "commit": "6aabdc4dbc52a15826b4d711cd00736395f053ed",
      "tree": "3a805b84867475380c317af4916ff1a492c9983a",
      "parents": [
        "19b49f6c3ca051f91243c290e7868f7e83ba7005"
      ],
      "author": {
        "name": "Nate Fischer",
        "email": "ntfschr@google.com",
        "time": "Wed Jul 12 17:12:16 2017 -0700"
      },
      "committer": {
        "name": "Nate Fischer",
        "email": "ntfschr@google.com",
        "time": "Wed Jul 12 17:20:55 2017 -0700"
      },
      "message": "WebView: Fix SafeBrowsingResponse API\n\nThe methods were previously package-private by mistake. This fixes them\nto be public.\n\nBug: 63615582, 62723291\nTest: N/A\nChange-Id: Ie9095f861213a70fd655561f911385bdd06632b3\n"
    },
    {
      "commit": "19b49f6c3ca051f91243c290e7868f7e83ba7005",
      "tree": "a8a6df3ad6306a41689c75ea66cf9653b2c37407",
      "parents": [
        "1ecf426f08aae8c98cc618763f16266feb8a3f7b",
        "81d9c6fe71ce2685fed7f30a66090a3c9752c5da"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Wed Jul 12 23:57:21 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 12 23:57:21 2017 +0000"
      },
      "message": "Merge \"Implement getDownloadStatus and add permission\" am: 2fa880d016 am: d45a007222 am: 9888af1dfc\nam: 81d9c6fe71\n\nChange-Id: Ida7f8cfd440553658108688b84f866dddafa3166\n"
    },
    {
      "commit": "81d9c6fe71ce2685fed7f30a66090a3c9752c5da",
      "tree": "17996ca991ed5d4a1e6b05e2cc053816739793a5",
      "parents": [
        "7e8be4fcc2c3a007864864a4a358004cd8f8a543",
        "9888af1dfcf6525d62dd2a33673362d38d585ad3"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Wed Jul 12 23:44:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 12 23:44:51 2017 +0000"
      },
      "message": "Merge \"Implement getDownloadStatus and add permission\" am: 2fa880d016 am: d45a007222\nam: 9888af1dfc\n\nChange-Id: I98d30f379072302a5e76a8b157d8aecdd1616235\n"
    },
    {
      "commit": "d45a00722271a39bb420b3d15b6bdd3a675d4dc5",
      "tree": "8c70841195f0a4db9470c373ad5d26d353cd9a86",
      "parents": [
        "74868feecd376d4efce1096236ed58a0051a1bee",
        "2fa880d0162a206b9307bfd5cd37a37cf216895a"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Wed Jul 12 23:27:49 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 12 23:27:49 2017 +0000"
      },
      "message": "Merge \"Implement getDownloadStatus and add permission\"\nam: 2fa880d016\n\nChange-Id: I1c8b9140d6fdc20347858f1296dbccfc60319959\n"
    },
    {
      "commit": "2fa880d0162a206b9307bfd5cd37a37cf216895a",
      "tree": "a2a6f60bda6c2e47255abb18e566f7355b3c53d9",
      "parents": [
        "aff0d1afb6b50ce59f888e029396668868d1ed35",
        "55f557dc7c1622ec757f7f47d469f742148814a8"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Wed Jul 12 23:18:37 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jul 12 23:18:37 2017 +0000"
      },
      "message": "Merge \"Implement getDownloadStatus and add permission\""
    },
    {
      "commit": "d16aeddbd197701b387dcedf2719b7cd09455bfc",
      "tree": "75d9c7d92354384294b9f4e56ed31b96c01b5e18",
      "parents": [
        "72c323964cd60cd8a7013d3ce9c1cc1bed0b603f",
        "3858aa67365ad574ee474edc68e2e82d4d8c6081"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 12 22:29:10 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 12 22:29:10 2017 +0000"
      },
      "message": "Merge \"Make CustomDescription safe against crashes\""
    },
    {
      "commit": "72c323964cd60cd8a7013d3ce9c1cc1bed0b603f",
      "tree": "9b9d7376cca8fd5154d22a377d12cd3fb4ad61fd",
      "parents": [
        "6d2ae1fd73276692015e9d8f48c0dcda4183e7bb",
        "f28764d900f0a3abba98e63a3b6220066607eeba"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 12 22:24:18 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 12 22:24:18 2017 +0000"
      },
      "message": "Merge \"Verify regex for SimpleRegexVerifier\""
    },
    {
      "commit": "6d2ae1fd73276692015e9d8f48c0dcda4183e7bb",
      "tree": "cc483734c1fa045250b6b5d43a36367f2afa7eaf",
      "parents": [
        "89e7bf84336fd0e2a55045562d015f980d0e87cc",
        "0e3e6f8274b9d4c1c9646a1d39aed6a9f8a6a28d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 12 22:18:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 12 22:18:31 2017 +0000"
      },
      "message": "Merge \"Handle failures in validators\""
    },
    {
      "commit": "d1e123cbadc9bf39997d02d144a81ca64af4ef67",
      "tree": "6970cd08645c5f7914f42fe65cea40079cd98a9f",
      "parents": [
        "a135b4b1cd3d702d43d44d9e3a8a24abe5763f6c",
        "4db89ba82eb6b910972b5fd09999e950e617581d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 12 17:36:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 12 17:36:29 2017 +0000"
      },
      "message": "Merge \"Autofill: Add API for virtual view visibility\""
    },
    {
      "commit": "baf1c3df80499b6c9895a0988dfc0e6fd602674e",
      "tree": "45d3e1bc4b11d4243a94422b7eab2340fc9829ef",
      "parents": [
        "4ad301ad473705f4a9709c35df53cc0843038b2e"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Jul 03 14:38:50 2017 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Wed Jul 12 18:20:59 2017 +0100"
      },
      "message": "Add TimeZoneRulesDataContract to system API\n\nAdd TimeZoneRulesDataContract to system API and remove\nTODOs to add other classes that should not now be needed\nin the system API (since they are used by a platform-only\napp).\n\nBug: 31008728\nTest: make droid\nChange-Id: I600e7b08853b86b27463193411cf85207ae09ce8\n"
    },
    {
      "commit": "3858aa67365ad574ee474edc68e2e82d4d8c6081",
      "tree": "db804af893f744d864cdad1e133c02e093648e83",
      "parents": [
        "796b7a56f9856b9e9efddc427f06f83c2ef7a2d9"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Jul 11 15:22:14 2017 -0700"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Jul 12 09:38:08 2017 -0700"
      },
      "message": "Make CustomDescription safe against crashes\n\n... And allow users of the public APIs use Transformations.\n\nTest: bit CtsAutoFillServiceTestCases:.CustomDescriptionTest\nBug: 62534917\nChange-Id: I6b7b7d5e343e78f2f0381303451e08bb16c5c3e6\n"
    },
    {
      "commit": "f28764d900f0a3abba98e63a3b6220066607eeba",
      "tree": "f2c8646a6a2258881f104da45063fc64082998df",
      "parents": [
        "796b7a56f9856b9e9efddc427f06f83c2ef7a2d9"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Jul 11 10:43:43 2017 -0700"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Jul 12 08:38:41 2017 -0700"
      },
      "message": "Verify regex for SimpleRegexVerifier\n\nTest: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases\n          --test\u003dandroid.autofillservice.cts.SimpleRegexValidatorTest\nBug: 62534917\nChange-Id: I63a887643bff0f8d584069ee47f091b0edb8684c\n"
    },
    {
      "commit": "0e3e6f8274b9d4c1c9646a1d39aed6a9f8a6a28d",
      "tree": "c20b2f2c1c479a1e3d903fdca0d0b162727045c0",
      "parents": [
        "796b7a56f9856b9e9efddc427f06f83c2ef7a2d9"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Jul 11 17:03:49 2017 -0700"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Jul 12 08:05:01 2017 -0700"
      },
      "message": "Handle failures in validators\n\nTest: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases\n          --test\u003dandroid.autofillservice.cts.ValidatorTest\nBug: 62534917\n\nChange-Id: I3aad06cd2e8b6caf7238e420727aca0cb3703bc5\n"
    },
    {
      "commit": "4db89ba82eb6b910972b5fd09999e950e617581d",
      "tree": "c2088b209937e0499f5a35cc2a1be37a31ff8882",
      "parents": [
        "70a97de5b28bd5e9785fed4b353e57822d1dc2c7"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Jun 28 16:50:37 2017 -0700"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Tue Jul 11 19:43:01 2017 -0700"
      },
      "message": "Autofill: Add API for virtual view visibility\n\nTest: VirtualContainerActivityTest\n\nbug:38509603\n\nChange-Id: I3546c99d0b13316337c5015e003337b8019194a9\n"
    },
    {
      "commit": "d95f73c338ed55371c958eeabafc4568f601d2a2",
      "tree": "080515040daae0536d739a8eed14959e6948bc6c",
      "parents": [
        "b355b7f446720245ce4e62739ad503f6a8ccea1b"
      ],
      "author": {
        "name": "Robert Quattlebaum",
        "email": "rquattle@google.com",
        "time": "Tue Jul 11 18:05:33 2017 -0700"
      },
      "committer": {
        "name": "Robert Quattlebaum",
        "email": "rquattle@google.com",
        "time": "Tue Jul 11 18:16:09 2017 -0700"
      },
      "message": "NetworkCapabilities: Unhide TRANSPORT_LOWPAN\n\nThis commit simply unhides the constant `TRANSPORT_LOWPAN` in the class\n`android.net.NetworkCapabilities`, adding it to the public API.\n\nBug: b/63600204\nChange-Id: I794635814c0bd3891cd22fcc1e31614e4d6ac654\n"
    },
    {
      "commit": "071072f33ece3854c4b2282b1deb9296fec2b7a4",
      "tree": "928eb59d422c9279e326a3d0ce290a81e58020c0",
      "parents": [
        "81be016687a365ac84eb61b534696634cdbc90fa",
        "4e5ce390399a77d47aa775e9eb7d04b5e8061483"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jul 12 01:06:55 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 12 01:06:55 2017 +0000"
      },
      "message": "Merge \"Implement Luhn checksum algo\""
    },
    {
      "commit": "1753646c28eba645a428a85f956c4488cecd77d9",
      "tree": "7aede8d0080bf0e5665759164903d0a51485099f",
      "parents": [
        "c00c64c96a732d5a2968bcdacc4077b6eedb3100",
        "2f7af06efbdf7e2b2995adcf0d0da3ac6e450eef"
      ],
      "author": {
        "name": "Nate Fischer",
        "email": "ntfschr@google.com",
        "time": "Tue Jul 11 20:35:23 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 11 20:35:23 2017 +0000"
      },
      "message": "Merge \"Add SafeBrowsingResponse abstract class\""
    },
    {
      "commit": "2f7af06efbdf7e2b2995adcf0d0da3ac6e450eef",
      "tree": "79d0fbd3783239eb3b36a593cb7a06a103187c09",
      "parents": [
        "dfa984e9b46cb2ed85142fcf08e02c88d4ce1031"
      ],
      "author": {
        "name": "Nate Fischer",
        "email": "ntfschr@google.com",
        "time": "Thu Jul 06 11:32:31 2017 -0700"
      },
      "committer": {
        "name": "Nate Fischer",
        "email": "ntfschr@google.com",
        "time": "Tue Jul 11 20:32:04 2017 +0000"
      },
      "message": "Add SafeBrowsingResponse abstract class\n\nThis adds a new class called SafeBrowsingResponse to replace the\nValueCallback parameter for WebViewClient#onSafeBrowsingHit. This\nclass contains specific methods for each of the available actions.\n\nThis also removes the SAFE_BROWSING_ACTION_* constants from the\nWebViewClient class.\n\nBug: 62723291\nTest: N/A\nChange-Id: Ie4fe878ea470f7aea7a716ae9edb80b53b73e172\n"
    },
    {
      "commit": "d14099d231fa14736aac0f2b822151b0acc4debc",
      "tree": "6b6779d7d88cf64102dd8c845f514859aa002776",
      "parents": [
        "79385ec3b0b1a8753aefd2973273560f0461ff80"
      ],
      "author": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Thu Jun 29 16:44:46 2017 -0700"
      },
      "committer": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Tue Jul 11 12:51:31 2017 -0700"
      },
      "message": "Unhide several Fingerprint APIs\n\nTest: make -j \u0026\u0026 make update-api -j \u0026\u0026 make checkbuild -j\n\nChange-Id: I2b0f42c2d69108bca3f64b431b46e093fc28976f\nFixes: 38266711\n"
    },
    {
      "commit": "4e5ce390399a77d47aa775e9eb7d04b5e8061483",
      "tree": "d62998cb9845f2ceede6a52e330b7c0569023b34",
      "parents": [
        "4c79c7b411cd40b378000de735886a59359ddb9e"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Jul 11 09:14:47 2017 -0700"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Jul 11 09:19:31 2017 -0700"
      },
      "message": "Implement Luhn checksum algo\n\nIgnore all non-digits. If only digits should be allowed, the\ndeveloper can use a combination of SimpleRegexValidator and\nRequiredValidators.\n\nBug: 62534917\nTest: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases\n          --test\u003dandroid.autofillservice.cts.LuhnChecksumValidatorTest\n\nChange-Id: I4a7c68a236c3d4cb967f1bc61115df89e584a86d\n"
    },
    {
      "commit": "99f0e0ef1e5be661a3f18c4eb7acee133dea2f8c",
      "tree": "fb464ac5fb52f94530faafb5e8d881756f6e85f1",
      "parents": [
        "544ae85cb238ff2402a27c140ca78d53f71b8ff0",
        "de78fabb740063fad2a502c07b6482cba79ce0a6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jul 11 01:40:09 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 11 01:40:09 2017 +0000"
      },
      "message": "Merge \"Verify regex on ImageTransformation\""
    },
    {
      "commit": "de78fabb740063fad2a502c07b6482cba79ce0a6",
      "tree": "fa27af0f5ad4325c1a8f4d71834e21a6e1224241",
      "parents": [
        "2b8286d2180e4efd2bbe6a2eada215b1f08bb57d"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Jul 10 16:34:05 2017 -0700"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Jul 10 16:54:52 2017 -0700"
      },
      "message": "Verify regex on ImageTransformation\n\nAlso change the constructor of the Builder of this class\n\nBug: 62534917\nTest: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases\nChange-Id: Ie54f3a1d4b3a0ecd25945d3deafb4858423f926e\n"
    },
    {
      "commit": "ebbe2d4899f758e13e1021c0ab1d3ed457861a23",
      "tree": "ebd76b99c02476481f58110e5740e89f6bbf419e",
      "parents": [
        "2b8286d2180e4efd2bbe6a2eada215b1f08bb57d"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Jul 10 12:07:54 2017 -0700"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Jul 10 15:15:48 2017 -0700"
      },
      "message": "Verify regex on CharSequenceTransformation\n\n... Also\n- change the constructor of the Builder of this class\n- Do not crash if the subsitutions for the regexes are invalid\n\nChange-Id: I965d5830f4932eb40ec22d7fa308815955920a99\nBug: 62534917\nTest: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases\n"
    },
    {
      "commit": "de295549d194916a049b2c875fcc1abf0f1a91fa",
      "tree": "d9483a2aebfd36af68818334f9ec731431dcdbf4",
      "parents": [
        "1cb04856400f32c548a83790bbe61899ae5da461",
        "7ca33079fda388dd3bd81819b280e578e5d6b38b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 10 17:59:36 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 10 17:59:36 2017 +0000"
      },
      "message": "Merge \"Hide some systemapi methods\""
    },
    {
      "commit": "b2f9ab33478f4daf77bd57d4e90bcb819aa671ed",
      "tree": "06945800a3482fa6e55cb8c3f7ada0f8047cfd6d",
      "parents": [
        "330ca71a95f578abfcb2c33f7b331ab119a0b7d1",
        "f9419f0f8524da4980726e06130a80e0fb226763"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jul 10 15:01:52 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 10 15:01:52 2017 +0000"
      },
      "message": "Merge \"Allow splits to declare a classloader type.\""
    },
    {
      "commit": "a2c84e7afa349f4b971c213b5fd589da435ef2c1",
      "tree": "a6fd2079a2a932022556f7cf4f6827ec045eb7bf",
      "parents": [
        "d4cf134df1e63c81f2fd0588c09333ade95942aa",
        "193c7d05c855109c2778cd6140de7514083697ea"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Jul 10 14:09:01 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 10 14:09:01 2017 +0000"
      },
      "message": "Merge \"Track libcore commit 2fd032687ba3d4d7f6af560482c5aba525584621\" am: c895fcef8f am: 03e304e4e8 am: 0d53000386\nam: 193c7d05c8\n\nChange-Id: I2f31a97b8392a1085b485eed831fc67a57dc46ba\n"
    },
    {
      "commit": "193c7d05c855109c2778cd6140de7514083697ea",
      "tree": "92509274270206f14fc6c4bbc6749f5325b2b0af",
      "parents": [
        "b5e6e4ee86ffe9a38cc0923b6d42b1ea4795f631",
        "0d53000386432f39d0d95a12613421e214478014"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Jul 10 14:02:33 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 10 14:02:33 2017 +0000"
      },
      "message": "Merge \"Track libcore commit 2fd032687ba3d4d7f6af560482c5aba525584621\" am: c895fcef8f am: 03e304e4e8\nam: 0d53000386\n\nChange-Id: I7e6064ba6d0b74584eec526d61ebb46abc02ad4f\n"
    },
    {
      "commit": "03e304e4e8abb6248a223a1cdfe9af4e365a5385",
      "tree": "f86a11eea27cef5a8b9c085877ea4f934c4bdbd8",
      "parents": [
        "d725e7aeabf4c2c33234304cfb99e10d52e0122c",
        "c895fcef8fe28c8b7a945ab8684757115267838b"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Jul 10 13:40:49 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jul 10 13:40:49 2017 +0000"
      },
      "message": "Merge \"Track libcore commit 2fd032687ba3d4d7f6af560482c5aba525584621\"\nam: c895fcef8f\n\nChange-Id: I1aecc608b0eaa807489683526a9267003eb975b1\n"
    },
    {
      "commit": "44d7cd06d2ec57c7a7641a2b1167e817dfc3fe40",
      "tree": "7281b070e9e459caa9cadb75f761844597a8f4c3",
      "parents": [
        "7fc43b1fbdf2f7bce97e91ac04589912f520544f"
      ],
      "author": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Tue Jul 04 10:32:11 2017 +0100"
      },
      "committer": {
        "name": "Przemyslaw Szczepaniak",
        "email": "pszczepaniak@google.com",
        "time": "Mon Jul 10 11:56:55 2017 +0000"
      },
      "message": "Track libcore commit 2fd032687ba3d4d7f6af560482c5aba525584621\n\nTest: Make\nBug: 62779247\nChange-Id: I919df93b20e809f42a27225403e1549b763b0a60\n"
    },
    {
      "commit": "f058f7a58d3b8b8556d86528265e751b5c4f283a",
      "tree": "658dd73e6ea15dcdca17572613c617054b439e9c",
      "parents": [
        "3fb8f6200f1153b1af7ae0b6ca86ac784f524640",
        "6e7e4ed0247897223e93b076ec109dc7e2eafcae"
      ],
      "author": {
        "name": "Lucas Dupin",
        "email": "dupin@google.com",
        "time": "Fri Jul 07 03:07:42 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 07 03:07:42 2017 +0000"
      },
      "message": "Merge \"Merge \"Hide all color hints references\" into oc-dr1-dev am: b1ab0ff21e\" into oc-dr1-dev-plus-aosp\nam: 6e7e4ed024\n\nChange-Id: I66ba5dd375d68f90ab21a37e37735d0e22a9a933\n"
    },
    {
      "commit": "1446809f30d42979f4513c22fba0bcaad3bf7b5e",
      "tree": "a7e17d2b700a107849d01ba75e37ed9847312501",
      "parents": [
        "d6c82cde94c39d965d5482d3d983939a1dc7b17d",
        "b1ab0ff21e83735808f1468fd4e7056de4541cf0"
      ],
      "author": {
        "name": "Lucas Dupin",
        "email": "dupin@google.com",
        "time": "Fri Jul 07 02:42:35 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 07 02:42:35 2017 +0000"
      },
      "message": "Merge \"Hide all color hints references\" into oc-dr1-dev\nam: b1ab0ff21e\n\nChange-Id: I54e5d27f52d197ae2512ab7216e12e11cf5c8c30\n"
    },
    {
      "commit": "b1ab0ff21e83735808f1468fd4e7056de4541cf0",
      "tree": "8912da20b4db89394d7647e0f7eca842ea9de166",
      "parents": [
        "730e4a5651d41d5aa86d678cb1b3cc5130e5e1d8",
        "bdffdd52fa37bb94470a6ef079fb4163b5609f70"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jul 07 00:12:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 07 00:12:08 2017 +0000"
      },
      "message": "Merge \"Hide all color hints references\" into oc-dr1-dev"
    },
    {
      "commit": "4276eb8ae971be363892be5413f1c63fd05c061f",
      "tree": "262e05c4f5857d662ca23bc2305592a704a04d51",
      "parents": [
        "7c921218f25c6833d47dfbf81574984dc48140f4",
        "48f04c9da2be57a30ed9de7333289ea83ac887c8"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jul 06 21:36:45 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 06 21:36:45 2017 +0000"
      },
      "message": "Merge \"Unhide InMemoryDexClassLoader ByteBuffer[] constructor\" am: a4267fd89f am: c9b8de6136 am: e45205825f\nam: 48f04c9da2\n\nChange-Id: I44b433ac58d83ad029ee74e211385e0bd6e1ab19\n"
    },
    {
      "commit": "48f04c9da2be57a30ed9de7333289ea83ac887c8",
      "tree": "c7d3390cae27fcd6ab8924ccac1e6d4240b99a98",
      "parents": [
        "b9545440e2f04e9c5985a34fbe3994f90c3eaf14",
        "e45205825ff1efe71befda2790b3a7b72488d14b"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jul 06 21:24:27 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 06 21:24:27 2017 +0000"
      },
      "message": "Merge \"Unhide InMemoryDexClassLoader ByteBuffer[] constructor\" am: a4267fd89f am: c9b8de6136\nam: e45205825f\n\nChange-Id: I703cfcec537911bb46b917b93ed6647031bf3ba6\n"
    },
    {
      "commit": "c9b8de613661b4224e41672647e3a6b2143e713e",
      "tree": "f2c83490760b26cd44b2160db6ffa0be05162a3e",
      "parents": [
        "2e8ba8dd5c2353b260659e51ab3a92c5e9d5b2c5",
        "a4267fd89ff91222b94999b0c8d682415a31c847"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jul 06 21:10:11 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jul 06 21:10:11 2017 +0000"
      },
      "message": "Merge \"Unhide InMemoryDexClassLoader ByteBuffer[] constructor\"\nam: a4267fd89f\n\nChange-Id: If31e5d218bd00b3281923c80cd4f61ca734d4388\n"
    },
    {
      "commit": "5b0a5fc160f7bb130d94e117e7e0e20591eb3aad",
      "tree": "354eee1fe60c723f480ebc8671ce277ae3779f47",
      "parents": [
        "24a2ce0c8b4a0ed8cc78b61fa3992d77efcad411",
        "ba51f15998e7aa284a09ca53053b340c744fcd9d"
      ],
      "author": {
        "name": "Abodunrinwa Toki",
        "email": "toki@google.com",
        "time": "Thu Jul 06 20:44:58 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 06 20:44:58 2017 +0000"
      },
      "message": "Merge \"Make ActionMode.isUiFocusable a TestApi\""
    },
    {
      "commit": "55f557dc7c1622ec757f7f47d469f742148814a8",
      "tree": "fe53d0db48c8a23323a83efe7a94624cf1d0d54d",
      "parents": [
        "54b1e9c57c3b3bc08b106849ed78672b87ea954e"
      ],
      "author": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Thu Jun 29 18:37:11 2017 -0700"
      },
      "committer": {
        "name": "Hall Liu",
        "email": "hallliu@google.com",
        "time": "Thu Jul 06 13:40:09 2017 -0700"
      },
      "message": "Implement getDownloadStatus and add permission\n\n- Implement getDownloadStatus in the manager\n- Remove DownloadStatus and add constants in its place to reflect the\nstatus of a single file\n- Add ACT_AS_EMBMS_MIDDLEWARE permission\n\nChange-Id: Ica8b8a872a8088a2aaf56d40926051225aa39e87\n"
    },
    {
      "commit": "f3aac96db4d46e16d994e11740a2e67ab6c9108d",
      "tree": "fc732c8bfd7ae2fd55a64e4124f2d2d368e557f9",
      "parents": [
        "b171a46d193db3eee0ad837aa94c47d7752587a6"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jul 06 11:25:18 2017 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Jul 06 11:25:18 2017 -0700"
      },
      "message": "Unhide InMemoryDexClassLoader ByteBuffer[] constructor\n\nThis constructor lets one give multiple dex files as byte buffers for\nthe InMemoryDexClassLoader.\n\nBug: 63390204\nTest: Builds\nChange-Id: I5b8a7860dbc365c0a51dbaf4540b9fa53c922546\n"
    },
    {
      "commit": "f9419f0f8524da4980726e06130a80e0fb226763",
      "tree": "25a46090eff09b9f258d5b255464ca8291cbe022",
      "parents": [
        "c276c79e83680c4d14e790ba002c14e4a7dacb49"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Jun 15 11:35:38 2017 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Jul 06 11:57:36 2017 +0100"
      },
      "message": "Allow splits to declare a classloader type.\n\nAdd an attribute android:classLoader which can be set to the name\nof the classloader the base or split wishes to use. For now, this can\nonly be set to \"dalvik.system.PathClassLoader\" or\n\"dalvik.system.DelegateLastClassLoader\". The current implementation\nonly allows the classloader to exist in the boot classpath but that\nrestriction can be loosened in a future change if necessary.\n\nTest: cts-tradefed run cts-dev -m CtsAppSecurityHostTestCases\nBug: 36044779\n\nChange-Id: I5a51f7aa0c8c4c398d2f46129eb06785cc8e3c3f\n"
    },
    {
      "commit": "8f367b20697a24b648d1e96cbb484c8a726ddc95",
      "tree": "5dc2835b90353c623a24fe28d3f520649d969684",
      "parents": [
        "02730be7c641999e3becb943167050e1264f7825",
        "d44c1a7d13787b8038650cf99f0db295b448ba7b"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Jul 05 23:44:20 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 05 23:44:20 2017 +0000"
      },
      "message": "Merge \"Merge \"Merge \"Merge \"Track update of org.json API\" am: c5a65bc152\" into stage-aosp-master am: 93cc3d86ad\" into oc-dev-plus-aosp am: d01571b951\" into oc-dr1-dev-plus-aosp\nam: d44c1a7d13\n\nChange-Id: I2caf9a53291b29ad995da5084358c3bbcbb6bff1\n"
    },
    {
      "commit": "94c79b030f441fe14aa4ee1ec19bd617a9db2522",
      "tree": "254c961935a7b8ebaa8d2e74f13b550c59c24915",
      "parents": [
        "453875843b5856a0ad0485e4248a56b329587e71",
        "d01571b9519aa6360e10db31d11c157c15fb6505"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Jul 05 23:09:23 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 05 23:09:23 2017 +0000"
      },
      "message": "Merge \"Merge \"Merge \"Track update of org.json API\" am: c5a65bc152\" into stage-aosp-master am: 93cc3d86ad\" into oc-dev-plus-aosp\nam: d01571b951\n\nChange-Id: I50aa3812696208517848869ee646f272290d6275\n"
    },
    {
      "commit": "0a5d805ae19bf5b05cd6d71063a3edfd038da68c",
      "tree": "a70332da6e76737843701b2c328ca3fa2975e774",
      "parents": [
        "3afabd30fd3735b20a9e3063d801d4ad28ad1379",
        "c7b722117c5b13ab385a472c1af80f898b66a41c"
      ],
      "author": {
        "name": "Siarhei Vishniakou",
        "email": "svv@google.com",
        "time": "Wed Jul 05 22:51:57 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 05 22:51:57 2017 +0000"
      },
      "message": "Merge \"Hide VIRTUAL_KEY_RELEASE constant.\" into oc-dr1-dev am: 20a240fc5d\nam: c7b722117c\n\nChange-Id: Icec2d07d2edf93fc9c9e130eeea175e5418cc518\n"
    },
    {
      "commit": "ddffcdb6bd7023243f9cd677c4ec98cc0add96b0",
      "tree": "5a19200e82331f5c770ff4aad17e34b370791a77",
      "parents": [
        "f70270f94a65a510b71e09113b29f77d41b3d45c",
        "c5a65bc1523ec0ae0aea9500d4ecab8568a482ad"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Wed Jul 05 22:33:10 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 05 22:33:10 2017 +0000"
      },
      "message": "Merge \"Track update of org.json API\"\nam: c5a65bc152\n\nChange-Id: I755b8be63f4a9dbe11d1c14c0d9f3f8cd3e93916\n"
    }
  ],
  "next": "f8074ab47685917f7c4567c1defd457a2db721b4"
}
