)]}'
{
  "log": [
    {
      "commit": "0ee628f47b72e9c9f81e7354997679bb4796e37b",
      "tree": "1fbc31c92c94738c396c03b2dd2c69acc3cc1ab0",
      "parents": [
        "0137f81fafb77ed553d301a23f23e2ec2091069d",
        "31ccba1af0e2eb6ca280a3da12b3521f3353e599"
      ],
      "author": {
        "name": "Bo Zhu",
        "email": "bozhu@google.com",
        "time": "Fri Jan 19 00:44:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 19 00:44:40 2018 +0000"
      },
      "message": "Merge \"Change packVaultParams to use the real vault_handle directly\""
    },
    {
      "commit": "8d262867e101ff3455961da1ce63854b40fcf0cc",
      "tree": "1af5dd9a6b82856b4a28d61ef2733b195752c8c0",
      "parents": [
        "d03c598b937ea078108cd81cb1b61775adb1315e",
        "11cc74913d7c5c06ae12ea232a53918c0959fc86"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 19 00:35:58 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 19 00:35:58 2018 +0000"
      },
      "message": "Merge \"GnssMeasurementsListener - Fix indexing, add \u0026 remove\""
    },
    {
      "commit": "5ccc6641595576a83b17c1d600ceefd3b14dc8f3",
      "tree": "739ea3127f8b32a51a206725335411ddac2e89fd",
      "parents": [
        "fd8d8944de0656f92fcdbccd1fd3c91840d98b3a",
        "4b6599e494e90904cdbae03bb9cabfcaf2d06de0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 19 00:23:33 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 19 00:23:33 2018 +0000"
      },
      "message": "Merge \"Set ActivityView\u0027s rect as tap exclude region\""
    },
    {
      "commit": "fd8d8944de0656f92fcdbccd1fd3c91840d98b3a",
      "tree": "653bea055fae746aceeedb02808161b0ad52ab81",
      "parents": [
        "e45515687ff9c7c325cf37b173806d70e36ae3e2",
        "e30dcb50ec6bd92bbdfc7e1eed4d7ee438e3670f"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Jan 19 00:01:25 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 19 00:01:25 2018 +0000"
      },
      "message": "Merge \"Fixed method name that was changed in a previous CL.\""
    },
    {
      "commit": "e45515687ff9c7c325cf37b173806d70e36ae3e2",
      "tree": "d79c92efc8830d37c1f0e6f64340727aa835147b",
      "parents": [
        "3752fc9e23789592e918c4e276fdb48ac608bc2d",
        "6caf1d8c2a6439900e3a0441d8823868a0f0cb57"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 19 00:01:04 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 19 00:01:04 2018 +0000"
      },
      "message": "Merge \"Add factory for TaskPositioner.\""
    },
    {
      "commit": "e30dcb50ec6bd92bbdfc7e1eed4d7ee438e3670f",
      "tree": "4fcf8497ca3a1ec8a2d5fe5d0f283009b204c341",
      "parents": [
        "25be4e0461229fcf206a75fa342e576ca9361e17"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 15:57:18 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 15:58:03 2018 -0800"
      },
      "message": "Fixed method name that was changed in a previous CL.\n\nBug: 70939974\nTest: nope, build is broken, must fix ASAP\n\nChange-Id: I88cf6ccacb5baa097cea26c859b774738bd9b428\n"
    },
    {
      "commit": "3752fc9e23789592e918c4e276fdb48ac608bc2d",
      "tree": "289812bc54a4489511fa092895b39f0c8024502c",
      "parents": [
        "25be4e0461229fcf206a75fa342e576ca9361e17",
        "75a92392218a12eaabd2187724f7175ef38d362b"
      ],
      "author": {
        "name": "Tarandeep Singh",
        "email": "tarandeep@google.com",
        "time": "Thu Jan 18 23:51:17 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 23:51:17 2018 +0000"
      },
      "message": "Merge \"Optimize calls to IME\u0027s onStartInput\""
    },
    {
      "commit": "6047bf4f0dcf64f5c7b23f7cfcf9236ce45361a7",
      "tree": "4c8096ff03ea825fcf591cc745a843c5ce102d97",
      "parents": [
        "db6b0fecb4765c2117f9d8b43e5941c0b8f183af",
        "afe65dc28a087cf3089593a8dd825136c9f37f9e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 23:34:00 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 23:34:00 2018 +0000"
      },
      "message": "Merge \"Implemented shell cmd to get field classification score.\""
    },
    {
      "commit": "db6b0fecb4765c2117f9d8b43e5941c0b8f183af",
      "tree": "17c1b7bfc225543a89edab0580457cd4d6f9ac5e",
      "parents": [
        "9e1afde8cd41fb27a613c980cf4e0031b6dda2cb",
        "bc055b0ef1c11337b8ec5f681097e7b51e84b9c4"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 23:33:44 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 23:33:44 2018 +0000"
      },
      "message": "Merge \"Moved Field Classification score logic to ExtServices.\""
    },
    {
      "commit": "5cc9f721ce36d278df4b0f3fe0a685ba221e9360",
      "tree": "26fc80021e7520436f3f060c69b9853d161f5041",
      "parents": [
        "8f09d6ee8fe335ff026d77ea7e61d8d02efb19af",
        "12391f22dfe4697d55555ba94d0c5c1155dd546e"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Jan 18 23:10:54 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 23:10:54 2018 +0000"
      },
      "message": "Merge \"Revert \"Add setting/experiment for small battery devices to have\"\""
    },
    {
      "commit": "8f09d6ee8fe335ff026d77ea7e61d8d02efb19af",
      "tree": "eed87625f5931ffcf4fb5c3132cf21a6bfdc029c",
      "parents": [
        "4604c4111400ae7247819cb5255d879eea831817",
        "070081bc4f3ed1863a917a5c2ce6aa8b813e7649"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 23:04:06 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 23:04:06 2018 +0000"
      },
      "message": "Merge \"Don\u0027t use transport binder with the lock held\""
    },
    {
      "commit": "31ccba1af0e2eb6ca280a3da12b3521f3353e599",
      "tree": "a40d91b1ac8fccfeb7147bafd247703f4496958b",
      "parents": [
        "af0c82ea1285678a41e480392278e51b4b2d3109"
      ],
      "author": {
        "name": "Bo Zhu",
        "email": "bozhu@google.com",
        "time": "Thu Jan 18 11:53:57 2018 -0800"
      },
      "committer": {
        "name": "Bo Zhu",
        "email": "bozhu@google.com",
        "time": "Thu Jan 18 14:32:36 2018 -0800"
      },
      "message": "Change packVaultParams to use the real vault_handle directly\n\nTest: adb shell am instrument -w -e package\ncom.android.server.locksettings.recoverablekeystore\ncom.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner\n\nChange-Id: I5ebe28fddba3d3939a105c696250f3ea68720822\n"
    },
    {
      "commit": "12391f22dfe4697d55555ba94d0c5c1155dd546e",
      "tree": "da8d018cb4706bdcb649b6f3371c6520429a7c87",
      "parents": [
        "9a60382be1d94e1143cdd16576db774126193798"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Jan 18 21:44:28 2018 +0000"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Thu Jan 18 22:05:40 2018 +0000"
      },
      "message": "Revert \"Add setting/experiment for small battery devices to have\"\n\nThis reverts commit 9a60382be1d94e1143cdd16576db774126193798.\n\nReason for revert: Broke battery saver\n\nBug: 72168928\nBug: 69259147\n\nChange-Id: I09664653686a51c297224c863c4fc6d1ff7e5caf\nTest: Manual test\nTest: atest CtsBatterySavingTestCases\n"
    },
    {
      "commit": "75a92392218a12eaabd2187724f7175ef38d362b",
      "tree": "651cc0e960752b09516ec86a634248f45a83f822",
      "parents": [
        "4c39196819106ffac6f9b0f8809ff71e8955181e"
      ],
      "author": {
        "name": "Tarandeep Singh",
        "email": "tarandeep@google.com",
        "time": "Fri Jan 12 14:58:59 2018 -0800"
      },
      "committer": {
        "name": "Tarandeep Singh",
        "email": "tarandeep@google.com",
        "time": "Thu Jan 18 21:35:39 2018 +0000"
      },
      "message": "Optimize calls to IME\u0027s onStartInput\n\nAs of today onStartInput is called for every window which gains focus. We\ncan significantly optimize this by restricting calls only to windows\nthat have a text editor. However, if input was already started based on\nwindow flags, behavior is unchanged.\n\nThis behavior is guarded by debug flag \"debug.optimize_startinput\" and\nis defaulted to true.\n\nBug: 37617707\nTest: atest CtsInputMethodTestCases\nTest: Verify following command reverts the behavior: adb root \u0026\u0026 adb\n      shell setprop debug.optimize_startinput false \u0026\u0026\n      adb shell cmd input_method refresh_debug_options\nChange-Id: Ibf9dab3d9c138b5f04e053d41ee4fd248c78e4da\n"
    },
    {
      "commit": "940ba0c8fe9f24e2696f4910262be098bb152fc1",
      "tree": "b87c1fc1d9bee58c3bfb98c71f7915ec576c68b8",
      "parents": [
        "af0c82ea1285678a41e480392278e51b4b2d3109",
        "b0d22627e9e11bd40d305742dd4d2fe77f179a22"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 21:10:18 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 21:10:18 2018 +0000"
      },
      "message": "Merge \"Rename CrossProfileApps API as per API council feedback\""
    },
    {
      "commit": "b0d22627e9e11bd40d305742dd4d2fe77f179a22",
      "tree": "1bf03709c64b4cc749185339edadfec642b884ea",
      "parents": [
        "e8ffec166131d27e47fbf21c9db9f6812051b15f"
      ],
      "author": {
        "name": "Tony Mak",
        "email": "tonymak@google.com",
        "time": "Thu Jan 18 12:49:49 2018 +0000"
      },
      "committer": {
        "name": "Tony Mak",
        "email": "tonymak@google.com",
        "time": "Thu Jan 18 21:07:50 2018 +0000"
      },
      "message": "Rename CrossProfileApps API as per API council feedback\n\nThree changes:\n1. android.content.pm.crossprofile - \u003e android.content.pm\n2. getProfileSwitchingIcon -\u003e getProfileSwitchingIconDrawable\n3. startMainActivity “user” parameter should be named “targetUser”\n\nTest: atest FrameworksServicesTests:com.android.server.pm.CrossProfileAppsServiceImplTest\nTest: atest frameworks/base/core/tests/coretests/src/android/content/pm/CrossProfileAppsTest.java\nTest: atest cts/hostsidetests/devicepolicy/src/com/android/cts/devicepolicy/CrossProfileAppsHostSideTest.java\n\nFIXES: 71818128\n\nChange-Id: Icf9a6d1f8b6808935ffd79b43185c7b12235f349\n"
    },
    {
      "commit": "6caf1d8c2a6439900e3a0441d8823868a0f0cb57",
      "tree": "bfcbf927b5e4316848025414a1178fad01bbff3b",
      "parents": [
        "14b93353937fa8caef731584e66703a75a0afa15"
      ],
      "author": {
        "name": "Garfield Tan",
        "email": "xutan@google.com",
        "time": "Thu Jan 18 12:37:50 2018 -0800"
      },
      "committer": {
        "name": "Garfield Tan",
        "email": "xutan@google.com",
        "time": "Thu Jan 18 12:51:06 2018 -0800"
      },
      "message": "Add factory for TaskPositioner.\n\nBug: 64149458\nTest: Unit test passes.\nChange-Id: I5bcc22f5e51080001c16479f5636a915d4a4309b\n"
    },
    {
      "commit": "af0c82ea1285678a41e480392278e51b4b2d3109",
      "tree": "a9bc72c837d4a162ecd15b7012f35210775ae09d",
      "parents": [
        "881a432d0802b67d4ea4fbf65b75bd2d0a066b09",
        "e8b052af0827a5d84b68f55f4b9f86e57e7ca70e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 20:36:41 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 20:36:41 2018 +0000"
      },
      "message": "Merge \"Fixes dock side when rotating to seascape after drag to split\""
    },
    {
      "commit": "11cc74913d7c5c06ae12ea232a53918c0959fc86",
      "tree": "3cad15d3f9dc6ab89d8b134fb5fe4c281f19b69f",
      "parents": [
        "f4bd556cea2019edb9deb7e2c3f9ee314baa4288"
      ],
      "author": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Wed Jan 17 08:48:27 2018 -0800"
      },
      "committer": {
        "name": "Wyatt Riley",
        "email": "wyattriley@google.com",
        "time": "Thu Jan 18 12:09:03 2018 -0800"
      },
      "message": "GnssMeasurementsListener - Fix indexing, add \u0026 remove\n\nSafer indexing open requests by IBinder instead of IInterface\nCovers GnssNavigationMessage as well.\nAlso dumping currently open GnssMeasurement \u0026 NavMsg requests\n\nBug: 71917458\nTest: Able to repro issue consistently before, fixed after\n logs look as expected as well, on Pixel 2\n\nChange-Id: I2e4722a23355295a5f597541f31a3b77534cadd7\n"
    },
    {
      "commit": "1ae3cf14c3b474ebe71db8c25e2e8e57bc69bd77",
      "tree": "aba4b84e0a2e6cede831545b36947f718d9c79b3",
      "parents": [
        "d5d154efcd058898ab0ce26838a1db11610d7a13",
        "74928a1dfb2b78fc77e229f5722a5a04cad5872c"
      ],
      "author": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Thu Jan 18 20:00:13 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 20:00:13 2018 +0000"
      },
      "message": "Merge \"Rename RecoveryManager to RecoveryController\""
    },
    {
      "commit": "d5d154efcd058898ab0ce26838a1db11610d7a13",
      "tree": "49ab1439f5d8d2badb2597554a8d5de373165080",
      "parents": [
        "3aa7e81d388cd0c61dc741558a069047821713b0",
        "3fc56c30000d9b88c2145d4297a97ec5061d60d1"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Jan 18 19:53:54 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 19:53:54 2018 +0000"
      },
      "message": "Merge \"Support installation of DexMetadata files (.dm)\""
    },
    {
      "commit": "823e0ede1897939e9adfdef6b334af2a63650498",
      "tree": "aa06cd8e7b1ca019c6e73fc203cb0f3f6952c6c3",
      "parents": [
        "8ed2c7f2674b83da26a7a6a7847d2edf43c53d1e",
        "53e66b2f2920272ce0c443107ba882993df0eb8a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 19:20:55 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 19:20:55 2018 +0000"
      },
      "message": "Merge \"Prevent getting from transit when interesting window is exiting\""
    },
    {
      "commit": "070081bc4f3ed1863a917a5c2ce6aa8b813e7649",
      "tree": "271080c5bcfa2b4b65cde21915cadfc9d26c56e1",
      "parents": [
        "e8ffec166131d27e47fbf21c9db9f6812051b15f"
      ],
      "author": {
        "name": "Bernardo Rufino",
        "email": "brufino@google.com",
        "time": "Thu Jan 18 15:10:41 2018 +0000"
      },
      "committer": {
        "name": "Bernardo Rufino",
        "email": "brufino@google.com",
        "time": "Thu Jan 18 19:20:49 2018 +0000"
      },
      "message": "Don\u0027t use transport binder with the lock held\n\nThere was a deadlock around the transport lock. We registered transports\nwith the transport lock held, this kicked-off transport onCreate()\nsynchronously, which called TransportManager\nupdateTransportAttributes(), which tried to acquire mentioned lock but\ncouldn\u0027t. This CL removes the lock for any call to the transport or\noperation that triggers a call to the transport (it was\nTransportClient.connect() or its variants).\n\nTest: Load GMSCore before fix, boot, register transports, check no ANR\nTest: m -j RunFrameworksServicesRoboTests\nTest: adb shell bmgr transport -c \u003ctransport\u003e, being registered \u0026 not\nBug: 72147303\nChange-Id: I72ca145d7fb73c0ef29c4aa1b620fea4969481db\n"
    },
    {
      "commit": "8ed2c7f2674b83da26a7a6a7847d2edf43c53d1e",
      "tree": "621c417d870ee895447781b675be8abd83b253de",
      "parents": [
        "3a7684ccf28febb3736cbb2b6f76db399f55ff59",
        "472f01cf348cdd3f2823f350ea6f110754fe6fa4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 19:10:28 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 19:10:28 2018 +0000"
      },
      "message": "Merge changes Iaeb8d9c2,Ifa83ce1d\n\n* changes:\n  Fix notification sorting.\n  Remove all caps style\n"
    },
    {
      "commit": "afe65dc28a087cf3089593a8dd825136c9f37f9e",
      "tree": "5d0e9000ce65422c1414c23f5b496d8f12e18b47",
      "parents": [
        "bc055b0ef1c11337b8ec5f681097e7b51e84b9c4"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Jan 17 15:12:17 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 10:48:17 2018 -0800"
      },
      "message": "Implemented shell cmd to get field classification score.\n\nBug: 70939974\nTest: adb shell cmd autofill get fc_score half kale\n\nChange-Id: Idd5d79500e915f61920865f7b721eddfb580d319\n"
    },
    {
      "commit": "5170831d926dacf5e4474786b824e749c2fd5857",
      "tree": "a180d6fdb98af092b25e88f0415d8b29fc6b653e",
      "parents": [
        "67f1fc030801486f3601264fd119c8b9a22e3bdb",
        "74479bd07468caedf9e1e85ab50881858a870867"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 18:42:18 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 18:42:18 2018 +0000"
      },
      "message": "Merge \"Dump state of GnssMeasurement \u0026 NavMsg requests\""
    },
    {
      "commit": "bc055b0ef1c11337b8ec5f681097e7b51e84b9c4",
      "tree": "bc2348a03853306ec0d4b1358f188d843d0385c1",
      "parents": [
        "d67e50eb805239fddedd5bbb5d21b8f78aba26e5"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Jan 05 17:04:10 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 10:40:30 2018 -0800"
      },
      "message": "Moved Field Classification score logic to ExtServices.\n\nBug: 70939974\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest \\\n            CtsAutoFillServiceTestCases:UserDataTest\nTest: atest CtsAutoFillServiceTestCases\n\nChange-Id: I75fd59b5d7530fcd7095b26f6e592d7459c7d235\n"
    },
    {
      "commit": "4a022b84073afe843eb8b4430d7e21ca3faa9ee3",
      "tree": "b9758ba42245845a6a71353b73ac7a49460b4505",
      "parents": [
        "fca6426381001eee846d5cd522e164a24214a3ed",
        "62995efee31a264e115719bae6827ebb48a3828c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 18:27:19 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 18:27:19 2018 +0000"
      },
      "message": "Merge \"Check if UserState is null in stopGuestOrEphemeralUserIfBackground\""
    },
    {
      "commit": "0c10e4b7f422c10b0fa6afaab0ddb0c7f40b85b5",
      "tree": "cbc97f131b6476c421dca986b205b860b62db19c",
      "parents": [
        "5961fad05e7e4e3e82e5a43f07f7f81a1d882f87",
        "898ec3856a31c003de517e3e8f9fc5b4bf2203f3"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 18:21:25 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 18:21:25 2018 +0000"
      },
      "message": "Merge \"DisplayCutout: Actually reload displays when resource overlays change\""
    },
    {
      "commit": "74928a1dfb2b78fc77e229f5722a5a04cad5872c",
      "tree": "3b456dece95d8d656927ad7c28e573db54c0d265",
      "parents": [
        "6ccd91cec37b04ad7d5ba1f345a616d9b3bc9b27"
      ],
      "author": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Thu Jan 18 17:49:07 2018 +0000"
      },
      "committer": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Thu Jan 18 18:00:10 2018 +0000"
      },
      "message": "Rename RecoveryManager to RecoveryController\n\nThis fixes the linting error that happens when we attempt to make this a\n@SystemApi.\n\nTest: adb shell am instrument -w -e package\ncom.android.server.locksettings.recoverablekeystore\ncom.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner\n\nChange-Id: Ib9eea030874608d73ceeff21ee8d7e9d5a75bce8\n"
    },
    {
      "commit": "e9b8e09f033928afae957c9d153e4c1dbfc0a850",
      "tree": "ab2c5e8b21ecf080313e5dd6af95a36759b93081",
      "parents": [
        "6ccd91cec37b04ad7d5ba1f345a616d9b3bc9b27",
        "43643aeed151da5c92817298a04b2b32c3aba338"
      ],
      "author": {
        "name": "Andrew Sapperstein",
        "email": "asapperstein@google.com",
        "time": "Thu Jan 18 17:49:33 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 17:49:33 2018 +0000"
      },
      "message": "Merge \"Ignore first crash dialog.\""
    },
    {
      "commit": "6ccd91cec37b04ad7d5ba1f345a616d9b3bc9b27",
      "tree": "2c776666892911c1ba3f5b2e03baddad06f9c337",
      "parents": [
        "1d2ddf8edefa1c4a19804085d6d62fabfab53aa8",
        "2bcdad95330c75e3122d0736f1a40acd521dc243"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 17:44:37 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 17:44:37 2018 +0000"
      },
      "message": "Merge \"Use RecoverySession object to hide session IDs (redux)\""
    },
    {
      "commit": "4212de2e74067ad21a6de75b059c5d3e399d2e6f",
      "tree": "2ea50c987f730e36bd3d2290649693b7075e9a50",
      "parents": [
        "5123afc0fd4ad70741eaae18a1e94acb9d457793",
        "c12189b24c7be9b9609062b3dba070b08b6f0335"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 16:50:31 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 16:50:31 2018 +0000"
      },
      "message": "Merge \"Add adb command to get max running users\""
    },
    {
      "commit": "62995efee31a264e115719bae6827ebb48a3828c",
      "tree": "a91b5bde20c60378a0e40f62f2a30c55917e1242",
      "parents": [
        "5123afc0fd4ad70741eaae18a1e94acb9d457793"
      ],
      "author": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Thu Jan 18 16:07:36 2018 +0000"
      },
      "committer": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Thu Jan 18 16:42:50 2018 +0000"
      },
      "message": "Check if UserState is null in stopGuestOrEphemeralUserIfBackground\n\n- UserState may be removed from mStartedUsers if it has already been stopped\n\nBug: 72133858\nTest: Manually create secondary user, and exit the user in SetupWizard\nChange-Id: I92783f89a9d4de9a7eca81e688b4e115c2f5535a\n"
    },
    {
      "commit": "898ec3856a31c003de517e3e8f9fc5b4bf2203f3",
      "tree": "10b5e4980e29792f1d7578fa99cfebfc50a6d17f",
      "parents": [
        "e1d68cda9dde91f73c1c93ea8376fd2e14fbd5d7"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Wed Jan 17 12:54:50 2018 +0100"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Thu Jan 18 16:17:19 2018 +0000"
      },
      "message": "DisplayCutout: Actually reload displays when resource overlays change\n\nThis allows the DisplayManager to pick up changes to the\nDisplayCutout resource, which is used to implement emulation\nof the overlay.\n\nBug: 65689439\nTest: adb shell overlay enable ...; verify cutout is picked up immediately and not only after toggling the display\nChange-Id: I22c32802859d7c8cc373cbb8f17e41cdaf84c844\n"
    },
    {
      "commit": "9292ee75ad606dd2e48b50b651dc0e1a7c5cf5cd",
      "tree": "b661095f91edabb1e070040e2bba531b462bfb29",
      "parents": [
        "e6c2b50229bb370b57fd769c28496c550c50c499",
        "86dde2bd49b8e36b8b8f135c2cffdee00999eeab"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 16:02:32 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 16:02:32 2018 +0000"
      },
      "message": "Merge \"Fix NPE in ActivityStack.ensureActivitiesVisibleLocked\""
    },
    {
      "commit": "0e4bc3f2ba09740060f8dd904badd161bb6c50d5",
      "tree": "17434d841bde0b220d99fc5aa92b88124aaff732",
      "parents": [
        "f406490326f930cfbfe76bb26553e3bcf401240f",
        "05ce809b82b3846516560b0232691d08389898f2"
      ],
      "author": {
        "name": "Kenny Guy",
        "email": "kennyguy@google.com",
        "time": "Thu Jan 18 15:18:08 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 15:18:08 2018 +0000"
      },
      "message": "Merge \"Add more brightness config details to dumpsys\""
    },
    {
      "commit": "c12189b24c7be9b9609062b3dba070b08b6f0335",
      "tree": "e73635252c36b600115e2895d67173cfc1d4d3ec",
      "parents": [
        "588a06f5a25adad63337ac481f9e1b55dcc169a1"
      ],
      "author": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Tue Jan 16 15:01:15 2018 +0000"
      },
      "committer": {
        "name": "Alex Chau",
        "email": "alexchau@google.com",
        "time": "Thu Jan 18 15:17:22 2018 +0000"
      },
      "message": "Add adb command to get max running users\n\nBug: 72033601\nTest: New command is working\nChange-Id: I38746a2c03a6da35e7d8a149e1fb0b3604234dbc\n"
    },
    {
      "commit": "f406490326f930cfbfe76bb26553e3bcf401240f",
      "tree": "8ca7ba899bd6c23062ed11068fa5120c90ad3615",
      "parents": [
        "e8ffec166131d27e47fbf21c9db9f6812051b15f",
        "f3252be2e791ead3c419da5ec9b7239612c93dc3"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 15:13:19 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 15:13:19 2018 +0000"
      },
      "message": "Merge \"Priority only DND updates\""
    },
    {
      "commit": "2bcdad95330c75e3122d0736f1a40acd521dc243",
      "tree": "9d714f11916da061cf9343f5392e8f5f1bf907d0",
      "parents": [
        "e8ffec166131d27e47fbf21c9db9f6812051b15f"
      ],
      "author": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Thu Jan 18 12:53:29 2018 +0000"
      },
      "committer": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Thu Jan 18 14:36:32 2018 +0000"
      },
      "message": "Use RecoverySession object to hide session IDs (redux)\n\nSession IDs are an implementation detail that the framework can (and should)\nabstract away. This was previously reverted due to breaking master.\n\nTest: adb shell am instrument -w -e package\ncom.android.server.locksettings.recoverablekeystore\ncom.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner\n\nChange-Id: I4427c818348c054ada39d799b6da3b739f27eba9\n"
    },
    {
      "commit": "472f01cf348cdd3f2823f350ea6f110754fe6fa4",
      "tree": "fdaa65cc00269d98165a0ed0d63457767907ec1f",
      "parents": [
        "9c27f20b96f49fadbad919777427cce0dd8496fb"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Thu Jan 18 09:25:44 2018 -0500"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Thu Jan 18 09:25:44 2018 -0500"
      },
      "message": "Fix notification sorting.\n\nCalls are now appropriately sorted.\n\nTest: runtest systemui-notification\nChange-Id: Iaeb8d9c2d58c0bfdf3fdeaa9fe7be86f9ab05189\nFixes: 72145403\n"
    },
    {
      "commit": "86dde2bd49b8e36b8b8f135c2cffdee00999eeab",
      "tree": "13e7e454ec65d74dfa478e3b5075bd9bda7602da",
      "parents": [
        "588a06f5a25adad63337ac481f9e1b55dcc169a1"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Thu Jan 18 06:15:45 2018 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Thu Jan 18 06:15:45 2018 -0800"
      },
      "message": "Fix NPE in ActivityStack.ensureActivitiesVisibleLocked\n\nFollow-up to ag/3345710 where we add call to the display object.\nIt is possible for ensureActivitiesVisibleLocked to be called\nwhen the stack has been removed from the display and no longer\nhas any tasks. So, we need to check if the stack is attached to\nthe display before trying to access it.\n\nChange-Id: I9d7c3d00c1af1813b2c408339188fcef2c1a1a6f\nFixes: 72107481\nTest: manual\n"
    },
    {
      "commit": "588a06f5a25adad63337ac481f9e1b55dcc169a1",
      "tree": "1732980386d7227461b66318e58c2f71d9de65e8",
      "parents": [
        "20f29fdaca3d94f689ac034bd7a78b68f7de05a5",
        "9fa87627eda1028723b0df5dc6f1a359ac4b99df"
      ],
      "author": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Thu Jan 18 12:24:06 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 12:24:06 2018 +0000"
      },
      "message": "Merge \"Revert \"Use RecoverySession object to hide session IDs\"\""
    },
    {
      "commit": "9fa87627eda1028723b0df5dc6f1a359ac4b99df",
      "tree": "c6e7fa799dcb6f6241a8ae4cbb6bd2c075b68967",
      "parents": [
        "988c55ce67459553bad517426a924d06a89b059f"
      ],
      "author": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Thu Jan 18 12:22:38 2018 +0000"
      },
      "committer": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Thu Jan 18 12:23:33 2018 +0000"
      },
      "message": "Revert \"Use RecoverySession object to hide session IDs\"\n\nThis reverts commit 988c55ce67459553bad517426a924d06a89b059f.\n\nReason for revert: broke some tests\n\nChange-Id: Ib43099aebc8ff025e052337475bab13445da74eb\n"
    },
    {
      "commit": "c07dd18a3ebbceb6bf6277275d504fe38bdabaac",
      "tree": "d1e38bfc0364de4f484750d6a9fbda9ad0876271",
      "parents": [
        "f99922405d2bdc8e233f9ea7cdf1b2e0db91f004",
        "4ff2b3fd83514807607231303ea0bb2c73c0fc5c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 11:08:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 11:08:26 2018 +0000"
      },
      "message": "Merge \"Update the VaultParams encoding to reflect the recent change in the format of vault_handle\""
    },
    {
      "commit": "99b4c836e2443d1f32fa93fde04847ddd88fc9df",
      "tree": "6023daa31295c80a89857d983b2c3d84770464b4",
      "parents": [
        "c9e76ed0a16815c78d290399d0b3d90c0f592a6a",
        "998fb4e80e2edad9baf5c07432442b6418e2674c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 10:46:32 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 10:46:32 2018 +0000"
      },
      "message": "Merge \"Make sure to mutex around job-set iteration\""
    },
    {
      "commit": "c4e99794e9d9b160889ebf1defa1c603a3b94d22",
      "tree": "eef96ea85a78ea694d79f3b11eb0769069a9982e",
      "parents": [
        "799438229a753bd7d1e5769119850775215c011e",
        "988c55ce67459553bad517426a924d06a89b059f"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 10:40:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 10:40:24 2018 +0000"
      },
      "message": "Merge \"Use RecoverySession object to hide session IDs\""
    },
    {
      "commit": "799438229a753bd7d1e5769119850775215c011e",
      "tree": "a5177c8c08c9d66fb8e318a26ddc9f5ac2c5bf8e",
      "parents": [
        "92fd93cb7c468f517c620864b064392efae2675a",
        "2ab9c4c95362e4c7860a71983226504ee6c2bf37"
      ],
      "author": {
        "name": "Annie Meng",
        "email": "anniemeng@google.com",
        "time": "Thu Jan 18 10:34:07 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 10:34:07 2018 +0000"
      },
      "message": "Merge \"Rename Robo tests to BackupManagerServiceTest\""
    },
    {
      "commit": "988c55ce67459553bad517426a924d06a89b059f",
      "tree": "67eb46d80c5bc0c7500d990353656db4a833c82b",
      "parents": [
        "1fc49dc6173cb9834fa41d03484352bc6ab59527"
      ],
      "author": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Wed Jan 17 14:16:39 2018 +0000"
      },
      "committer": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Thu Jan 18 08:25:26 2018 +0000"
      },
      "message": "Use RecoverySession object to hide session IDs\n\nSession IDs are an implementation detail that the framework can (and should)\nabstract away.\n\nTest: adb shell am instrument -w -e package\ncom.android.server.locksettings.recoverablekeystore\ncom.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner\n\nChange-Id: Ieba641a9b54ac9bba197a6e9749b621a07e40c67\n"
    },
    {
      "commit": "9e1bd362df96daeda3cce5f536e57479f7ea6105",
      "tree": "faf22b415f48449417ff52a8c57a0266f10cd91f",
      "parents": [
        "1fc49dc6173cb9834fa41d03484352bc6ab59527"
      ],
      "author": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Wed Jan 17 23:28:45 2018 +0000"
      },
      "committer": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Thu Jan 18 08:21:43 2018 +0000"
      },
      "message": "Rename KeychainProtectionParameter to KeychainProtectionParams\n\nTest: adb shell am instrument -w -e package\ncom.android.server.locksettings.recoverablekeystore\ncom.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner\nChange-Id: Iab6d85d0be38e1a09ce78bb96b8f68493de65be9\n"
    },
    {
      "commit": "4ff2b3fd83514807607231303ea0bb2c73c0fc5c",
      "tree": "ffa0b6ec535c22e208598895c4ffc6f46607b673",
      "parents": [
        "1fc49dc6173cb9834fa41d03484352bc6ab59527"
      ],
      "author": {
        "name": "Bo Zhu",
        "email": "bozhu@google.com",
        "time": "Wed Jan 17 17:34:26 2018 -0800"
      },
      "committer": {
        "name": "Bo Zhu",
        "email": "bozhu@google.com",
        "time": "Thu Jan 18 08:07:13 2018 +0000"
      },
      "message": "Update the VaultParams encoding to reflect the recent change in the\nformat of vault_handle\n\nTest: adb shell am instrument -w -e package\ncom.android.server.locksettings.recoverablekeystore\ncom.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner\n\nChange-Id: I105d17ac87b70795fa977b7649c7a1fdcb97b5e9\n"
    },
    {
      "commit": "8ec0201e8f03808bee22560343c768d38bd1f50f",
      "tree": "a64ddf5c9bb650dd1251f16725b522586370cd29",
      "parents": [
        "43ecf94a1d66338348fec02a39a029eec6cf8301",
        "1ed2bee762f5eb8c9d157d657104211dca2d2890"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 18 04:20:44 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 18 04:20:44 2018 +0000"
      },
      "message": "Merge \"Add \"not congested\" network capability.\" am: ffaddf73de am: abb158f712\nam: 1ed2bee762\n\nChange-Id: I836fedeab34f34a43e0257e395fca1f735bc6d61\n"
    },
    {
      "commit": "43ecf94a1d66338348fec02a39a029eec6cf8301",
      "tree": "9688d88b8ee3dff3841e2dc98f801b6454d87c44",
      "parents": [
        "36ec567b4a77efe9f104cd7dcd4c4a7f32b265e8",
        "0b250b61329f09d0e9e175cf12de61377f253c07"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Jan 18 04:10:12 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 18 04:10:12 2018 +0000"
      },
      "message": "Merge \"Add basic resolution of Private DNS hostname\" am: a3bf36f050 am: 4218c522a7\nam: 0b250b6132\n\nChange-Id: Iacdad88b49aff3e34afc93acfb8d3eeca9745c43\n"
    },
    {
      "commit": "1ed2bee762f5eb8c9d157d657104211dca2d2890",
      "tree": "746b58d21a962fca2d776033042c00f81ce02098",
      "parents": [
        "0b250b61329f09d0e9e175cf12de61377f253c07",
        "abb158f71220709e1f6eb0bfa3225165bc46bd3f"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 18 04:10:00 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 18 04:10:00 2018 +0000"
      },
      "message": "Merge \"Add \"not congested\" network capability.\" am: ffaddf73de\nam: abb158f712\n\nChange-Id: I2c7276bd657f5805c0b6492a216435270023a3c6\n"
    },
    {
      "commit": "0b250b61329f09d0e9e175cf12de61377f253c07",
      "tree": "604cf91710be07dd5c0e6cce2ca074da9221c99a",
      "parents": [
        "7b212d3562af969fd18c158bd76b0a83ef044f0c",
        "4218c522a751e390e6f382e78539017a1c1beb77"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Jan 18 04:02:46 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 18 04:02:46 2018 +0000"
      },
      "message": "Merge \"Add basic resolution of Private DNS hostname\" am: a3bf36f050\nam: 4218c522a7\n\nChange-Id: Ifc776c67025925fbeb2c13038ae78061c32567f5\n"
    },
    {
      "commit": "abb158f71220709e1f6eb0bfa3225165bc46bd3f",
      "tree": "b10a8188c0745859bd9d15d56b389c6ab9f59c76",
      "parents": [
        "4218c522a751e390e6f382e78539017a1c1beb77",
        "ffaddf73debe46dc49ced980423cc443d4f1a76f"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 18 03:58:13 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 18 03:58:13 2018 +0000"
      },
      "message": "Merge \"Add \"not congested\" network capability.\"\nam: ffaddf73de\n\nChange-Id: I02ea25610df63b40547c3114c0f9a9ef59560e90\n"
    },
    {
      "commit": "4218c522a751e390e6f382e78539017a1c1beb77",
      "tree": "b4058c4c39ec8020a5b5654d23aea3471d6e2846",
      "parents": [
        "f193c6d37d893d698596490526f1d063714608b3",
        "a3bf36f05009a5b809eb4dc04185c0fba4dddaca"
      ],
      "author": {
        "name": "Erik Kline",
        "email": "ek@google.com",
        "time": "Thu Jan 18 03:54:50 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 18 03:54:50 2018 +0000"
      },
      "message": "Merge \"Add basic resolution of Private DNS hostname\"\nam: a3bf36f050\n\nChange-Id: I9ce3476d80b05c140a02aaf1c21d4da2a68a8909\n"
    },
    {
      "commit": "ffaddf73debe46dc49ced980423cc443d4f1a76f",
      "tree": "e5057724ca3187c82924fb28527622e907b3c436",
      "parents": [
        "a3bf36f05009a5b809eb4dc04185c0fba4dddaca",
        "9b2a10f55d1659895e20ec0b88dd023ae18770eb"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 18 03:28:34 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 18 03:28:34 2018 +0000"
      },
      "message": "Merge \"Add \"not congested\" network capability.\""
    },
    {
      "commit": "d01ec8fe242191843bf4a657b6d18129db7cd19d",
      "tree": "6ecfb33dff7ddf5b5eee03dd66dd129294b722e8",
      "parents": [
        "c2393e12b78efdff514d82ae64072ccb2d598328",
        "3e20a105b2ed4c27f9f552c328a73d78ab5017bd"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 02:50:48 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 02:50:48 2018 +0000"
      },
      "message": "Merge \"Add recent disk write speed metrics to Disk Stats\""
    },
    {
      "commit": "a3bf36f05009a5b809eb4dc04185c0fba4dddaca",
      "tree": "9ad3a3b2b501f09e2dafa892540b7faba4a6d382",
      "parents": [
        "aacb56a7c0626f72e3badecf6d38c9740b22207f",
        "a24d459a5d60c706472f9b620d079cd0a40a7279"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 02:44:53 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 18 02:44:53 2018 +0000"
      },
      "message": "Merge \"Add basic resolution of Private DNS hostname\""
    },
    {
      "commit": "4dc78301e78b1f41fb915ee5490f29c5dec4a69c",
      "tree": "21e5568b09e0500f0f25ba985d85c75a1b573812",
      "parents": [
        "7289feef1117fe60d114c5b18eab91467fcb0e83",
        "a16cd59a3438383fb3473af4903b9ada596e5cb0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 01:25:58 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 01:25:58 2018 +0000"
      },
      "message": "Merge \"Create exception hierarchy for RecoveryController\""
    },
    {
      "commit": "7289feef1117fe60d114c5b18eab91467fcb0e83",
      "tree": "0af21e7e4e6ff65886f708d40ab78d967034249a",
      "parents": [
        "15382c6d99dd1df9d9180ec68416c68818b27e0b",
        "1d3b23cb9bf809383c784ccbdf7a086bffa5e5ec"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 01:25:22 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 01:25:22 2018 +0000"
      },
      "message": "Merge \"Implements toString in NanoAppMessage/ContextHubMessage\""
    },
    {
      "commit": "4b6599e494e90904cdbae03bb9cabfcaf2d06de0",
      "tree": "7c57de2768dec18ab7223532f2970387f854914e",
      "parents": [
        "3fb6ea960f2cfd859c0c8207e5e5a470cb512a28"
      ],
      "author": {
        "name": "Andrii Kulian",
        "email": "akulian@google.com",
        "time": "Mon Jan 15 17:24:08 2018 -0800"
      },
      "committer": {
        "name": "Andrii Kulian",
        "email": "akulian@google.com",
        "time": "Wed Jan 17 17:06:34 2018 -0800"
      },
      "message": "Set ActivityView\u0027s rect as tap exclude region\n\nTrack bounds of an ActivityView and set them as a tap exclude region,\nso that taps on this area won\u0027t cause a focus switch between\nhosting activity and activities inside of ActivityView.\n\nBug: 63902362\nTest: Manual with ActivityView test app\nChange-Id: I3cdafe32e0bdf414507fef0d622d9c140eee3188\n"
    },
    {
      "commit": "1f2acb9a163b3bc5164e042f233091060fcc7419",
      "tree": "dcb53225290a2a05f9c8cc91c2ede48bd259d50f",
      "parents": [
        "d4356fdf4b3e2005e5e69124a5fdd5724a348619",
        "f84e2f60fec6f6d2ecfb3b90ddf075101f4b902f"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Jan 18 00:17:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 00:17:26 2018 +0000"
      },
      "message": "Merge \"Add ability to register remote animation definitions per activity\""
    },
    {
      "commit": "d4356fdf4b3e2005e5e69124a5fdd5724a348619",
      "tree": "0aa30aa70ed91ed9aa5989fdae57fb99b7d80f36",
      "parents": [
        "ed87e5363ce7dc6771c4fb09dbde97d95b8a4cde",
        "67decfa7f80c06f3405d1e868bc40cb18dd1460a"
      ],
      "author": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Thu Jan 18 00:14:36 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 00:14:36 2018 +0000"
      },
      "message": "Merge \"autofill: support dpad/keyboard\""
    },
    {
      "commit": "ed87e5363ce7dc6771c4fb09dbde97d95b8a4cde",
      "tree": "c3a180acf26223da4290a9171988d0dbd15076f7",
      "parents": [
        "1721004ec9287952803c22f16b70bce1e03ca044",
        "039d914a26e0a2dc7d2278d73aa4df0b100c7bab"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jan 18 00:12:12 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 18 00:12:12 2018 +0000"
      },
      "message": "Merge \"Watchdog: add media.metrics\" am: 6cb33a1b54 am: 701c4cd1cc\nam: 039d914a26\n\nChange-Id: Icd718c2eb9b33382f73309738d65a24bb9f92b0b\n"
    },
    {
      "commit": "039d914a26e0a2dc7d2278d73aa4df0b100c7bab",
      "tree": "135a79a48f016ee2566c651fc8168e5241209f34",
      "parents": [
        "56a8d9ad4fdfbe018684c1d7679e0efbfa003256",
        "701c4cd1cc2d8ee619d1b0baadbfbe31b5d45cbd"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Jan 18 00:02:14 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 18 00:02:14 2018 +0000"
      },
      "message": "Merge \"Watchdog: add media.metrics\" am: 6cb33a1b54\nam: 701c4cd1cc\n\nChange-Id: If5fb8cfe18e7fad089b5aec8e3168dab940826ec\n"
    },
    {
      "commit": "1721004ec9287952803c22f16b70bce1e03ca044",
      "tree": "96a2294dec702bf606d91bcf0a44c84b11b41b79",
      "parents": [
        "af7b167f751f99ab583c0aa24d4ef9b8dfda4b6e",
        "93ae42b04debca35cdc23feef0cf54c9e6ca4400"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 17 23:55:47 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 23:55:47 2018 +0000"
      },
      "message": "Merge \"Customize user switch dialog\""
    },
    {
      "commit": "701c4cd1cc2d8ee619d1b0baadbfbe31b5d45cbd",
      "tree": "19f984fd319a34ca6d5dd1f10ec2feef56cc199b",
      "parents": [
        "f09db036e59ca513748eb82426c0a50833a3475e",
        "6cb33a1b5479e7903d0a90da91344c1005effe46"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jan 17 23:55:25 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 17 23:55:25 2018 +0000"
      },
      "message": "Merge \"Watchdog: add media.metrics\"\nam: 6cb33a1b54\n\nChange-Id: I24992a0a7e4e4a67fba1c5202fc4e741a3952794\n"
    },
    {
      "commit": "43643aeed151da5c92817298a04b2b32c3aba338",
      "tree": "edf6cee4e2acc073ef0d2b8b7156960f5f8690fa",
      "parents": [
        "6ca845ae0bf9ecd15ef5dc92a87fb8a99af18449"
      ],
      "author": {
        "name": "Andrew Sapperstein",
        "email": "asapperstein@google.com",
        "time": "Wed Dec 20 15:17:33 2017 -0800"
      },
      "committer": {
        "name": "Andrew Sapperstein",
        "email": "asapperstein@google.com",
        "time": "Wed Jan 17 15:44:33 2018 -0800"
      },
      "message": "Ignore first crash dialog.\n\nBy default, no longer show the crash dialog the first time an app\ncrashes. Instead, only multiple crashes will show by default.\n\nAdd Settings.Global and Settings.Secure flags to toggle this behavior.\nSettings.Secure value is controlled via a setting in developer options.\n\nEnsure Settings.Secure is backed up but Global value is not.\n\nBug: 63703353, 70640329\nTest: SettingsBackupTest, manual crashing with a test app\n\nChange-Id: Ib0a66cabdf60aad5e60eded9bfb96e3126bf032f\n"
    },
    {
      "commit": "c87b54a5f8689780c24a18ce37268945ccfbcf99",
      "tree": "df748ed45513aadde257e3ffda5f9d85b61272b5",
      "parents": [
        "8127c023b95be3f87e1747ba987dc9e942dba259",
        "71755c95b620108ab75dd4fd11de528c0c97970c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 17 23:07:41 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 23:07:41 2018 +0000"
      },
      "message": "Merge \"Use \"except-idle\" whitelist for force-app-standby\""
    },
    {
      "commit": "1d3b23cb9bf809383c784ccbdf7a086bffa5e5ec",
      "tree": "3aae790b874a3041e54eecd972aa1d3a9773cee8",
      "parents": [
        "bd56951c5bce2b3b799de1e306275120cf336763"
      ],
      "author": {
        "name": "Arthur Ishiguro",
        "email": "arthuri@google.com",
        "time": "Fri Jan 05 16:05:25 2018 -0800"
      },
      "committer": {
        "name": "Arthur Ishiguro",
        "email": "arthuri@google.com",
        "time": "Wed Jan 17 15:03:29 2018 -0800"
      },
      "message": "Implements toString in NanoAppMessage/ContextHubMessage\n\nBug: 31069172\nTest: Compile only\nChange-Id: I1b59bcd0ff75d3824a136b903e5db0c15b55ccf5\n"
    },
    {
      "commit": "998fb4e80e2edad9baf5c07432442b6418e2674c",
      "tree": "93eb6a3ef0c12e0a785a62429ff35f4e5789e15c",
      "parents": [
        "182b3f994b0849ca590d75d03a24361ede89ba0c"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jan 17 14:40:38 2018 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jan 17 15:02:21 2018 -0800"
      },
      "message": "Make sure to mutex around job-set iteration\n\nIf something mucks with the job set while we\u0027re iterating through\nit, we\u0027re going to have a bad day.\n\nChange-Id: I2e5603f4dd025b2e1819c7e84d59882bad98ae7a\nFixes: 72105511\nTest: atest CtsJobSchedulerTestCases\nTest: atest FrameworksServicesTests:com.android.server.job.BackgroundRestrictionsTest\n"
    },
    {
      "commit": "8127c023b95be3f87e1747ba987dc9e942dba259",
      "tree": "88a0193df2dfb1247e0f8b63c72219cd545fe69a",
      "parents": [
        "27277a795f5d539057835833681299ae53aa32b9",
        "d1cf49904ba79c70446f27b51e3d736bb1324009"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 17 22:47:44 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 22:47:44 2018 +0000"
      },
      "message": "Merge \"pm: Verify shared-user priv-app install location\""
    },
    {
      "commit": "67decfa7f80c06f3405d1e868bc40cb18dd1460a",
      "tree": "7d25219ffc5201a1a7e778ddd74ad1b9ca7a9be1",
      "parents": [
        "66af0e8295812ed4f01ca3b61c502ddde5e5f8f9"
      ],
      "author": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Wed Dec 27 11:48:08 2017 -0800"
      },
      "committer": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Wed Jan 17 14:42:16 2018 -0800"
      },
      "message": "autofill: support dpad/keyboard\n\nTo make autofill works on non-touch device such as TV, allow\nfill ui window to gain window focus. Fill ui window does not\nneed IME. When IME and fill ui window are both shown, fill ui\nwindow will intercept keyevent before IME.\n\nSince autofill window will steal window focus from app window,\nwe no longer uses View.onWindowFocused() for enter/exit event.\nSwitched to use Activity onResume/onPause. When view\nnotifyViewEntered or notifyViewExited called when Activity is paused,\nit will be ignored. Before Activity goes to pause state,\nnotifyViewExited() is fired on focus view, after Activity leaves\npause state, notifyViewEntered() is fired on focus view.\n\nIn CTS testDatasetAuthTwoFieldsUserCancelsFirstAttempt,  the\nauthentication activity finishes itself in onCreate() which will not\nproduce onPause/onResume in app activity, but it will produce window\nfocus loss/gain event. Since we switch from window focus to activity\nonResume/onPause, we will be missing a show fill ui when return from\nthe never shown authentication activity. To solve this problem,\nwe added special code when receive ActivityResult from authentication\nactivity where we check if the authenticate activity never causes\nonStop event, where we should issue an extra ACTION_VIEW_ENTERED\nevent to show fill ui.\n\nTest: passed all existing autofilltest CTS on sailfish\n      atest CtsAutoFillServiceTestCases\nBug: 70181616\n\nChange-Id: Iafe4dca3be8f049fa6dfd34bac13ccb030c583b6\n"
    },
    {
      "commit": "53e66b2f2920272ce0c443107ba882993df0eb8a",
      "tree": "68ebc4aa0361bcc5dd93abed9097e8c9c1657f60",
      "parents": [
        "e2861da8ef0eba65c1bb9d5f67380884e2ead939"
      ],
      "author": {
        "name": "Matthew Ng",
        "email": "ngmatthew@google.com",
        "time": "Fri Jan 12 17:13:13 2018 -0800"
      },
      "committer": {
        "name": "Matthew Ng",
        "email": "ngmatthew@google.com",
        "time": "Wed Jan 17 14:39:18 2018 -0800"
      },
      "message": "Prevent getting from transit when interesting window is exiting\n\nAppWindowToken determines when alldrawn state is done to then choose the\ntransit animation depending on if the next window has a wallpaper or\nnot. In terms of launcher, it has -1 window without a wallpaper while\nthe main window has a wallpaper. Meaning that sometimes quickly going\nhome, services thinks the main window of launcher is exiting and so it\nis not considered interesting but the -1 window is drawn and interesting.\nThen the system thinks going to launcher has no wallpaper and chooses the\nwrong animation.\n\nTo fix this issue, assume that if there is a base window (not splash or\nstarting window) then there is always an interesting window. All the\nother windows can enumerate the interesting count until all the windows\nincluding the main window is drawn and ready. This will allow launcher\nto wait for the main window to exit and complete drawing before choosing\nthe next transit animation.\n\nTest: manual - see bugs below\nChange-Id: I4839a6f706fa43d295524a5e252a62e8babd1e7d\nFixes: 65304663\nFixes: 65559439\n"
    },
    {
      "commit": "6cb33a1b5479e7903d0a90da91344c1005effe46",
      "tree": "bc5b93b7e1818455a2864220cb13e108fe7125d0",
      "parents": [
        "0797f4be5846894fe08b6661f277e3f6ad0fbc1a",
        "b1c4c93a9ba0878e810b1f9fd65c419246f4f990"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jan 17 22:33:53 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 17 22:33:53 2018 +0000"
      },
      "message": "Merge \"Watchdog: add media.metrics\""
    },
    {
      "commit": "f9b7201a6358cd55c7df9149ea46e0f05dbe409d",
      "tree": "90ecd53e01a890a1b29b9201120de490fac2bbf0",
      "parents": [
        "21acc10b28a39892d49940e2d8d3331e1e7f67fd",
        "d946f86f124fca87c757100e49ba7d5b206c8a44"
      ],
      "author": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Wed Jan 17 22:03:04 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 22:03:04 2018 +0000"
      },
      "message": "Merge \"Add more logging to Activity Lifecycler.\""
    },
    {
      "commit": "21acc10b28a39892d49940e2d8d3331e1e7f67fd",
      "tree": "72d37de0ceec960005703f17f29537c97be3f82e",
      "parents": [
        "a06be3277a39dd0a6feaebe5cd2f170a59ea800a",
        "9ec040771540a731da7f6260097253c4dd463137"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 17 21:55:29 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 21:55:29 2018 +0000"
      },
      "message": "Merge \"Move BackupManagerServiceTest to Robolectric framework\""
    },
    {
      "commit": "a16cd59a3438383fb3473af4903b9ada596e5cb0",
      "tree": "790796023c58ca624c9b67de631b4f945c9e8497",
      "parents": [
        "b1a00d5e16fd1b5ebb39e0d462c5216bc453e701"
      ],
      "author": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Wed Jan 17 14:43:09 2018 +0000"
      },
      "committer": {
        "name": "Robert Berry",
        "email": "robertberry@google.com",
        "time": "Wed Jan 17 21:32:58 2018 +0000"
      },
      "message": "Create exception hierarchy for RecoveryController\n\nSets up a sensible exception hierarchy. Consolidates two error codes\nthat both represented some kind of internal error into a single code.\nFixed some cases where the wrong error codes were used to signal.\n\nTest: adb shell am instrument -w -e package\ncom.android.server.locksettings.recoverablekeystore\ncom.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner\n\nChange-Id: I6b1f97715cdc28a4be79912abb6f48e6657b048b\n"
    },
    {
      "commit": "f68bf1a8194fbc9e7754c43be9bfbe7b6ab2ea0d",
      "tree": "c8eaaba0b51a2fe45b39bc3a5765400a05c5ec56",
      "parents": [
        "d494cd8215eb8f1599a42577e7c19b418f6982e0",
        "5149d716e530d8e5afa5787cb2f0b286a84fce76"
      ],
      "author": {
        "name": "Antoan Angelov",
        "email": "arangelov@google.com",
        "time": "Wed Jan 17 21:32:15 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 21:32:15 2018 +0000"
      },
      "message": "Merge \"Add metadata to validate incoming administrator during transfer of ownership.\""
    },
    {
      "commit": "f3252be2e791ead3c419da5ec9b7239612c93dc3",
      "tree": "00aba41b61155953c6b784cb72edd22cfe1f40b1",
      "parents": [
        "d67e50eb805239fddedd5bbb5d21b8f78aba26e5"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Wed Jan 17 09:26:21 2018 -0500"
      },
      "committer": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Wed Jan 17 16:05:08 2018 -0500"
      },
      "message": "Priority only DND updates\n\n- Changing ringer mode should put the device into\npriority only mode, not alarms only mode\n\n- The volume dialog will reflect the external ringer\nmode instead of the internal ringer mode to better\nrepresent what will happen to notification and other\nsounds\n\nBug: 63096355\nTest: manual, toggle ringer button in various dnd states\nChange-Id: Iae09f50ece8e089752614d1c856ce9a118747048\n"
    },
    {
      "commit": "f84e2f60fec6f6d2ecfb3b90ddf075101f4b902f",
      "tree": "e2791213913c9b2d706e1c1bee66f9734c4b8aa6",
      "parents": [
        "99dbbf937cda5b497abb8a289dc6080938c03754"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Jan 16 14:17:59 2018 +0100"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Jan 17 22:00:37 2018 +0100"
      },
      "message": "Add ability to register remote animation definitions per activity\n\nThis introduces a more stable way of setting a remote animation\nthan using overridePendingTransition: An activity can register\na set of remote animations which is broke down by transition type.\nWhenever the activity is involved into such a transition, the\nremote animation will be started.\n\nRemote animations take precedence over regular animations, and\nprefixOrderIndex in the hierarchy decides precedence within\nmultiple apps that set remote animation definitions such that\nhigher apps override lower apps.\n\nBug: 64674361\nTest: go/wm-smoke\nTest: Use with launcher\nChange-Id: Id300ff62d9f60966ea2609168f6a02860b3de7af\n"
    },
    {
      "commit": "001439d72a037c1921319ecaf9be2d98ef51de56",
      "tree": "196ea7b6a69121f4e97395d5e43dd32311c6af47",
      "parents": [
        "022320cb57c39bddab00fda7b8e14840ad503e23",
        "723d0f061ae4223951fc5edaaf188798479ae207"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Wed Jan 17 20:50:14 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 17 20:50:14 2018 +0000"
      },
      "message": "Merge \"IpSec - API Tweak for removeTransportModeTransform\" am: 6725ff729b am: d58b237445\nam: 723d0f061a\n\nChange-Id: I479c24d9ac5d4b022ec6310395fdb4274cfd5598\n"
    },
    {
      "commit": "05ce809b82b3846516560b0232691d08389898f2",
      "tree": "0f33ce1b5350addb4a9cd9b6e723cedf68120a00",
      "parents": [
        "ec26761260b82bfff69d7a6eff9f8d68ba9f1761"
      ],
      "author": {
        "name": "Kenny Guy",
        "email": "kennyguy@google.com",
        "time": "Wed Jan 17 13:44:20 2018 +0000"
      },
      "committer": {
        "name": "Kenny Guy",
        "email": "kennyguy@google.com",
        "time": "Wed Jan 17 20:42:42 2018 +0000"
      },
      "message": "Add more brightness config details to dumpsys\n\nAllow client to add a description to a brightness\nconfig and dump to dumpsys\nDump time and package name of system app that\nset the last brightness config.\n\nBug: 71854421\nTest: atest PersistentDataStoreTest\nTest: manaual - check adb shell dumpsys display\nChange-Id: I5ff0c0d3a4c5e30c9d4aa7eea850c7174ee20450\n"
    },
    {
      "commit": "723d0f061ae4223951fc5edaaf188798479ae207",
      "tree": "dd381ae47f68cb2844a741db3d5f9ad4790a5aad",
      "parents": [
        "e27e95e7d532c9761aa7ce9254533dcdcb411c8e",
        "d58b237445efd679d07c173800b6980f0ecaf026"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Wed Jan 17 20:39:29 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 17 20:39:29 2018 +0000"
      },
      "message": "Merge \"IpSec - API Tweak for removeTransportModeTransform\" am: 6725ff729b\nam: d58b237445\n\nChange-Id: Id9e9ab09669a53f53f03e5a6e0e4757434c3f3f3\n"
    },
    {
      "commit": "d58b237445efd679d07c173800b6980f0ecaf026",
      "tree": "93ed06b455b1831cfaa6e904be8ed52098e40f4f",
      "parents": [
        "65d0549fde9f793ee092b2eeaede5a41ac7a1fc8",
        "6725ff729b782a79ef8f9db3355507b0a7ee5158"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Wed Jan 17 20:31:15 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 17 20:31:15 2018 +0000"
      },
      "message": "Merge \"IpSec - API Tweak for removeTransportModeTransform\"\nam: 6725ff729b\n\nChange-Id: I0ed7128014bbca8973f84d719449dcf70da45fa2\n"
    },
    {
      "commit": "022320cb57c39bddab00fda7b8e14840ad503e23",
      "tree": "98264feac561a5e2fbe006f2e18e810a13b62b52",
      "parents": [
        "bd56951c5bce2b3b799de1e306275120cf336763",
        "c6f9c85f746d72a54737f8e714b190939561c28b"
      ],
      "author": {
        "name": "Craig Donner",
        "email": "cdonner@google.com",
        "time": "Wed Jan 17 20:20:51 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 20:20:51 2018 +0000"
      },
      "message": "Merge \"Deprecate android.software.vr.mode\""
    },
    {
      "commit": "072abed5f552871db18a86863d04cfc89714ad5f",
      "tree": "11ba45dadae9f5d795a7933a29e822f0428c5226",
      "parents": [
        "b1a00d5e16fd1b5ebb39e0d462c5216bc453e701",
        "7edcd7881a0676456cfc140ba49f4db3d952894b"
      ],
      "author": {
        "name": "Julia Reynolds",
        "email": "juliacr@google.com",
        "time": "Wed Jan 17 20:16:52 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 20:16:52 2018 +0000"
      },
      "message": "Merge \"Fix flaky schedule tests\""
    },
    {
      "commit": "3fc56c30000d9b88c2145d4297a97ec5061d60d1",
      "tree": "c9f6e2ec1326356975521d147818c1a1ddf02450",
      "parents": [
        "c9cbc3e5fcb1c3b9683c617df0c3b645d6516b02"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Dec 11 18:26:13 2017 -0800"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Jan 17 12:15:48 2018 -0800"
      },
      "message": "Support installation of DexMetadata files (.dm)\n\nAdd support in the package installer to install dex metadata files\nalongside the application apks (base or splits).\n\nDuring installation or update the dex metadata files will need to have a\nmatching apk file. The matching is done by checking the file extension\n(e.g. base.apk -\u003e base.dm, split_a.apk -\u003e split.dm).\n\nOn disk, the metadata files are placed next to the apks.\n\nThe .dm files will be used during install-time optimizations and passed\nverbatim to dex2oat.\n\nTest: adb shell am instrument -w \\\n1) adb shell am instrument -w \\\n  -e class android.content.pm.DexMetadataHelperTest\n\ncom.android.frameworks.coretests/android.support.test.runner.AndroidJUnitRunner\n\n2) adb install-multiple CtsClassloaderSplitApp.apk\nCtsClassloaderSplitApp.dm CtsClassloaderSplitAppFeatureA.apk\nCtsClassloaderSplitAppFeatureA.dm CtsClassloaderSplitAppFeatureB.apk\n\n3) gts-tradefed -m GtsAndroidRuntimeManagerHostTestCases\n\nBug: 30934496\n\nChange-Id: I86f0a8307705ff3d6a5a85c2fcaae085dd62d4af\n"
    },
    {
      "commit": "b1a00d5e16fd1b5ebb39e0d462c5216bc453e701",
      "tree": "618e10a35a7aa166aad2ea4b4ec54736291ce8ca",
      "parents": [
        "eb7c473f663a3b12cf10b614b073456943d944e5",
        "5f138701fe5c652199aae4845caf83797ead4c82"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 17 20:04:55 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 20:04:55 2018 +0000"
      },
      "message": "Merge \"Use better names for associated classes of RecoveryManager\""
    },
    {
      "commit": "e8b052af0827a5d84b68f55f4b9f86e57e7ca70e",
      "tree": "aa3376f570d4a43364f2db36db28a92339340f48",
      "parents": [
        "e2861da8ef0eba65c1bb9d5f67380884e2ead939"
      ],
      "author": {
        "name": "Matthew Ng",
        "email": "ngmatthew@google.com",
        "time": "Tue Jan 16 14:33:47 2018 -0800"
      },
      "committer": {
        "name": "Matthew Ng",
        "email": "ngmatthew@google.com",
        "time": "Wed Jan 17 11:53:00 2018 -0800"
      },
      "message": "Fixes dock side when rotating to seascape after drag to split\n\nEntering split screen (in portrait or landscape) using drag to top\nand then rotate to seascape docks primary stack to wrong side. When\nentering with drag, display content creates a stack and tries to query\ndock side without setting itself into the stack which returns an invalid\ndock side. The dock side is used by DockedStackDividerController to hold\nthe original side that the primary stack split to when\nnotifyDockedStackExistsChanged occurs. Fix by defering calling\nnotifyDockedStackExistsChanged until display content is added to the\nstack.\n\nTest: manual - drag app in overview to split and rotate CCW\nChange-Id: I14f5d68ab95548ee7276c7101c5f991a5ceb69e4\nFixes: 70718233\n"
    },
    {
      "commit": "eb7c473f663a3b12cf10b614b073456943d944e5",
      "tree": "1ba2eb801b7d39cfa826b79394d9d7e022f073f7",
      "parents": [
        "52aa9801fe1e3a6f8f28fcd2c8431effdf67e230",
        "bd62e9ae145c638845e41286156eca6e2d44a8ea"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 17 19:45:50 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 19:45:50 2018 +0000"
      },
      "message": "Merge \"Follow up I1f0c56651eaa59f0ce90cdb08c71e89a96c48dd4\""
    },
    {
      "commit": "52aa9801fe1e3a6f8f28fcd2c8431effdf67e230",
      "tree": "ca3cae089ec608d855f28d074b0b2d66f5af3df6",
      "parents": [
        "3fb6ea960f2cfd859c0c8207e5e5a470cb512a28",
        "e27e95e7d532c9761aa7ce9254533dcdcb411c8e"
      ],
      "author": {
        "name": "Arthur Hsu",
        "email": "arthurhsu@google.com",
        "time": "Wed Jan 17 19:30:01 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 17 19:30:01 2018 +0000"
      },
      "message": "Merge \"Skip SystemUI check in BluetoothServiceManager if noHome.\" am: fc3b50e9b6 am: 65d0549fde\nam: e27e95e7d5\n\nChange-Id: Ifa668bfd7d1381c2072e21feeaed383e9fbaaa87\n"
    },
    {
      "commit": "e27e95e7d532c9761aa7ce9254533dcdcb411c8e",
      "tree": "ef2c611d6b9652f30145f9814f9dc77c78254d91",
      "parents": [
        "4bf5b7c59e9ebd5af89417940c66657b5343cccb",
        "65d0549fde9f793ee092b2eeaede5a41ac7a1fc8"
      ],
      "author": {
        "name": "Arthur Hsu",
        "email": "arthurhsu@google.com",
        "time": "Wed Jan 17 19:21:39 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 17 19:21:39 2018 +0000"
      },
      "message": "Merge \"Skip SystemUI check in BluetoothServiceManager if noHome.\" am: fc3b50e9b6\nam: 65d0549fde\n\nChange-Id: Ia42f33a0d7becd5a4f3f3f81fc077d13863f94ed\n"
    },
    {
      "commit": "65d0549fde9f793ee092b2eeaede5a41ac7a1fc8",
      "tree": "3e6f371135047fcc5f8880a7fff16ef2047e9b6d",
      "parents": [
        "77ba6baab53ed0d21b18f22e719e45f60eca6ba4",
        "fc3b50e9b693b5eec385070afa6b7fd079a162c7"
      ],
      "author": {
        "name": "Arthur Hsu",
        "email": "arthurhsu@google.com",
        "time": "Wed Jan 17 19:15:47 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 17 19:15:47 2018 +0000"
      },
      "message": "Merge \"Skip SystemUI check in BluetoothServiceManager if noHome.\"\nam: fc3b50e9b6\n\nChange-Id: Icf53fb7a223e64a3f73cea475fb0a522b3f96ece\n"
    },
    {
      "commit": "3fb6ea960f2cfd859c0c8207e5e5a470cb512a28",
      "tree": "4d5b3fff7ac6479274a113382f60a984d0f9ebd1",
      "parents": [
        "2baa9ab4be183ac1e432f08e8b5549d0bfa180c2",
        "96e0be0fd85c5476f1f269fd9006c00c9c230689"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 17 19:07:21 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 19:07:21 2018 +0000"
      },
      "message": "Merge \"Add BackupManager#isBackupServiceActive() system API\""
    },
    {
      "commit": "6725ff729b782a79ef8f9db3355507b0a7ee5158",
      "tree": "19c221d988a66ae023f5d6509bd0a87a606e7171",
      "parents": [
        "fc3b50e9b693b5eec385070afa6b7fd079a162c7",
        "f73d252c8f51936eec49313f4cc26f1da7727b6c"
      ],
      "author": {
        "name": "nharold",
        "email": "nharold@google.com",
        "time": "Wed Jan 17 19:07:10 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 17 19:07:10 2018 +0000"
      },
      "message": "Merge \"IpSec - API Tweak for removeTransportModeTransform\""
    },
    {
      "commit": "71755c95b620108ab75dd4fd11de528c0c97970c",
      "tree": "caedc9e5dccfc1c6dd785ee5b1d88febe38b029e",
      "parents": [
        "03863ba52620d3c078bad5a69105b85ab6304be5"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Tue Jan 16 14:15:44 2018 -0800"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Jan 17 11:03:45 2018 -0800"
      },
      "message": "Use \"except-idle\" whitelist for force-app-standby\n\nBug: 71911050\nTest: Manual test with:\n- dumpsys alarm  | grep \u0027Whitelist appids\u0027\n- dumpsys deviceidle except-idle-whitelist +com.android.chrome\n- dumpsys deviceidle except-idle-whitelist +com.google.android.dialer\n- dumpsys deviceidle except-idle-whitelist reset\n\nChange-Id: I6d5d8c350bad53a22adf247eb82a0e7f0d664c19\n"
    },
    {
      "commit": "2baa9ab4be183ac1e432f08e8b5549d0bfa180c2",
      "tree": "b9bae96ba9b9cc1555918e51543f3ad24048ef6d",
      "parents": [
        "13e7ad1e1c39d55d7bb689458ce01f0d6aa15b4a",
        "9a60382be1d94e1143cdd16576db774126193798"
      ],
      "author": {
        "name": "Nancy Zheng",
        "email": "nzheng@google.com",
        "time": "Wed Jan 17 19:00:10 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 17 19:00:10 2018 +0000"
      },
      "message": "Merge \"Add setting/experiment for small battery devices to have all forced app standby enabled except for when the device is charging.\""
    }
  ],
  "next": "93ae42b04debca35cdc23feef0cf54c9e6ca4400"
}
