)]}'
{
  "log": [
    {
      "commit": "06adb08d273023a71d480a0362fc06f6569ddee3",
      "tree": "091c49c5a75238eaaff5e6f38ad0087327c67463",
      "parents": [
        "491f53523a74cba5e84122aaeb079c31b6e5fe17",
        "d1b51a3228c755f4bd732a07053d2f360600cb3f"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 13:14:06 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 13:14:06 2019 +0000"
      },
      "message": "Merge \"Remove InterfaceController dependency on NMS\""
    },
    {
      "commit": "491f53523a74cba5e84122aaeb079c31b6e5fe17",
      "tree": "57d3c90a310afa5bec99359d139292d4038f1d10",
      "parents": [
        "91c81c13b6bad1c34405b7a86d605479cd049d2e",
        "c1c02dcb65928bc77883551fb8ead901fcccca5e"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 13:00:10 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 13:00:10 2019 +0000"
      },
      "message": "Merge changes Ieef54d84,Ica3e88c2\n\n* changes:\n  Remove NetworkStack dependencies on hidden members\n  Expose ServiceSpecificException as @SystemApi.\n"
    },
    {
      "commit": "91c81c13b6bad1c34405b7a86d605479cd049d2e",
      "tree": "63b3310910ed21ffff8722997d89ebf386213b70",
      "parents": [
        "0f5893ee605099240e7481d79e1ce9ce25af115c",
        "811f6385be0764b4a16ad35276688da5ffc754c3"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 12:38:33 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 12:38:33 2019 +0000"
      },
      "message": "Merge \"Add SystemApi utility for raw sockets.\""
    },
    {
      "commit": "d1b51a3228c755f4bd732a07053d2f360600cb3f",
      "tree": "efbe4da29e907664195b793d9a483fe5060e5a61",
      "parents": [
        "8586a43f31d745f2327a481247b09b06717aaaac"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 16:13:57 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 20:25:48 2019 +0900"
      },
      "message": "Remove InterfaceController dependency on NMS\n\nTest: atest FrameworksNetTests NetworkStackTests\nBug: 112869080\nChange-Id: Ib3773068b087f58f4ac3394291cda132b00b2dcc\n"
    },
    {
      "commit": "0f5893ee605099240e7481d79e1ce9ce25af115c",
      "tree": "e8639377729a11a7fa1278b7b4e66dac8e5a66dd",
      "parents": [
        "4bde11491b561475fd7f992e8780c9a1a7d0141f",
        "34ead20998cc8782ef09fe356c35f70f4bd2e23a"
      ],
      "author": {
        "name": "vichang",
        "email": "vichang@google.com",
        "time": "Tue Jan 22 10:59:41 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 10:59:41 2019 +0000"
      },
      "message": "Merge \"Deprecate JapaneseCalendar.CURRENT_ERA\""
    },
    {
      "commit": "4bde11491b561475fd7f992e8780c9a1a7d0141f",
      "tree": "2e96d83ceb7fa53c2041657734aafc0af781d744",
      "parents": [
        "d8b953078e7537adfb690b459b0c0880d6c24a1d",
        "94a055737efbec96029c3ce912ec0a476674aca4"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 10:56:51 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 10:56:51 2019 +0000"
      },
      "message": "Merge \"Add LinkProps and NetworkCaps methods to SystemApi\""
    },
    {
      "commit": "d8b953078e7537adfb690b459b0c0880d6c24a1d",
      "tree": "63b2ecc16a2a87454d0009b4f991c31d3be2c12e",
      "parents": [
        "137f8f2e5aa2b17f97f620ffde870e0e874da945",
        "258c572d5e9421e547fb893e935fbfd544fd236c"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 10:45:03 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 10:45:03 2019 +0000"
      },
      "message": "Merge \"apilint: correctly parse enum_constant\""
    },
    {
      "commit": "258c572d5e9421e547fb893e935fbfd544fd236c",
      "tree": "63b2ecc16a2a87454d0009b4f991c31d3be2c12e",
      "parents": [
        "d1e3892119a6a415fb39da5db21e06483db0ae03"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Mon Jan 21 15:43:15 2019 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:42:39 2019 +0100"
      },
      "message": "apilint: correctly parse enum_constant\n\nChange-Id: I1a243caa3a01837ff989d21926478f20d70372ae\nFixes: 120132045\nTest: python apilint_test.py\n(cherry picked from commit 373df11baab1fbbd9f6986e38a1a929abc901d63)\n"
    },
    {
      "commit": "137f8f2e5aa2b17f97f620ffde870e0e874da945",
      "tree": "8c51f9f65fd760be08b02c7084f09d47c28a0b0c",
      "parents": [
        "20f1e0ca1d6c3a0724e94b8fbcbe4b36c93b42b8",
        "d1e3892119a6a415fb39da5db21e06483db0ae03"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 10:41:10 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 10:41:10 2019 +0000"
      },
      "message": "Merge changes I38145a51,Iac1fdabc,I90f18181,I76b979dd,Id2e17923, ...\n\n* changes:\n  ApiLint: Add operator keyword and property parsing\n  ApiLint: Add Kotlin-style type support\n  ApiLint: Performance improvements for verification\n  ApiLint: Performance improvements for 2.0 signature format parsing\n  ApiLint: Allow parsing 2.0 API signature files\n  apilint: Fix API lint issues 2/2\n  apilint: Fix API lint issues\n  API Lint: Add support for base current.txt\n  Guide towards Context.createPackageContextAsUser().\n  Moar lint rulez!\n  Update lint rules for graphics/text package layering\n  Handle new current.txt format.\n  Extend lint script to emit API statistics.\n"
    },
    {
      "commit": "d1e3892119a6a415fb39da5db21e06483db0ae03",
      "tree": "8c51f9f65fd760be08b02c7084f09d47c28a0b0c",
      "parents": [
        "5cdfb69429eb60fc274424d4dcb6b166ed550a42"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Mon Jan 14 15:44:15 2019 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:38 2019 +0100"
      },
      "message": "ApiLint: Add operator keyword and property parsing\n\nAlso fix up some issues with expression parsing, type use annotations, etc.\n\nTest: python tools/apilint/apilint_test.py\nChange-Id: I38145a51470ce6c3e5813a546d681489fd87fc19\n(cherry picked from commit 403c8e35d8e7cc0f81a0a2c42d038c47e1b2703f)\n"
    },
    {
      "commit": "5cdfb69429eb60fc274424d4dcb6b166ed550a42",
      "tree": "b433cb91085562876a2216b2d835bfd03f9c455f",
      "parents": [
        "1f1b6a84644916bd2b48f26ccb8cb31b336d4e2f"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Sat Jan 05 22:04:55 2019 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:37 2019 +0100"
      },
      "message": "ApiLint: Add Kotlin-style type support\n\nTest: tools/apilint/apilint_sha.sh HEAD \u0026\u0026 python tools/apilint/apilint_test.py\nChange-Id: Iac1fdabcbeffe57c8288d73b2359e8ce0b2bc3eb\n(cherry picked from commit 7884d6b9090c586ac0d72abe0e6efab191a143a7)\n"
    },
    {
      "commit": "1f1b6a84644916bd2b48f26ccb8cb31b336d4e2f",
      "tree": "7494836313c86c63cd3997827e088de332000bea",
      "parents": [
        "e5eeae7c23e2b35565274ad9cac38a3a550f33c9"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Sat Jan 05 20:09:38 2019 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:37 2019 +0100"
      },
      "message": "ApiLint: Performance improvements for verification\n\nTest: tools/apilint/apilint_sha.sh HEAD\nTest: python tools/apilint/apilint_test.py\nChange-Id: I90f18181cd0d3c43f176d7c9d1b198f6f5172390\n(cherry picked from commit 7f8886a9933abbb6f1fdd97d920185b80d439339)\n"
    },
    {
      "commit": "e5eeae7c23e2b35565274ad9cac38a3a550f33c9",
      "tree": "972ab39539dca4b39a7f36447cf69fdf36f5afea",
      "parents": [
        "b787c183a2061c4deb0301c970c00c43fe72fed4"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Fri Jan 04 20:10:06 2019 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:37 2019 +0100"
      },
      "message": "ApiLint: Performance improvements for 2.0 signature format parsing\n\nTest: tools/apilint/apilint_sha.sh HEAD\nTest: python tools/apilint/apilint_test.py\nChange-Id: I76b979dd81702afce6468ac377230e589a25e08f\n(cherry picked from commit a30d062775da3812589a6ce3e49be9d697ef0d6d)\n"
    },
    {
      "commit": "b787c183a2061c4deb0301c970c00c43fe72fed4",
      "tree": "36e3579ff4cc88431cf45b32de3a62d4e7f13709",
      "parents": [
        "038a02992abc2c6bd36f5461529216d9aef3eeb1"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Thu Jan 03 18:54:33 2019 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:37 2019 +0100"
      },
      "message": "ApiLint: Allow parsing 2.0 API signature files\n\nTest: tools/apilint/apilint_sha.sh HEAD\nTest: python tools/apilint/apilint_test.py\nChange-Id: Id2e1792392b3626746f1ec99f481d0cb27e523a1\n(cherry picked from commit d170961b02bf67189ddd14f358c9f263009df786)\n"
    },
    {
      "commit": "038a02992abc2c6bd36f5461529216d9aef3eeb1",
      "tree": "74c77e855fdc2dfd6f1e9bd0f8f527d3c5831e53",
      "parents": [
        "5ed42b6a2e99ae75177cb5790c908b12c4bc47b9"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Wed Dec 19 17:11:21 2018 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:36 2019 +0100"
      },
      "message": "apilint: Fix API lint issues 2/2\n\nFixes false positives that occur when a class in current.txt is faulty, and an\nentry for that class is then added to system-current.txt.\n\nThis was so because when parsing the previous revison\u0027s system-current.txt, we\ndid not know about the class and thus didn\u0027t look for it in current.txt, and\nthus never recorded that the error is preexisting.\n\nTo avoid that, we track all classes in system-current.txt with a matching entry\nin current.txt in the current revision, and later use that to look up all classes we\nmay have missed when examining the previous revision.\n\nTest: python tools/apilint/apilint_test.py\nChange-Id: Ibe09f1159e351e56b35b8816ce0db760de4ef791\n(cherry picked from commit 61e3730bc07e04181a01760d2eb1db834a854683)\n"
    },
    {
      "commit": "5ed42b6a2e99ae75177cb5790c908b12c4bc47b9",
      "tree": "413a099a647477ff3805b51a05cc7663482c95c6",
      "parents": [
        "6eb57b0f4a51255c656c71337fe41b81ff96a3dd"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Wed Dec 19 17:10:22 2018 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:36 2019 +0100"
      },
      "message": "apilint: Fix API lint issues\n\nFixes a bug where only the name instead of the fully qualified name was\nconsidered when looking for a class, which lead to faulty results for inner\nclasses.\n\nTest: python tools/apilint/apilint_test.py\nChange-Id: Ib015669ed3faef21d2bdd16f1e27bc55c8669d70\n(cherry picked from commit 2c5cacfd36128f43f5fab4f0665acf69ac049a44)\n"
    },
    {
      "commit": "6eb57b0f4a51255c656c71337fe41b81ff96a3dd",
      "tree": "12e077d390ec4358f7395a5ec43bc2c3dd7b6cac",
      "parents": [
        "a8e5df06a010406b20a081c780a6e9854a2bad31"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Thu Dec 13 22:08:29 2018 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:36 2019 +0100"
      },
      "message": "API Lint: Add support for base current.txt\n\nAllows specifying a base current.txt and previous.txt file when linting\nsystem-current.txt and test-current.txt to avoid false positive error\nmessages due to public API members not being duplicated in the respective\nnon-public APIs\n\nTest: python tools/apilint/apilint.py --base-current\u003dapi/current.txt api/system-current.txt\nChange-Id: I306a99b1423584ef3fcdc9272a83cb5eacc37227\n(cherry picked from commit 7690d0d4eea0ffa429351b0b1caa34cdb3e0d37f)\n"
    },
    {
      "commit": "a8e5df06a010406b20a081c780a6e9854a2bad31",
      "tree": "52d26c4747292c7aab95e02c94aa01c2e40a4210",
      "parents": [
        "eff9e228c12e1f75feab9c59a3edf546050cc1bc"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Nov 27 17:33:42 2018 -0700"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:36 2019 +0100"
      },
      "message": "Guide towards Context.createPackageContextAsUser().\n\nIt\u0027s a better alternative that should be used instead of adding\nnew \"ForUser\" or \"AsUser\" methods.\n\nBug: 115654727\nTest: manual\nChange-Id: I8742c2ef42d743ef69f8f7a91378f498fdc81e43\n(cherry picked from commit 86445841ac90e04941dbc8dad34f2a893a2e0f8b)\n"
    },
    {
      "commit": "eff9e228c12e1f75feab9c59a3edf546050cc1bc",
      "tree": "557156379dcaf0376a34ba260e66195a58b24b29",
      "parents": [
        "0a2e15dd6eb16d0796a871d55710048c05c54d2f"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Sep 27 16:29:25 2018 -0600"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:35 2019 +0100"
      },
      "message": "Moar lint rulez!\n\nBug: 37534642, 116675691, 116798271, 72059458, 111790177\nTest: manual\nChange-Id: Ib079ae580a827f225be08f90dbdddeee7d341c48\n(cherry picked from commit daac37f229f84ed844adcf1ffd3432b235524d9b)\n"
    },
    {
      "commit": "0a2e15dd6eb16d0796a871d55710048c05c54d2f",
      "tree": "30561f901166312afaf83f16cf99508eb51a5024",
      "parents": [
        "40d67f4b6dcad3f5728f9b3542e350028bbe8b8f"
      ],
      "author": {
        "name": "Siyamed Sinir",
        "email": "siyamed@google.com",
        "time": "Thu Sep 13 16:06:59 2018 -0700"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:35 2019 +0100"
      },
      "message": "Update lint rules for graphics/text package layering\n\nTest: N/A\nBug: 77347886\nChange-Id: I907d99b4a1dee0c69b914e55a033d3d9c4eebe56\n(cherry picked from commit e23aeb802409cb337ad66454049c9e3b6af0db9a)\n"
    },
    {
      "commit": "40d67f4b6dcad3f5728f9b3542e350028bbe8b8f",
      "tree": "11eff6bdaba450180d47a2f9422a64051829d275",
      "parents": [
        "fe5ee6e74b45553e408b1f5c47db773fd971ea7e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Jul 17 13:29:40 2018 -0600"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:34 2019 +0100"
      },
      "message": "Handle new current.txt format.\n\nWe\u0027re starting to see \"@interface\" show up, so handle them like any\nother interface.  We\u0027re also seeing more details argument lists\nwith names and annotations; ignore them for now, since all our\nexisting lint checks work on the \"real\" data type.\n\nVerified that it handles new support library current.txt files\nwithout causing any regressions against existing framework\ncurrent.txt files.\n\nTest: manual inspection\nBug: 111555356\nChange-Id: Id11c3561edd317e4ba1a9b43993fd96d8243e00d\n(cherry picked from commit bd2611916990b0d18a36483060365207fdd94c13)\n"
    },
    {
      "commit": "fe5ee6e74b45553e408b1f5c47db773fd971ea7e",
      "tree": "0cb7cfa29323038bf2f7a0ddbc4db34d4f44916d",
      "parents": [
        "20f1e0ca1d6c3a0724e94b8fbcbe4b36c93b42b8"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Apr 20 11:26:16 2018 -0600"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Tue Jan 22 11:36:34 2019 +0100"
      },
      "message": "Extend lint script to emit API statistics.\n\nBug: 77588754\nTest: manual\nChange-Id: I240dba5fae1a8635a4265a1af903517f00dec54c\n(cherry picked from commit daa7cf3a365c24e3a81d0df178c188b12e6d3a91)\n"
    },
    {
      "commit": "c1c02dcb65928bc77883551fb8ead901fcccca5e",
      "tree": "4cdc9448a0de98df1b34bc6ea3ddfc4caa8f5a4e",
      "parents": [
        "a27da72cd1b03cf99cbe810c985a9c8bde1cbbb5"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Sun Jan 20 16:50:42 2019 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 22 18:48:12 2019 +0900"
      },
      "message": "Remove NetworkStack dependencies on hidden members\n\n - DhcpClient only shares its handler with IpClient, and NetworkMonitor\n   has its own handler: remove Protocol.BASE_DHCP,\n   Protocol.BASE_NETWORK_MONITOR\n - Remove dependency on Network.netid in NetworkMonitor\n - Remove dependency on Sets.newArraySet in DhcpServingParams\n - Remove dependency on formatDuration() in DhcpClient\n - Replace isMetered() with hasCapability() in NetworkMonitor\n - Use WifiManager.isScanAlwaysAvailable instead of reading setting\n\nTest: atest FrameworksNetTests NetworkStackTests\nBug: 112869080\nChange-Id: Ieef54d847ddc081fb33cbad0b050b06d2e52548e\n"
    },
    {
      "commit": "a27da72cd1b03cf99cbe810c985a9c8bde1cbbb5",
      "tree": "7fbd6444dda92cdaa963aac0fb09423ce559ae32",
      "parents": [
        "20f1e0ca1d6c3a0724e94b8fbcbe4b36c93b42b8"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 22 17:11:01 2019 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 22 18:44:12 2019 +0900"
      },
      "message": "Expose ServiceSpecificException as @SystemApi.\n\nThis class is useful as a system API because:\n\n- It is one of the few exceptions that is natively Parcelable.\n- It is directly supported by native code without using JNI,\n  using Status::fromServiceSpecificError.\n- Unlike other natively parcelable exceptions, it contains both\n  an error message and an error code.\n\nTest: m\nBug: 112869080\nChange-Id: Ica3e88c2b6877e429a61b053d75f69b9f19fc74a\n"
    },
    {
      "commit": "811f6385be0764b4a16ad35276688da5ffc754c3",
      "tree": "8deaf04b3659e32faf6fabe7188dda81b63e7d5d",
      "parents": [
        "8586a43f31d745f2327a481247b09b06717aaaac"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Sun Jan 20 12:08:21 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 17:50:33 2019 +0900"
      },
      "message": "Add SystemApi utility for raw sockets.\n\nTest: atest FrameworksNetTests NetworkStackTests\nBug: 112869080\nChange-Id: Id228bf3317b6933314174571697ee256b2f18452\n"
    },
    {
      "commit": "20f1e0ca1d6c3a0724e94b8fbcbe4b36c93b42b8",
      "tree": "38249e2bef9cca3152a97aa9c1421f8f10e539c8",
      "parents": [
        "8586a43f31d745f2327a481247b09b06717aaaac",
        "d848183572d7c347937b871e9d341e0938d8764b"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jan 22 08:43:55 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 08:43:55 2019 +0000"
      },
      "message": "Merge \"Delay start of bootanimation until after the Runtime APEX is mounted.\""
    },
    {
      "commit": "94a055737efbec96029c3ce912ec0a476674aca4",
      "tree": "a77ef2c01ace456fd210c6fea2bd2acd628161b7",
      "parents": [
        "8586a43f31d745f2327a481247b09b06717aaaac"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Sun Jan 20 12:38:10 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 16:57:16 2019 +0900"
      },
      "message": "Add LinkProps and NetworkCaps methods to SystemApi\n\nAdded methods are used by the NetworkStack.\n\nTest: atest FrameworksNetTests NetworkStackTests\nBug: 112869080\nChange-Id: I8822d43c1a4981ca39289525685b3f975fb0e8d5\n"
    },
    {
      "commit": "8586a43f31d745f2327a481247b09b06717aaaac",
      "tree": "efb15a4088178f62a8d886a55026a32ec22f3e62",
      "parents": [
        "9325fbc4f85123bc79eeeacda0de6dfb00d3264e",
        "7b84fb336f92c71fa4dd7a8bfe662966f954fa33"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 07:48:39 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 07:48:39 2019 +0000"
      },
      "message": "Merge \"Add NetworkStack metrics to system API\""
    },
    {
      "commit": "9325fbc4f85123bc79eeeacda0de6dfb00d3264e",
      "tree": "7ae815d9e7de716be51dbb81b0b13396126a4ef8",
      "parents": [
        "a1b2a93273363b56a73bb079607d257cec478139",
        "e7e9f2befe9604b42bc778c0ceaa26e4fc88d4dd"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 07:13:39 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 07:13:39 2019 +0000"
      },
      "message": "Merge \"Fix lint errors for moving IpClient to NetworkStack\""
    },
    {
      "commit": "a1b2a93273363b56a73bb079607d257cec478139",
      "tree": "dee1382102bffb4c73d238c7ca419e3dd221ad11",
      "parents": [
        "5c1968475c887c538d085a929750a0a838ba93f9",
        "2412c13c34f34c37cca33327f837c5e81076d8a5"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 22 06:31:23 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 06:31:23 2019 +0000"
      },
      "message": "Merge \"Properly expect all callbacks in testStackedLinkProperties.\""
    },
    {
      "commit": "e7e9f2befe9604b42bc778c0ceaa26e4fc88d4dd",
      "tree": "61d244990ead8e84889a8f62b3d192665c0a44f2",
      "parents": [
        "3f4873baef7a4d700d107fb8e55530528a4aab15"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Jan 18 19:05:29 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 13:12:08 2019 +0900"
      },
      "message": "Fix lint errors for moving IpClient to NetworkStack\n\nTest: checklint at upload, m\nBug: 112869080\nChange-Id: I82fb9c9037cc0a9d3c80958d64552ff1ef0a90ab\n"
    },
    {
      "commit": "5c1968475c887c538d085a929750a0a838ba93f9",
      "tree": "8dda27b515ad5bae42c7fcac75e18e7c47314a6a",
      "parents": [
        "c3a6317b0b2eee655de4e8be40224671d7e7357a",
        "4616e52aefa8d9b24dc309f2baee1660eec351b5"
      ],
      "author": {
        "name": "Xiangyu/Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Tue Jan 22 03:16:28 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 03:16:28 2019 +0000"
      },
      "message": "Merge \"Connect IRadioConfig 1.1 HAL interfaces with RadioConfig.java\""
    },
    {
      "commit": "c3a6317b0b2eee655de4e8be40224671d7e7357a",
      "tree": "700b77305fe450cee603245cbe0de89c17516de3",
      "parents": [
        "3f4873baef7a4d700d107fb8e55530528a4aab15",
        "7731c5bae2637598a3eab2008afbd2ad474a8f9f"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 03:03:37 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 03:03:37 2019 +0000"
      },
      "message": "Merge \"Add NetworkMonitor constants to SystemApi\""
    },
    {
      "commit": "3f4873baef7a4d700d107fb8e55530528a4aab15",
      "tree": "fa22555b3c8b389381eb264e40df81c8022886a2",
      "parents": [
        "60b9ad2ec300c03fe09c0d695a0948f4363b6a26",
        "bf1ecd19573c8e2e3da491dc2eed696a5d42a5cc"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 02:01:29 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 02:01:29 2019 +0000"
      },
      "message": "Merge \"Add startActivityAsUser to SystemApi\""
    },
    {
      "commit": "2412c13c34f34c37cca33327f837c5e81076d8a5",
      "tree": "0f6cc604189c690938c412a9db618cc96c94b996",
      "parents": [
        "131fa56b4fa76223dbd7713307270f605bc199df"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 22 09:47:54 2019 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Tue Jan 22 10:53:00 2019 +0900"
      },
      "message": "Properly expect all callbacks in testStackedLinkProperties.\n\nCurrently testStackedLinkProperties accounts for some of the\nNetworkCallbacks that are fired, but not all of them. The test\npasses because it only ever expects LinkProperties changed\ncallbacks (and not, e.g., lost callbacks), because it uses\nwaitForIdle(), and because at the end, when the callback is\nunregistered, it does not call assertNoCallback().\n\nAdd the missing callback expectation and expect a LOST callback\nat the end. Also add an assertNoCallback, even though it\u0027s not\nstrictly necessary. Remove all the waitForIdle statements, which\nare no longer necessary because every assertion happens after\nwaiting for a callback.\n\nMaking the expectations more precise in a separate CL will help\nensure that upcoming changes to this code don\u0027t break anything,\nand will make said changes easier to review.\n\nBug: 65674744\nTest: atest FrameworksNetTests\nTest: ConnectivityServiceTest#testStackedLinkProperties passes 400 times\nChange-Id: I73cda0dd029a0e6546f7272beedf841ce5a4c0dc\n"
    },
    {
      "commit": "60b9ad2ec300c03fe09c0d695a0948f4363b6a26",
      "tree": "85de7ea40d363ad5754b98b763f43c7ae95e52c1",
      "parents": [
        "33a04d0ff9aebc49662d03c94af7a62abbbce9a7",
        "a5d31f53b67efe91da0911e792825020d16eb7bb"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 01:10:17 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 22 01:10:17 2019 +0000"
      },
      "message": "Merge \"Add IIpClient API for IpClient\""
    },
    {
      "commit": "34ead20998cc8782ef09fe356c35f70f4bd2e23a",
      "tree": "40834b6c93c4692de6ef44a25682172fc2489081",
      "parents": [
        "a4c1416c28c115d9e9bdac2a63e00286d3508aa2"
      ],
      "author": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Fri Jan 18 19:14:59 2019 +0000"
      },
      "committer": {
        "name": "Victor Chang",
        "email": "vichang@google.com",
        "time": "Mon Jan 21 23:40:06 2019 +0000"
      },
      "message": "Deprecate JapaneseCalendar.CURRENT_ERA\n\nIn the future, if the era changes in Japan, CURRENT_ERA\non old Android devices will be incorrect.\n\nThus, Android app developer should not use this API.\n\nBug: 77850660\nTest: m droid\nChange-Id: I9ee640bccc83a73c94ac76138597f09f05af8796\n"
    },
    {
      "commit": "33a04d0ff9aebc49662d03c94af7a62abbbce9a7",
      "tree": "79dcc77cc6d42f859b28242808982a4545d903b2",
      "parents": [
        "79a6d5e30c02509ba3241d66324b9d9386b42a15",
        "800e843862cfaac46dd1cc3b6e09aad1de911942"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 23:31:07 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 23:31:07 2019 +0000"
      },
      "message": "Merge changes I5a6174a4,Idfbfdf54\n\n* changes:\n  Acquire lock to write NetworkStackConnector\n  Allow Bluetooth to bind to NetworkStack\n"
    },
    {
      "commit": "bf1ecd19573c8e2e3da491dc2eed696a5d42a5cc",
      "tree": "88eea6c9b5f18efb9f389c7fe28cad54c920e5a6",
      "parents": [
        "1f4cce2f198308a0c8ee375503225ed1f6e1f2f4"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Sun Jan 20 21:18:22 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Jan 22 08:27:21 2019 +0900"
      },
      "message": "Add startActivityAsUser to SystemApi\n\nNormal applications do not have permissions to use this method.\n\nTest: m\nBug: 112869080\nMerged-In: I693b3bf56f3be71f0790776e3aad5694717786ef\nChange-Id: Ibe91c1bc4c94883a313e799cb0a37db7696fc62e\n"
    },
    {
      "commit": "7b84fb336f92c71fa4dd7a8bfe662966f954fa33",
      "tree": "6c45563fe34b84d5ba752e00e4ff50c239bc489d",
      "parents": [
        "1f4cce2f198308a0c8ee375503225ed1f6e1f2f4"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Sat Jan 19 21:13:24 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 23:24:41 2019 +0000"
      },
      "message": "Add NetworkStack metrics to system API\n\nTest: atest FrameworksNetTests NetworkStackTests\nBug: 112869080\nChange-Id: Ie52c55f248c173e2a5ee603ecd004fbac9004ac1\n"
    },
    {
      "commit": "79a6d5e30c02509ba3241d66324b9d9386b42a15",
      "tree": "1803f694b57b888d550242a9606367a5d1100f0a",
      "parents": [
        "b4a450a13c0f3731574f2cf11047f2097cbd2837",
        "31f1d0cd8dcf092b3bfcdf51bdde125b4a03c012"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 23:20:26 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 23:20:26 2019 +0000"
      },
      "message": "Merge \"Add fields used by NetworkStack to the API\""
    },
    {
      "commit": "b4a450a13c0f3731574f2cf11047f2097cbd2837",
      "tree": "a52a23bc501fcd0a6572280b9a73552ddbdf960e",
      "parents": [
        "795b80da15e85014ba387eb9f3c158c2f46aebc6",
        "28eeb3ac37826002a1e9c47efd911e030066a83c"
      ],
      "author": {
        "name": "Xiangyu/Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Mon Jan 21 22:45:09 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 22:45:09 2019 +0000"
      },
      "message": "Merge \"Remove mistake of calling iSub twice in getSelectableSubscriptionInfoList\""
    },
    {
      "commit": "795b80da15e85014ba387eb9f3c158c2f46aebc6",
      "tree": "9d2642ffd37b962aa2062234777638c80ade4f80",
      "parents": [
        "a4c1416c28c115d9e9bdac2a63e00286d3508aa2",
        "c3d7de01c7d1ec5b2eaf628c40a1d848bbbd2cfa"
      ],
      "author": {
        "name": "Xiangyu/Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Mon Jan 21 22:44:30 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 22:44:30 2019 +0000"
      },
      "message": "Merge \"Add helper API to hide subscriptions when getting active subscriptions\""
    },
    {
      "commit": "c3d7de01c7d1ec5b2eaf628c40a1d848bbbd2cfa",
      "tree": "9d2642ffd37b962aa2062234777638c80ade4f80",
      "parents": [
        "a4c1416c28c115d9e9bdac2a63e00286d3508aa2"
      ],
      "author": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Fri Dec 21 17:00:30 2018 -0800"
      },
      "committer": {
        "name": "Xiangyu/Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Mon Jan 21 21:17:25 2019 +0000"
      },
      "message": "Add helper API to hide subscriptions when getting active subscriptions\n\nAdding a hidden API that only return user visible active subscriptions.\n\nBug: 121396526\nTest: manual\nChange-Id: Ib69f1c2c51d22c2a58cfa93c662dc65521f7874f\nMerged-In: Ib69f1c2c51d22c2a58cfa93c662dc65521f7874f\n"
    },
    {
      "commit": "4616e52aefa8d9b24dc309f2baee1660eec351b5",
      "tree": "45cbf82e4022d1c2da88c372a1c0947cd708eb29",
      "parents": [
        "28eeb3ac37826002a1e9c47efd911e030066a83c"
      ],
      "author": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Fri Dec 21 15:43:57 2018 -0800"
      },
      "committer": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Mon Jan 21 13:07:41 2019 -0800"
      },
      "message": "Connect IRadioConfig 1.1 HAL interfaces with RadioConfig.java\n\nIRadioConfig 1.1 getPhoneCapability and setPreferredDataModem\nare defined. Here we hook the calls into RadioConfig.\n\nBug: 121354686\nTest: sanity\nChange-Id: I2a198d446962510ef9a3019d3aa30b40e796ebe0\nMerged-In: I2a198d446962510ef9a3019d3aa30b40e796ebe0\n"
    },
    {
      "commit": "28eeb3ac37826002a1e9c47efd911e030066a83c",
      "tree": "218204f1e6be24d2087bd61ca1ef251b5a92f4ef",
      "parents": [
        "a4c1416c28c115d9e9bdac2a63e00286d3508aa2"
      ],
      "author": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Wed Dec 19 15:56:13 2018 -0800"
      },
      "committer": {
        "name": "Malcolm Chen",
        "email": "refuhoo@google.com",
        "time": "Mon Jan 21 13:04:59 2019 -0800"
      },
      "message": "Remove mistake of calling iSub twice in getSelectableSubscriptionInfoList\n\nDon\u0027t call getAvailableSubscriptionInfoList twice in\ngetSelectableSubscriptionInfoList.\n\nTest: build\nChange-Id: Ie5821b1d8a01834228401ce6bb1e9ae251168760\nMerged-In: Ie5821b1d8a01834228401ce6bb1e9ae251168760\n"
    },
    {
      "commit": "a4c1416c28c115d9e9bdac2a63e00286d3508aa2",
      "tree": "925d8e0d4eed0dc3baa9fa3ffc4ed87c2d6fdd89",
      "parents": [
        "4620039dc5a075f172217f4a08c40348939163a6",
        "147e4945b3f3fe610df431eac07b259e5452d3b1"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 21 15:34:35 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 15:34:35 2019 +0000"
      },
      "message": "Merge \"Clean up config of tabs and trailing whitespace\""
    },
    {
      "commit": "4620039dc5a075f172217f4a08c40348939163a6",
      "tree": "581e2dcced45b4d83ad7ae95224b5bf7621e7a12",
      "parents": [
        "72373058ce5dd04ab36bcbcdbe9d5df846db112b",
        "439d3496ed38cea04824f7ad48e277297ab1f243"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Mon Jan 21 14:31:05 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 14:31:05 2019 +0000"
      },
      "message": "Merge changes from topics \"coreapi-flag\", \"coreapi-stubs-csv\"\n\n* changes:\n  hiddenapi: Support \u0027core-platform-api\u0027 flag\n  hiddenapi: Expect public/private API as CSV\n"
    },
    {
      "commit": "800e843862cfaac46dd1cc3b6e09aad1de911942",
      "tree": "08dcf5dcab2ae741568de9d789b89d3311c66bae",
      "parents": [
        "69b967f5d0687b043a66ed9a8343ad447bd594aa"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 20:57:05 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 23:21:40 2019 +0900"
      },
      "message": "Acquire lock to write NetworkStackConnector\n\nAs Java reference writes are atomic, the previous code should not have\nissues, but since mConnector is marked @GuardedBy it could trigger\nstatic analysis.\n\nTest: m\nChange-Id: I5a6174a4f32c349e593d0a16d58293d608a487c7\n"
    },
    {
      "commit": "72373058ce5dd04ab36bcbcdbe9d5df846db112b",
      "tree": "51b653db7930589bbd30684a2d85b7a93b27a020",
      "parents": [
        "131fa56b4fa76223dbd7713307270f605bc199df",
        "05ea705b9cd96a3de42999d9812da07b83e0658a"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 14:15:42 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 14:15:42 2019 +0000"
      },
      "message": "Merge \"Add OsConstants networking constants to public API\""
    },
    {
      "commit": "31f1d0cd8dcf092b3bfcdf51bdde125b4a03c012",
      "tree": "5003fa4b4f7d1bb8633659534ea20a0e60ee7394",
      "parents": [
        "1f4cce2f198308a0c8ee375503225ed1f6e1f2f4"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Sun Jan 20 12:52:43 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 23:03:25 2019 +0900"
      },
      "message": "Add fields used by NetworkStack to the API\n\nTest: m\nBug: 112869080\nChange-Id: I59f6d5ae8a601b7496548b87f137a577f2365a37\n"
    },
    {
      "commit": "131fa56b4fa76223dbd7713307270f605bc199df",
      "tree": "65603cd5b2f1f76a3744425c5ce851891658a6d5",
      "parents": [
        "ca046e898b500c48b5e5412d49bf4f51aa637d98",
        "c2c7ee1963c93a252ca3d75beb540d1e7edaa530"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jan 21 13:47:24 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 13:47:24 2019 +0000"
      },
      "message": "Merge \"Replace uses of libcore.io.SizeOf with X.BYTES.\""
    },
    {
      "commit": "147e4945b3f3fe610df431eac07b259e5452d3b1",
      "tree": "fad051d1f153413cb4b70bafed127b79c232f066",
      "parents": [
        "db4ce8705911e36a36f0a2f36b8bf9e04d78a2d3"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Jan 21 22:40:31 2019 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Jan 21 22:41:07 2019 +0900"
      },
      "message": "Clean up config of tabs and trailing whitespace\n\nTest: whitespace only change\nChange-Id: Ib2d8132e04b3bf604e2174deb1a54a074d8299d8\n"
    },
    {
      "commit": "7731c5bae2637598a3eab2008afbd2ad474a8f9f",
      "tree": "607e26fcc26c558b6804e664b0ef0f16716a97d4",
      "parents": [
        "1f4cce2f198308a0c8ee375503225ed1f6e1f2f4"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Thu Jan 17 14:38:31 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 21:11:15 2019 +0900"
      },
      "message": "Add NetworkMonitor constants to SystemApi\n\nNetworkMonitor lives in the NetworkStack which must only use system\nAPIs. This includes constants used by NetworkMonitor and captive portal\nlogin.\n\nBug: 112869080\nTest: m\nMerged-In: I8b5f0bb61c3ef0d2f33af7dd67b72ac6c5a1d1b5\nChange-Id: I4879568d3fbf9435767c8d4d0ab5198d421a2f4f\n"
    },
    {
      "commit": "05ea705b9cd96a3de42999d9812da07b83e0658a",
      "tree": "14542508dccd66327903264adeb2511557c4e715",
      "parents": [
        "1f4cce2f198308a0c8ee375503225ed1f6e1f2f4"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 20:38:10 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 20:39:29 2019 +0900"
      },
      "message": "Add OsConstants networking constants to public API\n\nTest: m\nBug: 123062477\nChange-Id: Iac5c0c6acf8d24c17fb4780bcb97164ee21cca8f\n"
    },
    {
      "commit": "c2c7ee1963c93a252ca3d75beb540d1e7edaa530",
      "tree": "65603cd5b2f1f76a3744425c5ce851891658a6d5",
      "parents": [
        "ca046e898b500c48b5e5412d49bf4f51aa637d98"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Mon Jan 21 10:34:19 2019 +0000"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Mon Jan 21 11:34:34 2019 +0000"
      },
      "message": "Replace uses of libcore.io.SizeOf with X.BYTES.\n\nlibcore.io.SizeOf is an internal API and is going away soon.\n\nNote: The files touched by this CL have some other unused\nimports which I did not touch. Therefore I had to use\n\"repo upload --no-verify\" to upload this CL to gerrit.\n\nBug: 123174577\nTest: Manually checked that this CL applies cleanly in internal\n      master and that no other uses of SizeOf then remain in\n      internal master\u0027s frameworks/base\nTest: Treehugger\nChange-Id: Ib29a195f3dda2f21ebbe2f7073e0af4dbb524b19\n"
    },
    {
      "commit": "d848183572d7c347937b871e9d341e0938d8764b",
      "tree": "d81410e97343fe7a21f40d22587bc0f30f41cdab",
      "parents": [
        "ca046e898b500c48b5e5412d49bf4f51aa637d98"
      ],
      "author": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Thu Jan 17 21:27:37 2019 +0000"
      },
      "committer": {
        "name": "Martin Stjernholm",
        "email": "mast@google.com",
        "time": "Mon Jan 21 10:55:30 2019 +0000"
      },
      "message": "Delay start of bootanimation until after the Runtime APEX is mounted.\n\nIt depends on libdexfile_external and libnative{bridge,helper,loader} which\nare provided by the Runtime APEX.\n\nTest: flash \u0026 boot\nTest: atest CtsJdwpTestCases\nBug: 113373927\nChange-Id: Id9a78f9adb4c928ab4c91fda0ee3ea4b13eed592\n"
    },
    {
      "commit": "ca046e898b500c48b5e5412d49bf4f51aa637d98",
      "tree": "4fc6107978266607978840822f62f489cad1ce4b",
      "parents": [
        "7bf90a1f97080ac56db44374035a97ebd2737366",
        "bf73e66d4db7e2cd235017333260ee2fdceea5ee"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Jan 21 09:34:41 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 09:34:41 2019 +0000"
      },
      "message": "Merge changes I2ddfef0c,I49bee0c9\n\n* changes:\n  [MS08] Read back attributes and blobs.\n  [MS07] Implement storeNetworkAttributes and storeBlob.\n"
    },
    {
      "commit": "a5d31f53b67efe91da0911e792825020d16eb7bb",
      "tree": "b6e060e2e76c20342e1f1bf4dc9a3201ba1b9ead",
      "parents": [
        "6b0b2b735eb42f87319a91cc7822e78ce2296186"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Sat Jan 12 15:36:47 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 18:25:46 2019 +0900"
      },
      "message": "Add IIpClient API for IpClient\n\nThe API will be used to interact with IpClient once it is moved to the\nNetworkStack process.\nThis change keeps compatibility with the previous API so that clients\ncan be migrated independently.\n\nTest: atest FrameworksNetTests NetworkStackTests\nBug: b/112869080\nChange-Id: I57d8164afae849230bbc0e25f17859c0b22d0f29\n"
    },
    {
      "commit": "69b967f5d0687b043a66ed9a8343ad447bd594aa",
      "tree": "6af49b132bcc584b7552bc54f70a417c5aae16de",
      "parents": [
        "6b0b2b735eb42f87319a91cc7822e78ce2296186"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Sun Jan 13 03:10:49 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 18:25:01 2019 +0900"
      },
      "message": "Allow Bluetooth to bind to NetworkStack\n\nTest: flashed, verified bluetooth tethering gets IP address\nBug: b/112869080\nChange-Id: Idfbfdf54754fea46eb0099b9b9a3bdc29dd241e0\n"
    },
    {
      "commit": "7bf90a1f97080ac56db44374035a97ebd2737366",
      "tree": "bf54e88edffbaf8756a7ac37953f0798b4f8b38d",
      "parents": [
        "da290bec0c5418e758b92abad7be8e729cf37d68",
        "6b0b2b735eb42f87319a91cc7822e78ce2296186"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 08:01:26 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 08:01:26 2019 +0000"
      },
      "message": "Merge \"Add stable AIDL parcelables for IIpClient API\""
    },
    {
      "commit": "da290bec0c5418e758b92abad7be8e729cf37d68",
      "tree": "fc844384313dc812429ec846acdc743984c6802a",
      "parents": [
        "db4ce8705911e36a36f0a2f36b8bf9e04d78a2d3",
        "ce75675aec1d785ed819cf1e0000e3cab8e978de"
      ],
      "author": {
        "name": "Junyu Lai",
        "email": "junyulai@google.com",
        "time": "Mon Jan 21 07:33:14 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 07:33:14 2019 +0000"
      },
      "message": "Merge \"fix getIfaceStats and getTotalStats bug\""
    },
    {
      "commit": "bf73e66d4db7e2cd235017333260ee2fdceea5ee",
      "tree": "d1f92c3215c276ce5e4df17f4fd595bf88678eb6",
      "parents": [
        "91549b6d1be1e0d8d0deb9da45050eb76165a39d"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Thu Dec 27 20:59:41 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Jan 21 15:21:09 2019 +0900"
      },
      "message": "[MS08] Read back attributes and blobs.\n\nTest: New tests in IpMemoryStore\nBug: 113554482\n\nChange-Id: I2ddfef0c2ed37459c038f75d1dfc92fdefbf58f5\n"
    },
    {
      "commit": "91549b6d1be1e0d8d0deb9da45050eb76165a39d",
      "tree": "26b587a60864fa43024d6516aa779ddc73fe5cd4",
      "parents": [
        "db4ce8705911e36a36f0a2f36b8bf9e04d78a2d3"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Dec 18 22:05:19 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Mon Jan 21 15:21:09 2019 +0900"
      },
      "message": "[MS07] Implement storeNetworkAttributes and storeBlob.\n\nTest: New tests in IpMemoryStore\nBug: 113554482\n\nChange-Id: I49bee0c903247e77ab93517efbe44548313cf1a4\n"
    },
    {
      "commit": "6b0b2b735eb42f87319a91cc7822e78ce2296186",
      "tree": "b6b0c9e6f400f3306c52b4f40c9fa02c81b33e3a",
      "parents": [
        "1f4cce2f198308a0c8ee375503225ed1f6e1f2f4"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Fri Jan 18 18:49:16 2019 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Mon Jan 21 12:54:24 2019 +0900"
      },
      "message": "Add stable AIDL parcelables for IIpClient API\n\nTest: atest FrameworksNetTests NetworkStackTests\nBug: b/112869080\nChange-Id: Ia4ac1eb482850a06c4dc1b6c1fe55d33d4087388\n"
    },
    {
      "commit": "db4ce8705911e36a36f0a2f36b8bf9e04d78a2d3",
      "tree": "28dbe0c346e06dd049a2f60aae49bfb974e7f039",
      "parents": [
        "1f4cce2f198308a0c8ee375503225ed1f6e1f2f4",
        "5e7128d77dde7ee1cfceaafb331893495f04730c"
      ],
      "author": {
        "name": "Junyu Lai",
        "email": "junyulai@google.com",
        "time": "Mon Jan 21 03:48:15 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Jan 21 03:48:15 2019 +0000"
      },
      "message": "Merge \"Remove dead KeepaliveInfo if it cannot be started\""
    },
    {
      "commit": "1f4cce2f198308a0c8ee375503225ed1f6e1f2f4",
      "tree": "d462fbc04089ca18d6f69762be0677eea5b842e1",
      "parents": [
        "319157a906b8782e3e1eccfee97dc3468e8d005b",
        "8752dedb760cd270e2ecc8f9cd3bb4f00f55e23f"
      ],
      "author": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Sun Jan 20 15:09:18 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Jan 20 15:09:18 2019 +0000"
      },
      "message": "Merge \"Update signature files to the new format\""
    },
    {
      "commit": "319157a906b8782e3e1eccfee97dc3468e8d005b",
      "tree": "90cad9f6bf023627741537c243426654156ab707",
      "parents": [
        "bc6e433ae488b4ad807c1503a53155a3259fd0b8",
        "d0ebaa9e30cb6f359bb14c52cdf7f474b1816af5"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Sun Jan 20 13:58:49 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Jan 20 13:58:49 2019 +0000"
      },
      "message": "Merge \"Adjust to new OpenNativeLibrary API.\""
    },
    {
      "commit": "439d3496ed38cea04824f7ad48e277297ab1f243",
      "tree": "0de7538e6832966d630f246b1493bfdd16ff8ffb",
      "parents": [
        "17d16e84da23464dc7a621eaa87a79c6cc1170ce"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Dec 07 11:49:55 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Sat Jan 19 15:57:36 2019 +0000"
      },
      "message": "hiddenapi: Support \u0027core-platform-api\u0027 flag\n\nLibcore class members annotated with @CorePlatformApi now generate\na new hiddenapi flag. This is the first of \"domain API\" flags which\ncan be used in conjunction with API list flags. Therefore modify\nthe \u0027generate_hiddenapi_lists.py\u0027 logic to treat them differently.\nSpecifically, the script marks otherwise unassigned class members\nblacklisted. A class member with \u0027core-platform-api\u0027 may still not\nbe assigned an API list and should be blacklisted.\n\nBug: 119068555\nTest: m appcompat\nChange-Id: I2b67e7a619677e853c87bc2da934410458ce4d14\n"
    },
    {
      "commit": "17d16e84da23464dc7a621eaa87a79c6cc1170ce",
      "tree": "3322550f528428f4eb4d7f2b88e71429a6faea54",
      "parents": [
        "bc6e433ae488b4ad807c1503a53155a3259fd0b8"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Thu Dec 13 17:00:09 2018 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Sat Jan 19 15:57:36 2019 +0000"
      },
      "message": "hiddenapi: Expect public/private API as CSV\n\nRefactor of `hiddenapi` changed the output format of public/private API\nlists to a single CSV file. Change API list generation accordingly.\n\nIn order to avoid special-casing this CSV file, it is treated the same\nas the CSV files produced by `class2greylist`. The merging rules are\nrelaxed so that signatures in CSV files are not checked against\na pre-initialized set of all signatures (previously generated from the\npublic/private API files). This should not lead to build errors as the\nCSV files are always auto-generated, and a missing/extra signature will\nbe caught by `hiddenapi`.\n\nAPI lists in frameworks/base/config are processed later and checked\nthat they are a subset of the signatures in CSV.\n\nBug: 119068555\nTest: compiles, hiddenapi-flags.csv unchanged\nChange-Id: I33f2cbaa15f2d423a75e6ca64abe1c5b0c40c86f\n"
    },
    {
      "commit": "8752dedb760cd270e2ecc8f9cd3bb4f00f55e23f",
      "tree": "76efbd9785ea1853a9b288b5738a988d0da7935f",
      "parents": [
        "bc6e433ae488b4ad807c1503a53155a3259fd0b8"
      ],
      "author": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Wed Dec 26 19:55:07 2018 -0800"
      },
      "committer": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Sat Jan 19 07:22:55 2019 -0800"
      },
      "message": "Update signature files to the new format\n\nThe new format is described in tools/metalava/FORMAT.md.\n\nFixes: 116589402 Switch signature files over to the v2 format\nFixes: 112626813 Drop \"synchronized\" modifier from the signature format\nFixes: 122358225 Omit overriding methods that only differ in final [...]\nFixes: 73088715 API Review: Need doclava to output nullability\nFixes: 79739773 API Review: Metalava enforcing constants are constant\nExempt-From-Owner-Approval: Large-scale tooling change\nTest: make sdk, make update-api, make checkapi\nChange-Id: I8314f4e7099fa92e4f8ed7d283ccf836cc9a84a0\nMerged-In: Ia248aece5250e84e47c815c601133b698bf644c2\n"
    },
    {
      "commit": "bc6e433ae488b4ad807c1503a53155a3259fd0b8",
      "tree": "d6ce60786978af08c92e232fe588075dc7ab92b8",
      "parents": [
        "cd4ca49b185a3f04ec2ae8bb2cee4c6dc2198aec",
        "161a44616c8c9d732f53d624ebd05566cc3d8658"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 19 13:48:29 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 19 13:48:29 2019 +0000"
      },
      "message": "Merge \"Pass in calling UID and package to dumpstate\""
    },
    {
      "commit": "cd4ca49b185a3f04ec2ae8bb2cee4c6dc2198aec",
      "tree": "811b0ec2980d227b6e6d2a8f8eb7b058233c0c67",
      "parents": [
        "2e29def1099123bb628f63a23682a8c0cb1a1a92",
        "8218ddd9631b8a840f26b1229e5fc3718d5e98ca"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 19 06:49:09 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 19 06:49:09 2019 +0000"
      },
      "message": "Merge \"Trigger PhoneStateListener onCallAttributesChanged\""
    },
    {
      "commit": "2e29def1099123bb628f63a23682a8c0cb1a1a92",
      "tree": "b100e3ec8b522c10621b267a3f27d98038961dab",
      "parents": [
        "bce5b2f971b6252fbe29ea96560a77cdaa48b264",
        "7eccc741f020e2548e8551aa2f00967cef994d83"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 19 04:24:23 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 19 04:24:23 2019 +0000"
      },
      "message": "Merge \"Remove the eng tag from invoke_mock_media_player\""
    },
    {
      "commit": "bce5b2f971b6252fbe29ea96560a77cdaa48b264",
      "tree": "9b7cdececccb57a1af5d103b7115d630ae8fcf68",
      "parents": [
        "98391daa29771884f13e3cd4138651dd166cf669",
        "a8626ae8de9b66235e0093ca6c5db4e0be0d4064"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 19 02:39:35 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 19 02:39:35 2019 +0000"
      },
      "message": "Merge \"Fix potential NULL dereference errors.\""
    },
    {
      "commit": "98391daa29771884f13e3cd4138651dd166cf669",
      "tree": "68684837a542264f986c4934ea1bd1786d1b9635",
      "parents": [
        "36ee8e024479cfbba512194c9eced0443b97fa5a",
        "a4a1ae499d126b496e811d590e0a875772831ef0"
      ],
      "author": {
        "name": "Michele Berionne",
        "email": "mberionne@google.com",
        "time": "Sat Jan 19 00:13:56 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Jan 19 00:13:56 2019 +0000"
      },
      "message": "Merge \"Carrier restriction enhancements for Android Q\""
    },
    {
      "commit": "36ee8e024479cfbba512194c9eced0443b97fa5a",
      "tree": "db3d121f0d3401d07e25e609373aff93759b4d1c",
      "parents": [
        "a879fd8b02b29d7b4784ca7885e42c53f40e3d04",
        "b77e13d50a14d977da1659af752b7123f9f20504"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jan 18 23:30:27 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 23:30:27 2019 +0000"
      },
      "message": "Merge \"[b/109850442]Fail to adjust volume when connect Ampplifier.]\""
    },
    {
      "commit": "a879fd8b02b29d7b4784ca7885e42c53f40e3d04",
      "tree": "277d9e9f758a47eee60b83c0e99d48070550e072",
      "parents": [
        "44631dfc26925c35b2c6a71e75b3dd4c540394b1",
        "ea652eac63c3c0e826c28a5f3e4404d0e9da6a59"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 18 23:18:15 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 23:18:15 2019 +0000"
      },
      "message": "Merge \"Quiet SNaN inputs in Half.toFloat()\""
    },
    {
      "commit": "44631dfc26925c35b2c6a71e75b3dd4c540394b1",
      "tree": "23d648901d9f9356851c430c1634c2411be11d4c",
      "parents": [
        "35c516049208620a19384585429d947bb95eb91b",
        "8ef41bf34fa3a900a030f4591d457706c854dd31"
      ],
      "author": {
        "name": "Jayachandran Chinnakkannu",
        "email": "jayachandranc@google.com",
        "time": "Fri Jan 18 22:54:38 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 22:54:38 2019 +0000"
      },
      "message": "Merge \"Cellular data stall recovery based on networkStatus\""
    },
    {
      "commit": "8ef41bf34fa3a900a030f4591d457706c854dd31",
      "tree": "35d8b96bebcf432bbf861b49ca772e4dc701185d",
      "parents": [
        "56401a4c74dc6acd307b4e3432bd86414a57176a"
      ],
      "author": {
        "name": "Jayachandran C",
        "email": "jayachandranc@google.com",
        "time": "Thu Dec 06 11:12:07 2018 -0800"
      },
      "committer": {
        "name": "Jayachandran Chinnakkannu",
        "email": "jayachandranc@google.com",
        "time": "Fri Jan 18 22:52:16 2019 +0000"
      },
      "message": "Cellular data stall recovery based on networkStatus\n\nThis CL introduces cellular data stall recovery based on\nnetwork validation result. It still re-uses the existing\nrecovery steps but the triggers are based on networkStatus\nfrom NetworkMonitor when the network is bad. Each recovery\nstep is spaced by a configurable grace period (default 3 mins)\nto avoid back to back recovery.\n\nThis feature is controlled by the following settings. If this\nfeature is enabled then the legacy data stall detection based\non TrafficStats will automatically be disabled.\n\nSettings.Global.DATA_STALL_RECOVERY_ON_BAD_NETWORK\n1 \u003d\u003e Enabled (default)\n0 \u003d\u003e Disabled\n\nSettings.Global.MIN_DURATION_BETWEEN_RECOVERY_STEPS_IN_MS\n3 minutes is default value\n\nBug: 113916551\nTest: atest FrameworksTelephonyTests:com.android.internal.telephony.dataconnection.DcTrackerTest\n\nChange-Id: I738fc7ed08803de1114f7a3d79bf278449e94ea8\n"
    },
    {
      "commit": "7eccc741f020e2548e8551aa2f00967cef994d83",
      "tree": "40a158461b06ae97697566d51687e7f3af3a5c4e",
      "parents": [
        "a24e12b46e2961bfa6f0ba1fafbd819b18261f1f"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Jan 18 14:40:54 2019 -0800"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Jan 18 14:40:54 2019 -0800"
      },
      "message": "Remove the eng tag from invoke_mock_media_player\n\nThe test using this has been suppressed for \u003e9 years since we moved\ntesting from eng devices to userdebug.\n\nTest: treehugger\nChange-Id: Ie91f3b97a33a8e8e5be49ea2098f163567e2496d\n"
    },
    {
      "commit": "a4a1ae499d126b496e811d590e0a875772831ef0",
      "tree": "79aaf11a3b080f83dfa3d95ab4e6185f276a15ba",
      "parents": [
        "a24e12b46e2961bfa6f0ba1fafbd819b18261f1f"
      ],
      "author": {
        "name": "Michele Berionne",
        "email": "mberionne@google.com",
        "time": "Tue Nov 27 18:45:05 2018 -0800"
      },
      "committer": {
        "name": "Michele Berionne",
        "email": "mberionne@google.com",
        "time": "Fri Jan 18 22:37:12 2019 +0000"
      },
      "message": "Carrier restriction enhancements for Android Q\n\nAdd support for dual SIM to carrier restrictions.\nAdd support to exclude specific carriers in the list of carrier\nrestrictions.\n\nBug: 120313541\nTest: Created test application to verify correct functionality.\nTest: Added test cases for CarrierRestrictionRules.\nChange-Id: I2723fb07db13efdafbc74471a87182e2d2a32718\nMerged-In: I2723fb07db13efdafbc74471a87182e2d2a32718\n"
    },
    {
      "commit": "35c516049208620a19384585429d947bb95eb91b",
      "tree": "858d3026edfc9ee98ff4891b3fc4b828556d644f",
      "parents": [
        "f2c0f4aadf3d063122d6ef9eac4c9c0e76913de8",
        "42bd8e1ec05dd11a7838ff37345ff1d6be77641b"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Jan 18 22:25:35 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 22:25:35 2019 +0000"
      },
      "message": "Merge \"Avoid calling ParcelFileDescriptor.fromSocket on new Sockets.\""
    },
    {
      "commit": "f2c0f4aadf3d063122d6ef9eac4c9c0e76913de8",
      "tree": "0fbd6ece454cc46d4e534df1db4ac8c660be2648",
      "parents": [
        "c823079843a5333f9978bf4bee3345750ff7e744",
        "03d341adfb0eae21acb32caf6223654023249e71"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 18 22:18:50 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 22:18:50 2019 +0000"
      },
      "message": "Merge \"Fix maindexclasses use of proguard\""
    },
    {
      "commit": "c823079843a5333f9978bf4bee3345750ff7e744",
      "tree": "14ca816959521194565105c1d00ce6c752c5f59c",
      "parents": [
        "a24e12b46e2961bfa6f0ba1fafbd819b18261f1f",
        "4f895b2b168a42efbd57acc5704d837ebcfa5aac"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 18 22:13:53 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 22:13:53 2019 +0000"
      },
      "message": "Merge \"Add SOONG_HIDDENAPI_FLAGS as hiddenapi_flags.csv dependencies\""
    },
    {
      "commit": "a24e12b46e2961bfa6f0ba1fafbd819b18261f1f",
      "tree": "cc1b68191667dfcd57f2d825ee736330a03c6c0d",
      "parents": [
        "d9ff9597bc37558662ef8f1025aa3a0dba1ee999",
        "c445b2b98bb322afde2e598c132e412783b1c932"
      ],
      "author": {
        "name": "Leland Miller",
        "email": "lelandmiller@google.com",
        "time": "Fri Jan 18 19:32:37 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 19:32:37 2019 +0000"
      },
      "message": "Merge \"Add thread ID reuse to API contract\""
    },
    {
      "commit": "d9ff9597bc37558662ef8f1025aa3a0dba1ee999",
      "tree": "9188511235340ef006533374e3de840980ea3ebd",
      "parents": [
        "f0f0606365974427d3fb539ff4a501d79aa6b3a6",
        "b822af0022ec109b954d01b5358b80d5ba58817e"
      ],
      "author": {
        "name": "Nathan Harold",
        "email": "nharold@google.com",
        "time": "Fri Jan 18 19:09:50 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 19:09:50 2019 +0000"
      },
      "message": "Merge \"Remove LTE Rsrp Boost from SignalStrength\""
    },
    {
      "commit": "f0f0606365974427d3fb539ff4a501d79aa6b3a6",
      "tree": "0322779636bf21ba4d14e4acfa9b77bf162a5c16",
      "parents": [
        "56401a4c74dc6acd307b4e3432bd86414a57176a",
        "40c1196841546465c19ccef1d85ed51a333290e2"
      ],
      "author": {
        "name": "Rene Mayrhofer",
        "email": "rmayrhofer@google.com",
        "time": "Fri Jan 18 18:20:25 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 18:20:25 2019 +0000"
      },
      "message": "Merge changes from topic \"EnableAirplaneModeInSafeMode\"\n\n* changes:\n  Add import of android.provider.Settings\n  Enable airplane mode when booting in safe mode\n"
    },
    {
      "commit": "b77e13d50a14d977da1659af752b7123f9f20504",
      "tree": "33a17c4e6afd3a2f0dccb19ff1fdd14c580f2c8e",
      "parents": [
        "56401a4c74dc6acd307b4e3432bd86414a57176a"
      ],
      "author": {
        "name": "Stanley Chang",
        "email": "stanley.chang@mediatek.com",
        "time": "Tue Aug 28 08:16:03 2018 +0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jan 18 11:56:05 2019 -0500"
      },
      "message": "[b/109850442]Fail to adjust volume when connect Ampplifier.]\n\n[Description]\nFix this issue : Don\u0027t suppress adjustments for single volume device\n\nTest: Android TV: press vol button once\nChange-Id: I2d37ce60c3e6928e00b036a805f01f281437f4ac\n"
    },
    {
      "commit": "4f895b2b168a42efbd57acc5704d837ebcfa5aac",
      "tree": "47115f3879db504534987c2140ded2006c338fe1",
      "parents": [
        "56401a4c74dc6acd307b4e3432bd86414a57176a"
      ],
      "author": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Jan 18 15:17:43 2019 +0000"
      },
      "committer": {
        "name": "David Brazdil",
        "email": "dbrazdil@google.com",
        "time": "Fri Jan 18 16:18:06 2019 +0000"
      },
      "message": "Add SOONG_HIDDENAPI_FLAGS as hiddenapi_flags.csv dependencies\n\nHiddenapi build logic has moved to soong and list of flags.csv files\nis now being passed to make files through SOONG_HIDDENAPI_FLAGS\nvariable. Adjust the build rule for hiddenapi_flags.csv accordingly.\n\nTest: aosp compiles\nChange-Id: I930f918fb36ce3532478035e83c2632559fd07b6\n"
    },
    {
      "commit": "5e7128d77dde7ee1cfceaafb331893495f04730c",
      "tree": "824c35c5945f1dc60f903977e4ed0df1c7f05ce4",
      "parents": [
        "56401a4c74dc6acd307b4e3432bd86414a57176a"
      ],
      "author": {
        "name": "junyulai",
        "email": "junyulai@google.com",
        "time": "Thu Jan 17 15:15:45 2019 +0800"
      },
      "committer": {
        "name": "junyulai",
        "email": "junyulai@google.com",
        "time": "Fri Jan 18 21:48:13 2019 +0800"
      },
      "message": "Remove dead KeepaliveInfo if it cannot be started\n\nIf KeepaliveInfo was created but cannot be started, current\ndesign will only notify apps but not remove it from local\nhashmap, which will cause unexpected behavior if someone\ntries to iterate records and fire callbacks.\n\nBug: 122636283\nTest: atest FrameworksNetTests\nChange-Id: If4cb25a881dd3555f569c729f88741675f7f3bdf\n"
    },
    {
      "commit": "d0ebaa9e30cb6f359bb14c52cdf7f474b1816af5",
      "tree": "5d2ed3329ec5ce0f2ce33befc552db68a833f53c",
      "parents": [
        "56401a4c74dc6acd307b4e3432bd86414a57176a"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jan 18 11:59:41 2019 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Jan 18 11:59:55 2019 +0000"
      },
      "message": "Adjust to new OpenNativeLibrary API.\n\nBug: 122874359\nTest: m\nChange-Id: Ia018fd334eaf77b690ee6f7b5852743d1efa0e2f\n"
    },
    {
      "commit": "56401a4c74dc6acd307b4e3432bd86414a57176a",
      "tree": "0e9bcbb4d13b3820f2dc7cf21a69e38493b1cb5a",
      "parents": [
        "1136af996664207124c43eb4ed1bfb03fbc587ca",
        "4810387d02575cc5d9e1107c4a838fa1ccb762ec"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Fri Jan 18 09:07:16 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 09:07:16 2019 +0000"
      },
      "message": "Merge \"Split applyNewState into enable/disable APN\""
    },
    {
      "commit": "03d341adfb0eae21acb32caf6223654023249e71",
      "tree": "69f29ef0ae2c029a7b2a733844f5e54843a38c6b",
      "parents": [
        "1136af996664207124c43eb4ed1bfb03fbc587ca"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Thu Jan 17 22:57:06 2019 -0800"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Thu Jan 17 23:08:27 2019 -0800"
      },
      "message": "Fix maindexclasses use of proguard\n\nFixes: 122988865\nTest: OUT_DIR\u003d$HOME/out mmma frameworks/base/core/tests/hosttests/test-apps\nChange-Id: I7f1f22dbe016182d2502643e45e095a5d8f60e41\n"
    },
    {
      "commit": "1136af996664207124c43eb4ed1bfb03fbc587ca",
      "tree": "7035fcf00ad1898afadac0d6567b04ab03f7b046",
      "parents": [
        "895ef965f578ddadb90e27d9d8b928ec14f954c2",
        "61fbefbbe9f2b38d3f415dc67d1e98b219e01258"
      ],
      "author": {
        "name": "Jayachandran Chinnakkannu",
        "email": "jayachandranc@google.com",
        "time": "Fri Jan 18 05:57:50 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 05:57:50 2019 +0000"
      },
      "message": "Merge \"Update sharedPreference to false when exits new device provisioning\""
    },
    {
      "commit": "895ef965f578ddadb90e27d9d8b928ec14f954c2",
      "tree": "322629ace64e4c74755a38d99d76a0c40adc16e8",
      "parents": [
        "b576e24d73cfa869427400d117bc3e08375233f3",
        "836ad571eb22d3758a84fb1e2fab812c418f9f8f"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Fri Jan 18 05:03:44 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 05:03:44 2019 +0000"
      },
      "message": "Merge \"[CS] Add an option to block sensitive network specifier\""
    },
    {
      "commit": "b576e24d73cfa869427400d117bc3e08375233f3",
      "tree": "29471bcb441be5db15eac10a9d90cc9818c5acbf",
      "parents": [
        "1ff7bdb095e930b6e3108e2ca88a610852fdcd74",
        "690dc0ed980d1eaed864747aa3abd845074bbc43"
      ],
      "author": {
        "name": "Fan Zhang",
        "email": "zhfan@google.com",
        "time": "Fri Jan 18 00:47:52 2019 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 18 00:47:52 2019 +0000"
      },
      "message": "Merge \"Add Dynamic tiles for Settings\""
    },
    {
      "commit": "4810387d02575cc5d9e1107c4a838fa1ccb762ec",
      "tree": "95533c9b0d3c3c1aeedd2fc89b073106c901f835",
      "parents": [
        "1ff7bdb095e930b6e3108e2ca88a610852fdcd74"
      ],
      "author": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Wed Jan 16 14:47:38 2019 -0800"
      },
      "committer": {
        "name": "Jack Yu",
        "email": "jackyu@google.com",
        "time": "Thu Jan 17 16:45:14 2019 -0800"
      },
      "message": "Split applyNewState into enable/disable APN\n\nThis is the preliminary work for adding handover\ntype for enable/disable APN.\n\nTest: Telephony sanity tests + unit tests\nBug: 73659459\n\nMerged-In: I51fd01d798cdf8d04fd41455126d017ac97f5f3f\nChange-Id: I51fd01d798cdf8d04fd41455126d017ac97f5f3f\n(cherry picked from commit ade6d1a66d0cc4ef9260c80c760093a2386679d8)\n"
    },
    {
      "commit": "61fbefbbe9f2b38d3f415dc67d1e98b219e01258",
      "tree": "b497509ef6d467b5d7d6e8f7c4b04e016b01b90f",
      "parents": [
        "1ff7bdb095e930b6e3108e2ca88a610852fdcd74"
      ],
      "author": {
        "name": "chen xu",
        "email": "fionaxu@google.com",
        "time": "Tue Jan 15 16:17:47 2019 -0800"
      },
      "committer": {
        "name": "Jayachandran Chinnakkannu",
        "email": "jayachandranc@google.com",
        "time": "Fri Jan 18 00:44:21 2019 +0000"
      },
      "message": "Update sharedPreference to false when exits new device provisioning\n\nUpdate sharedPreference to false when exits new device provisioning,\nindicating no users modifications on the settings for new devices.\nThus carrier specific default roaming settings can be applied for new devices.\n\nBug: 122817867\nTest: Manual test on VZW SIM in Setupwizard\nMerged-in: Ic93b16f9f96ccc98d12f46c79ab1008ae0df8a07\nChange-Id: Ic93b16f9f96ccc98d12f46c79ab1008ae0df8a07\n"
    },
    {
      "commit": "836ad571eb22d3758a84fb1e2fab812c418f9f8f",
      "tree": "29e147c7360a204df7012436ae7b3e909f71f7cc",
      "parents": [
        "1ff7bdb095e930b6e3108e2ca88a610852fdcd74"
      ],
      "author": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Sun Dec 30 17:59:59 2018 -0800"
      },
      "committer": {
        "name": "Etan Cohen",
        "email": "etancohen@google.com",
        "time": "Thu Jan 17 16:30:05 2019 -0800"
      },
      "message": "[CS] Add an option to block sensitive network specifier\n\nNetwork specifiers are used for 2 purposes:\n\n- As part of network requests to specify more information on the type\n  of requested networks.\n- On network agents to specify information about their networks.\n\nThe network specifiers of the requests and agents are matched to each\nother. However, the agent network specifier may contain sensitive\ninformation which we do not want forwarded to any app.\n\nThis CL adds an option to strip out this agent network specifier before\nthe network capabilities are forwarded to the app.\n\nBug: 122160111\nTest: atest ConnectivityServiceTest (frameworks/base/tests/net)\nTest: atest frameworks/base/tests/net\nTest: atest frameworks/opt/net/wifi/tests/wifitests\nTest: atest frameworks/opt/telephony/tests/telephonytests\nTest: atest frameworks/opt/net/ethernet/tests\nTest: atest android.net.cts - some flakiness!\nTest: act.py ThroughputTest\nTest: act.py DataPathTest\nTest: atest SingleDeviceTest (cts)\nChange-Id: If08d312ff814bdde1147518f923199e6349503d5\n"
    }
  ],
  "next": "b822af0022ec109b954d01b5358b80d5ba58817e"
}
