)]}'
{
  "log": [
    {
      "commit": "48d23981251cf3053a06e2d9e8f7dff0897ecff7",
      "tree": "aaf7f9e8e03ab5264df570c73601861dfd378cdd",
      "parents": [
        "95820bc4df43623b499af0534391f5dc00b88be7",
        "eff28b58632ce2d322ece68a983bb36de4e78181"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jan 08 21:25:59 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jan 08 21:25:59 2018 +0000"
      },
      "message": "Merge \"Move to libc++ from stlport.\" am: c6dd5f9037 am: 81da46f982\nam: eff28b5863\n\nChange-Id: Ia45b5a174feaddff5e5839a231af18fb5bb3cb7a\n"
    },
    {
      "commit": "eff28b58632ce2d322ece68a983bb36de4e78181",
      "tree": "f83f9e8bad792971283c825e51cf359cb9c028b8",
      "parents": [
        "2807036b099839f628ae362c38aeab889b870613",
        "81da46f982a9e7f8e49b1a8d815389b4f3c5942a"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jan 08 21:09:59 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jan 08 21:09:59 2018 +0000"
      },
      "message": "Merge \"Move to libc++ from stlport.\" am: c6dd5f9037\nam: 81da46f982\n\nChange-Id: I3c7f169097ef1c4d17263893a18ad21b9dae7d49\n"
    },
    {
      "commit": "283965eaa9066c69120b8b490173384085eadefa",
      "tree": "8bb7aec6298f07fe4f1dc9806f0e2bc9e5014161",
      "parents": [
        "766f0a4981478ff63854df70ba50e6420d19c02b"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Jan 05 11:08:20 2018 -0800"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Jan 05 11:08:20 2018 -0800"
      },
      "message": "Move to libc++ from stlport.\n\nTest: make checkbuild\nBug: None\nChange-Id: If2be2abedec1abb2970e8c42170d4a69c0fb4e3d\n"
    },
    {
      "commit": "1e24bf6043395ec316a368f92d9e2a144c7f57ce",
      "tree": "560abebde4854ace15bfd4f8f74f6dda4573fd8e",
      "parents": [
        "e780e8d2b3a1482b54ab56fb37177bf17924d105"
      ],
      "author": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Fri Jan 05 14:36:00 2018 +0000"
      },
      "committer": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Fri Jan 05 14:36:00 2018 +0000"
      },
      "message": "Tidy up DexLoggerIntegrationTests.\n\nAddressing comments from ag/3381420.\nI also fixed two lines that were slightly too long.\n\nBug: 63927552\nTest: atest DexLoggerIntegrationTests\nChange-Id: I258d0aa2068c76175d30c0be9ba95482d3db9437\n"
    },
    {
      "commit": "feeb12a962e48834f2dc9d4ebedebeb8af9f6c7a",
      "tree": "4e14507c7c36b8daaed02c992a243259614ac716",
      "parents": [
        "8f623c65955743287bc8670fcf5b8f1d4c334251",
        "660d573e438c4b1a044fa399bb99272a0bcc9f22"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 05 00:32:25 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 05 00:32:25 2018 +0000"
      },
      "message": "Merge \"Let wallpaper know when to animate AoD transition\""
    },
    {
      "commit": "79c238ada6e7072f62f807781d58d314ed2f17a9",
      "tree": "7ddce85f1fbd5a5850d82b998c83de7621e47b79",
      "parents": [
        "ec397abf931a39ed1c3d36f0af4ee9a68b883b07"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Dec 13 15:59:07 2017 -0800"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Thu Jan 04 13:26:28 2018 -0800"
      },
      "message": "Use modern install method in backup service\n\nTest: adb backup -apk myApp -f backup ; adb restore backup\nChange-Id: I2bbcb0487ecc525a6dc8a2693b15ce624db275b0\n"
    },
    {
      "commit": "761d618a131656f500bf904bc9072f69f27af3b7",
      "tree": "f0bc21705c518ba6dc0cc6cb47ef944abc740847",
      "parents": [
        "37d870bc09bc5a5ad2244838ddeaa1f2426da58d"
      ],
      "author": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Tue Dec 19 11:48:19 2017 +0000"
      },
      "committer": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Wed Jan 03 11:21:45 2018 +0000"
      },
      "message": "Add integration test for DexLogger.\n\nBug: 63927552\nBug: 68703204\nTest: atest DexLoggerIntegrationTests\nChange-Id: Ib61cf433ef4729c4e4a0539682b5ddbefdb65575\n"
    },
    {
      "commit": "dc40b9082a11f6819b2a0dd174371c4a11da46c6",
      "tree": "1a726bb4a012242438fd3a5eef60c98fe7604b8d",
      "parents": [
        "ab71a936240cdb1b2b4ee67af7111739f3085ce3",
        "b5fbd41b23bf309e6b420a3df4641603d55dcb68"
      ],
      "author": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Fri Dec 22 20:23:48 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 22 20:23:48 2017 +0000"
      },
      "message": "Merge \"JankBench: make it build and run in Android build\""
    },
    {
      "commit": "b5fbd41b23bf309e6b420a3df4641603d55dcb68",
      "tree": "ae71e69db0316b16d05ba652a4155f2d58b5be1f",
      "parents": [
        "7467d044960b577fbc526813c4c67633b5f7d9e7"
      ],
      "author": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Thu Oct 26 12:24:30 2017 -0700"
      },
      "committer": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Fri Dec 22 20:23:30 2017 +0000"
      },
      "message": "JankBench: make it build and run in Android build\n\nJankBench is a tool heavily used for scheduler and graphics testing.\nJankBench has been an android studio project and traditionally its APK\nhas been built outside of the Android tree using studio. This patch\nmakes it possible to build it using Android source tree without needing\nstudio.\n\nSome library imports needed renaming and an xml file had a typo, also\nresource IDs need to be 16-bits so I fixed that up. List fragments can\u0027t\nbe anonymous instantiations anymore so changed it to be non-anonymous.\n\nBug: 31544438\nTest: Run all Jankbench benchmarks manually in the app.\nChange-Id: Ib5e4351fcc72acdec20424ae30598c205e7803f7\nSigned-off-by: Joel Fernandes \u003cjoelaf@google.com\u003e\n"
    },
    {
      "commit": "0a6f66e9a9728aaa0766cdea15ce59793bdaf259",
      "tree": "c0ebc5af45c5e0fcd5b11977005ac7f0a51d0ea7",
      "parents": [
        "c65e740f989c6fb811b53d60f9466cd9028d3ce3",
        "b42cd23425f9078089734ca5472415f914d2ae23"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Thu Dec 21 19:28:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 21 19:28:17 2017 +0000"
      },
      "message": "Merge \"Testables lib should not statically link mockito\" am: 47d04fc5c0\nam: b42cd23425\n\nChange-Id: I7d7096cf24234925256895c3527f44e72cf07493\n"
    },
    {
      "commit": "47d04fc5c0f49211f95cdf23c362b92efc298ecd",
      "tree": "60def63ce267957019ffeecd462c5cdbf83d6687",
      "parents": [
        "3c7bc2dc06ce976e876296ed70272215b4886a95",
        "56ff021d505d57174c56c731cfececb1f5fe6e8e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 21 15:27:23 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 21 15:27:23 2017 +0000"
      },
      "message": "Merge \"Testables lib should not statically link mockito\""
    },
    {
      "commit": "792bbf66d4d67ccd7047924e06d06480057f622f",
      "tree": "41607e6657deaaf5db289dd0990668e9455030e2",
      "parents": [
        "af5bac3d2350dc60f645ef6ece93d6a5417c50a9",
        "dadf78987a1cb0f2956e5b71b06e1860df1b24a0"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Thu Dec 21 15:24:59 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 21 15:24:59 2017 +0000"
      },
      "message": "Merge \"Testables lib should not statically link mockito\""
    },
    {
      "commit": "56ff021d505d57174c56c731cfececb1f5fe6e8e",
      "tree": "a9a6adc0fc52c7506ecd34abbc50d4fab285b8ed",
      "parents": [
        "0abc93177f0561ab7874531f346c5de11094f048"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Dec 20 15:41:32 2017 -0800"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Dec 20 15:41:32 2017 -0800"
      },
      "message": "Testables lib should not statically link mockito\n\n- All users of the lib already statically link mockito\n- We should allow the users to decide what flavor they use\n\nTest: m -j checkbuild\nChange-Id: Ibbdb8be8022432a13b872865ade47b92b28976c6\nMerged-In: Ibbdb8be8022432a13b872865ade47b92b28976c6\n"
    },
    {
      "commit": "824565dfbaf1bca0b392bd73539fe530d17b18ad",
      "tree": "c322032d16f69d579df8c1f5a56e225de31e138f",
      "parents": [
        "f3630cbe8ab567772e7722d7e8172a9da679dbf5"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Dec 15 10:07:35 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Dec 21 08:34:05 2017 +0900"
      },
      "message": "MacAddress: address api review comments\n\n1) toSafeString() is renamed to toOuiString()\n2) toOuiString() returns a String that only contains the first 3 bytes\n   of the mac address.\n\nBug: 70336442\nTest: runtest frameworks-net\nChange-Id: I798d8fec32dbff5687a682028e5d90eb941f81c1\nMerged-In: I798d8fec32dbff5687a682028e5d90eb941f81c1\n\n(cherry pick from commit a0ecf38d302ef67aa9f767b1072369f8c417952d)\n"
    },
    {
      "commit": "dadf78987a1cb0f2956e5b71b06e1860df1b24a0",
      "tree": "9f4b79795af138b64ff0df837e8615f3df8ed806",
      "parents": [
        "6b93e3931e4ae002f8465139598a1104c4c5ae2f"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Dec 20 15:32:16 2017 -0800"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Dec 20 15:32:16 2017 -0800"
      },
      "message": "Testables lib should not statically link mockito\n\n- All users of the lib already statically link mockito\n- We should allow the users to decide what flavor they use\n\nTest: m -j checkbuild\nChange-Id: Ibbdb8be8022432a13b872865ade47b92b28976c6\n"
    },
    {
      "commit": "660d573e438c4b1a044fa399bb99272a0bcc9f22",
      "tree": "0adf4183c61f5ce65422cde09836a14c6d0196f7",
      "parents": [
        "84a41d6684143bc042707636a8379fa098b637b7"
      ],
      "author": {
        "name": "Lucas Dupin",
        "email": "dupin@google.com",
        "time": "Tue Dec 19 10:05:19 2017 -0800"
      },
      "committer": {
        "name": "Lucas Dupin",
        "email": "dupin@google.com",
        "time": "Wed Dec 20 13:15:44 2017 -0800"
      },
      "message": "Let wallpaper know when to animate AoD transition\n\nSometimes the screen will blank, and sometime the\nwallpaper has the opportunity to animate the\ntransition.\n\nBug: 64155983\nTest: atest tests/Internal/src/android/service/wallpaper/WallpaperServiceTest.java\nTest: atest packages/SystemUI/tests/src/com/android/systemui/doze/DozeWallpaperStateTest.java\nChange-Id: Ia92c00edb98eeeba42da33bdc7bec3feb961a658\n"
    },
    {
      "commit": "30d2c140063853b65fe08cfbd9e5dd2e3b227ef0",
      "tree": "1c8fff1852b7d605b732b95066a150f78381567e",
      "parents": [
        "53a0c205173f1bc4f26d64c7c9b979cd9562f1b0",
        "cf7aa7c09eb438a9f2dd47e9a0348c39217d4ea7"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Wed Dec 20 19:18:45 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 20 19:18:45 2017 +0000"
      },
      "message": "Merge \"Don\u0027t include mockito in frameworks-base-testutils\" am: f924642729\nam: cf7aa7c09e\n\nChange-Id: I6b2486c69af1a05f8282a0d648403522adf2b471\n"
    },
    {
      "commit": "413ff10d92c5ed836de3a4cef4b74ac16f1aef94",
      "tree": "8aa7820b710a9bfd1517314a33b925a8ee18d63e",
      "parents": [
        "dfee3c8fd4f9774ca61144be37106d06f7639544",
        "53a0c205173f1bc4f26d64c7c9b979cd9562f1b0"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Dec 20 18:58:30 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 20 18:58:30 2017 +0000"
      },
      "message": "Merge \"[ipsec-doze] Add fchown to IpSecService to support doze\" am: 4edb4c8ec4 am: 5949912523\nam: 53a0c20517\n\nChange-Id: Id6a5ff71ead4566b9a91b9e9b6c78d81f1ac0f54\n"
    },
    {
      "commit": "f924642729a43ff508f084b6a1e5471fc017400e",
      "tree": "401a56a84ac5f365242998d17ab024d32c77b2a0",
      "parents": [
        "4edb4c8ec461ae68cb1ee169bd3eb4682513043a",
        "53e4ae92c759beab8d42bb9f462905d64a1411dc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 20 18:55:14 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 20 18:55:14 2017 +0000"
      },
      "message": "Merge \"Don\u0027t include mockito in frameworks-base-testutils\""
    },
    {
      "commit": "dfee3c8fd4f9774ca61144be37106d06f7639544",
      "tree": "d7d54e3a4ee6527c270e59579600d5a973bbf77b",
      "parents": [
        "ea04d2e856a9d8cf4085b54e6d8bbcaff9951f19",
        "9addc597e37b15c49dc588fb9a01af2e74ace542"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 20 18:49:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 20 18:49:51 2017 +0000"
      },
      "message": "Merge \"Don\u0027t include mockito in frameworks-base-testutils\""
    },
    {
      "commit": "53a0c205173f1bc4f26d64c7c9b979cd9562f1b0",
      "tree": "b312f75ea49783204ab235ed3f05e37671432c30",
      "parents": [
        "875fd19c48c58065f04a2d30766f35a002d303c7",
        "5949912523e76680a61f3c511c4a3fda3b2131c8"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Dec 20 18:42:26 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 20 18:42:26 2017 +0000"
      },
      "message": "Merge \"[ipsec-doze] Add fchown to IpSecService to support doze\" am: 4edb4c8ec4\nam: 5949912523\n\nChange-Id: I9036fc2768dd9664ab7407b359f3c689c7ce700e\n"
    },
    {
      "commit": "3954230b424ae62f703d9a79df61581fc499e831",
      "tree": "bae458895a4d335b32e9f8509b4f834eddf2e4b9",
      "parents": [
        "5ef174d48af45db7cef193302fd13c9b9e64dd71",
        "165082495d3a89bf48e37fdef060471b635f152f"
      ],
      "author": {
        "name": "Gopinath Elanchezhian",
        "email": "gelanchezhian@google.com",
        "time": "Tue Dec 19 23:36:42 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 19 23:36:42 2017 +0000"
      },
      "message": "Merge \"atest support for app startup test\""
    },
    {
      "commit": "53e4ae92c759beab8d42bb9f462905d64a1411dc",
      "tree": "5841e01ff5332b6a5968376ea614eddf469e825b",
      "parents": [
        "0abc93177f0561ab7874531f346c5de11094f048"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Dec 19 13:20:22 2017 -0800"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Dec 19 13:34:59 2017 -0800"
      },
      "message": "Don\u0027t include mockito in frameworks-base-testutils\n\nSo that each test can pick if they want mockito-inline or not.\n\nTest: m -j checkbuild\nChange-Id: I1ac02acebbe5cd01f3032a10932a1c612d8d3a4d\nMerged-In: I1ac02acebbe5cd01f3032a10932a1c612d8d3a4d\n"
    },
    {
      "commit": "9addc597e37b15c49dc588fb9a01af2e74ace542",
      "tree": "caef4a7f819b76d775f7eeda6dae6c272e8fc7cd",
      "parents": [
        "beef470baf1d8bdc6d451616638ba2e400b61992"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Dec 19 13:20:22 2017 -0800"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Tue Dec 19 13:22:14 2017 -0800"
      },
      "message": "Don\u0027t include mockito in frameworks-base-testutils\n\nSo that each test can pick if they want mockito-inline or not.\n\nTest: m -j checkbuild\nChange-Id: I1ac02acebbe5cd01f3032a10932a1c612d8d3a4d\n"
    },
    {
      "commit": "ebf59a896246b9b1603b779029c213f69d8875d4",
      "tree": "184e45345d58b5c993e9cf82dbefe5bc6bb1592b",
      "parents": [
        "4316d8ecdee8350bd9becc2de6615cb389d0153a",
        "9de5c7730390ebb1bc399cfd4a449c9da502b325"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Tue Dec 19 00:41:55 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 19 00:41:55 2017 +0000"
      },
      "message": "Merge \"[ipsec-qtaguid] Tag sockets upon creation of encap sockets\" am: d0ac50bcad am: 8caa274ade\nam: 9de5c77303\n\nChange-Id: I4140f386687c579044f9b5fe59dd7e05f86000fe\n"
    },
    {
      "commit": "9de5c7730390ebb1bc399cfd4a449c9da502b325",
      "tree": "99afd1d932794ae9ad4779a18b3fd02053ddd26d",
      "parents": [
        "fe9e89820d08c49f8305c734de0a707bf0b10feb",
        "8caa274ade59df3ed75a08bcec4a40ef5edad5f2"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Tue Dec 19 00:27:57 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 19 00:27:57 2017 +0000"
      },
      "message": "Merge \"[ipsec-qtaguid] Tag sockets upon creation of encap sockets\" am: d0ac50bcad\nam: 8caa274ade\n\nChange-Id: I2f27c76a1f493ff4f0bd423c06f159e629866d4d\n"
    },
    {
      "commit": "165082495d3a89bf48e37fdef060471b635f152f",
      "tree": "3e6c1b821d5a18822e860d4f8f9f9120f11f3f69",
      "parents": [
        "6e15c2a89ae9733d2552d9d0a20504a4bdf69c29"
      ],
      "author": {
        "name": "gopinath",
        "email": "gelanchezhian@google.com",
        "time": "Mon Dec 18 16:10:28 2017 -0800"
      },
      "committer": {
        "name": "gopinath",
        "email": "gelanchezhian@google.com",
        "time": "Mon Dec 18 16:10:28 2017 -0800"
      },
      "message": "atest support for app startup test\n\nBug :  b/65842123\n\nTest: App launch test config able to build and install this test\napk in the atest.\n\nChange-Id: I040e299b1e1fdafbcc716f2b0b8b32e7b842de20\n"
    },
    {
      "commit": "fe9e89820d08c49f8305c734de0a707bf0b10feb",
      "tree": "42741c85492f303b623d18d08673c56f5bcda843",
      "parents": [
        "74ee537cca22e3dd8d44b46d56d505f936504fb8",
        "99be302c7191f07fbc75a8031c46ef382a9da546"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Dec 19 00:06:00 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 19 00:06:00 2017 +0000"
      },
      "message": "Merge changes I798d8fec,I4a2d5866 am: c5212b6654\nam: 99be302c71\n\nChange-Id: I41b507c4e4bf9b8b9082f5e7eaab8985b5bbef41\n"
    },
    {
      "commit": "ba8d313efccc74abeaf1391ad95edc42631f84ab",
      "tree": "36750e37dea933394d6a1f3b452d3646d71af032",
      "parents": [
        "eb44ebbfcd0cb0fa9f56f9292a9549dfef397b34"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Dec 06 21:56:35 2017 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Mon Dec 18 16:01:58 2017 -0800"
      },
      "message": "[ipsec-doze] Add fchown to IpSecService to support doze\n\nEncap sockets are currently created as the system server, and should be\nfchown\u0027d to the user for whom it was created on behalf of.\n\nBug: 62994731\nTest: New tests added and run to IpSecService\nChange-Id: Icc49e709ae588981e69765fdb77537d7ffbac5fe\n"
    },
    {
      "commit": "d0ac50bcadfb3b2472351d581d7f3b25702d6c55",
      "tree": "cc5373bf91897a5e34e2c97ed5e21c4f1012a477",
      "parents": [
        "c5212b665486d9db34a726e4d9d8e7bd1fa09f1b",
        "babe5d73641870f33c55345964ac7ab77656ca97"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Mon Dec 18 23:50:52 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Dec 18 23:50:52 2017 +0000"
      },
      "message": "Merge \"[ipsec-qtaguid] Tag sockets upon creation of encap sockets\""
    },
    {
      "commit": "babe5d73641870f33c55345964ac7ab77656ca97",
      "tree": "57206f04e6ba1593dfe77723c06ecdbbec0c64d0",
      "parents": [
        "a4239cf7980ebf42d760afe0b60086d4d94e9cf8"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Sun Dec 03 19:42:36 2017 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Mon Dec 18 19:46:06 2017 +0000"
      },
      "message": "[ipsec-qtaguid] Tag sockets upon creation of encap sockets\n\nAdded calls to tag encap sockets to that of the UID for which the encap\nsocket is being created on behalf of. This ensures that all data\naccounting generated for the UDP-encap-ESP socket is correctly billed to\nthe right UID.\n\nBug: 62994731\nTest: New tests added to IpSecServiceTest.java, passing\nChange-Id: I15365ea9c982fd7b4e3cdeff314ddfba2289c86e\n"
    },
    {
      "commit": "7517b5dcce8dde3a22177857b8fff6439fd98d82",
      "tree": "900e0ee61f60bdae4980648e1c73ca45c140fb48",
      "parents": [
        "53b2d749240f8c689b04155a960b75c40c00aba8"
      ],
      "author": {
        "name": "Lucas Dupin",
        "email": "dupin@google.com",
        "time": "Tue Aug 22 12:51:25 2017 -0700"
      },
      "committer": {
        "name": "Lucas Dupin",
        "email": "dupin@google.com",
        "time": "Mon Dec 18 11:28:16 2017 -0800"
      },
      "message": "Support wallpapers in AoD\n\nSuch wallpaper has to define supportsAmbientMode,\nand set it to true on its android.service.wallpaper\nmeta data.\n\nAlso introduces WallpaperService.Engine#onAmbientModeChanged\nto notify a live wallpaper that the display state has changed.\n\nChange-Id: I49e846069a698b3cc3bb6e7cda98172920eaae4c\nBug: 64155983\nTest: runtest -x frameworks/base/packages/SystemUI/tests/src/com/android/systemui/doze/DozeWallpaperStateTest.java\nTest: runtest -x frameworks/base/tests/Internal/src/android/app/WallpaperInfoTest.java\nTest: runtest -x frameworks/base/tests/Internal/src/android/service/wallpaper/WallpaperServiceTest.java\nTest: set AoD wallpaper, go to aod, lock screen, launcher\nTest: set regular wallpaper, go to aod, lock screen, launcher\n"
    },
    {
      "commit": "a0ecf38d302ef67aa9f767b1072369f8c417952d",
      "tree": "1986d9692768eaa70d533199eff095427c5e7023",
      "parents": [
        "3f4848102c423faa41ab3ca5827be1e630686f60"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Fri Dec 15 10:07:35 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Mon Dec 18 09:22:47 2017 +0900"
      },
      "message": "MacAddress: address api review comments\n\n1) toSafeString() is renamed to toOuiString()\n2) toOuiString() returns a String that only contains the first 3 bytes\n   of the mac address.\n\nBug: 70336442\nTest: runtest frameworks-net\nChange-Id: I798d8fec32dbff5687a682028e5d90eb941f81c1\n"
    },
    {
      "commit": "cc1b3e0e89c738503f99a4fe23de1712425c67e4",
      "tree": "5108497edb21f746ce8c199e0bdd7afa686e73a1",
      "parents": [
        "41b745ca0d117c07419f9255485b8ca5094c653d",
        "e451de10d666d4422d27f3c26ec30aee5bf6e0d9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 15 23:47:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 15 23:47:40 2017 +0000"
      },
      "message": "Merge \"Add android.test.base/stubs dependency\""
    },
    {
      "commit": "e451de10d666d4422d27f3c26ec30aee5bf6e0d9",
      "tree": "16c7dbe80557b7b23e241fd7ce3306f559b6d485",
      "parents": [
        "1895f2e5bb3c07b2dc85ed6267848e820d6c39b0"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 15 07:22:37 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 15 07:37:51 2017 +0000"
      },
      "message": "Add android.test.base/stubs dependency\n\nIn preparation for the removal of the non-junit classes in the\nandroid.test.base library from the android.jar this adds a dependency\non android.test.base/stubs to ensure this code will continue to\ncompile.\n\nThe following change descriptions were generated automatically and so\nmay be a little repetitive. They are provided to give the reviewer\nenough information to check the comments match what has actually been\nchanged and check the reasoning behind the changes.\n\n* cmds/uiautomator/instrumentation/Android.mk\n    Added \u0027android.test.base.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    uiautomator-instrumentation\u0027s will need them in order to compile\n    once its classes are removed from the current SDK on which it\n    currently depends.\n\n* core/tests/hosttests/test-apps/ExternalSharedPerms/Android.mk\n    Added \u0027android.test.base.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    ExternalSharedPermsTestApp\u0027s will need them in order to compile\n    once its classes are removed from the current SDK on which it\n    currently depends.\n\n* core/tests/hosttests/test-apps/ExternalSharedPermsBT/Android.mk\n    Added \u0027android.test.base.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    ExternalSharedPermsBTTestApp\u0027s will need them in order to compile\n    once its classes are removed from the current SDK on which it\n    currently depends.\n\n* core/tests/hosttests/test-apps/ExternalSharedPermsDiffKey/Android.mk\n    Added \u0027android.test.base.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    ExternalSharedPermsDiffKeyTestApp\u0027s will need them in order to\n    compile once its classes are removed from the current SDK on which\n    it currently depends.\n\n* core/tests/hosttests/test-apps/ExternalSharedPermsFL/Android.mk\n    Added \u0027android.test.base.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    ExternalSharedPermsFLTestApp\u0027s will need them in order to compile\n    once its classes are removed from the current SDK on which it\n    currently depends.\n\n* nfc-extras/tests/Android.mk\n    Added \u0027android.test.base.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    NfcExtrasTests\u0027s will need them in order to compile once its\n    classes are removed from the current SDK on which it currently\n    depends.\n\n* tests/SurfaceComposition/Android.mk\n    Added \u0027android.test.base.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    SurfaceComposition\u0027s will need them in order to compile once its\n    classes are removed from the current SDK on which it currently\n    depends.\n\n* tests/WindowAnimationJank/Android.mk\n    Added \u0027android.test.base.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    WindowAnimationJank\u0027s will need them in order to compile once its\n    classes are removed from the current SDK on which it currently\n    depends.\n\nBug: 30188076\nTest: make dist\nChange-Id: I92b3ff3e5fede3d8d8ecefb0b2e1ee93c5ca9875\n"
    },
    {
      "commit": "648aee9407fe39a08c814543a231374baac75d11",
      "tree": "78b5235da78d52716af5129b16657c058aa37154",
      "parents": [
        "85ca6f75c6b5925da5485621632ade81e76b6328",
        "327462b2f745f9d4f63da7c42603e16cf272a4ad"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 15 07:37:48 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 15 07:37:48 2017 +0000"
      },
      "message": "Merge \"Revert \"Send empty LinkProperties when entering StoppedState.\"\" am: e8a4cb13e9 am: bb8c1a501a\nam: 327462b2f7\n\nChange-Id: Ie43fa6ffba91df2d38011d17008c8033ad29cf7b\n"
    },
    {
      "commit": "327462b2f745f9d4f63da7c42603e16cf272a4ad",
      "tree": "822b06be93bd60ff5d41926df3c68f1fe14bcbaf",
      "parents": [
        "d71ec3be6fb30ed6e79e47466db60d65c13ef460",
        "bb8c1a501a358080356d594365a40ac16a069210"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 15 07:29:10 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 15 07:29:10 2017 +0000"
      },
      "message": "Merge \"Revert \"Send empty LinkProperties when entering StoppedState.\"\" am: e8a4cb13e9\nam: bb8c1a501a\n\nChange-Id: I78bd3c062e9ae89f43dda93ff0d8785cd2cbff70\n"
    },
    {
      "commit": "e8a4cb13e937263fb9ed7da6917900901b36a299",
      "tree": "9fe95ac7e9f18dd16de772e9d1e7015ff30fba92",
      "parents": [
        "5557fe3e2dad439797e54ccfe5f32b3c981ea7b6",
        "652044a7db7a64bf39f18a306431767bdf886ac1"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 15 07:09:24 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 15 07:09:24 2017 +0000"
      },
      "message": "Merge \"Revert \"Send empty LinkProperties when entering StoppedState.\"\""
    },
    {
      "commit": "85ca6f75c6b5925da5485621632ade81e76b6328",
      "tree": "85d7810d5b34bca84ae0a2fa6f6d05c23b0c4613",
      "parents": [
        "a629e4c393e5ac52c07598a5d3b4ed120115c97d",
        "d71ec3be6fb30ed6e79e47466db60d65c13ef460"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 15 06:57:20 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 15 06:57:20 2017 +0000"
      },
      "message": "Merge \"Send empty LinkProperties when entering StoppedState.\" am: 5557fe3e2d am: de336f18f9\nam: d71ec3be6f\n\nChange-Id: Ie775de7719bedc4fb0d1a50a3be6acad9651a9d9\n"
    },
    {
      "commit": "d71ec3be6fb30ed6e79e47466db60d65c13ef460",
      "tree": "644ba6e3e0e3d9fce0d16b2823be4f7a1f4f6f97",
      "parents": [
        "d569d33ac45c37ecc70d9b7db6fa405780731959",
        "de336f18f96b0fccb97c445cad853973547978ea"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 15 06:49:11 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 15 06:49:11 2017 +0000"
      },
      "message": "Merge \"Send empty LinkProperties when entering StoppedState.\" am: 5557fe3e2d\nam: de336f18f9\n\nChange-Id: Ida8252c45d7e4680282b49f995fc564cb7227adf\n"
    },
    {
      "commit": "652044a7db7a64bf39f18a306431767bdf886ac1",
      "tree": "9423b1bbf27f37b6daeb14a428941ae9e11dc731",
      "parents": [
        "94209ab7686b202cfad6e42e07056bb9511006a8"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 15 06:36:50 2017 +0000"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 15 06:36:50 2017 +0000"
      },
      "message": "Revert \"Send empty LinkProperties when entering StoppedState.\"\n\nThis reverts commit 94209ab7686b202cfad6e42e07056bb9511006a8.\n\nReason for revert: should not have auto-submitted prior to more extensive wifi team testing.\n\nChange-Id: Ie81b10473caf34971226948038bc20dc4fa6a1ae\n"
    },
    {
      "commit": "5557fe3e2dad439797e54ccfe5f32b3c981ea7b6",
      "tree": "27a4a4c56c96f56f6f57c01dd067965c4a527092",
      "parents": [
        "0abc93177f0561ab7874531f346c5de11094f048",
        "94209ab7686b202cfad6e42e07056bb9511006a8"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 15 06:29:15 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 15 06:29:15 2017 +0000"
      },
      "message": "Merge \"Send empty LinkProperties when entering StoppedState.\""
    },
    {
      "commit": "d569d33ac45c37ecc70d9b7db6fa405780731959",
      "tree": "822b06be93bd60ff5d41926df3c68f1fe14bcbaf",
      "parents": [
        "5ad2fbabf846da36a340eea0afa0d5369852fb73",
        "ee898c81a77a7b69758590fbaf2bee09595c5e16"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Thu Dec 14 23:28:16 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 14 23:28:16 2017 +0000"
      },
      "message": "Merge \"Fix broken test due to API rename\" am: 0abc93177f\nam: ee898c81a7\n\nChange-Id: I7e99991cd2c71c66e1acb3aa3957efb28c9a426a\n"
    },
    {
      "commit": "05c21d632ecc44b8bd087cd6afa3d95aac14fb09",
      "tree": "cbf75b19cca7187e1c1578d83c4605d623c1bcc9",
      "parents": [
        "a233c9502643058cbdd276243018e822bcb683e1"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Thu Dec 14 14:46:46 2017 -0800"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Thu Dec 14 23:13:45 2017 +0000"
      },
      "message": "Fix broken test due to API rename\n\nA race condition during an Api rename has caused\nthe name change from reserveSecurityParameterIndex\nto allocateSecurityParameterIndex to be wrong in\na test. Fixing.\n\nBug: 69128142\nTest: runtest frameworks-net\nChange-Id: I12fb9832cb938dc19f463b1f1124127435d7b173\n"
    },
    {
      "commit": "660a335f11efd2e5b0db65ab829abafec1934e9b",
      "tree": "9fe95ac7e9f18dd16de772e9d1e7015ff30fba92",
      "parents": [
        "df0f5e979137193aebab0b3a4e7007b275a99549"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Thu Dec 14 14:46:46 2017 -0800"
      },
      "committer": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Thu Dec 14 23:04:42 2017 +0000"
      },
      "message": "Fix broken test due to API rename\n\nA race condition during an Api rename has caused\nthe name change from reserveSecurityParameterIndex\nto allocateSecurityParameterIndex to be wrong in\na test. Fixing.\n\nBug: 69128142\nTest: runtest frameworks-net\nChange-Id: I12fb9832cb938dc19f463b1f1124127435d7b173\n"
    },
    {
      "commit": "ccb9365019d28b297ed501c5b5a2d7c8e7982acf",
      "tree": "259af9bd0f22fd00e333fd0fb0fed395db153527",
      "parents": [
        "33d9a341d520dab500fdbe6d5bb6b1e3e25ea709",
        "f71c95dfe4ef7ce1085d97b9a6d25c494e0dc6c2"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Thu Dec 14 21:48:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 14 21:48:58 2017 +0000"
      },
      "message": "Merge \"Use consistent naming for allocating SPI.\" am: bf48afea49 am: 4753ed4b1b\nam: f71c95dfe4\n\nChange-Id: Ib6845ab0d7f385fbd1d59c0179771542e12c8be0\n"
    },
    {
      "commit": "f71c95dfe4ef7ce1085d97b9a6d25c494e0dc6c2",
      "tree": "8d4a4ed73326143e0b024bc8a62b16d82b97d9e7",
      "parents": [
        "8e50922263395fdf6625d8855c7da2a74baf99ad",
        "4753ed4b1bf0779386fee5569d6b74f6bebd202f"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Thu Dec 14 21:36:32 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 14 21:36:32 2017 +0000"
      },
      "message": "Merge \"Use consistent naming for allocating SPI.\" am: bf48afea49\nam: 4753ed4b1b\n\nChange-Id: Ib5d89044313341790b1ee9271642072ddce181af\n"
    },
    {
      "commit": "bf48afea49f616f4def5b802b54cb313289a0c7f",
      "tree": "7fe6818a5f19784869bcbe18f82cc4af038c0c81",
      "parents": [
        "3adfec2de3176b575a8e7affc4fc30103ae2fa2f",
        "5fb929032de14ca78163e1d0c42c34f6fb287da4"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Thu Dec 14 21:10:16 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 14 21:10:16 2017 +0000"
      },
      "message": "Merge \"Use consistent naming for allocating SPI.\""
    },
    {
      "commit": "e3f872cf06c54fcdb4ca73f332f8e6988d6aa68e",
      "tree": "962ec07626fa99887bfa327f8399b6338f11452c",
      "parents": [
        "c47589899559cd2fa1b6e448a43067ea8e67cb6e",
        "33042635941995b6b79b4921c1f01cb4b3a833c2"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Dec 14 03:25:36 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 14 03:25:36 2017 +0000"
      },
      "message": "Merge \"Extend connectivity OWNERS\" am: 64c2488056\nam: 3304263594\n\nChange-Id: I816a15beedcfc9f200d00da7282e54992a096555\n"
    },
    {
      "commit": "64c24880563ecbfb41ee4e77617c1c793927a7d0",
      "tree": "e27c110ad2508bdc11f05ebaf516f703699beb58",
      "parents": [
        "b6ba8fd49db3dc94f49b1fbf226340dd24e62c1f",
        "959ee4a7b14a72045219d864508449bde04f82a6"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 14 02:56:40 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 14 02:56:40 2017 +0000"
      },
      "message": "Merge \"Extend connectivity OWNERS\""
    },
    {
      "commit": "51176cf8478af123c2cf0d463c950ffa7b251b25",
      "tree": "f07fcb746863c81eca58065d8e8079c614a51b76",
      "parents": [
        "a8a34ab1a85ba0fc27a86ff3f42939b699a5bb16",
        "c47589899559cd2fa1b6e448a43067ea8e67cb6e"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Thu Dec 14 02:41:28 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 14 02:41:28 2017 +0000"
      },
      "message": "Merge \"Convert IpSecService resources to use refcounting\" am: b6ba8fd49d am: 8698b33cc2\nam: c475898995\n\nChange-Id: Ib18839d7dff8e25898f81e877337fbb8cb24cc7b\n"
    },
    {
      "commit": "c47589899559cd2fa1b6e448a43067ea8e67cb6e",
      "tree": "8c3846cb2023322381f7cb0be5b09a4bc3c732ac",
      "parents": [
        "b7664ec84ca505d9e6f56596d8930b076c16fb3e",
        "8698b33cc20c27dc3e956d901f2a3079e09ac97c"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Thu Dec 14 02:20:20 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 14 02:20:20 2017 +0000"
      },
      "message": "Merge \"Convert IpSecService resources to use refcounting\" am: b6ba8fd49d\nam: 8698b33cc2\n\nChange-Id: I9645df5304d7f11068d190cbdaccfe83ca0580bc\n"
    },
    {
      "commit": "959ee4a7b14a72045219d864508449bde04f82a6",
      "tree": "74154721816d67e2ce0fc120b03c786777ea5d96",
      "parents": [
        "f5bec0d781499a3bde7aa54f2072019ce2709e70"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Sat Dec 09 12:57:41 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Thu Dec 14 09:56:56 2017 +0900"
      },
      "message": "Extend connectivity OWNERS\n\nAlso remove \u0027build.master@android.com\u0027 which is deprecated, not\ndeclared by anybody else, and makes the linter unhappy.\n\nBug: 70394432\nTest: built\nMerged-In: I9c0ba41386129379f82259fcc5e745562b014fae\n\n(cherry pick from commit 626eed2ac826a34b3ac9b1d4ddb9a783222187ec)\n\nChange-Id: Ie802113d61f693d73f7234b44ac2a9bd462b3fbf\n"
    },
    {
      "commit": "3220790917f359538b91db4029d46f99c4068fa2",
      "tree": "87acb3118e68d003893539e942e144147de21386",
      "parents": [
        "f0bd6d95b55a6157c30d47399d662299a2245590",
        "626eed2ac826a34b3ac9b1d4ddb9a783222187ec"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Wed Dec 13 23:36:51 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 13 23:36:51 2017 +0000"
      },
      "message": "Merge \"Extend connectivity OWNERS\""
    },
    {
      "commit": "344bd62a31d844781f0b73267dbf4a9b2a0b7341",
      "tree": "84191d4789bb7dad87c9461dad8d0ba6103f4cde",
      "parents": [
        "8244ebfc4ee302d40fc38211ca2fa4f8d27918b2"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Thu Nov 16 15:27:22 2017 -0800"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Dec 13 23:28:41 2017 +0000"
      },
      "message": "Convert IpSecService resources to use refcounting\n\nThis is part 2 of 2 of the refcounting refactor for IpSecService\nresources.\n\nSwitched ManagedResources to use RefcountedResource structure for\nmanaging reference counts and eventual cleanup. Further, resource arrays\nand quota management have been aggregated into a UserRecord for better\nisolation. UID access checking has been similarly moved into the\nUserRecordTracker, and resourceId checking has been rolled into\nRefcountedResourceArray\u0027s accessor methods.\n\nBug: 63409385\nTest: CTS, all unit tests run on aosp_marlin-eng, new tests added\nChange-Id: Iee52dd1c9d2583bb6bfaf65be87569e9d50a5b63\n"
    },
    {
      "commit": "892786836e65a692a8a55c0830b0b4ab39dc8b78",
      "tree": "7fba3d3a2c719f4c4e68b889329cf87457c924c3",
      "parents": [
        "411728e0f0f2377564fb66857465bd14a40900ac",
        "012739e9ada9237ad1d826282f2c60e5a9ff8fb7"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Dec 13 22:11:20 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 13 22:11:20 2017 +0000"
      },
      "message": "Merge \"Add reference counted resources to IpSecService\" am: e11366f38a am: adb6437fea\nam: 012739e9ad\n\nChange-Id: Iae17a5d33d71e8abf24211cbf2b215520f45c619\n"
    },
    {
      "commit": "012739e9ada9237ad1d826282f2c60e5a9ff8fb7",
      "tree": "3de0d1ce056270739687a03798119346d71aa4c7",
      "parents": [
        "ff6fcaec0ba0fa66cdabb8ec33db5cd66c9428e1",
        "adb6437fea1cc5b2f1ff7ff5904af0f9cfcd723e"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Dec 13 22:00:26 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 13 22:00:26 2017 +0000"
      },
      "message": "Merge \"Add reference counted resources to IpSecService\" am: e11366f38a\nam: adb6437fea\n\nChange-Id: I927ac534570b3836510e0fb4feda8cf544f5a9e4\n"
    },
    {
      "commit": "e11366f38ac66559e8cafc9572a563dac3be1f14",
      "tree": "94bd6018ec96ea63a4b274d57d20c5fcfeb40c87",
      "parents": [
        "a0c1780d3c0f3048abf497e7f48a3ce390dee399",
        "409c8ca7beabb98340d0c579ff134ec07f21b865"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Wed Dec 13 21:33:38 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 21:33:38 2017 +0000"
      },
      "message": "Merge \"Add reference counted resources to IpSecService\""
    },
    {
      "commit": "409c8ca7beabb98340d0c579ff134ec07f21b865",
      "tree": "59f61b9857d5de6ca8234ea69e7c850865df2b82",
      "parents": [
        "06e314f6cc0d629f59579f8bd549915580f79b4b"
      ],
      "author": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Thu Oct 26 19:41:43 2017 -0700"
      },
      "committer": {
        "name": "Benedict Wong",
        "email": "benedictwong@google.com",
        "time": "Tue Dec 12 23:40:52 2017 -0800"
      },
      "message": "Add reference counted resources to IpSecService\n\nThis patch adds (but does not enable the usage of) RefcountedResource\nobjects to IpSecService, with tests to ensure correct function. This is\npatch 1 of a series of patches to refactor the resource management\nsystems in IpSecService.\n\nRefcountedResource objects allow for management of acyclical dependency\ntrees, ensuring eventual cleanup when resources are no longer used. This\ncleanup may be triggered by binder death or by explicit user action.\n\nBug: 63409385\nTest: New tests written in IpSecServiceRefcountedResourceTest,\nexplicitly testing the RefcountedResource class\n\nChange-Id: Ib5be7482b2ef5f1c8dec9be68f15e90d8b3aba6d\n"
    },
    {
      "commit": "94209ab7686b202cfad6e42e07056bb9511006a8",
      "tree": "878230a3f9a529f6c5ed393ff7827b6c41fbe657",
      "parents": [
        "f5bec0d781499a3bde7aa54f2072019ce2709e70"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Mon Dec 11 14:24:08 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Wed Dec 13 12:13:36 2017 +0900"
      },
      "message": "Send empty LinkProperties when entering StoppedState.\n\nAdditionally, no longer try to transition from within a State\u0027s\nenter() method (this can encounter Log.wtf()s). Introduce some\nCMD_JUMP_* commands and use deferMessage().\n\nTest: as follows\n    - built\n    - flashed\n    - booted\n    - runtest frameworks-net passes (except for IpConnectivityMetricsTest failures)\n    - manual changing from DHCP to static configurations works:\n  2017-12-11T19:06:19.082 - INVOKE onLinkPropertiesChange({{InterfaceName: wlan0 LinkAddresses: []  Routes: [] DnsAddresses: [] Domains: null MTU: 0}})\n\nBug: 69800563\nBug: 70394432\nChange-Id: Ice249a48b66806c0270ec3f11dd2e8e387d4e29b\n"
    },
    {
      "commit": "5fb929032de14ca78163e1d0c42c34f6fb287da4",
      "tree": "5efce3a17f03238572ddc890a872ea3610be45c7",
      "parents": [
        "403c8f72e38114d0aadfd852b98b323827068e5b"
      ],
      "author": {
        "name": "Jonathan Basseri",
        "email": "misterikkit@google.com",
        "time": "Thu Nov 16 10:58:01 2017 -0800"
      },
      "committer": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Tue Dec 12 13:50:35 2017 -0800"
      },
      "message": "Use consistent naming for allocating SPI.\n\nThroughout the IPsec code (API, system server, netd) we use \"reserve\"\nSPI and \"allocate\" SPI interchangeably. This renames to use \"allocate\"\neverywhere for self-consistency and consistency with the kernel\n(ALLOCSPI).\n\nIn javadoc, I am leaving the word \"reserve\" in several places because it\nis still an accurate description of how the method behaves.\n\nBug: 69128142\nTest: TreeHugger should be enough\nChange-Id: I8ea603b4612303b0393beef04032671fa53d2106\n"
    },
    {
      "commit": "626eed2ac826a34b3ac9b1d4ddb9a783222187ec",
      "tree": "3bc8c20dc887c081eca81c9cbe7e06a3b0316982",
      "parents": [
        "84321d87b9b732f2429df0a3830c43659a3a8ee0"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Sat Dec 09 12:57:41 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Dec 12 09:14:23 2017 +0900"
      },
      "message": "Extend connectivity OWNERS\n\nAlso remove \u0027build.master@android.com\u0027 which is deprecated, not\ndeclared by anybody else, and makes the linter unhappy.\n\nBug: 70394432\nTest: built\nChange-Id: I9c0ba41386129379f82259fcc5e745562b014fae\n"
    },
    {
      "commit": "cde4484262b526ad236ce918806912b039ac4628",
      "tree": "208802d9f080a3fe4a08014cccd63bf439e7426b",
      "parents": [
        "21084779c5754dd5ab45c49094a2c9ed5167fdb8",
        "a312cf38f96eec136f54a24f61124848fac28366"
      ],
      "author": {
        "name": "Roshan Pius",
        "email": "rpius@google.com",
        "time": "Sat Dec 09 02:09:51 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Dec 09 02:09:51 2017 +0000"
      },
      "message": "Merge \"Revert \"Send empty LinkProperties when entering StoppedState.\"\" am: e339662247 am: 66c8516600\nam: a312cf38f9\n\nChange-Id: Ib7aff28ca5088bf5ebbc86ab7ee5c607e35d6a2b\n"
    },
    {
      "commit": "a312cf38f96eec136f54a24f61124848fac28366",
      "tree": "4a2ba80e99cc698a9c638f77ed66d4be8230eb50",
      "parents": [
        "8b4960ec91a84512e5acb6f4db9b02f0c6ce974a",
        "66c8516600a4ab5bd91bfa3e88e617d419c00714"
      ],
      "author": {
        "name": "Roshan Pius",
        "email": "rpius@google.com",
        "time": "Sat Dec 09 01:58:08 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Dec 09 01:58:08 2017 +0000"
      },
      "message": "Merge \"Revert \"Send empty LinkProperties when entering StoppedState.\"\" am: e339662247\nam: 66c8516600\n\nChange-Id: I9c7175d9e2db45780f14630db43a6ab5672dfe3d\n"
    },
    {
      "commit": "e3396622478c7a6f9f5dbb240a403539d44b316e",
      "tree": "4746cb016aaa47b291b471f5e027107261479188",
      "parents": [
        "8d621cc0425363ca719ce485ddb2c4e1bd174813",
        "f1967c4125f1f08f9ee4a45d68413a1c3a0e7d72"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Dec 09 01:34:07 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Dec 09 01:34:07 2017 +0000"
      },
      "message": "Merge \"Revert \"Send empty LinkProperties when entering StoppedState.\"\""
    },
    {
      "commit": "f1967c4125f1f08f9ee4a45d68413a1c3a0e7d72",
      "tree": "46aa9509b43018b31c2d7b5e15f84e1a47498f63",
      "parents": [
        "b3f9f4a30502477e71fc93037dc58080fddb1853"
      ],
      "author": {
        "name": "Roshan Pius",
        "email": "rpius@google.com",
        "time": "Fri Dec 08 22:29:50 2017 +0000"
      },
      "committer": {
        "name": "Roshan Pius",
        "email": "rpius@google.com",
        "time": "Fri Dec 08 22:29:50 2017 +0000"
      },
      "message": "Revert \"Send empty LinkProperties when entering StoppedState.\"\n\nThis reverts commit b3f9f4a30502477e71fc93037dc58080fddb1853.\n\nReason for revert: Crash in WifiStateMachine (b/70394432)\n\nChange-Id: I3a96c822eddcebcdd6621cee878b865171d094e8\n"
    },
    {
      "commit": "8474c45b71e80096ff1ffcfc111a14240be06625",
      "tree": "f19399f3186544ad76e10290bc192a5a437ae4fd",
      "parents": [
        "1185482b01df445500d9da0e3f29c47f7b5b89e7",
        "f4ef6eb5f5da1e052598a1c21eeaa8e23fbd4ca8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 08 22:11:47 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 08 22:11:47 2017 +0000"
      },
      "message": "Merge \"Changes need to implement heavy-weight gaming app tests.\""
    },
    {
      "commit": "57e4f25f09b2bc3d2c406a9643634df8f25029c6",
      "tree": "4f70429dc4fa7d2854dd818617585e10d5711a16",
      "parents": [
        "23627fbff5f13629e997a00b006a1ebdc423e735",
        "b866307f99c35252dcb76e9269bb57d97c3c4b86"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 08 18:02:27 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 08 18:02:27 2017 +0000"
      },
      "message": "Merge \"Stop statically including legacy-android-test\""
    },
    {
      "commit": "76a9d9c0d35e8f9a016322d96e09035906ea791d",
      "tree": "1c2d1f8414f3a26627da9491003af67845637bfc",
      "parents": [
        "80059ffc2eaa8f6ca96c331bed99e242bd1d9cd2",
        "d01cef91b09a74b49b359ae637cb02f985269be9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 08 16:46:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 08 16:46:08 2017 +0000"
      },
      "message": "Merge \"Add TestablePermissons, which allows basic control\""
    },
    {
      "commit": "d01cef91b09a74b49b359ae637cb02f985269be9",
      "tree": "bf01e084effe23717aeb92c2cb73a9d2ec342e3c",
      "parents": [
        "4d51f44535ff3935c0aabed0371dc988112b925b"
      ],
      "author": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Fri Dec 08 09:48:25 2017 -0500"
      },
      "committer": {
        "name": "Jason Monk",
        "email": "jmonk@google.com",
        "time": "Fri Dec 08 09:49:08 2017 -0500"
      },
      "message": "Add TestablePermissons, which allows basic control\n\nTest: runtest --path frameworks/base/tests/testables\nChange-Id: I8db323cfc26f592e2e002c9328ab97bc130d559b\n"
    },
    {
      "commit": "60e07a09c9682016d4141016f4df42a3a9937b45",
      "tree": "bbf581d0c92760c1c594490926c4380659bbcc49",
      "parents": [
        "32db7edec3acb66736df72aea357a0518ae0d175",
        "91bb7b17d2cd5ec4c6bf06d69c86c1b6b8e5a5a2"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 08 06:21:03 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 08 06:21:03 2017 +0000"
      },
      "message": "Merge \"Refactor to IpNeighborMonitor and single-threaded semantics\" am: b501e7e25b am: c4ca15786f\nam: 91bb7b17d2\n\nChange-Id: I128763174d70cc4b5999f3fcda485604c006a24e\n"
    },
    {
      "commit": "91bb7b17d2cd5ec4c6bf06d69c86c1b6b8e5a5a2",
      "tree": "581f73821f660975ad76543ed83d4f0402d7077f",
      "parents": [
        "4f6d728e6267dd8cc550e61415364cef91ff7b01",
        "c4ca15786f974bdbbedd8a6b512871af513eb0dc"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 08 06:07:53 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 08 06:07:53 2017 +0000"
      },
      "message": "Merge \"Refactor to IpNeighborMonitor and single-threaded semantics\" am: b501e7e25b\nam: c4ca15786f\n\nChange-Id: Ic6466a83f6b8e128a74321bb37da21e6d2c174e7\n"
    },
    {
      "commit": "b501e7e25b4f338d8d2e9dc87945a0376b78cd7d",
      "tree": "120fdd2d5990aa9d95972ddeb97f6aad2c276cba",
      "parents": [
        "efdca004abe8a03aa15842b218e95af4e869e611",
        "84714bffa1a58fe1f6a114ae015f8e38be46f32d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 08 05:44:26 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 08 05:44:26 2017 +0000"
      },
      "message": "Merge \"Refactor to IpNeighborMonitor and single-threaded semantics\""
    },
    {
      "commit": "ad2b492fe96e43282c9c34296443c446b992c8b7",
      "tree": "cf87fdee19d490360d3a13badc9031aca21c2e63",
      "parents": [
        "77354f027423cf7313c1210502a410e647819875",
        "ca08e38e3abb2d0b1f9e25292d67181b752985d7"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 08 04:23:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 08 04:23:50 2017 +0000"
      },
      "message": "Merge \"Send empty LinkProperties when entering StoppedState.\" am: efdca004ab am: 72aa5bbd4e\nam: ca08e38e3a\n\nChange-Id: Ia33d99f181f67f33b14c0c7552f934b089182c4a\n"
    },
    {
      "commit": "ca08e38e3abb2d0b1f9e25292d67181b752985d7",
      "tree": "bbb0aa77345375acf3ca87d482f933bffba39e53",
      "parents": [
        "3f5f6b5f569e6ff8fa2082da9e6ca9eac31f9446",
        "72aa5bbd4e49d94a6a1cf180ef2fddc13f430bc3"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 08 03:36:17 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 08 03:36:17 2017 +0000"
      },
      "message": "Merge \"Send empty LinkProperties when entering StoppedState.\" am: efdca004ab\nam: 72aa5bbd4e\n\nChange-Id: Ifc17bf75ec29d19e6d35716211305ea40b8742d3\n"
    },
    {
      "commit": "84714bffa1a58fe1f6a114ae015f8e38be46f32d",
      "tree": "7760a0766578216f8579c48f07fb28fc80860a7f",
      "parents": [
        "6a4be8613a2313b2b36f3df4f4a95579e2a2501d"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri May 19 09:29:48 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Fri Dec 08 11:12:05 2017 +0900"
      },
      "message": "Refactor to IpNeighborMonitor and single-threaded semantics\n\nIpReachabilityMonitor (and IpNeighborMonitor) are only accessed from\nthe IpManager StateMachine\u0027s thread. Consequently lots of locking can\nnow be removed.\n\nAdditionally:\n    - rename BlockingSocketReader to PacketReader\n    - incorporate IpReachabilityMonitor output in dump()\n\nTest: as follows\n    - runtest frameworks-net passes\n    - \"adb shell ip neigh change \u003caddress\u003e dev wlan0 nud failed\"\n      triggers wifi to disconnect\nBug: 62476366\nBug: 67013397\nChange-Id: I18aca29ae0019a72a7e559c2832e0d9b0e33d81e\n"
    },
    {
      "commit": "f4ef6eb5f5da1e052598a1c21eeaa8e23fbd4ca8",
      "tree": "55b7ccf01d05d2023c657f3d6eea4090258cb004",
      "parents": [
        "eb370876bb8b7846dab7e3afba1dff3ae5ddac27"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 07 13:57:21 2017 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 07 16:32:06 2017 -0800"
      },
      "message": "Changes need to implement heavy-weight gaming app tests.\n\nWe need to expose the CANT_SAVE_STATE importance for CTS to use.\n\nI also found a serious issue with how instrumentation ApplicationInfo\nis set up, where it doesn\u0027t have lots of important stuff like the\ntargetSdkVersion!  This is now fixed...  though ghod knows how this\nwill impact existing CTS tests, there could certainly be stuff relying\non code thinking it is running as targetSdk 0. :(\n\nFinally delete the CantSaveState tests here, they are going to CTS.\n\nBug: 63937884\nTest: ran new CTS tests\nChange-Id: I42a73e0e83d799f8e5ff8ac4d4704a74ab5aab3e\n"
    },
    {
      "commit": "b866307f99c35252dcb76e9269bb57d97c3c4b86",
      "tree": "ce8d4edc1cf2edbc48029214dfbde2213a3d9466",
      "parents": [
        "9d25218985ba8ea944b4a51d194744b5a85a1105"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 08 00:02:42 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Fri Dec 08 00:07:17 2017 +0000"
      },
      "message": "Stop statically including legacy-android-test\n\nStatically including legacy-android-test leads to duplicate classes\nwhich causes build time problems (with Proguard) and runtime problems on\nolder SDK versions. This change:\n* Stops statically including legacy-android-test.\n* Adds compile time dependencies on andoid.test.base, android.test.mock\n  and android.test.runner where necessary.\n* Adds \u003cuses-library android:name\u003d\"android.test.runner\"/\u003e to any\n  affected package to ensure that the classes that were included by\n  legacy-android-test are still available at runtime. That also adds a\n  dependency on android.test.base and android.test.mock.\n\nThe following change descriptions were generated automatically and so\nmay be a little repetitive. They are provided to give the reviewer\nenough information to check the comments match what has actually been\nchanged and check the reasoning behind the changes.\n\n* apct-tests/perftests/core/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in CorePerfTests results\n    in duplicate classes which leads to build time and compile time\n    issues.\n\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    CorePerfTests\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n* core/tests/ConnectivityManagerTest/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    ConnectivityManagerTest\u0027s source depends on its classes and because\n    of these changes they are no longer present on the compilation\n    path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in ConnectivityManagerTest\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* core/tests/bandwidthtests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    BandwidthTests\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in BandwidthTests results\n    in duplicate classes which leads to build time and compile time\n    issues.\n\n* core/tests/bluetoothtests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    BluetoothTests\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in BluetoothTests results\n    in duplicate classes which leads to build time and compile time\n    issues.\n\n* core/tests/hosttests/test-apps/DownloadManagerTestApp/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in DownloadManagerTestApp\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    DownloadManagerTestApp\u0027s source depends on its classes and because\n    of these changes they are no longer present on the compilation\n    path.\n\n* core/tests/hosttests/test-apps/ExternalSharedPerms/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in\n    ExternalSharedPermsTestApp results in duplicate classes which leads\n    to build time and compile time issues.\n\n* core/tests/hosttests/test-apps/ExternalSharedPermsBT/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in\n    ExternalSharedPermsBTTestApp results in duplicate classes which\n    leads to build time and compile time issues.\n\n* core/tests/hosttests/test-apps/ExternalSharedPermsDiffKey/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in\n    ExternalSharedPermsDiffKeyTestApp results in duplicate classes\n    which leads to build time and compile time issues.\n\n* core/tests/hosttests/test-apps/ExternalSharedPermsFL/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in\n    ExternalSharedPermsFLTestApp results in duplicate classes which\n    leads to build time and compile time issues.\n\n* core/tests/notificationtests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    NotificationStressTests\u0027s source depends on its classes and because\n    of these changes they are no longer present on the compilation\n    path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in NotificationStressTests\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* keystore/tests/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in KeystoreTests results\n    in duplicate classes which leads to build time and compile time\n    issues.\n\n* media/mca/tests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    CameraEffectsTests\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in CameraEffectsTests\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* media/tests/MediaFrameworkTest/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    mediaframeworktest\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in mediaframeworktest\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* nfc-extras/tests/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in NfcExtrasTests results\n    in duplicate classes which leads to build time and compile time\n    issues.\n\n* packages/CarrierDefaultApp/tests/unit/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    CarrierDefaultAppUnitTests\u0027s source depends on its classes and\n    because of these changes they are no longer present on the\n    compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in\n    CarrierDefaultAppUnitTests results in duplicate classes which leads\n    to build time and compile time issues.\n\n* packages/ExtServices/tests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    ExtServicesUnitTests\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in ExtServicesUnitTests\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* packages/MtpDocumentsProvider/tests/Android.mk\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because MtpDocumentsProviderTests\u0027s source\n    depends on their classes and because of these changes they are no\n    longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in\n    MtpDocumentsProviderTests results in duplicate classes which leads\n    to build time and compile time issues.\n\n* packages/SettingsLib/tests/integ/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    SettingsLibTests\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in SettingsLibTests\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* packages/SettingsProvider/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in SettingsProvider\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* packages/SettingsProvider/AndroidManifest.xml\n    Add uses-library for android.test.runner because otherwise this\n    change would change the set of files available to SettingsProvider\n    at runtime.\n\n* packages/Shell/tests/Android.mk\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because ShellTests\u0027s source depends on their\n    classes and because of these changes they are no longer present on\n    the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in ShellTests results in\n    duplicate classes which leads to build time and compile time\n    issues.\n\n* packages/SystemUI/shared/tests/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in SystemUISharedLibTests\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* packages/SystemUI/tests/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in SystemUITests results\n    in duplicate classes which leads to build time and compile time\n    issues.\n\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    SystemUITests\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n* packages/WAPPushManager/tests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    WAPPushManagerTests\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in WAPPushManagerTests\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* sax/tests/saxtests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksSaxTests\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in FrameworksSaxTests\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* tests/BrowserPowerTest/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    BrowserPowerTests\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in BrowserPowerTests\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* tests/CanvasCompare/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    CanvasCompare\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in CanvasCompare results\n    in duplicate classes which leads to build time and compile time\n    issues.\n\n* tests/CoreTests/android/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    CoreTests\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in CoreTests results in\n    duplicate classes which leads to build time and compile time\n    issues.\n\n* tests/DataIdleTest/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    DataIdleTest\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in DataIdleTest results in\n    duplicate classes which leads to build time and compile time\n    issues.\n\n* tests/FrameworkPerf/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworkPerf\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in FrameworkPerf results\n    in duplicate classes which leads to build time and compile time\n    issues.\n\n* tests/HierarchyViewerTest/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    HierarchyViewerTest\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in HierarchyViewerTest\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* tests/ImfTest/tests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    ImfTestTests\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in ImfTestTests results in\n    duplicate classes which leads to build time and compile time\n    issues.\n\n* tests/Internal/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in InternalTests results\n    in duplicate classes which leads to build time and compile time\n    issues.\n\n* tests/MemoryUsage/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    MemoryUsage\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in MemoryUsage results in\n    duplicate classes which leads to build time and compile time\n    issues.\n\n* tests/NetworkSecurityConfigTest/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    NetworkSecurityConfigTests\u0027s source depends on its classes and\n    because of these changes they are no longer present on the\n    compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in\n    NetworkSecurityConfigTests results in duplicate classes which leads\n    to build time and compile time issues.\n\n* tests/SoundTriggerTests/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in SoundTriggerTests\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    SoundTriggerTests\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n\n* tests/SurfaceComposition/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in SurfaceComposition\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n    Added \u0027android.test.runner.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    SurfaceComposition\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n\n* tests/TtsTests/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in TtsTests results in\n    duplicate classes which leads to build time and compile time\n    issues.\n\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    TtsTests\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path.\n\n* tests/WindowAnimationJank/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in WindowAnimationJank\n    results in duplicate classes which leads to build time and compile\n    time issues.\n\n* tests/permission/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworkPermissionTests\u0027s source depends on its classes and\n    because of these changes they are no longer present on the\n    compilation path.\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in\n    FrameworkPermissionTests results in duplicate classes which leads\n    to build time and compile time issues.\n\n* tests/testables/tests/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because statically including the classes in TestablesTests results\n    in duplicate classes which leads to build time and compile time\n    issues.\n\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because TestablesTests\u0027s source depends on\n    their classes and because of these changes they are no longer\n    present on the compilation path.\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: Iacfc939c97415314366ed61c5f3b7aa1a40f0ec9\n"
    },
    {
      "commit": "33203ffd18e71e6b397b4dd8befffc6cedd8e5f5",
      "tree": "effdd9f55c071ae9171237f0eff9b46a7b90c1ff",
      "parents": [
        "018e216f67e47bcafaf0ac8ebe4c4cf756420758",
        "5c6b6223281e0669e674df3cb489d8544c20fb84"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 07 20:36:13 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 07 20:36:13 2017 +0000"
      },
      "message": "Merge \"Display Cutout: Dispatch Cutout from WindowManager\""
    },
    {
      "commit": "5c6b6223281e0669e674df3cb489d8544c20fb84",
      "tree": "8542f5b9f1a00b90c801689f075a9c19bd58b033",
      "parents": [
        "05013b377266f9e4e2651c6aa819960479dc3676"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Nov 07 17:36:10 2017 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Thu Dec 07 19:43:33 2017 +0100"
      },
      "message": "Display Cutout: Dispatch Cutout from WindowManager\n\nAdds the logic to dispatch a DisplayCutout from DisplayFrames\nthrough WindowState to the View hierarchy. Does however not yet\nchange how windows are laid out in response to a DisplayCutout.\n\nThe display cutout is currently never present, the following CL\nwill add logic to emulate a display cutout on devices that do\nnot have a physical one.\n\nBug: 65689439\nTest: runtest -x frameworks/base/services/tests/servicestests/src/com/android/server/wm/WindowFrameTests.java\nChange-Id: Ie4cd4b575755b66a7ffead31e28640983ef4894e\n"
    },
    {
      "commit": "b3f9f4a30502477e71fc93037dc58080fddb1853",
      "tree": "6d90144863f3b9f77afb82ff01a39b88abf909cc",
      "parents": [
        "86c995138379be76613408abdec07d34bb32cd58"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Wed Dec 06 13:37:09 2017 +0900"
      },
      "committer": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Dec 07 18:07:38 2017 +0900"
      },
      "message": "Send empty LinkProperties when entering StoppedState.\n\nTest: as follows\n    - built\n    - flashed\n    - booted\n    - runtest frameworks-net passes\n    - changing from DHCPv4 to static while continuously pinging the\n      default gateway works jsut fine\n    - dumpsys log shows that during the change we send the empty LP:\n  12-06 08:46:51.085 - CMD_ON_QUIT wlan0/23 0 0 null [rcvd_in\u003dStoppingState, proc_in\u003dStoppingState]\n  12-06 08:46:51.092 - INVOKE onLinkPropertiesChange({{InterfaceName: wlan0 LinkAddresses: []  Routes: [] DnsAddresses: [] Domains: null MTU: 0}})\n\nBug: 69800563\nChange-Id: I01047e9a72fce718a167c592bf14406c3bab3ba9\n"
    },
    {
      "commit": "2710ca1e9d5ed8b2e755a9b948be8113ebb82023",
      "tree": "4704f3d690427e6da757b19040fa458182938e7a",
      "parents": [
        "dcb520b4ed5889281124d3520a1675d0a7418a0a"
      ],
      "author": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Tue Dec 05 18:36:56 2017 +0000"
      },
      "committer": {
        "name": "Paul Duffin",
        "email": "paulduffin@google.com",
        "time": "Thu Dec 07 07:38:59 2017 +0000"
      },
      "message": "Flatten dependency hierarchy of legacy-android-test\n\nPrevious changes statically included legacy-android-test in preparation\nfor removing android.test.* and junit.* classes from the android.jar.\nUnfortunately, that lead to duplicate classes between APKs and the\nbootclasspath which caused build problems (Proguard) and also runtime\nproblems (when targeting and running on older releases).\n\nSwitching from statically including the classes to using the runtime\nlibraries cannot be done in one step because legacy-android-test is\nstatically included in libraries which are used in many APKs and so\nremoving it from those libraries requires that all APKs be updated at\nonce. Doing that atomically across dozens of projects is not practical.\n\nThis change modifies APKS that statically include the\nlegacy-android-test library indirectly.\n\n* If the APK manifest uses the android.test.runner library then the APK\n  is modified to stop statically including legacy-android-test and\n  instead build against android.test.base/mock/runner libraries instead.\n\n* Otherwise, the APK statically includes legacy-android-test.\n\nAlso, any libraries that statically include are modified to stop\nstatically including it and if it has source dependencies on the classes\nis changed to build against the android.test.base/mock/runner libraries.\n\nThe following change descriptions were generated automatically and so\nmay be a little repetitive. They are provided to give the reviewer\nenough information to check the comments match what has actually been\nchanged and check the reasoning behind the changes.\n\n* cmds/uiautomator/instrumentation/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because uiautomator-instrumentation is not a package so does not\n    need to statically include the classes\n\n* cmds/uiautomator/library/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    uiautomator.core has a source dependency on its classes\n\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because uiautomator.core is not a package so does not need to\n    statically include the classes\n\n* core/tests/BroadcastRadioTests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    BroadcastRadioTests\u0027s source depends on its classes and because of\n    these changes they are no longer present on the compilation path.\n    The classes do not need to be statically included because the\n    classes will be provided by the runtime, either from the default\n    bootclasspath or from the android.test.runner library that\n    BroadcastRadioTests specifies in its manifest.\n\n* core/tests/coretests/Android.mk\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because FrameworksCoreTests\u0027s source depends\n    on their classes and because of these changes they are no longer\n    present on the compilation path. The classes do not need to be\n    statically included because the classes will be provided by the\n    runtime, either from the default bootclasspath or from the\n    android.test.runner library that FrameworksCoreTests specifies in\n    its manifest.\n\n* core/tests/featureflagtests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksCoreFeatureFlagTests\u0027s source depends on its classes and\n    because of these changes they are no longer present on the\n    compilation path. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that FrameworksCoreFeatureFlagTests specifies in its manifest.\n\n* core/tests/systemproperties/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksCoreSystemPropertiesTests\u0027s source depends on its classes\n    and because of these changes they are no longer present on the\n    compilation path. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that FrameworksCoreSystemPropertiesTests specifies in its manifest.\n\n* core/tests/utillib/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because frameworks-core-util-lib is not a package so does not need\n    to statically include the classes\n\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    frameworks-core-util-lib has a source dependency on its classes\n\n* core/tests/utiltests/Android.mk\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because FrameworksUtilTests\u0027s source depends\n    on their classes and because of these changes they are no longer\n    present on the compilation path. The classes do not need to be\n    statically included because the classes will be provided by the\n    runtime, either from the default bootclasspath or from the\n    android.test.runner library that FrameworksUtilTests specifies in\n    its manifest.\n\n* location/tests/locationtests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksLocationTests\u0027s source depends on its classes and because\n    of these changes they are no longer present on the compilation\n    path. The classes do not need to be statically included because the\n    classes will be provided by the runtime, either from the default\n    bootclasspath or from the android.test.runner library that\n    FrameworksLocationTests specifies in its manifest.\n\n* lowpan/tests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksLowpanApiTests\u0027s source depends on its classes and\n    because of these changes they are no longer present on the\n    compilation path. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that FrameworksLowpanApiTests specifies in its manifest.\n\n* packages/Osu2/tests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    OsuTests\u0027s source depends on its classes and because of these\n    changes they are no longer present on the compilation path. The\n    classes do not need to be statically included because the classes\n    will be provided by the runtime, either from the default\n    bootclasspath or from the android.test.runner library that OsuTests\n    specifies in its manifest.\n\n* packages/SettingsProvider/test/Android.mk\n    Replaced \u0027legacy-android-test\u0027 with \u0027android.test.base\u0027 in\n    LOCAL_JAVA_LIBRARIES because SettingsProviderTest\u0027s source depends\n    on its classes. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that SettingsProviderTest specifies in its manifest.\n\n* services/tests/notification/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksNotificationTests\u0027s source depends on its classes and\n    because of these changes they are no longer present on the\n    compilation path. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that FrameworksNotificationTests specifies in its manifest.\n\n* services/tests/servicestests/Android.mk\n    Replaced \u0027legacy-android-test\u0027 with \u0027android.test.base\u0027 and\n    \u0027android.test.runner\u0027 in LOCAL_JAVA_LIBRARIES because\n    FrameworksServicesTests\u0027s source depends on their classes. The\n    classes do not need to be statically included because the classes\n    will be provided by the runtime, either from the default\n    bootclasspath or from the android.test.runner library that\n    FrameworksServicesTests specifies in its manifest.\n\n* services/tests/shortcutmanagerutils/Android.mk\n    Added \u0027android.test.runner.stubs\u0027 to LOCAL_JAVA_LIBRARIES because\n    ShortcutManagerTestUtils has a source dependency on its classes\n\n* tests/AppLaunch/Android.mk\n    Replaced \u0027legacy-android-test\u0027 with \u0027android.test.base\u0027 and\n    \u0027android.test.runner\u0027 in LOCAL_JAVA_LIBRARIES because AppLaunch\u0027s\n    source depends on their classes. The classes do not need to be\n    statically included because the classes will be provided by the\n    runtime, either from the default bootclasspath or from the\n    android.test.runner library that AppLaunch specifies in its\n    manifest.\n\n* tests/Camera2Tests/SmartCamera/SimpleCamera/tests/Android.mk\n    Replaced \u0027legacy-android-test\u0027 with \u0027android.test.base\u0027 in\n    LOCAL_JAVA_LIBRARIES because SmartCamera-tests\u0027s source depends on\n    its classes. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that SmartCamera-tests specifies in its manifest.\n\n* tests/ServiceCrashTest/Android.mk\n    Replaced \u0027legacy-android-test\u0027 with \u0027android.test.base\u0027 in\n    LOCAL_JAVA_LIBRARIES because ServiceCrashTest\u0027s source depends on\n    its classes. The classes do not need to be statically included\n    because the classes will be provided by the runtime, either from\n    the default bootclasspath or from the android.test.runner library\n    that ServiceCrashTest specifies in its manifest.\n\n* tests/net/Android.mk\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because FrameworksNetTests\u0027s source depends on\n    their classes and because of these changes they are no longer\n    present on the compilation path. The classes do not need to be\n    statically included because the classes will be provided by the\n    runtime, either from the default bootclasspath or from the\n    android.test.runner library that FrameworksNetTests specifies in\n    its manifest.\n\n* tests/testables/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because testables is not a package so does not need to statically\n    include the classes\n\n    Added \u0027android.test.mock\u0027 to LOCAL_JAVA_LIBRARIES because testables\n    has a source dependency on its classes\n\n* tests/utils/testutils/Android.mk\n    Removed legacy-android-test from LOCAL_STATIC_JAVA_LIBRARIES\n    because frameworks-base-testutils is not a package so does not need\n    to statically include the classes\n\n    Added \u0027android.test.base\u0027 and \u0027android.test.mock\u0027 to\n    LOCAL_JAVA_LIBRARIES because frameworks-base-testutils has a source\n    dependency on their classes\n\n* wifi/tests/Android.mk\n    Added \u0027android.test.base\u0027 to LOCAL_JAVA_LIBRARIES because\n    FrameworksWifiApiTests\u0027s source depends on its classes and because\n    of these changes they are no longer present on the compilation\n    path. The classes do not need to be statically included because the\n    classes will be provided by the runtime, either from the default\n    bootclasspath or from the android.test.runner library that\n    FrameworksWifiApiTests specifies in its manifest.\n\nBug: 30188076\nTest: make checkbuild\nChange-Id: Ia6a48234f28e7e1789049cf4b37cd7fe0bc8251c\n"
    },
    {
      "commit": "1229bed274ab778a1dc0e7c964bb126566812c4d",
      "tree": "fa8b3168d04dfc086b9a96a2ff40bc4efd392252",
      "parents": [
        "45c0d6c7fc35a05884cc5c64245472a0db883968",
        "cf1a4315f7458eda6f55832e1a2fc98358210e4b"
      ],
      "author": {
        "name": "ludi",
        "email": "ludi@google.com",
        "time": "Wed Dec 06 04:08:23 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 06 04:08:23 2017 +0000"
      },
      "message": "Merge \"Cleanup of resource limit tests\" am: 39f58678db am: da23b08c6c\nam: cf1a4315f7\n\nChange-Id: If26dc3a8a969ad63f250608427480996c3b02845\n"
    },
    {
      "commit": "cf1a4315f7458eda6f55832e1a2fc98358210e4b",
      "tree": "bc2f64b541b8a5b789eecccdf2f4b80c9f8b892c",
      "parents": [
        "baa1210d255c6bed6236794355af6abf0ef661ea",
        "da23b08c6c86e5b3617e9e310f8a397debec7e39"
      ],
      "author": {
        "name": "ludi",
        "email": "ludi@google.com",
        "time": "Wed Dec 06 03:49:56 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 06 03:49:56 2017 +0000"
      },
      "message": "Merge \"Cleanup of resource limit tests\" am: 39f58678db\nam: da23b08c6c\n\nChange-Id: I102693c752fb8fbaf9c1bac824047b5ed6d3d9c1\n"
    },
    {
      "commit": "bd4518d95632c8a4efd417177a2ba59f2cdfa6f4",
      "tree": "ff162a3293e6ea1de55841287934ee774561108a",
      "parents": [
        "5399403867f071a8cdad3727bad626a8eb58d3b5",
        "753faba697bce7a8c6a32d451777f0613d51cf21"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Dec 06 03:34:55 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 06 03:34:55 2017 +0000"
      },
      "message": "Merge \"Use -Werror in frameworks/base/tests/backup\" am: d5dca64f72 am: 6fb084db88\nam: 753faba697\n\nChange-Id: I917ea7c1627f09ed7274dc04481e36cee5c88060\n"
    },
    {
      "commit": "da23b08c6c86e5b3617e9e310f8a397debec7e39",
      "tree": "088b461818792607d7d9529e4b7630e9b3e6daca",
      "parents": [
        "34be883ebddfa03de31581e6e9942c47d53cc395",
        "39f58678dbc6799b5686d71167d47e361748f302"
      ],
      "author": {
        "name": "ludi",
        "email": "ludi@google.com",
        "time": "Wed Dec 06 03:29:35 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 06 03:29:35 2017 +0000"
      },
      "message": "Merge \"Cleanup of resource limit tests\"\nam: 39f58678db\n\nChange-Id: Ifcbc61ad8003c43ba1baff6d4d534192f6498206\n"
    },
    {
      "commit": "753faba697bce7a8c6a32d451777f0613d51cf21",
      "tree": "f68ba5433dd3e4176ad7ac887169cad75d32b3c1",
      "parents": [
        "5d2bd6bf0cb9f20dfa92e56d4eeeea530b6565b2",
        "6fb084db88dde09929185e6becd07410d7beb0d0"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Dec 06 03:25:11 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 06 03:25:11 2017 +0000"
      },
      "message": "Merge \"Use -Werror in frameworks/base/tests/backup\" am: d5dca64f72\nam: 6fb084db88\n\nChange-Id: I6d18cc00937896bb227fc1ba30bc6102f84029b3\n"
    },
    {
      "commit": "6fb084db88dde09929185e6becd07410d7beb0d0",
      "tree": "1d0e727611e69bf7bfe2d1e435ffdd9408428495",
      "parents": [
        "9d077ecd9df3698ee5e39f377eb67d79dbd78697",
        "d5dca64f72cc875759eaeae03afc3faaf4c2a441"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed Dec 06 03:12:09 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 06 03:12:09 2017 +0000"
      },
      "message": "Merge \"Use -Werror in frameworks/base/tests/backup\"\nam: d5dca64f72\n\nChange-Id: Ic05b86f4bbff44e03298e823e9105c664b7ba1e0\n"
    },
    {
      "commit": "39f58678dbc6799b5686d71167d47e361748f302",
      "tree": "b53dd9acb07abace18975e60afff03257c64c035",
      "parents": [
        "5747c2b81ce417a9b2e1d8244f12366cf869282b",
        "6b7fb6bbec42a74047e4f0bb472266e095a0f10e"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 06 02:58:41 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 06 02:58:41 2017 +0000"
      },
      "message": "Merge \"Cleanup of resource limit tests\""
    },
    {
      "commit": "b40ec900e260a08f6bd624e05c0861a5b0b52cb8",
      "tree": "bf922bb953ce43d16b8b598233f2085bd7e1ba55",
      "parents": [
        "cdb84d2fc722f9f28bbcaee949798324c95c068a"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 05 09:56:46 2017 -0800"
      },
      "committer": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Dec 05 09:58:06 2017 -0800"
      },
      "message": "Use -Werror in frameworks/base/tests/backup\n\n* Ommit unused parameter names.\n\nBug: 66996870\nTest: build with WITH_TIDY\u003d1\nChange-Id: Ie073fd911480960673b24d5b4d84b4f8dd0d0302\n"
    },
    {
      "commit": "f5cf390e416e964b915b8dcf3339230c93756547",
      "tree": "1bb260773f0c7de598fcbbd36e5c88b7927427e2",
      "parents": [
        "814f73f81a942d6e92a9f376f02416730203416a",
        "5d2bd6bf0cb9f20dfa92e56d4eeeea530b6565b2"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Dec 05 10:09:35 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 05 10:09:35 2017 +0000"
      },
      "message": "Merge \"Fix bug in MacAddress.fromString()\" am: cdb84d2fc7 am: 9d077ecd9d\nam: 5d2bd6bf0c\n\nChange-Id: I7df23a45618825b874658ccbbf1d1fda6b164954\n"
    },
    {
      "commit": "5d2bd6bf0cb9f20dfa92e56d4eeeea530b6565b2",
      "tree": "376fbcb5dca6dce4556b2960e4485a7a64f1f962",
      "parents": [
        "b8e4d0e5614d0d287db9fa20f5f1b72f8f3f1630",
        "9d077ecd9df3698ee5e39f377eb67d79dbd78697"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Dec 05 10:01:19 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 05 10:01:19 2017 +0000"
      },
      "message": "Merge \"Fix bug in MacAddress.fromString()\" am: cdb84d2fc7\nam: 9d077ecd9d\n\nChange-Id: If67d0b8fcc2270d4b152d4e07c79725b457574c6\n"
    },
    {
      "commit": "9d077ecd9df3698ee5e39f377eb67d79dbd78697",
      "tree": "7e576206d80001299279eb981b84423120548853",
      "parents": [
        "1c578e803230328fa735569a0adc1d16038e8709",
        "cdb84d2fc722f9f28bbcaee949798324c95c068a"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Dec 05 09:47:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 05 09:47:50 2017 +0000"
      },
      "message": "Merge \"Fix bug in MacAddress.fromString()\"\nam: cdb84d2fc7\n\nChange-Id: If4c85f0a5ea259f53f9cffa6eacb58fcde1fd1df\n"
    },
    {
      "commit": "d2c5b1925b32842394ec054edc97e1fb2da0103b",
      "tree": "07325d6b518ab7f16a3b1fc33bfbeeff16883d27",
      "parents": [
        "7e717e09cd3923f613a24c79358e900278ec6a2d"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Dec 05 13:14:08 2017 +0900"
      },
      "committer": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Dec 05 13:14:08 2017 +0900"
      },
      "message": "Fix bug in MacAddress.fromString()\n\nTest: runtest frameworks-net\nBug: 69390696\nChange-Id: I83f01e4915092e08ed201d9b6738bb02498d3bba\n"
    },
    {
      "commit": "b8ab1d404b67411212c5ae78eee61ffd278a2f63",
      "tree": "2772403108281cebc9cbeb6a32acfc58b606fa17",
      "parents": [
        "a50d609e2f12f78a6e2412d264579a67fde4045e",
        "7a8f0dc0c0608efbb4a65ccece2c425baf10170f"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Tue Dec 05 02:46:06 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 05 02:46:06 2017 +0000"
      },
      "message": "Merge \"Validate IpSecAlgorithm Length\" am: 68b81299d2 am: 5e3d66e78b\nam: 7a8f0dc0c0\n\nChange-Id: I1a28d860ac7125afc1f82ac17d1834b0121c0e11\n"
    },
    {
      "commit": "7a8f0dc0c0608efbb4a65ccece2c425baf10170f",
      "tree": "7ea82ce61065c2627c6f55ea0416509ab570b48f",
      "parents": [
        "4f11d4c5262183f8bd9c1cea8aaea4629f4b53c2",
        "5e3d66e78be0266e8e45390fe43ae2e7f74b7271"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Tue Dec 05 02:37:14 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 05 02:37:14 2017 +0000"
      },
      "message": "Merge \"Validate IpSecAlgorithm Length\" am: 68b81299d2\nam: 5e3d66e78b\n\nChange-Id: I1ffaa4de392777c5199a411aef9cd10f4e7c3666\n"
    },
    {
      "commit": "5e3d66e78be0266e8e45390fe43ae2e7f74b7271",
      "tree": "f606c8f29deb451543c7e45a17900856e7c10a62",
      "parents": [
        "b42cfb691d1bb94902a7279e101f574986b275a0",
        "68b81299d2399425dc2750047bb1743b8bcb6a80"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Tue Dec 05 02:28:10 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 05 02:28:10 2017 +0000"
      },
      "message": "Merge \"Validate IpSecAlgorithm Length\"\nam: 68b81299d2\n\nChange-Id: I23f7612c119e67f9a1647568aeefde38a365f8da\n"
    },
    {
      "commit": "68b81299d2399425dc2750047bb1743b8bcb6a80",
      "tree": "bb4321f2acd8061c7bafa8737bf8f9643bf779a8",
      "parents": [
        "85f095e24666f87d7270e0b4a5ce31c7bf29a67f",
        "3349b26630903dec820df3da84078fafc0bb8dbf"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Tue Dec 05 02:13:55 2017 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 05 02:13:55 2017 +0000"
      },
      "message": "Merge \"Validate IpSecAlgorithm Length\""
    },
    {
      "commit": "bdf30c845928e2503d669df9ab71e46761a0964f",
      "tree": "39c170918e6c2ac9521d5285cb9f1323c0810ff6",
      "parents": [
        "374e9dcc5d9207ea4fa236da622e8ad93996433f",
        "469f4f6010a85b9a49741de0477909b2dbeadc46"
      ],
      "author": {
        "name": "Android Build Merger (Role)",
        "email": "noreply-android-build-merger@google.com",
        "time": "Tue Dec 05 00:08:49 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 05 00:08:49 2017 +0000"
      },
      "message": "Merge \"Merge \"MacAddress: light refactors and improve documentation\" am: d871cab32d am: 2f7cb5752b am: 13b2fa0f85\""
    },
    {
      "commit": "469f4f6010a85b9a49741de0477909b2dbeadc46",
      "tree": "381faf877a7bf118bb06e35468b40e12169cdb9b",
      "parents": [
        "097af0fa8f0dd3917389ff9d6a3037bad21f492e",
        "13b2fa0f854f873cbfec4aa545a9c0591ab6193d"
      ],
      "author": {
        "name": "Hugo Benichi",
        "email": "hugobenichi@google.com",
        "time": "Tue Dec 05 00:06:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 05 00:06:50 2017 +0000"
      },
      "message": "Merge \"MacAddress: light refactors and improve documentation\" am: d871cab32d am: 2f7cb5752b\nam: 13b2fa0f85\n\nChange-Id: Iae0e87bcc9bd9c1ba98319f3b65f18f6743c02a0\n"
    }
  ],
  "next": "374e9dcc5d9207ea4fa236da622e8ad93996433f"
}
