)]}'
{
  "log": [
    {
      "commit": "b81472f7e239c8ba9802bbc44e474e9ca2623da8",
      "tree": "c06dcf038d7fba3962937d4067254ac7bd1d539b",
      "parents": [
        "0bf94c6d3e9b20854b4d17b277c80c40d6613b78"
      ],
      "author": {
        "name": "Alex Salo",
        "email": "asalo@google.com",
        "time": "Wed Dec 12 14:44:28 2018 -0800"
      },
      "committer": {
        "name": "Alex Salo",
        "email": "asalo@google.com",
        "time": "Wed Jan 16 21:21:51 2019 -0800"
      },
      "message": "Add skeleton implementation for Attention API\n\nThis service will let the system know whether the user is paying attention to\nthe device. This may be useful in certain scenarios - like keeping the screen\non, even when there has been no touch related user activity.\n\nNew permission BIND_ATTENTION_SERVICE is added to ensure that only the system\ncan bind to the attention service.\n\nTest: manually tested the lifecycle is as expected\nBug: 111939367\nChange-Id: I2dab9c69f3d0c6efb0db572f797f517dc6efcc72\n"
    },
    {
      "commit": "40335c1be9cb791869bcdc7b340fe12583b3ee41",
      "tree": "cabb05dead74b70f6a516229020274083db85ece",
      "parents": [
        "994bf9f577e1f155da3e6099dd80560b20253556",
        "4ab951199367824e74e0bfdfc0a2de3b246bb251"
      ],
      "author": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Fri Jan 11 21:23:34 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 11 21:23:34 2019 +0000"
      },
      "message": "Merge \"Mirgate default SMS app handling to RoleManager\""
    },
    {
      "commit": "fb922e9bac265358e54729f75a785c4d7905a5b9",
      "tree": "ea553aa2445e21944c2ecdc3ff811aad4ce268b3",
      "parents": [
        "7c1bbb71352eec49fd5ba04b98bfd7da7aff223d",
        "3fb0f258d344ea0d73dc67f941719a2c9d6cdeb6"
      ],
      "author": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Fri Jan 11 20:21:19 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 11 20:21:19 2019 +0000"
      },
      "message": "Merge changes from topic \"prediction_suggestion_services\"\n\n* changes:\n  Initial commit of Content Suggestions (overview long press) Manager.\n  Adding initial implementation of Prediction client/service API\n"
    },
    {
      "commit": "cbdbc4d9c6d88904e990caef45a2cd5149e9cd3c",
      "tree": "d2c173b203364f10dbe1a5f954b5c38c5edcecc0",
      "parents": [
        "fc758be231a4652e4910c9f31842b29ae2f087bf",
        "d11850cd44dcf1114f53bd0e12569a584d557039"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 11 12:37:33 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 11 12:37:33 2019 +0000"
      },
      "message": "Merge \"Add a privileged API for capturing and consuming bugreports\""
    },
    {
      "commit": "fc758be231a4652e4910c9f31842b29ae2f087bf",
      "tree": "0b8d483a13d85029a106ff394c223c23c418c898",
      "parents": [
        "72994d482e11fc1170c3e5d39f49a66fa7afb833",
        "2304c7c508138862c1be9cb55c6099fde5e7ea27"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Jan 11 04:13:38 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 11 04:13:38 2019 -0800"
      },
      "message": "Merge changes from topic \"IPMS1\" am: 3627deac88 am: 54d91e605c\nam: 2304c7c508\n\nChange-Id: I6908f68b1b9e7079384c4cc9f11c4e46cce694ce\n"
    },
    {
      "commit": "2304c7c508138862c1be9cb55c6099fde5e7ea27",
      "tree": "4c19ecab403d2233b16f2e790ff1b34d97c01535",
      "parents": [
        "88a17f3b67423e650d353f5e7a8c25681d7e7c3a",
        "54d91e605ce4c6f5b825106c4eb9eea42956d728"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Jan 11 03:53:57 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 11 03:53:57 2019 -0800"
      },
      "message": "Merge changes from topic \"IPMS1\" am: 3627deac88\nam: 54d91e605c\n\nChange-Id: I2541996b9bfe338acabac858fdea0ad89d55df5b\n"
    },
    {
      "commit": "8c141bdb8f63b23115e82cacf06bb073e5b33f4f",
      "tree": "0d19475a3df4c94d7ad09d11f3988a527f982288",
      "parents": [
        "81552d610a297edc8ebe93f997d587a1fa4c44de"
      ],
      "author": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Tue Dec 04 20:20:56 2018 +0900"
      },
      "committer": {
        "name": "Chalard Jean",
        "email": "jchalard@google.com",
        "time": "Fri Jan 11 15:00:36 2019 +0900"
      },
      "message": "[MS01] Add the IP memory store service.\n\nBug: 116512211\nTest: Added initial tests\nChange-Id: I9d9af4097e3e2d7afd9956b9cbfa29a9f9558ae0\n"
    },
    {
      "commit": "94672acc5e902d4b7c401bdee368a5811fcda90e",
      "tree": "172d6a42845b4f07072dcc41fea824df4ae9ecce",
      "parents": [
        "27b6918c71f66828718f38b78fe85b6e62d6b24c",
        "7d6c8e5ec94802359809b303765d2c0c687a4baf"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jan 11 00:58:02 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 11 00:58:02 2019 +0000"
      },
      "message": "Merge \"Enable airplane mode when booting in safe mode\""
    },
    {
      "commit": "3fb0f258d344ea0d73dc67f941719a2c9d6cdeb6",
      "tree": "14aa3bfd0e4b244beb8c03b7ccaa645470c93b19",
      "parents": [
        "54e91344e2a0072c40d09405fe5a295467b36c07"
      ],
      "author": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Tue Jan 08 17:41:55 2019 -0800"
      },
      "committer": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Thu Jan 10 16:35:13 2019 -0800"
      },
      "message": "Initial commit of Content Suggestions (overview long press) Manager.\n\nTest: compile\nBug: 120865921\nChange-Id: I9f8310112bedc883406f0f50a99041f542036fd9\n"
    },
    {
      "commit": "54e91344e2a0072c40d09405fe5a295467b36c07",
      "tree": "8e25640c130c1ca8e6975a513c69a21f1961ba02",
      "parents": [
        "00112e6f6f23edf15cc01be5fd099bc0f88cdd4f"
      ],
      "author": {
        "name": "Sunny Goyal",
        "email": "sunnygoyal@google.com",
        "time": "Wed Nov 14 11:59:02 2018 -0800"
      },
      "committer": {
        "name": "Winson Chung",
        "email": "winsonc@google.com",
        "time": "Thu Jan 10 15:53:25 2019 -0800"
      },
      "message": "Adding initial implementation of Prediction client/service API\n\nTest: Build sample app, ensure that app prediction service gets client\n      requests\nBug: 111701043\nChange-Id: I33aceb2de31552b2d740dc333559d68728753e40\nSigned-off-by: Winson Chung \u003cwinsonc@google.com\u003e\n"
    },
    {
      "commit": "4ab951199367824e74e0bfdfc0a2de3b246bb251",
      "tree": "247f9168096140c9aa3d0b71e4e3c2738a810f1e",
      "parents": [
        "c54ffd28f7efa82054ebc4443c7c6a396e07ddd6"
      ],
      "author": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Mon Dec 17 14:45:11 2018 -0800"
      },
      "committer": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Thu Jan 10 10:41:10 2019 -0800"
      },
      "message": "Mirgate default SMS app handling to RoleManager\n\nThis includes laying down some groundwork to make the remaining migrations\nmore straightforward\n\nBug: 110557011\nTest: atest RoleManagerTest \u0026\u0026 atest SmsManagerTest\nChange-Id: Ie96abd73751d10f521756c9dcdab2a5710ca2045\n"
    },
    {
      "commit": "d11850cd44dcf1114f53bd0e12569a584d557039",
      "tree": "cd7c886af438f196a7554aefb95a17342419a402",
      "parents": [
        "2d917da0526d60a41bc03a5f941b269b917e453a"
      ],
      "author": {
        "name": "Nandana Dutt",
        "email": "nandana@google.com",
        "time": "Wed Dec 12 17:26:57 2018 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Jan 10 17:33:58 2019 +0000"
      },
      "message": "Add a privileged API for capturing and consuming bugreports\n\nThe API is mostly implemented; except for hooking up the listener\nand handling an already running bugreport.\n\nBugreportManager is the handle to the new API exposed to apps.\n\nGenerating bugreports requires root privileges. To limit the footprint\nof the root access, the actual bugreport generation in Dumpstate binary,\nis accessed as a oneshot service and dies after it finishes\nrunning.\n\nSystem server accesses Dumpstate via a binder interface since it does\nnot have root privileges.\n\nStarting a oneshot service is done via setting a system property, which\nneeds to be done from system server. BugreportManagerService is the\nnew system server service that does this. BugreportManager calls into\nBugreportManagerService via a binder interface, since the former is in\nthe app\u0027s process.\n\nBoth app to system server as well as system server to native service\ncalls are via implementations of IDumpstate binder interface.\n\nBug: 111441001\nTest: builds. Flashed \u0026 verified it boots.\nTest: wrote a test client (not included) and verified invoking\nstartBugreport works.\n\nChange-Id: I4abeb753388c055c36ae0dd916af1ec8d40b7bf0\n"
    },
    {
      "commit": "4de1e16570bba8b78d3619ff4d37b79d504a1679",
      "tree": "8103ee150473c2c39a9308410d7a7e4f6c13c1b2",
      "parents": [
        "ffdf092a77c6f6c8998394405d43f22ae54dfede"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Nov 26 10:33:17 2018 -0800"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Mon Jan 07 13:46:47 2019 -0800"
      },
      "message": "services: Add iorap forwarding service\n\nAdd a new service to system_server. It purely forwards\ndata from internal APIs to iorapd over binder, it is not a binder\nservice itself.\n\nCurrently forwards ActivityMetricsLaunchObserver APIs from\nActivityTaskManagerInternal.\n\nBug: 72170747\nChange-Id: Ic4fa283df1c16660099030c74a0039ef24866819\n"
    },
    {
      "commit": "e95d055c5cb8427810ab5f3f029400ea6c726734",
      "tree": "d07e2516f82f3ef39421fb56971fd840178b19d7",
      "parents": [
        "3f5d667e06f0350e3cab7311e7a9ef78b97ce8f7"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Thu Dec 27 15:03:41 2018 +0000"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Jan 02 10:35:57 2019 +0000"
      },
      "message": "Move rollback manager implementation to RollbackManagerServiceImpl\n\nSo that RollbackManagerService extends SystemService as per convention\nand RollbackManagerServiceImpl need not be made public.\n\nBug: 112431924\nTest: atest RollbackTest\nChange-Id: I85d2fd27e4705637d5fb7342d9389ef12f869fc9\n"
    },
    {
      "commit": "474dffd225aeb629c4dc511792dec8413a46540f",
      "tree": "694974237484fa6825f224ee4b785ee7cec8e789",
      "parents": [
        "3f6d5ebb73f44c069932143883d70aa6d7cd1a97",
        "b29f145505660b9f0ccc9f1f36373aaf37b50035"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Mon Dec 31 18:43:21 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 31 18:43:21 2018 +0000"
      },
      "message": "Merge \"Add RollbackManagerService\""
    },
    {
      "commit": "b29f145505660b9f0ccc9f1f36373aaf37b50035",
      "tree": "310c613e459d3af28da8a65083f04c28ff70355b",
      "parents": [
        "b88c797713c594404c0c7aef03a8edbe9ae3b3b5"
      ],
      "author": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Wed Sep 12 16:38:15 2018 +0100"
      },
      "committer": {
        "name": "Richard Uhler",
        "email": "ruhler@google.com",
        "time": "Mon Dec 31 12:38:07 2018 +0000"
      },
      "message": "Add RollbackManagerService\n\nThis change adds RollbackManagerService as a new system service for\nmanaging apk level rollbacks.\n\nTo work properly this requires additional selinux policy changes. Fails\ngracefully in case of selinux denials, until we have a chance to sort\nout the proper selinux policy.\n\nBug: 112431924\nBug: 116512606\nTest: atest RollbackTest, with selinux enforcement off.\nTest: atest CtsPermission2TestCases:PermissionPolicyTest\nChange-Id: Id72aae9c4d8da9aaab3922ec9233ba335bc0198f\n"
    },
    {
      "commit": "7d6c8e5ec94802359809b303765d2c0c687a4baf",
      "tree": "6f77ba62e4fb696eda60df51cefa9ae80c3a0100",
      "parents": [
        "db25df71be4c1bcc654f69ce9a8bff7e3ef46360"
      ],
      "author": {
        "name": "Rene Mayrhofer",
        "email": "rmayrhofer@google.com",
        "time": "Wed Nov 28 11:32:40 2018 -0800"
      },
      "committer": {
        "name": "Rene Mayrhofer",
        "email": "rmayrhofer@google.com",
        "time": "Thu Dec 27 23:33:29 2018 +0000"
      },
      "message": "Enable airplane mode when booting in safe mode\n\nMake it possible to boot in airplane mode when it was not turned on\nbefore shutdown/reboot, either for situations where this is required by\nregulation or to work around problems in normal boot. When safe mode is\nengaged (Vol-Down), disable in two stages:\n1. Set Settings.Global.AIRPLANE_MODE_ON as early as possible for\n   subsystems to react to it during their initialization.\n2. Trigger the public ConnectiviyService API to enable airplane mode. This\n   has to be done during later stages in initialization because it requires\n   sending broadcasts, so some RF leakage may still happen before airplane\n   mode is enabled (time window of a few seconds).\n\nBluetooth is not currently disabled and needs to be fixed by another\nchange. WiFi and NFC are turned off alongside cellular modems.\n\nTest: manual\nBug: 120145930\nChange-Id: I1d61990a9d6f7cd046d28b3e49ecf402dd485063\n"
    },
    {
      "commit": "46d40a2b8367b9da8a5216c361f0fded00af3077",
      "tree": "1b75bcd11989979b661316e6344682b29ffd4aad",
      "parents": [
        "aef19af34fd19a2ebfd5a5c132a9ca340b17f418",
        "8d73c6ec1665b9efbe2501f7e910f1a9c11e87c3"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Dec 25 23:53:40 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 25 23:53:40 2018 -0800"
      },
      "message": "Merge \"Start NetworkStack on system server start\" am: 394b0d1a04 am: d69c3d4193\nam: 8d73c6ec16\n\nChange-Id: I0c116a73bfb8ab82c798ebdf0ab587f00be031ed\n"
    },
    {
      "commit": "8d73c6ec1665b9efbe2501f7e910f1a9c11e87c3",
      "tree": "73afe56aaf3a3b51c5178549b830c962da7edac8",
      "parents": [
        "fbdad444a13afbf0f034584dab4953d9d11150bc",
        "d69c3d419382f6d0825df0b968dd727ba80b93b2"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Dec 25 23:43:25 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 25 23:43:25 2018 -0800"
      },
      "message": "Merge \"Start NetworkStack on system server start\" am: 394b0d1a04\nam: d69c3d4193\n\nChange-Id: I00ce231850d69e32f836d8f508e28a4dc741226f\n"
    },
    {
      "commit": "9ed654ffabfa0f9f7bdf303220968e917ed313b4",
      "tree": "9931001e5ab247250f457791bf82193c3de042ff",
      "parents": [
        "c094a5402c98851b380fa276e7557bf916c36c1b"
      ],
      "author": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Tue Dec 18 18:24:26 2018 +0900"
      },
      "committer": {
        "name": "Remi NGUYEN VAN",
        "email": "reminv@google.com",
        "time": "Wed Dec 26 12:10:17 2018 +0900"
      },
      "message": "Start NetworkStack on system server start\n\nThe network stack will host updatable network components that are being\nmoved from the system server.\n\nTest: flashed, booted\nBug: b/112869080\nChange-Id: I63f98405b69615e7077aed374b8f34a84fb1e4b2\n"
    },
    {
      "commit": "6048d894531b0e7663a1a98431d962d336a2bffa",
      "tree": "8a0a5579d643f137f1efcb705a7d334490782f21",
      "parents": [
        "b0bace1de62e2e5019a6f583dc8afc31bcd14b82"
      ],
      "author": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Tue Dec 25 09:57:31 2018 -0800"
      },
      "committer": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Tue Dec 25 09:57:31 2018 -0800"
      },
      "message": "Temporarily move MULTI_CLIENT_IME_ENABLED to frameworks.jar\n\nThis is a preparation to implement per-profile IME in\nInputMethodManagerService (IMMS).\n\nMulti-client IME is designed and implemented to be able to deal with\nmultiple profiles at the same time from its beginning [1].  This means\nthat when multi-client IME is enabled with system properties, it also\nmeans that per-profile IME is enabled.\n\nAt the same time, the following classes need to change its behavior\nwhether per-profile IME is enabled or not.\n\n * android.provider.Setings\n * com.android.server.inputmethod.InputMethodManagerService\n * com.android.server.textservices.TextServicesManagerService\n * com.android.server.devicepolicy.DevicePolicyManagerService\n * com.android.server.devicepolicy.OverlayPackagesProvider\n\nThe problem is that android.provider.Setings lives in the\nframeworks.jar.  Hence if we want to expose something like\nPER_PROFILE_IME_ENABLED to android.provider.Setings, then such a flag\nneeds to live in frameworks.jar.\n\nNote that this is expected to be a temporary change.  Once per-profile\nIME becomes always enabled in IMMS, we can safely roll back this\nchange.\n\nNote also that static initializer of InputMethodSystemProperty is\nexpected to be evaluated only once as long as\nInputMethodSystemProperty is loaded before Zygote.\n\n [1]: I41dfe854557b178d8af740bc2869c936fc88608b\n      bae5bea23cfac3769569a230b56ad85cdd000675\n\nBug: 120709962\nTest: prebuilts/checkstyle/checkstyle.py -f \\\n        frameworks/base/core/java/android/view/inputmethod/InputMethodSystemProperty.java\nTest: Manually verified as follows:\n  1. make -j MultiClientInputMethod\n  2. adb install -r $OUT/system/priv-app/MultiClientInputMethod/MultiClientInputMethod.apk\n  3. adb root\n  4. adb shell setprop persist.debug.multi_client_ime \\\n       com.example.android.multiclientinputmethod/.MultiClientInputMethod\n  5. adb reboot\n  6. Make sure that multi-client IME is enabled\nChange-Id: Iad8aba7edb1e60ccc1ce5192a11e01b6aa8d00a0\n"
    },
    {
      "commit": "6bb8a966831220e2a0b844fcdce6d9bb7637110b",
      "tree": "d95526c86b34c0c301f48ee32ed52e8ce9fa5f14",
      "parents": [
        "a2ada8bf6369726e0b032e9151903642de098ac3"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 19 21:00:55 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 19 21:04:28 2018 -0800"
      },
      "message": "Inline some Settings constants so they don\u0027t break the SettingsBackupTest.\n\nTest: echo \u0027In TreeHugger we trust!\u0027\nBug: 121153631\n\nChange-Id: I7a1180a3446ba6a5aabb76fbe87113bf0e3096c6\n"
    },
    {
      "commit": "d264c7284b69647dc24ca6d3a06c5b0d947bd83b",
      "tree": "f8086b7067c1abe2fc4968b6d959917b79545565",
      "parents": [
        "d692ddf66dc1ccc184a6a6b2fff9aa072d142006"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 17 11:47:14 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 19 14:20:29 2018 -0800"
      },
      "message": "Fixed how ContentCapture is kill-switched.\n\nWe provide a way for OEMs to kill-switch Content Capture, but it currently\ndoes not work in the first boot (which uses default settings).\n\nThis CL changes the mechanism:\n\n- If the property is not set, it assumes it\u0027s disabled (before it was only\n  disabled when explicitly set to \"false\").\n- To always enable it, it must be set to \"always\" (before it was \"true\").\n- To check for the overlaid resource, it must be set to \"default\" (before it\n  had to be unset).\n\nTest: manual verification\n\nFixes: 121144410\nBug: 121153631\n\nChange-Id: Ie669e43d9dce947a7bb31bc3b1768774f724675f\n"
    },
    {
      "commit": "90f391fe8790fd1210d54c0e892fdfa0aa708562",
      "tree": "a5f57177bea55e0bc8133052f4176ef673312295",
      "parents": [
        "e533100d2e2c3a482a3661b193d86fd14f67bf80"
      ],
      "author": {
        "name": "Chad Brubaker",
        "email": "cbrubaker@google.com",
        "time": "Fri Oct 19 10:26:19 2018 -0700"
      },
      "committer": {
        "name": "Michael Groover",
        "email": "mpgroover@google.com",
        "time": "Fri Dec 14 20:46:04 2018 +0000"
      },
      "message": "Prototype Spaceship mode qstile\n\nInitial prototype disabling location/sensors and enabling airplane mode.\nCamera/Mic will come in a followup.\n\nTest: manual\nBug: 110842805\nChange-Id: I26132fcc9ffea83e3e78a0e54882d23c99ee590c\n"
    },
    {
      "commit": "ccc7473fb578f07da1a8d9c3fb138ede3540e9d7",
      "tree": "ee112cbe848fcfdc2ad78e80806a71c45a36074a",
      "parents": [
        "02278c9c530bcb59f5128d38e748320417a122d3",
        "0a91222c83ad776413c6d5ac1701911534d5862b"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Thu Dec 13 16:14:18 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 13 16:14:18 2018 -0800"
      },
      "message": "Schematize vold system properties\nam: 0a91222c83\n\nChange-Id: I3462d493bf88d7a435573659af9d8fa2062723b0\n"
    },
    {
      "commit": "0a91222c83ad776413c6d5ac1701911534d5862b",
      "tree": "6c36baae03f6763ef6c76592cd42357111ccd3a2",
      "parents": [
        "7c7dc29e8d637e1d52ebd9d43297651006c2d8b5"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Thu Nov 08 13:13:54 2018 +0900"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Dec 13 15:35:34 2018 -0800"
      },
      "message": "Schematize vold system properties\n\nProperties accessed across partitions are now schematized and will\nbecome APIs to make explicit interfaces among partitions.\n\nBug: 117924132\nTest: m -j\nChange-Id: I8e04f643197b6c8a60cc38c6979e41c5de3469f5\nMerged-In: Iedfd3c1dda665006ea5410ee787c3ca447ac7db1\n(cherry picked from commit c1246e6c364bbfef18d566f6b16f46ca1a5216c5)\n"
    },
    {
      "commit": "be9ec976c5bbf1d42e854efef094f8b3088e7120",
      "tree": "6c359c90e740d5f5ac0ef34563b066716bfee5c3",
      "parents": [
        "04c132139f8805ffef8e364ba3412bed0b72580e"
      ],
      "author": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Mon Dec 10 14:07:47 2018 +0000"
      },
      "committer": {
        "name": "Alan Stokes",
        "email": "alanstokes@google.com",
        "time": "Thu Dec 13 10:30:02 2018 +0000"
      },
      "message": "Separate job service for dynamic code logging.\n\nDecouple logging of dynamic code loading from background DEX\noptimisation/reconciliation (BackgroundDexOptService).\n\nAdd DynamicCodeLoggingService to run DCL logging daily while idle and\ncharging.\n\nUpdate DexLoggerIntegrationTests to use the new job, and to verify\nthat we now handle unknown class loaders.\n\nBug: 111336847\nTest: atest -p services/core/java/com/android/server/pm/dex\nChange-Id: Id688a7eef5976120be12606e726830ce32451a1e\n"
    },
    {
      "commit": "15b123ef458ed927782b080921e987c995fc56dd",
      "tree": "008426beb4c3b8d4ecb62112efa17be09fe6d427",
      "parents": [
        "58ee538e62b15dd07274beecf5f925543c5332b1",
        "7409b8620ff39ff0788ef1543297f0cb1d49a0e0"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 14:13:44 2018 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Tue Dec 11 14:13:44 2018 -0800"
      },
      "message": "DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master\n\nBug: 120502534\nChange-Id: Idc8bfb6d97a869b76cfb87ca1a494201baf9e8bd\n"
    },
    {
      "commit": "9dfd13e7ea43e7dd11f555e6f02505fe9a90cdff",
      "tree": "3756bff0722c059f2cccd8ef68002a5c6a6d14f4",
      "parents": [
        "37ddff03853d7814a7d44f8fd98f71350bff2553",
        "5b1cc27cee1ee1c86e7e6da8ee383ccd1ea3c785"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Dec 11 11:04:01 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Dec 11 11:04:01 2018 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Schematize vold system properties\"\"\""
    },
    {
      "commit": "5b1cc27cee1ee1c86e7e6da8ee383ccd1ea3c785",
      "tree": "8f0fa1d8cbfa08081c438362a24315fecd144422",
      "parents": [
        "2473b08b07ccd58978d4b0271dc22a770b9b8605"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Mon Dec 10 07:06:25 2018 +0000"
      },
      "committer": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Tue Dec 11 00:23:07 2018 +0000"
      },
      "message": "Revert \"Revert \"Schematize vold system properties\"\"\n\nThis reverts commit 2473b08b07ccd58978d4b0271dc22a770b9b8605.\n\nReason for revert: Fixed build breakage\nsysprop_cpp and sysprop_java directly have been linking against\nlibprotobuf-cpp-full and do not set proto.type field, which could\ncause ASAN error due to linking against both libproto version of full\nand lite.\n\nChange-Id: I96eb47444d7b6f6b5fef092efc1514fcdd6f33b6\nMerged-In: I8e04f643197b6c8a60cc38c6979e41c5de3469f5\n"
    },
    {
      "commit": "6230c94e4c76193d7343ed4efce1164519a3b4c0",
      "tree": "2ddffac14b9cd67e486d83e3760eabe2e9457171",
      "parents": [
        "833960a416f15251f49574e87687138f349f8a65",
        "17a9bc82b48297899589f1acb8bdf70ca06dd253"
      ],
      "author": {
        "name": "Christine Franks",
        "email": "christyfranks@google.com",
        "time": "Mon Dec 10 21:01:25 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 10 21:01:25 2018 +0000"
      },
      "message": "Merge \"ColorDisplayService should always be started\""
    },
    {
      "commit": "75f75c18cc16334280bede33a468d44b34c56ee9",
      "tree": "5b64b8f074d6fa0b7ff1a98033f137ff1312774e",
      "parents": [
        "f1f26e1165697b3f635a2b6398d38c63d688bccf",
        "7409b8620ff39ff0788ef1543297f0cb1d49a0e0"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Dec 10 12:30:19 2018 -0800"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Dec 10 12:30:19 2018 -0800"
      },
      "message": "DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into stage-aosp-master\n\nBug: 120502534\nChange-Id: I7351a1832c4bd2fd86324183ab83e9088d716822\n"
    },
    {
      "commit": "17a9bc82b48297899589f1acb8bdf70ca06dd253",
      "tree": "785be8728c9094bcd18dc99a185c133220b81b75",
      "parents": [
        "fdb30ae286ea2dd7435e12d64c09009c39e149ac"
      ],
      "author": {
        "name": "Christine Franks",
        "email": "christyfranks@google.com",
        "time": "Mon Dec 10 10:19:02 2018 -0800"
      },
      "committer": {
        "name": "Christine Franks",
        "email": "christyfranks@google.com",
        "time": "Mon Dec 10 10:21:25 2018 -0800"
      },
      "message": "ColorDisplayService should always be started\n\nEven if no color transforms are available, for requesting whether\ncolor modes or configurations are available.\n\nBug: 111215474\nTest: atest FrameworksServicesTest:ColorDisplayServiceTest\n\nChange-Id: I10a4b3b1214920117312e752ba5ea0033ff70293\n"
    },
    {
      "commit": "d2ca6c6dfee409fac686e7d4ab040c0f550c899f",
      "tree": "cc8ca90da78c9260fe095c47073ac28050aee778",
      "parents": [
        "38d5c1e8eb32ffafcd5bd27ea5f7356dff702f47",
        "510c8c463f4e8f28ec83f9cd41e946fde2466f96"
      ],
      "author": {
        "name": "Anthony Stange",
        "email": "stange@google.com",
        "time": "Fri Dec 07 04:37:45 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 07 04:37:45 2018 -0800"
      },
      "message": "Merge \"Revert \"Schematize vold system properties\"\" am: 6ee45c6f14\nam: 510c8c463f\n\nChange-Id: If137d417a8f042e8cbde842578caaa3e54bb8c6d\n"
    },
    {
      "commit": "6ee45c6f140e11dee472f3832d5e2278ab3643b5",
      "tree": "b4e9414cace935a845fc50a546cb091a020af179",
      "parents": [
        "08d4eb174d0a31e2177b60fba8e84fca896d4edb",
        "2473b08b07ccd58978d4b0271dc22a770b9b8605"
      ],
      "author": {
        "name": "Anthony Stange",
        "email": "stange@google.com",
        "time": "Fri Dec 07 12:04:56 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 12:04:56 2018 +0000"
      },
      "message": "Merge \"Revert \"Schematize vold system properties\"\""
    },
    {
      "commit": "2473b08b07ccd58978d4b0271dc22a770b9b8605",
      "tree": "adb5519aa43c33c8d71b0054cea2fa22c39b3f1b",
      "parents": [
        "7bc31dc162dd6c97eeb4d85058a079a74bd8777b"
      ],
      "author": {
        "name": "Anthony Stange",
        "email": "stange@google.com",
        "time": "Fri Dec 07 11:43:03 2018 +0000"
      },
      "committer": {
        "name": "Anthony Stange",
        "email": "stange@google.com",
        "time": "Fri Dec 07 11:43:03 2018 +0000"
      },
      "message": "Revert \"Schematize vold system properties\"\n\nThis reverts commit 7bc31dc162dd6c97eeb4d85058a079a74bd8777b.\n\nReason for revert: Breaking aosp_master build.\n\nChange-Id: I34a5e9889c17e3454a0a86deabcec3c192a3da52\n"
    },
    {
      "commit": "132b1c6002a6b5a5742a32852b515421ff95c57d",
      "tree": "57a9937918215382d9f4f7b350e9aa7873aba8ac",
      "parents": [
        "2f35f91cf38f80fded04eabe2d8e3b3dbce6d04b",
        "749b889889917ec60bdf45c13679f451c13287d2"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Dec 07 04:18:44 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 07 04:18:44 2018 +0000"
      },
      "message": "Merge \"Yet another (major) refactoring on Content Capture and Augmented Autofill.\""
    },
    {
      "commit": "b24545385b1b1e6155348488b9f192a567f764b3",
      "tree": "92c5f9af85bac8f5fda32dfe1f2bb4918a75f516",
      "parents": [
        "a746ff78f5f7d8c94e22f796f73715a37cd230e4",
        "4673a1d1e4b0d26eaf5df470713cb4d2f90f2f4b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Dec 07 03:36:20 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 07 03:36:20 2018 +0000"
      },
      "message": "Merge \"SystemServer: initialize ADB before USB\""
    },
    {
      "commit": "1a7cad6b1afa9cf878406fbc90c74e53bd1474cf",
      "tree": "07be9a39f472070d86aeb8bc10ea0df960e633d3",
      "parents": [
        "829a76321a8427ce42ed17fe25a4787c7a22a5a3",
        "73694f8faa54071759744901bd1c64457dc9cf49"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Thu Dec 06 18:42:29 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 06 18:42:29 2018 -0800"
      },
      "message": "Merge \"Schematize vold system properties\" am: 095d0f640e\nam: 73694f8faa\n\nChange-Id: If420ffa861d9d85f2baca9224b96f2716965f4b5\n"
    },
    {
      "commit": "095d0f640e9b4e64f4d3b43474ee6139d7dbe3a5",
      "tree": "234f3a77755387cd945f3767eaf8d0ca50b81de2",
      "parents": [
        "349377724ed833b7515ad4c1a0562b3faedf5e4e",
        "7bc31dc162dd6c97eeb4d85058a079a74bd8777b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 07 01:46:45 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Dec 07 01:46:45 2018 +0000"
      },
      "message": "Merge \"Schematize vold system properties\""
    },
    {
      "commit": "749b889889917ec60bdf45c13679f451c13287d2",
      "tree": "c339a14c744416b704e7d28a0aa9a88a869fe4b5",
      "parents": [
        "a61278dea25c66456802b7b57abf34cb62cb155d"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 03 16:30:30 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 06 16:56:39 2018 -0800"
      },
      "message": "Yet another (major) refactoring on Content Capture and Augmented Autofill.\n\nBunch of changes:\n\n- Split public SmartSuggestionsService info ContentCaptureService and\n  AugmentedAutofillService\n- Renamed \u0027intelligence\u0027 packages to either \u0027contentcapture\u0027 or\n  \u0027autofil.augmented\u0027\n- Renamed internal packages and classes.\n- Changed permissions, resource names, etc...\n- Moved Augmented Autofill logic from IntelligeceManagerService (R.I.P.) to\n  Autofill.\n- Optimized IPCs by passing a String instead of the InteractionSessionId\n  (that also solves the view -\u003e service dependency).\n\nTest: atest CtsContentCaptureServiceTestCases \\\n            CtsAutoFillServiceTestCases \\\n            FrameworksCoreTests:SettingsBackupTest\nTest: manual verification with Augmented Autofill Service\n\nBug: 119638877\nBug: 117944706\n\nChange-Id: I787fc2a0dbd9ad53e4d5edb0d2a9242346e4652d\n"
    },
    {
      "commit": "f9632160943e55931810ea1fc0e82693359c64dc",
      "tree": "ab96259ac13bcec35018718ada36ae4a08abc65e",
      "parents": [
        "b44f5026d9c21ef914ad8bfd8cabdc3716dfe37d",
        "c2ff6cf1c5ee6341f2edae97272afe734c3eff46"
      ],
      "author": {
        "name": "Yunfan Chen",
        "email": "yunfanc@google.com",
        "time": "Wed Dec 05 21:12:18 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 05 21:12:18 2018 +0000"
      },
      "message": "Merge \"Use WindowProcessController configuration for process\""
    },
    {
      "commit": "0492440cd9cb181c567442dd21e53b624caeba29",
      "tree": "87968f05218727d2c1ca6b12bfab1321f6949f41",
      "parents": [
        "e95bb70598faa3738c696621303ede566cf632ba",
        "658c8e423fc4269d293eecbce8c1a99ed270ff76"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 05 16:15:50 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 05 16:15:50 2018 +0000"
      },
      "message": "Merge \"Changed how the Smart Suggestions service is defined.\""
    },
    {
      "commit": "9f7fcda6c45c78d01c11eeacfb8f67a23c97442e",
      "tree": "29ffc6b788c2269bff5faa8280784ecbed8fc9b6",
      "parents": [
        "33793f62244c595ca10820b210cad4b007fdb6bc",
        "4e2ed6a90ba32bec7c67cf4260d65bf40430dcf9"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Wed Dec 05 12:46:12 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 05 12:46:12 2018 +0000"
      },
      "message": "Merge \"New receiver for signed config.\""
    },
    {
      "commit": "4e2ed6a90ba32bec7c67cf4260d65bf40430dcf9",
      "tree": "866d4103cb55ff034d1984327a5895f04d42b4b4",
      "parents": [
        "ce7357ad97b0e2af2e91ce1cda79f3ca8c1d6965"
      ],
      "author": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Mon Nov 26 15:31:16 2018 +0000"
      },
      "committer": {
        "name": "Mathew Inwood",
        "email": "mathewi@google.com",
        "time": "Wed Dec 05 11:00:26 2018 +0000"
      },
      "message": "New receiver for signed config.\n\nA new receiver is added when the system server is created. It receives\nbroadcasts and pulls out the config \u0026 signature, but doesn\u0027t yet do\nanything with it.\n\ngo/serverless-config-design\nTest: Manual\nBug: 110509075\n\nChange-Id: Ie369e198de5e830253b17e964afb67c76735909c\n"
    },
    {
      "commit": "c2ff6cf1c5ee6341f2edae97272afe734c3eff46",
      "tree": "64ef2d64c35d6ef61c7851fffea949ee142734e9",
      "parents": [
        "b53030f983b8f606a6fed7527605073613895f67"
      ],
      "author": {
        "name": "Yunfan Chen",
        "email": "yunfanc@google.com",
        "time": "Tue Dec 04 16:56:21 2018 -0800"
      },
      "committer": {
        "name": "Yunfan Chen",
        "email": "yunfanc@google.com",
        "time": "Tue Dec 04 23:00:05 2018 -0800"
      },
      "message": "Use WindowProcessController configuration for process\n\nThis patch is to replace the process configuration map in\nWindowManagerService with the map in ActivityTaskManagerService. To do\nso, we pass the ActivityTaskManagerService instance to\nWindowManaserService. Adjust test base accordingly.\n\nTest: WmTests\nTest: go/wm-smoke\nBug: 117877476\nBug: 113253755\nChange-Id: Ica93c3ad402e1cab682466fd16a8226176f9bae8\n"
    },
    {
      "commit": "4673a1d1e4b0d26eaf5df470713cb4d2f90f2f4b",
      "tree": "af9c82f8f2278b8b9efd20a3640c6a14b0adf195",
      "parents": [
        "9f6fb2a3651985d5bdead8d074270e78048a4a93"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Dec 05 12:20:02 2018 +0900"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Dec 05 12:20:02 2018 +0900"
      },
      "message": "SystemServer: initialize ADB before USB\n\nUSB depends on ADB to hold the state for ADB debugging enabled, so move it\nto initialize before USB attempts to initialize. This removes a race\ncondition introduced by moving the source of truth for ADB debugging enabled\nto the AdbService instead of UsbService.\n\nBug: 119765805\nTest: boot emulator several times\nChange-Id: Ib1f5ae0ceab5abe64e2d14b9e2b3a55c9919ad2f\n"
    },
    {
      "commit": "658c8e423fc4269d293eecbce8c1a99ed270ff76",
      "tree": "0f17e038a9e2010bb41af2d5b87b9f6d9cf91468",
      "parents": [
        "a06d12e6bd82950de2420dbebe71a2958a8ea215"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Nov 30 12:49:45 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Dec 04 17:46:49 2018 -0800"
      },
      "message": "Changed how the Smart Suggestions service is defined.\n\nInitially it was defined as secure Settings, but the proper way is to let the\nOEMs set it by overlaying a framework resources, which an option to temporarily\noverride that setting using a Shell cmd (so it can be changed on CTS tests).\n\nThis CL also changes how the service can be explicitly enabled / disabled at\nthe time the system starts, so it can be disabled by a server-push in case of\nemergencies (and also manually enable by developers when running the CTS tests\non AOSP builds).\n\nBug: 119776618\nBug: 111276913\nBug: 117779333\n\nTest: adb shell settings put global \\\n   smart_suggestions_service_explicitly_enabled true \u0026\u0026 \\\n   sleep 10s \u0026\u0026 \\ adb shell stop \u0026\u0026 adb shell start \\\n   atest CtsContentCaptureServiceTestCases\nTest: atest FrameworksCoreTests:SettingsBackupTest\nTest: atest CtsAutoFillServiceTestCases # to make sure it didn\u0027t break\nTest: m -j SettingsProvider\n\nChange-Id: Ibd1bba0c0d534b4b6344516d8ff893142785a57a\n"
    },
    {
      "commit": "7bc31dc162dd6c97eeb4d85058a079a74bd8777b",
      "tree": "8f0fa1d8cbfa08081c438362a24315fecd144422",
      "parents": [
        "c02d53b0813aa996d713484c369831fbd79614b6"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Thu Nov 08 13:13:54 2018 +0900"
      },
      "committer": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Wed Dec 05 00:04:24 2018 +0000"
      },
      "message": "Schematize vold system properties\n\nProperties accessed across partitions are now schematized and will\nbecome APIs to make explicit interfaces among partitions.\n\nBug: 117924132\nTest: m -j\nChange-Id: I8e04f643197b6c8a60cc38c6979e41c5de3469f5\nMerged-In: I8e04f643197b6c8a60cc38c6979e41c5de3469f5\n"
    },
    {
      "commit": "6220baa36e0a477432b50ef35125c72b4851494b",
      "tree": "6b702f6b0580bc949d18cc827a7e3d879f3f0a6d",
      "parents": [
        "b9870f9bba699ec5cef6923ba9667d1acafc4a03",
        "c1246e6c364bbfef18d566f6b16f46ca1a5216c5"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 05 00:00:42 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 05 00:00:42 2018 +0000"
      },
      "message": "Merge \"Schematize vold system properties\""
    },
    {
      "commit": "269be44f8ff8bb57c218aee764aaefbebad1f87b",
      "tree": "0dbaa0fc589a8253ef6ce460d2f93a1463a07f43",
      "parents": [
        "d830ca25a19239709b7c644204baeb64d2785080",
        "b5354b7ca9ad4a89484a0cf9be813da6acefaf3d"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Dec 04 00:56:36 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 04 00:56:36 2018 -0800"
      },
      "message": "Merge \"Add a service for reporting runtime debug info\" am: 08cbafefdc am: 20547cf20d\nam: b5354b7ca9\n\nChange-Id: I2395418164f3dbcb04bc18647c6cccf7a025c1b4\n"
    },
    {
      "commit": "b5354b7ca9ad4a89484a0cf9be813da6acefaf3d",
      "tree": "240c6ce26035eec2536a43608d5208473000b7a9",
      "parents": [
        "79fa7d39c3568fa83f458e1f5d17a9ad6f7105e4",
        "20547cf20df113c02643737b490c42f384851ec8"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Dec 04 00:36:09 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Dec 04 00:36:09 2018 -0800"
      },
      "message": "Merge \"Add a service for reporting runtime debug info\" am: 08cbafefdc\nam: 20547cf20d\n\nChange-Id: I29e7fe0355c7461ca6b939c669b9e4f3d471c4b6\n"
    },
    {
      "commit": "ab0b81e9210edb68d0bff9e0428a6bd2d95b411d",
      "tree": "43d048b661d216e24353a5cd483188b86c0aa35a",
      "parents": [
        "818a6e70e25cafbc3638beacda5d604a73f50df1"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Nov 20 19:37:22 2018 +0000"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Mon Dec 03 15:41:50 2018 +0000"
      },
      "message": "Add a service for reporting runtime debug info\n\nAdd a service for reporting runtime debug info via dumpsys.\n\nWith expected OEM customization / module versions in play\nit makes sense to have runtime and associated \"core library\"\ninformation in bug reports. The dumpsys information can also\nbe used from from host-side tests.\n\nBug: 119026403\nBug: 118242715\nTest: adb shell dumpsys runtimeinfo\nChange-Id: I62637a1c8bfd65d5de9b3e47b8700ead4bc314f2\n"
    },
    {
      "commit": "8c0d41ac2dc5401ab4ba929b21726ed828ebc8d2",
      "tree": "4ff585420942bab56d2bebb3e08b08f7e9d7f545",
      "parents": [
        "d4ef3010915e5ed6d24a0d26e9615c365a962083",
        "384230f9e0e8116bedefbe934d4d46c33646bf9d"
      ],
      "author": {
        "name": "Annie Meng",
        "email": "anniemeng@google.com",
        "time": "Thu Nov 29 13:36:57 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 29 13:36:57 2018 +0000"
      },
      "message": "Merge \"[Multi-user] Rename GlobalBackupManagerService -\u003e BackupManagerService\""
    },
    {
      "commit": "384230f9e0e8116bedefbe934d4d46c33646bf9d",
      "tree": "2e96d07d81ff3f1c6d920319a85017d79ba64e35",
      "parents": [
        "813716b1990d5c1c044ac4d735b9c52eba965e18"
      ],
      "author": {
        "name": "Annie Meng",
        "email": "anniemeng@google.com",
        "time": "Wed Nov 28 10:58:08 2018 +0000"
      },
      "committer": {
        "name": "Annie Meng",
        "email": "anniemeng@google.com",
        "time": "Wed Nov 28 12:30:21 2018 +0000"
      },
      "message": "[Multi-user] Rename GlobalBackupManagerService -\u003e BackupManagerService\n\nRestore original naming since UserBackupManagerService is now merged.\n\nJust find and replace, no functionality changes in this CL.\n\nBug: 118520567\nTest: 1) atest RunFrameworksServicesRoboTests\n2) atest $(find \\\nframeworks/base/services/tests/servicestests/src/com/android/server/backup \\\n-name \u0027*Test.java\u0027)\n3) adb shell bmgr flows\nChange-Id: Ia37997cec93fac9ebb5102edfff9000c9cff4eb1\n"
    },
    {
      "commit": "178828f259e0ed1bbcab8a5bdfb74bf3219fe036",
      "tree": "5327597f7d48e8909a703afc2854173ee30f7778",
      "parents": [
        "ed3d6070c1763fee6d9f643b08324650a926f506",
        "813716b1990d5c1c044ac4d735b9c52eba965e18"
      ],
      "author": {
        "name": "Annie Meng",
        "email": "anniemeng@google.com",
        "time": "Wed Nov 28 10:37:18 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 28 10:37:18 2018 +0000"
      },
      "message": "Merge \"[Multi-user] Extract BackupManagerService to UserBackupManagerService\""
    },
    {
      "commit": "813716b1990d5c1c044ac4d735b9c52eba965e18",
      "tree": "8be8efa9d1b6976f7a442deff9c40382c6097894",
      "parents": [
        "de93099a3818784297da83e7c6a43d52a86e7e9c"
      ],
      "author": {
        "name": "Annie Meng",
        "email": "anniemeng@google.com",
        "time": "Tue Nov 20 14:08:21 2018 +0000"
      },
      "committer": {
        "name": "Annie Meng",
        "email": "anniemeng@google.com",
        "time": "Tue Nov 27 14:23:30 2018 +0000"
      },
      "message": "[Multi-user] Extract BackupManagerService to UserBackupManagerService\n\nBMS is split into GlobalBMS and UserBMS.\nUserBMS:\n- Core backup/restore implementations and bookkeeping.\n- Will be per user in a future CL (only one instance in this CL to limit\nscope of changes).\n\nGlobalBMS:\n- System service definition, interaction with Trampoline, user-aware\noperations.\n- Will be renamed back to BMS in a future CL (so BMS history can follow\nUserBMS in this CL).\n\n*** Reviewers, please pay attention to the patchset breakdown to better\nunderstand what is a rename/move vs. new changes ***\n\n* Base -\u003e Patchset 2: BMS splits into GlobalBMS and UserBMS (MOVE ONLY)\n\nPatchset 1: Rename BMS -\u003e UserBMS\nPatchset 2: Move parts of UserBMS to GlobalBMS\nNo new functionality, only moving existing code.\n\n* Patchset 2 -\u003e Patchset 3: New functionality for GlobalBMS\n\n- Switch references from BMS to GlobalBMS in Trampoline.java.\n- Change the definition of the system service in SystemServer.java to\nGlobalBMS.\n- Instantiate one instance of UserBMS in GlobalBMS constructor.\n- Add all IBackupManager methods, which for now just directly calls the\ncorresponding method in UserBMS.\n\n* Patchset 3 -\u003e Patchset 4: Migrate usages of BMS in code (RENAME ONLY)\n\nFind and replace, no new functionality.\n\n* Patchset 4 -\u003e Patchset 5: Migrate usages of BMS in tests (RENAME ONLY)\n\nFind and replace, no new functionality.\n\n* Patchset 5 -\u003e Patchset 6: New tests for GlobalBMS\n\nAdd tests for all the new IBackupManager methods added (just tests\nstraight redirection for now).\n\n* Overall: View Patchset 2 -\u003e [Latest Patchset] for new code.\n\nTODO: Modify art-profile with rename\n\nBug: 118520567\nTest: 1) atest RunFrameworksServicesRoboTests\n2) atest $(find\nframeworks/base/services/tests/servicestests/src/com/android/server/backup\n-name \u0027*Test.java\u0027)\n3) atest GtsBackupHostTestCases\n4) atest CtsBackupTestCases\n5) atest CtsBackupHostTestCases\n6) atest DeviceOwnerTest\n7) \u0027Backup Now\u0027 in Settings\n8) Cloud and d2d restore in SUW; deferred restore\n9) All \u0027adb shell bmgr\u0027 flows\n10) adb backup; adb restore\nChange-Id: Ib5a5837375fe950bc7d33a5e31cca16b605541f9\n"
    },
    {
      "commit": "50f27c4a60e214fa61f30fb25ca1cd5df7524cd4",
      "tree": "ae194cfdd7a634bb979bb4c71f29bcb4b816f7a6",
      "parents": [
        "bae652012f7504c9f6f8c88814c2e819b65765b3",
        "250cb2b97d724b36b5a447589eef33d541f4f217"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Nov 26 16:30:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 26 16:30:24 2018 +0000"
      },
      "message": "Merge changes from topic \"revert-to-single-threaded-oms-init\"\n\n* changes:\n  Decouple the display manager from the overlay manager\n  Revert: \"Init of OverlayManagerService on a parallel thread\"\n"
    },
    {
      "commit": "29397ce998c82b33df42ad4e8a822e83fa8495a0",
      "tree": "598cfd8c612d85a88aea1cc4a1151224aee373ce",
      "parents": [
        "e4e4432545af0d0ad0b11ad56d35e361b56efb5f"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Nov 16 17:30:36 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Nov 16 18:13:30 2018 -0800"
      },
      "message": "Temporarily disabled IntelligenceService.\n\nIt\u0027s not properly ignoring events when the service is not set, which is causing\nissues on some apps.\n\nFixes: 119659731\nTest: manual verification\n\nChange-Id: Ie271b8fcfde0bc2a5d6bf7c73b88bd6c48d50fdb\n"
    },
    {
      "commit": "250cb2b97d724b36b5a447589eef33d541f4f217",
      "tree": "7b2ba7f3eca1c880a018f7676bf205dbf43a42de",
      "parents": [
        "cd78e0f28bb441e6ded0d87805caf54c337136ca"
      ],
      "author": {
        "name": "Mårten Kongstad",
        "email": "marten.kongstad@sony.com",
        "time": "Fri Nov 02 11:01:44 2018 +0100"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Thu Nov 15 16:00:57 2018 -0800"
      },
      "message": "Decouple the display manager from the overlay manager\n\nThe display manager relies on resources that may or may not have been\nmodified via runtime resource overlay. Because the overlay manager is\ninitialized in parallel with the display manager, the two need to\nsynchronize their work so the display manager knows when it can rely on\nits resources.\n\nAn upcoming change will hold off on threading the system until after the\ninitialization of the overlay manager. This means all overlays should be\nsetup before other services start, which in turn means no additional\nsynchronization is required. As a first step towards this, remove the\nsynchronization between the display manager and the overlay manager.\n\nAlso remove unused variable LogicalDisplay#PROP_MASKING_INSET_TOP.\n\nBug: 80150169\nTest: builds, boots\nChange-Id: I844de9e09eb1464ae112e1b480d21cf662a026e0\n"
    },
    {
      "commit": "cb9172a0dbceeb30c7c7f1ddc83b32affc641d73",
      "tree": "4c0aab33652f9c1101d674e2dc3a4646fdbea9ff",
      "parents": [
        "4e998f917c8dff327a99294f81a61852b382b315",
        "927fbf0f279b3bd804147909be471fb294cc2922"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Nov 15 01:59:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 15 01:59:24 2018 +0000"
      },
      "message": "Merge \"Allow Intelligence Service app to obtain Clipboard permission.\""
    },
    {
      "commit": "c1d607e90d03dfb06fa3be4e65366aa89619832f",
      "tree": "8f96f4393d628363b5988d3e577d90a1c3e3ab67",
      "parents": [
        "9a710dad5f7bebdb09e55ed8fba13608fd757c37",
        "ea7d71b3aa12fb36383c72dd4f29014f92070797"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Nov 15 00:40:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 15 00:40:26 2018 +0000"
      },
      "message": "Merge \"Add ColorDisplayManager\""
    },
    {
      "commit": "927fbf0f279b3bd804147909be471fb294cc2922",
      "tree": "82cc734c8ae273ef58a53b9cc62afecc360950d5",
      "parents": [
        "e9f5e860547e7314c4c0e03fa4838c5b06164f5d"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Nov 12 17:27:23 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Nov 14 14:32:46 2018 -0800"
      },
      "message": "Allow Intelligence Service app to obtain Clipboard permission.\n\nTest: manual verification\n\nBug: 111276913\nFixes: 119440304\n\nChange-Id: I8dc97e4517367eaf8736741ce04040efaeb84355\n"
    },
    {
      "commit": "f84f1fd2d9bcb7af7b777d237cf36e9185499e83",
      "tree": "72d1279347c587abe1b18ba38fd579daaf459aed",
      "parents": [
        "cfe1988c8139ba0962cc701f4a21d61d39855b22",
        "6d492272b29e8a258ffd13ef082ae3f13ec9f10d"
      ],
      "author": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Tue Nov 13 20:02:27 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 13 20:02:27 2018 +0000"
      },
      "message": "Merge \"Add RoleManagerService as a boot phase\""
    },
    {
      "commit": "bae5bea23cfac3769569a230b56ad85cdd000675",
      "tree": "2f65b6e6b91999e42b89d83b5ddd6fe84c7edd73",
      "parents": [
        "b2eb6bd683022f2bab48eaaebdf1afc19dd35681"
      ],
      "author": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Mon Nov 12 15:08:30 2018 -0800"
      },
      "committer": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Mon Nov 12 15:20:20 2018 -0800"
      },
      "message": "Introduce multi-client IME for special form factors\n\nAn advanced multi-display support is requested for certain Android\nform-factors so that user(s) can type text on each display at the same\ntime without losing software keyboard focus in other displays. This is\nnot possible in existing Android IMEs that are built on top of\nInputMethodService class, because the assumption that a single IME\nclient can be focused at the same time was made before Android IME\nAPIs were introduced in Android 1.5 and many public APIs in\nInputMethodService have already relied heavily on that\nassumption. Updating InputMethodService class to support multi-client\nscenario is, however, quite challenging because:\n\n 1. doing so would introduce an unacceptable amount of complexity into\n    InputMethodService, which is already hard to maintain,\n\n 2. IME developers still need to update their implementation to be\n    able to support parallel requests from multiple focused IME\n    client, which may require non-trivial redesign in their side\n    (e.g. input decoder, typing history database, ...), and\n\n 3. actual use cases for multi IME clients are expected to be evolved\n    rapidly hence the new protocol is not yet stable and not yet ready\n    to be exposed as public APIs.\n\nThis is why a new type of IME needs to be designed and developed\nspecifically for such special multi-display environments, rather than\nreusing existing InputMethodService public class.\n\nNote that there must be no behavior change unless multi-client IME is\nexplicitly enabled with \u0027adb shell setprop\u0027, which requires root\npermission.\n\nSee multi-client-ime.md for details.\n\nFix: 114662040\nTest: Manually verified as follows:\n  1. make -j MultiClientInputMethod\n  2. adb install -r $OUT/system/priv-app/MultiClientInputMethod/MultiClientInputMethod.apk\n  3. adb root\n  4. adb shell setprop persist.debug.multi_client_ime \\\n       com.example.android.multiclientinputmethod/.MultiClientInputMethod\n  5. adb reboot\n  6. Try multiple text input scenario\nChange-Id: I41dfe854557b178d8af740bc2869c936fc88608b\n"
    },
    {
      "commit": "6d492272b29e8a258ffd13ef082ae3f13ec9f10d",
      "tree": "5dfc67244581b59441d6c2664bca0d7da68ed203",
      "parents": [
        "3c91545b8f86f3ce80503263b3bcfc2a0d8767ff"
      ],
      "author": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Thu Nov 08 16:25:28 2018 -0800"
      },
      "committer": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Mon Nov 12 22:18:27 2018 +0000"
      },
      "message": "Add RoleManagerService as a boot phase\n\nFor now it just reads the xml config file on boot\n\nTest: adb logcat | grep -n20 Role # during boot\nChange-Id: Iad907fe9bf52f5ed15066484aec60b3a9f51568a\n"
    },
    {
      "commit": "2112895bb4fa689322134d85b2fb418720865442",
      "tree": "819c1e04c4e443301881d2940748448fde6ba157",
      "parents": [
        "e01fd194262aca57be3e1bbf0c7ed99a289869cd",
        "0a1b32245edcacc77ed38f639f90a0c0fb7d4fbe"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Nov 12 02:11:41 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 12 02:11:41 2018 +0000"
      },
      "message": "Merge \"SystemServer: Support deviceSpecificAudioService for ARC\""
    },
    {
      "commit": "a85b4a2d29c6770de65529ecf95cb6ca90fa7a0b",
      "tree": "7e1893c7b6b10be6ea834c01434097c5c05e1f39",
      "parents": [
        "c578d38eb752c9ab3edaada6c4bd53900425f184",
        "e739daf2e844dafa34110dce13008499d3e10aeb"
      ],
      "author": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Fri Nov 09 04:42:35 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 09 04:42:35 2018 +0000"
      },
      "message": "Merge \"Return correct error when HW there is no biometric hardware\""
    },
    {
      "commit": "c1246e6c364bbfef18d566f6b16f46ca1a5216c5",
      "tree": "581fdf18356d1f556b0ab61c1163f46ee631ce1a",
      "parents": [
        "f517f971614315a68af3a5b6842787f9950d3d52"
      ],
      "author": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Thu Nov 08 13:13:54 2018 +0900"
      },
      "committer": {
        "name": "Inseob Kim",
        "email": "inseob@google.com",
        "time": "Thu Nov 08 20:29:13 2018 +0000"
      },
      "message": "Schematize vold system properties\n\nProperties accessed across partitions are now schematized and will\nbecome APIs to make explicit interfaces among partitions.\n\nBug: 117924132\nTest: m -j\nChange-Id: I8e04f643197b6c8a60cc38c6979e41c5de3469f5\n(cherry picked from commit 0cf5fc1433ef113d33d40b62cfca9ce97de12a4b)\n"
    },
    {
      "commit": "355ea855f685bf17f49b796c856848bcc262616a",
      "tree": "1343b414c38b56f2dccb6063297e3c6862e4043b",
      "parents": [
        "3401e9fef2320185044a673f1cfa68a54df70cbe",
        "1f5e53d4a613488ae12a7d17fedfbf702bf2bffa"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Thu Nov 08 14:48:43 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 08 14:48:43 2018 +0000"
      },
      "message": "Merge \"Unify Activities and Windows under one lock (38/n)\""
    },
    {
      "commit": "0a1b32245edcacc77ed38f639f90a0c0fb7d4fbe",
      "tree": "b368aba8f12aed6c428aa940e062c8139c7f5efc",
      "parents": [
        "3cbf07268f0ea3f70779a31af61870fea867e4d4"
      ],
      "author": {
        "name": "paulhsia",
        "email": "paulhsia@google.com",
        "time": "Thu Nov 08 18:15:46 2018 +0800"
      },
      "committer": {
        "name": "paulhsia",
        "email": "paulhsia@google.com",
        "time": "Thu Nov 08 18:29:42 2018 +0800"
      },
      "message": "SystemServer: Support deviceSpecificAudioService for ARC\n\nLoad device specific audio service for needed devices.\n\nBug: 119241152\nTest: Apply full topic to test Arc audio functionality\nChange-Id: Ibc1a7844faf5a6e54acc3342cf603023ada74b92\n"
    },
    {
      "commit": "bad7c206063d1d0dc84853d11bc8621d308e9e6e",
      "tree": "342e4dd7816922ed1d1bc1c782000c25c89c7ccb",
      "parents": [
        "630630cf6b1b26b4eaeaf35d0303b5263e8c1fff"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Thu Nov 01 11:57:39 2018 -0700"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Wed Nov 07 13:38:57 2018 -0800"
      },
      "message": "Add thermal service into system_server\n\nThis system service will listen to ThermalHAL for throttling events and\ntake actions accordingly, e.g. shutdown device and/or sending\nnotification to registered listeners to IThermalSerivce.\n\nBug: 79443945\nBug: 118510237\nBug: 111086696\nBug: 116541003\nTest: Boot and test callback on ThermalHAL 1.1\nTest: Boot and test callback on ThermalHAL 2.0\nTest: Kill ThermalHAL process\nTest: Change device threshold to trigger shutdown\nChange-Id: I1f4066c9f1cf9ab46c1738a0a4435802512e4339\n"
    },
    {
      "commit": "1f5e53d4a613488ae12a7d17fedfbf702bf2bffa",
      "tree": "4929f7b165a7f9f8d88fb5f0baf2fc8712216601",
      "parents": [
        "38762429f999034ad8a87c8d90963ec6a2f68fad"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Mon Nov 05 05:12:46 2018 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Wed Nov 07 07:09:35 2018 -0800"
      },
      "message": "Unify Activities and Windows under one lock (38/n)\n\nFinal step before we actually start unifing the hierarchy is to have\nactivity and window manager under one lock. This CL makes it so.\nNote, that there are probably areas where this change might lead to dealock\nhowever we can fix those areas as we discover them.\n\nTest: Existing tests pass\nBug: 80414790\nChange-Id: Ie4b71d4ceb986256482031a99065b8d2ef60ebe8\n"
    },
    {
      "commit": "e739daf2e844dafa34110dce13008499d3e10aeb",
      "tree": "dcd824c6cf025a36af21602467da05d27ff14b96",
      "parents": [
        "b95e7b7bc210b142b1d64cf16cf8634d768ac236"
      ],
      "author": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Tue Nov 06 17:11:06 2018 -0800"
      },
      "committer": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Tue Nov 06 20:08:42 2018 -0800"
      },
      "message": "Return correct error when HW there is no biometric hardware\n\nDevices that have no biometric hardware should still get the\nBIOMETRIC_ERROR_HW_NOT_PRESENT error. Currently they get the\nBIOMETRIC_ERROR_HW_UNAVAILABLE error which is slightly wrong.\n\nFixes: 119109074\n\nTest: Builds\nChange-Id: I32134a35fd2844bc6a4a64ded9695ae596496ef2\n"
    },
    {
      "commit": "ea7d71b3aa12fb36383c72dd4f29014f92070797",
      "tree": "50509a15422adba9e10ede3c2873a72062ac3bf7",
      "parents": [
        "3d171b2a0f6c78437e2c529f056f405357a462d7"
      ],
      "author": {
        "name": "Christine Franks",
        "email": "christyfranks@google.com",
        "time": "Tue Jul 03 14:46:07 2018 -0700"
      },
      "committer": {
        "name": "Christine Franks",
        "email": "christyfranks@google.com",
        "time": "Tue Nov 06 21:31:15 2018 +0000"
      },
      "message": "Add ColorDisplayManager\n\nAdd ColorDisplayManager class, and shift some functionality from\nColorDisplayController\n\nBug: 111215474\nTest: atest FrameworksServicesTest:ColorDisplayServiceTest\nChange-Id: Ic38a12e1e0b0619fdad42a89b7ac3e878c8128b2\n"
    },
    {
      "commit": "e348dc3486765cc04a66d93d289f36e925eea368",
      "tree": "ecb0691338390e1874bd78480a62d50947e1b423",
      "parents": [
        "e0c2f7e17d2dfb426d1f0f09a5f61c4284fd150e"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Nov 05 12:35:29 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Nov 06 10:01:02 2018 -0800"
      },
      "message": "Initial implementation of the IntelligenceService pipeline.\n\nIt\u0027s still full of TODOs, but at leats it now provides an end-to-end\nworkflow from the activity creation / destruction to the service implementation.\n\nTest: mmm -j packages/experimental/FillService \u0026\u0026 \\\n      adb install -r ${OUT}/data/app/FillService/FillService.apk \u0026\u0026 \\\n      adb shell settings put secure intel_service foo.bar.fill/.AiaiService\nBug: 111276913\n\nChange-Id: Id5daf7b8b51e97c74d9b6ec00f953ddb02b48e46\n"
    },
    {
      "commit": "8d45688b6d4d0cb917dd2d198de8ca539cdbbdba",
      "tree": "a2873b5fafdb2f38ed2e6b7d174f5ddf8695465f",
      "parents": [
        "8f126e98b7d28afe7faefbf77639cc5367e85e21",
        "51676d293a1e971646071d57fbd12a7d7b655fe4"
      ],
      "author": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Tue Nov 06 06:29:22 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 06 06:29:22 2018 +0000"
      },
      "message": "Merge \"Add placeholders for IrisManager/Service\""
    },
    {
      "commit": "51676d293a1e971646071d57fbd12a7d7b655fe4",
      "tree": "6cb0b08556e35c62cd35e3eaa85fb6588592f370",
      "parents": [
        "353eab924f0a00034189caf7142080a1e6cb346f"
      ],
      "author": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Mon Nov 05 18:00:43 2018 -0800"
      },
      "committer": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Mon Nov 05 18:57:15 2018 -0800"
      },
      "message": "Add placeholders for IrisManager/Service\n\nWith the system services in place, we can add SELinux policies\n\nBug: 116530289\n\nTest: Builds\nChange-Id: I0fd0dfbbbf258eb4a0ef9019247baaf323578959\n"
    },
    {
      "commit": "595070969de0a7334d251d5448b641e856e052bc",
      "tree": "a8162d5722120111d0d43dc240c641aad68ec17a",
      "parents": [
        "8be8936abbbdefa5169d096f52412b79686f9fca"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Mon Oct 29 09:00:30 2018 -0700"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Sat Nov 03 23:23:06 2018 -0700"
      },
      "message": "Moved Activity management out of ActivityManager to WindowManager (37/n)\n\nWhat could go wrong ;)\n\nNote that ATMS and all other activity management files are still under\nthe AMS lock. We will be changing them soon to use the WMS lock, but\ntill then it is important to take care not to use the WMS lock for\nactivities stuff and AMS lock for window stuff.\n\nTest: Existing tests pass\nBug: 80414790\nChange-Id: I69f5a6e40ad892557a425e1f34be987507102136\n"
    },
    {
      "commit": "f74bfdee01d1100830139529d118ac202be8aad8",
      "tree": "e185106f4a57427d2dfaf385438f47940e046f42",
      "parents": [
        "8429eb923ef972aedeb43fc4902f3dc042f12664"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Jan 18 15:42:48 2018 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Oct 31 16:11:01 2018 +0900"
      },
      "message": "Add empty AdbService to SystemServer\n\nCreate skeleton service to migrate functions from UsbService in later\nchange.\n\nBug: 63820489\nTest: make\nChange-Id: I07672fe87cfae188fe77c173fc49119e182c6b05\n"
    },
    {
      "commit": "3c27f0b88df7741178959288cdc65f14ef18540b",
      "tree": "82d09a63818a7a22b4cd0050a53c576e6dea57a8",
      "parents": [
        "018f47a2b045f5941dce29c5101e090ffaf20dee",
        "7bd2e0ce26f661a41c893cb420aabc50403d5d3b"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Oct 11 09:15:06 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 11 09:15:06 2018 -0700"
      },
      "message": "Merge \"Frameworks: Add VMRuntime.hasBootImageSpaces check\" am: 9135811848 am: b9da5284fc\nam: 7bd2e0ce26\n\nChange-Id: I1925a99d5f8128caded1c2f11956e3df7d4a9e08\n"
    },
    {
      "commit": "7bd2e0ce26f661a41c893cb420aabc50403d5d3b",
      "tree": "c19be7891f37280385abef222be7b7769c13bf40",
      "parents": [
        "367f6a20983d421a91a0df63822858d656b4db87",
        "b9da5284fc3331cc4aa937b9c92f5c964aeda7d1"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Oct 11 08:59:08 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 11 08:59:08 2018 -0700"
      },
      "message": "Merge \"Frameworks: Add VMRuntime.hasBootImageSpaces check\" am: 9135811848\nam: b9da5284fc\n\nChange-Id: Ib02426fb94ab9fc4b448ebb5f4d928ec2cb7afbf\n"
    },
    {
      "commit": "04618d545622f34d52673acb591ee02d8c9e1efc",
      "tree": "6280afc62568341e6bdc97df934bdad5e1fa1863",
      "parents": [
        "096371b71921d6f25d27c55874d10850a5085c8b",
        "2667c1dfa2798dd28b4dc8fe986f0676c5d48209"
      ],
      "author": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Wed Oct 10 21:23:50 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Oct 10 21:23:50 2018 -0700"
      },
      "message": "Merge \"Do not start VrManagerService if VR is not supported\" into pi-dev\nam: 2667c1dfa2\n\nChange-Id: I76eb570e1c08ee57d931221169b503033e466d49\n"
    },
    {
      "commit": "e697a4fc648f5c66a96f6f9450a9e79ba8952101",
      "tree": "831d6daa523e7c7ef4c287ca3ad296905803b096",
      "parents": [
        "0d3f4e61c99057c7e40c9159ba08286c34cf797c"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Oct 09 10:40:52 2018 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Oct 09 11:24:24 2018 -0700"
      },
      "message": "Frameworks: Add VMRuntime.hasBootImageSpaces check\n\nLog a wtf in the system server when the runtime does not\nuse a boot image.\n\nTest: m\nTest: system boots\nChange-Id: I087c269dd1e95eeeab5db4250133f9c61e9399c7\n"
    },
    {
      "commit": "20dd431f201104d362f1a3ecffc091685733b494",
      "tree": "360aa2f9bf45e9b41d2da8aeecba59715167c7ee",
      "parents": [
        "918bc902cefacd5de13718a85e1236fe437f14d5"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Oct 08 16:56:49 2018 -0700"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Oct 08 16:56:49 2018 -0700"
      },
      "message": "Do not allow to revert setForceSafeLabel\n\nTest: Built\nBug: 116798569\nChange-Id: I3f26d4466c84d3decb1c4962fb45e900ba35f68e\n"
    },
    {
      "commit": "df7e481b2008555c1a8f2f5d29addf9fda7527a6",
      "tree": "0dc2a7b0402cb123894d8b74aa259298efa4e4b3",
      "parents": [
        "d4cf67e2966fd5c577211f37e10a3f69eaf530cf"
      ],
      "author": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Mon Sep 24 14:31:25 2018 -0700"
      },
      "committer": {
        "name": "Makoto Onuki",
        "email": "omakoto@google.com",
        "time": "Wed Sep 26 11:51:06 2018 -0700"
      },
      "message": "Add API surface for \"keep SMS app running\".\n\nBug: 109809543\nTest: build \u0026 boot\nChange-Id: Ie9ebf1f34052394a92c3f260413c18596709d3a3\n"
    },
    {
      "commit": "336be262814adb968a0dcd335076f9225503888b",
      "tree": "1a6f4b76fba5e0cd13bee45b400991d98495557b",
      "parents": [
        "47a17eb077944564e84fa8ff47983f39a2ed5d4f"
      ],
      "author": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Sat Sep 08 19:16:45 2018 +0800"
      },
      "committer": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Mon Sep 24 12:57:42 2018 +0800"
      },
      "message": "Do not start VrManagerService if VR is not supported\n\nWhen VR mode is not supported by removing the feature of\nandroid.hardware.vr.high_performance, do not start VrManagerService.\nOtherwise, there will be undesired behavior, such as calling into\nPowerHal/VrHal for VR hints.\n\nTest: no undesired behavior observed\nBug: 116427118\nChange-Id: I3e3c1f02c2fad958d8659d7957d005d25d823c3e\nMerged-In: I3e3c1f02c2fad958d8659d7957d005d25d823c3e\n"
    },
    {
      "commit": "352adfec613a74001c72113bed0c2e0bae6ae2e7",
      "tree": "0335bab7aeec3b7659fc6709ee88bd29ac1c32d2",
      "parents": [
        "355c6bfba650ff9e177c9d86ceb4ecb34541e725"
      ],
      "author": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Thu Sep 20 22:28:50 2018 -0700"
      },
      "committer": {
        "name": "Kevin Chyn",
        "email": "kchyn@google.com",
        "time": "Thu Sep 20 23:51:40 2018 -0700"
      },
      "message": "2/n: Rename BiometricPromptService to BiometricService\n\nThis is in preparation for BiometricManager. Each Manager should have its\nown Service.\n\nBug: 112570477\n\nTest: BiometricPromptDemo works\nChange-Id: Ibbbd499a0fd5a2050b329ee038776c6c9f49cdb2\n"
    },
    {
      "commit": "229a0718ff31bf83521e3a774485bb48573987f7",
      "tree": "d3ceadf8ece12226b732c428531c0c601dd2c3c8",
      "parents": [
        "0ee549d67b64ef39bad086752dc7f4cebe44623a",
        "eb1e8049c173fb778377f5c9bcee1151eaf3a6e5"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Sep 15 00:53:35 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Sep 15 00:53:35 2018 +0000"
      },
      "message": "Merge \"Move TextServicesManagerService to com.android.server.textservices\""
    },
    {
      "commit": "723438885d4e751e85366cfee26d54fb66d990ec",
      "tree": "488fb59dd29d34d191a0da1a5a6c5a406fea71a9",
      "parents": [
        "85b5bf530903e5a0b803a810773e2052aafa64c2",
        "b2875925783b21d587d862d80922cd2004b1f6b0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 14 20:00:22 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 14 20:00:22 2018 +0000"
      },
      "message": "Merge \"Revert \"Revert \"Do not start VrManagerService if VR is not supported\"\"\""
    },
    {
      "commit": "117fcb06fc0c5986e3fcf94664ee09de43ad8080",
      "tree": "021ecaf97fddcfbe2fefa703846ded98d60910d5",
      "parents": [
        "beb077d987bed4e45a3e6ec7e3b8468ec66e1a0b"
      ],
      "author": {
        "name": "Steve Paik",
        "email": "spaik@google.com",
        "time": "Thu Sep 13 09:43:54 2018 -0700"
      },
      "committer": {
        "name": "Steve Paik",
        "email": "spaik@google.com",
        "time": "Thu Sep 13 17:20:33 2018 +0000"
      },
      "message": "Add disableNetworkTime config property\n\nThis was removed as part of this bug because the config wasn\u0027t used:\n\n    Bug 64052650\n    Change-Id I5c8ed3f0e78c2ed0d2e733939a82e1ab8940de22\n\nThis is now needed by Android Automotive since the network module may\nlive off board in a vehicle.\n\nBug: 110800197\nTest: make \u0026 flash\nChange-Id: I3715602e7fb22503d6867b61c22bdcb963174059\n"
    },
    {
      "commit": "eb1e8049c173fb778377f5c9bcee1151eaf3a6e5",
      "tree": "12657463d749cfe5f0b6de2640fd7e110fb14bd5",
      "parents": [
        "e8f85ab95e0c571fe78903dcac18a6ff3356f1ce"
      ],
      "author": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Wed Sep 12 14:02:00 2018 -0700"
      },
      "committer": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Wed Sep 12 14:02:00 2018 -0700"
      },
      "message": "Move TextServicesManagerService to com.android.server.textservices\n\nThis CL moves TextServicesManagerService (TSMS)\n  from com.android.server\n    to com.android.server.textservices\nso that we can mechanically factor out inner classes from IMMS to\nseparate package private classes.\n\nThis is purely a mechanical refactoring of an implementation detail.\nThere should be no observable behavior difference.\n\nFix: 115516399\nTest: manually verified with AOSP spellchecker\nChange-Id: Iaaf627e48e3f040795f58e03b1292a991afb82b4\n"
    },
    {
      "commit": "b2875925783b21d587d862d80922cd2004b1f6b0",
      "tree": "26038fac0711e2ca85788ce2ceba5f752b765067",
      "parents": [
        "f5d99fa7d93f82701c188c4048f0c2a5af122fae"
      ],
      "author": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Wed Sep 12 11:07:25 2018 +0000"
      },
      "committer": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Wed Sep 12 11:07:25 2018 +0000"
      },
      "message": "Revert \"Revert \"Do not start VrManagerService if VR is not supported\"\"\n\nThis reverts commit f5d99fa7d93f82701c188c4048f0c2a5af122fae.\n\nBug: 112064298\nChange-Id: Ib2b595f8f98a577af205d5169af28a185ef00f03\n"
    },
    {
      "commit": "603f4d00c613c464f2ce5b6a831dda811dbf5138",
      "tree": "d285a40937311af294bc35c1c3457360eb4ba68e",
      "parents": [
        "e3427ee4c7fcb1554201a5b514c600641ace66f8"
      ],
      "author": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Tue Sep 11 15:04:58 2018 -0700"
      },
      "committer": {
        "name": "Yohei Yukawa",
        "email": "yukawa@google.com",
        "time": "Tue Sep 11 15:04:58 2018 -0700"
      },
      "message": "Move InputMethodManagerService to com.android.server.inputmethod\n\nThis CL moves InputMethodManagerService (IMMS)\n  from com.android.server\n    to com.android.server.inputmethod\nso that we can mechanically factor out inner classes from IMMS to\nseparate package private classes.\n\nThis is purely a mechanical refactoring of an implementation detail.\nThere should be no observable behavior difference.\n\nFix: 114660660\nTest: atest CtsInputMethodTestCases CtsInputMethodServiceHostTestCases\nTest: atest FrameworksCoreTests:com.android.internal.inputmethod\nChange-Id: I023d8f2863601ee54f304988117d8ea750770f70\n"
    },
    {
      "commit": "f5d99fa7d93f82701c188c4048f0c2a5af122fae",
      "tree": "60ef77cfd2743d00670af1d78766563e683b56ae",
      "parents": [
        "82254ae30beb20539d49c4ec6b9eae4c46b783a5"
      ],
      "author": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Mon Sep 10 18:03:34 2018 +0200"
      },
      "committer": {
        "name": "Adrian Roos",
        "email": "roosa@google.com",
        "time": "Mon Sep 10 16:09:59 2018 +0000"
      },
      "message": "Revert \"Do not start VrManagerService if VR is not supported\"\n\nThis reverts commit af1eda2654cad6aecfbd8fcc02075c01c505c737.\nBug: 112064298\nChange-Id: Ie7912c055e8e27250b0404e337813c0ee670b1de\n"
    },
    {
      "commit": "af1eda2654cad6aecfbd8fcc02075c01c505c737",
      "tree": "b9a4292987a3a8a4144db9f4b04b9aaab9931d97",
      "parents": [
        "ddf1b4b476d6872a27f5e47d5816ab0e1db6b4c6"
      ],
      "author": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Sat Sep 08 19:16:45 2018 +0800"
      },
      "committer": {
        "name": "Rick Yiu",
        "email": "rickyiu@google.com",
        "time": "Sat Sep 08 19:21:31 2018 +0800"
      },
      "message": "Do not start VrManagerService if VR is not supported\n\nWhen VR mode is not supported by removing the feature of\nandroid.hardware.vr.high_performance, do not start VrManagerService.\nOtherwise, there will be undesired behavior, such as calling into\nPowerHal/VrHal for VR hints.\n\nTest: no undesired behavior observed\nBug: 112064298\nChange-Id: I3e3c1f02c2fad958d8659d7957d005d25d823c3e\n"
    },
    {
      "commit": "dfdc67d9cf899fab05b8bd6dc11b56479033e3de",
      "tree": "d8f1555e970e3699ab1f57efef998bd129a36a4d",
      "parents": [
        "826a36c19b5ca86bf976f66c45c703fdc8db92ee",
        "6226c2ff3ca5ae39a01e794f18cc067069d77928"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 07 02:19:37 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 07 02:19:37 2018 +0000"
      },
      "message": "Merge \"Injecting system calls into alarm manager\""
    },
    {
      "commit": "6226c2ff3ca5ae39a01e794f18cc067069d77928",
      "tree": "85415f13a026f2fa11dfb2b980723d7cfc146457",
      "parents": [
        "0d100c0ace3e9a6a6cabeafb70f68b385685d414"
      ],
      "author": {
        "name": "Suprabh Shukla",
        "email": "suprabh@google.com",
        "time": "Wed Aug 22 18:15:04 2018 -0700"
      },
      "committer": {
        "name": "Suprabh Shukla",
        "email": "suprabh@google.com",
        "time": "Thu Sep 06 16:20:30 2018 -0700"
      },
      "message": "Injecting system calls into alarm manager\n\nInjecting and mocking dependencies to make the service unit testable.\nShuffled around initialization to make that possible.\n\nAlso added the first batch of unit tests. The idea is to have extensive\ncoverage of minute pieces of alarm manager logic, which should help us\ncatch any regressions caused by future changes to the code.\n\nTest: atest com.android.server.AlarmManagerServiceTest\natest CtsAlarmManagerTestCases\n\nBug: 111454659\nChange-Id: Ifa1c09646f688cf5c41abe17d98dbc19978eac70\n"
    },
    {
      "commit": "c80c81a516930a61a516291f0ac1d6c9da2854fa",
      "tree": "55d9034c780e00932b5b40edd61e7f6e1142b143",
      "parents": [
        "3680ae6276850d8750170b6364bd5162ecebff2e"
      ],
      "author": {
        "name": "Marcin Oczeretko",
        "email": "marcinoc@google.com",
        "time": "Thu Aug 30 20:15:52 2018 +0100"
      },
      "committer": {
        "name": "Marcin Oczeretko",
        "email": "marcinoc@google.com",
        "time": "Thu Sep 06 10:54:55 2018 +0100"
      },
      "message": "Extract CachedDeviceState from BinderCallsStats\n\nAdd a service that tracks the device state properties which are\ninteresting to System Server telemetry services. Allows the services to\nshare this code and have consistent state information.\n\nTest: Unit tests and manually tested\nChange-Id: Ia5c78c45a55414a0c5c46202db2a37283b50a703\n"
    },
    {
      "commit": "d8cc8593c0cd760092ccc3d83225d9fafdf8e392",
      "tree": "049718a81ebb3c567bfa0013b746a2ce4070d94a",
      "parents": [
        "2af55bf3672db221899aac8742825b09adca2a14"
      ],
      "author": {
        "name": "Marcin Oczeretko",
        "email": "marcinoc@google.com",
        "time": "Wed Aug 22 16:07:36 2018 +0100"
      },
      "committer": {
        "name": "Marcin Oczeretko",
        "email": "marcinoc@google.com",
        "time": "Mon Sep 03 16:06:06 2018 +0100"
      },
      "message": "Collect telemetry data for System Server Loopers.\n\nAdds LooperStats and LooperStatsService which set a static\nLooper.Observer to record the count of dispatched messages and\ncpu/latency information. The aggregated stats are collected by\nWestworld as pulled atoms.\n\nThe collection is disabled by default and requires a manual call to\nenable:\n\nadb shell cmd looper_stats enable\n\nTest: Unit tests and tested manually that the collected data seems\nreasonable.\n\nChange-Id: I7162fbca4e324f62887f95df3405205cbe4416ca\n"
    }
  ],
  "next": "49fa609ba085209845af2881edb9c19123f3b375"
}
