)]}'
{
  "log": [
    {
      "commit": "bf0a9a7445ffb8718d238d43833f48893e8d5d41",
      "tree": "f2c57977e9995415f5139d3619ce4cc67b6c011c",
      "parents": [
        "8e3a16ad9179d40b27533b7710356b3898b4628c"
      ],
      "author": {
        "name": "Sudheer Shanka",
        "email": "sudheersai@google.com",
        "time": "Thu Jun 16 08:58:00 2016 -0700"
      },
      "committer": {
        "name": "Sudheer Shanka",
        "email": "sudheersai@google.com",
        "time": "Thu Jun 16 09:43:29 2016 -0700"
      },
      "message": "Add pm operation to set user restrictions.\n\nBug: 29189712\nChange-Id: I6fdb3b68dfe3f51119e5ce8008880fc7d9c793df\n"
    },
    {
      "commit": "3fb03313e9d0e41f7c14b648c0f4dcfdab78bff3",
      "tree": "334d46231acf15cf34bf940f3d44f9d45ed9983c",
      "parents": [
        "0a9ccf26192bc5a6fd74afb7afd4834b08230299"
      ],
      "author": {
        "name": "Allen Hair",
        "email": "allenhair@google.com",
        "time": "Mon May 23 16:31:34 2016 -0700"
      },
      "committer": {
        "name": "Allen Hair",
        "email": "allenhair@google.com",
        "time": "Tue May 24 11:10:44 2016 -0700"
      },
      "message": "Deprecate shell-based UI Automator.\n\nChange-Id: I15aee7a6aba551b737d2c41b4fafd5b0ced9a4b7\n"
    },
    {
      "commit": "0c4e6a8da3405f742e5cef8afdf579d58b6f1246",
      "tree": "86e49d3786d9b9487fb0d61f26c7f4429572f7b2",
      "parents": [
        "3f84c5cb34cf15ad7c324ff9063f3f5850682791"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 13 17:37:08 2016 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 13 17:37:08 2016 -0700"
      },
      "message": "Fix issue #27532364: Security Vulnerability in IIntentSender.send\n\nWe need to make IIntentSender oneway...  but when the system is\ncalling that for itself, it needs to be able to return a result code.\n\nSolution: instead of directly calling the interface, we have a new\nIPC through the activity manager.  If the thing being used is the\nactivity manager impl, it can do the synchronous send and return\nthe result directly in place.  If not, you only get asynchronous\nsending and thus never a failure result back (too bad for you!).\n\nChange-Id: I4096e5b00063e8dba66230585a2dfe67e35e8092\n"
    },
    {
      "commit": "27d92e4e397728d56f4f951dd4ce99668c7c447b",
      "tree": "642d4a43d064e6aa1680ca12a222f1328a170786",
      "parents": [
        "f970410afef518003c84eef022194848b2a4f606"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri May 06 11:25:11 2016 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri May 06 11:25:11 2016 -0700"
      },
      "message": "Move the \u0027pretend idle jobs can run now\u0027 broadcast into AMS\n\nIt\u0027s a protected broadcast, so sending it directly from \u0027am\u0027 is\nno longer an option.  This is needed for CTS as well as being\ngenerally useful during app development.\n\nBug 28406044\n\nChange-Id: I101915a8c6f19454330a8db2079a75023c112582\n"
    },
    {
      "commit": "3088ff85a54e4aea2667d0050d42ca6c5203f972",
      "tree": "b5c2bab8cb4d10cc4c5f05da267d540d28bf1764",
      "parents": [
        "2c3f2c4da90613bafc93ed34e53867da10084212"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Apr 21 16:18:24 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Apr 27 13:40:43 2016 -0700"
      },
      "message": "zygote: Remove NativeLoader initialization step\n\nThis now done by art Runtime::Start()\n\nBug: http://b/28320913\nChange-Id: Icf9b11954b732c9f953e02bba9ae52eb91117457\n(cherry picked from commit 6a850b3f11cff546c962fc87ffc961a267973cd4)\n"
    },
    {
      "commit": "a4ab6a0683c33f5509bd1e2617c5d2b43756b05f",
      "tree": "ef803701ca82164cb714ca210147c4657da0bcaf",
      "parents": [
        "24b6e2bcc88ed6e142eae8ebd11cb90a70da588f",
        "435ce5ff1ca368056675e06f3f2416240613fbdd"
      ],
      "author": {
        "name": "Andrii Kulian",
        "email": "akulian@google.com",
        "time": "Wed Apr 27 02:13:10 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 27 02:13:12 2016 +0000"
      },
      "message": "Merge \"Allow setting fullscreen stack as target via adb shell\" into nyc-dev"
    },
    {
      "commit": "b1072718130b998e6d25bc3358eefa62b4fa5a2d",
      "tree": "863749a94ab1ebb6c023bebe932197af2a50a5ca",
      "parents": [
        "34510eb2933b98f0c8c73f9a7be5eae911a14210"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Apr 26 15:41:20 2016 -0700"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Apr 26 16:25:43 2016 -0700"
      },
      "message": "Don\u0027t override pre-release target sdk\n\nIf a package targets a pre-release SDK [eg a letter version] it should not\nbe allowed to be upgraded by a release SDK [eg a number version]. If one\nabsolutely must upgrade to a release SDK, use the \"--force-sdk\" option\nduring install.\n\nBug: 28345311\nChange-Id: Ic9fb209968e7c5da2c80c5ca4c0f44f5125f610a\n"
    },
    {
      "commit": "435ce5ff1ca368056675e06f3f2416240613fbdd",
      "tree": "79277a36558ab32c074336a245ddf73db93f39d8",
      "parents": [
        "d6a39495881ee89c9217ab0764b948b6eb773aea"
      ],
      "author": {
        "name": "Andrii Kulian",
        "email": "akulian@google.com",
        "time": "Tue Apr 26 00:00:01 2016 -0700"
      },
      "committer": {
        "name": "Andrii Kulian",
        "email": "akulian@google.com",
        "time": "Tue Apr 26 00:00:01 2016 -0700"
      },
      "message": "Allow setting fullscreen stack as target via adb shell\n\nBug: 27906038\nChange-Id: Ie6feede3f7c412bc51550626a008cb0729e5e0e0\n"
    },
    {
      "commit": "47763629fe5469d1ea3fb20e42f247da6513cdd2",
      "tree": "69142792d4db423239bdf8c1561ec74b0d471e2a",
      "parents": [
        "0fea8ad44748abd031c2e73cd5e6bce6a086c5f3"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Apr 19 13:50:53 2016 -0700"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Thu Apr 21 15:21:20 2016 -0700"
      },
      "message": "Add \"do not kill\" install option\n\nPassing the \"--dont-kill\" argument to pm install-create can be used to\ninstall a feature split without killing the contianing application.\nUse with caution.\n\nBug: 27780548\nChange-Id: I743ac4f640c9c4251d1b3bc70ddf428bd79e07bf\n"
    },
    {
      "commit": "38dcca51a739d3273b24e84ba5e89e505f45960c",
      "tree": "44f032b881815aa7e28670424c308b1c74daa7ef",
      "parents": [
        "882a0802a7f7268750b15adb8747dd3904f935b0"
      ],
      "author": {
        "name": "Kenny Guy",
        "email": "kennyguy@google.com",
        "time": "Tue Apr 19 13:09:18 2016 +0100"
      },
      "committer": {
        "name": "Kenny Guy",
        "email": "kennyguy@google.com",
        "time": "Tue Apr 19 20:10:56 2016 +0100"
      },
      "message": "Add test method to remove admins.\n\nAdd test method to remove admins that declare\nFLAG_TEST_APP without informing them.\nThe method will also remove the device and profile\nowner status of the admin.\n\nBug: 28027468\nChange-Id: Idb4d3299a9c6595c94bfb424546cd8a384131835\n"
    },
    {
      "commit": "a09b4d2a611a7606e8fc8c73a24bd941b6fc173f",
      "tree": "01aea7a04f295a771c0145c5f78b7bcb66f194fe",
      "parents": [
        "988a20a94b71c7a8fdffcfbfe0b0ee0dd58854cb"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Apr 15 18:32:45 2016 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Apr 18 09:55:59 2016 +0100"
      },
      "message": "Remove unnecessary allocation+unboxing of objects.\n\nTransforming String-\u003eint can be done with 0 allocations\nusing Integer.parseInt.\n\nbug: 28078871\nChange-Id: I8d9f322d7154728849dde61ef282046032858d60\n"
    },
    {
      "commit": "33dd156ed0ed839c5e77beb116f6f1a9566416e3",
      "tree": "422df35c64e0ee561b5495db795680e935e4a163",
      "parents": [
        "5dab713ff0c28ff264d5b26dd1a97bc37eee2d55"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Apr 07 11:05:33 2016 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Apr 07 11:30:55 2016 -0600"
      },
      "message": "Give users and devices control over sdcardfs.\n\nInstead of relying only on kernel support for sdcardfs, give each\ndevice the ability to quickly toggle between sdcardfs and FUSE.  Also\nadd the ability to users to explicitly enable/disable the behavior\nfor testing and debugging purposes.\n\nBug: 27991427\nChange-Id: Ia57f12f6ead888ab85101004bdd8c8003537b116\n"
    },
    {
      "commit": "01ee1b7eb6debec3d422bc798df3bc180dc979ae",
      "tree": "26a3e0d0c86c9d0db4c6cff7d8f2a14804fad909",
      "parents": [
        "ebdb34d67aead66e5388c8cb501eb34668d7cec3"
      ],
      "author": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Apr 04 15:55:01 2016 -0700"
      },
      "committer": {
        "name": "Philip P. Moltmann",
        "email": "moltmann@google.com",
        "time": "Mon Apr 04 16:37:37 2016 -0700"
      },
      "message": "Allow to provide only a component name prefix to \u0027am instrument\u0027\n\nBug: 27831862\nChange-Id: I1d57e416c47fc7d9ea212f0002986932663081b8\n"
    },
    {
      "commit": "b5e89c6debca90be92bf5bc2e0e79d109de6d08f",
      "tree": "0a5caae160e405b7bce6943572bff0c76bff8c99",
      "parents": [
        "6855c48093e109c92df39340a8355a3be2540b8e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Apr 01 23:20:31 2016 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Apr 02 19:31:19 2016 -0600"
      },
      "message": "Support direct-boot tests.\n\nAdd shell commands to check on current FBE status and system ready\nstatus.  Mark variables without first-class locking as volatile.\n\nFix bug where UI automation would crash while device was locked by\nmarking it as forced direct-boot aware.\n\nBug: 26498834\nChange-Id: Ib4dfb9350925e5413f93a09baacf84c62f2ba0ea\n"
    },
    {
      "commit": "4d709f998d5a13180d0ad6d9848456556129dabc",
      "tree": "c13e03f023b2ece2dd94a6e67338ee9012a74b76",
      "parents": [
        "174b140dfe30f9a926eefaf118c6ccdb6a0b493e"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Tue Mar 29 11:20:19 2016 -0700"
      },
      "committer": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Tue Mar 29 11:20:19 2016 -0700"
      },
      "message": "Fixed arguments order for addSharedAccountsFromParentUser\n\nBug: 27900775\nChange-Id: I8c48fabddb778bfd94333d4dcdd296fef87cb59a\n"
    },
    {
      "commit": "bd91e2f3f6aca512a02be645b2515b5e3331e177",
      "tree": "490fcef8a5acef7571dc72e3707abbf9c43abd35",
      "parents": [
        "40e1135ea2780fefecf532fb7a1cc43e26bcecc2"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Mar 22 15:32:31 2016 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Mar 27 10:56:48 2016 -0600"
      },
      "message": "Update PRE_BOOT_COMPLETED for FBE.\n\nNow that CE data isn\u0027t available until after a user is unlocked, we\nneed to delay the PRE_BOOT_COMPLETED broadcasts.  This is done by\nadding a new RUNNING_UNLOCKING user state to the UserController\nlifecycle.\n\nWe now track the last fingerprint a user was logged in under, and we\ndispatch PRE_BOOT receivers when that fingerprint changes.  To work\naround battery pull issues, we only persist the updated fingerprint\nonce all PRE_BOOT receivers have finished.  This is less granular\nthan the original solution, but it\u0027s still correct.  We only consider\na user as \"logged in\" once it transitions into the RUNNING_UNLOCKED\nstate.\n\nWhen starting a process, track if the user was \"unlocked\" when\nstarted, so that we only spin up unaware providers in processes\nstarted before user unlock.\n\nAdd generic IProgressListener to communicate PRE_BOOT progress and\nstrings up to lock screen.  For now, LockSettingsService just blocks\nuntil finished, but it could display these strings in the future.\n\nBug: 27220885\nChange-Id: I349439776b885acd32f6a578d8951ffd95640be2\n"
    },
    {
      "commit": "815e51d76cc284f3ca59534d9f9372d3dd50f574",
      "tree": "1531cffeabba74e25580b8d42785554ddeb89865",
      "parents": [
        "7b7c0a4e45af093e1487519703c7d41ec0c45060",
        "0c7535bb4fbf2306df7039a3358c1216de34cd8f"
      ],
      "author": {
        "name": "Andriy Naborskyy",
        "email": "andriyn@google.com",
        "time": "Thu Mar 24 16:43:34 2016 -0700"
      },
      "committer": {
        "name": "Andriy Naborskyy",
        "email": "andriyn@google.com",
        "time": "Thu Mar 24 17:14:52 2016 -0700"
      },
      "message": "resolve merge conflicts of 0c7535b to nyc-dev\n\nChange-Id: I49fa42e0d78aeaa8127cefc5cc5122cf37fce878\n"
    },
    {
      "commit": "39218ba26d5bb8646f04273f2c3731598721c1da",
      "tree": "5a9f92f0589635df70a85ec8a8ef8c5bbb966b1b",
      "parents": [
        "54c3808802e643785cc76b29067d1119e9c78af4"
      ],
      "author": {
        "name": "Andriy Naborskyy",
        "email": "andriyn@google.com",
        "time": "Sun Aug 16 21:32:50 2015 -0700"
      },
      "committer": {
        "name": "Andriy Naborskyy",
        "email": "andriyn@google.com",
        "time": "Tue Mar 22 20:18:11 2016 -0700"
      },
      "message": "bootanimation: implement split packaging of animation\n\nAnimation package zip can be separated into OEM and SYSTEM\nOEM desc.txt can use new command \"$SYSTEM\" to invoke animation\nfrom SYSTEM package\n\nChanges to animation structure:\n1. animation can refer other animation\n2. animation contains zip file reference\n3. BootAnimation has name of root of animation Zip; processing desc.txt we\nneed filename of container zip and we can\u0027t access it from ZipFileRO instance\n\nmovie() changes:\n1. Split movie() into loading Zip and playing part\n2. load parses desc.txt and if needed referred Zip\n3. play can descend animations tree\n\nChange-Id: I600d02c84d537df7b3e32a84f84a294b26e319e0\nSigned-off-by: Andriy Naborskyy \u003candriyn@google.com\u003e\n"
    },
    {
      "commit": "e75a9adfbd37f9ec1a9324caceb9d5d7ceed217c",
      "tree": "78aa90df1dc5f8797d759360733ec712f72437dc",
      "parents": [
        "2c83702aa218cbcc51d8726575c78691fc57a53b"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Fri Mar 18 20:43:49 2016 -0700"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Mon Mar 21 11:17:19 2016 -0700"
      },
      "message": "Added support to specify animation duration when resizing stack\n\nNeeded for sys-ui to control the duration of various Pip transitions.\n\nBug: 27674339\nChange-Id: I7bad27aaa19755a73c594e88b88b56db033e1a45\n"
    },
    {
      "commit": "bf1082e9a1ae833718321ac58ab64e281d0e3614",
      "tree": "10ea4350eb0caf9a3cfa54a1d1f4ce991ae352e5",
      "parents": [
        "5c4eeb9845b5c6664b135c53ebf83d74a392b719"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Mar 16 14:15:11 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Mar 16 14:15:11 2016 -0700"
      },
      "message": "Renamed the function initialing nativeloader\n\nBug: http://b/27546414\nChange-Id: Ia0b65540772ca4bd1cdab391973325b18cd278a0\n"
    },
    {
      "commit": "bf89ae53c3d74365be4bf794283ca26f7d6d3fe1",
      "tree": "d8f33880c4155822d914d12db692043a5316720c",
      "parents": [
        "58f1018c56a88e7864c7ff85f5b85129e790ffd2"
      ],
      "author": {
        "name": "Prathmesh Prabhu",
        "email": "pprabhu@google.com",
        "time": "Thu Mar 10 15:23:34 2016 -0800"
      },
      "committer": {
        "name": "Prathmesh Prabhu",
        "email": "pprabhu@google.com",
        "time": "Thu Mar 10 15:23:34 2016 -0800"
      },
      "message": "screencap: Nix deprecated direct read of framebuffer.\n\nscreencap command had a fallback path that tried to read the framebuffer\ndirectly. This is no longer supported (and is blocked by selinux\npolicy), so delete said path.\n\nBUG:27598623\nChange-Id: I1b002d4a68ad93f75b150029d01b5f0c500be56c\n"
    },
    {
      "commit": "4259500ff207b356cba98b412d63e3b02165b80a",
      "tree": "4d9c4988257cd6bf783f4463a6087d23d7aff892",
      "parents": [
        "d38b6f1f709397a884a20a6e412c29e95da81153",
        "a704b7d3444d218fe3b3f977fd242d2cd626058e"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Tue Mar 08 00:44:34 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 08 00:44:35 2016 +0000"
      },
      "message": "Merge \"Draw a clock on top of the Android boot animation\" into nyc-dev"
    },
    {
      "commit": "a704b7d3444d218fe3b3f977fd242d2cd626058e",
      "tree": "33359e1798c4801be6471db575bd1f70ce6b70fb",
      "parents": [
        "569edb85125e6754de8f8e60f993afad42eed490"
      ],
      "author": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Tue Feb 16 16:55:49 2016 -0800"
      },
      "committer": {
        "name": "Damien Bargiacchi",
        "email": "drb@google.com",
        "time": "Mon Mar 07 16:15:31 2016 -0800"
      },
      "message": "Draw a clock on top of the Android boot animation\n\nDon\u0027t draw on top of vendor specific animations/logos since we can\u0027t\nmake it look good.\n\nBug: 27209004\nChange-Id: If4791b861ff476c23b37787ba896a3ef8d9df4fd\n"
    },
    {
      "commit": "d5896630f6a2f21da107031cab216dc93bdcd851",
      "tree": "4a0ea7c754d929a7e00cb521db9d83557f0683fd",
      "parents": [
        "effcd935940e4d3c2acb2a2a8bc22d5bf6f9cc64"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Mar 04 16:16:00 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Mar 04 16:31:34 2016 -0700"
      },
      "message": "Move more PM calls to ParceledListSlice.\n\nSince the data returned by these calls can grow unbounded based on\nvarious GET flags, we need to switch \u0027em over.\n\nBug: 27391893\nChange-Id: Ie849ca30dbaaa91158da4c83675657715629a0ee\n"
    },
    {
      "commit": "bb8b4814df6123b9a411ff7224a35761def9ece7",
      "tree": "87970320a545cd6e884a394f3759ef8b467fa4a1",
      "parents": [
        "2e54da0d4af2decb2f9a9bd007132ae401e4b11d"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 03 15:20:39 2016 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 03 15:24:29 2016 -0800"
      },
      "message": "Am.java: Use write-only file descriptors\n\nUse write only file descriptors for am commands. Having read-write\nfile descriptors isn\u0027t needed, and not all SELinux app domains have\nread access to /data/local/tmp file descriptors.\n\nAddresses the following denial:\n\n  avc: denied { read } for path\u003d\"/data/local/tmp/foo\" dev\u003d\"dm-2\"\n  ino\u003d654084 scontext\u003du:r:system_app:s0\n  tcontext\u003du:object_r:shell_data_file:s0 tclass\u003dfile permissive\u003d0\n\nSteps to reproduce:\n\n  adb shell ps | grep settings\n  adb shell am dumpheap PID_FROM_ABOVE /data/local/tmp/settings.hat\n\nExpected:\n1) command works\n\nActual:\n1) SELinux denial and no settings.hat output.\n\nBug: 27472701\nChange-Id: Id8df0c5a41046b405444e14c70075c986d9936c3\n"
    },
    {
      "commit": "4a18c26609df2c4230885acb64e92fb51aba70df",
      "tree": "b9f05aa7e6979f02a34d9ac335d06eae31358495",
      "parents": [
        "1db8850b793109da0fc4a65ec837b1a329072b07"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Feb 26 17:23:48 2016 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Feb 29 12:37:11 2016 -0800"
      },
      "message": "Fix issue #27385109: control activity behavior without triggering...\n\n...isUserAMonkey for testing purpose\n\nAdd an argument for the caller to specify if they are a poo flinging\nmonkey.\n\nChange-Id: I0e149a8d78776abaf07517bd4ae886047b7f4252\n"
    },
    {
      "commit": "573895bbea7cf349d615606004cdb85ba2ca814d",
      "tree": "47e8292063324fdc2dc9e0f077979f49a24d131a",
      "parents": [
        "b0824979be2653ba300382b52c1b1236fd44f0de"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Feb 26 13:16:50 2016 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Feb 26 13:23:40 2016 +0000"
      },
      "message": "Fix ASAN builds after app_process change.\n\nBug:27245894\n\nChange-Id: Ie2fc1edcbd874e8ad3b932f8e24ef38c9817b2cd\n"
    },
    {
      "commit": "b0824979be2653ba300382b52c1b1236fd44f0de",
      "tree": "cce6cd7290d9214db07ab201f718b97473a2e6ab",
      "parents": [
        "e9de43f8888fa8f6cfd060a260e7fcea765a76a2"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Feb 22 11:22:11 2016 -0800"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Feb 26 10:00:27 2016 +0000"
      },
      "message": "zygote to preload public native libraries\n\nPreload public native libraries when starting a zygote\nThis lets other users of libnativeloader (like dex2oat)\navoid unnecessary cold loads of libandroid.so which could\ntake up to a second.\n\nBug: http://b/27245894\nChange-Id: I1499a7485c186b185fce8a1f8d05afcd579d59cc\n"
    },
    {
      "commit": "88b42855c95779fd6f0817bc2ee9ff5e49f1b37e",
      "tree": "4c8b772893abca6e95597449fc9af14a2b1ecb7d",
      "parents": [
        "f8fb6d1261dd7ee4ee5342766f0f12e1b31080b2"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Wed Feb 24 16:52:01 2016 -0800"
      },
      "committer": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Wed Feb 24 16:52:01 2016 -0800"
      },
      "message": "Only debuggable packages can be downgraded.\n\nThis reflects the change in PackageManager service:\nframeworks/base commit 921dd754ab49df0cd580ff96503f7616c4c85f4a.\n\nBug: 27327503\nChange-Id: Ic13788a3850c4d1a3a566b208853de9a6d2c5237\n"
    },
    {
      "commit": "1c8cbb54407b9c1d56626de80a796a395012a92c",
      "tree": "159a34a8b004c1afe0a351e113a000f1d4c3e744",
      "parents": [
        "ea168d229d316c84652e88ad0f19adbaa884d731"
      ],
      "author": {
        "name": "Aurimas Liutikas",
        "email": "aurimas@google.com",
        "time": "Fri Feb 19 13:44:25 2016 -0800"
      },
      "committer": {
        "name": "Aurimas Liutikas",
        "email": "aurimas@google.com",
        "time": "Fri Feb 19 13:44:25 2016 -0800"
      },
      "message": "Fix a set of random warnings in frameworks/base/\n\nBug: 26936282\nChange-Id: Ic411d7a1673503d5945f952ebf5a8be964bb54a4\n"
    },
    {
      "commit": "06e8ee0c8ad2527add3db3dd1a1d4eee9d8631f8",
      "tree": "05b9a9a33e9104a956d4f29a31aa7c6de8c89673",
      "parents": [
        "5658e4b94de91e938459e50d0f5e6ef837ffb4ac"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Fri Feb 12 12:56:32 2016 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Tue Feb 16 10:09:51 2016 -0800"
      },
      "message": "Added AM API to remove a stack\n\nUse the new API when closing Pip.\n\nBug: 26982752\nChange-Id: I074d23b5535a4534626183ab77142d3932a803f0\n"
    },
    {
      "commit": "115d2c189a46f535778d9dd0923f703ff2f888fe",
      "tree": "f082b998dc2345ccb24b47657c8b2104991225b6",
      "parents": [
        "c6ca265902d41a0553d15f660647410db6a3e889"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Feb 15 17:25:57 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Feb 15 17:45:42 2016 -0700"
      },
      "message": "Add feature versions for devices and apps.\n\nWe\u0027re starting to see more instances of device features that will\nincrement separately from the SDK API level, such as camera HAL,\nGPU capabilities, Bluetooth, and other hardware standards.\n\nThis change adds the ability for device features to specify a\nversion, which is defined to be backwards compatible.  That is, apps\nrequesting an older version of a feature must continue working on\ndevices with a newer version of that same feature.\n\nWhen a version is undefined, we assume the default version \"0\".\n\nBug: 27162500\nChange-Id: If890bf3f3dbb715e8feb80e7059a0d65618482ea\n"
    },
    {
      "commit": "10f0f712498b8c4b6308788d20027b35a8ce43a0",
      "tree": "4d17ca660a78f7385ab0054b69577bd68d4739ca",
      "parents": [
        "3b5a29cb5d2150a04db40fc176b283a339b9088d"
      ],
      "author": {
        "name": "Sergey Poromov",
        "email": "poromov@google.com",
        "time": "Mon Feb 08 21:55:42 2016 +0100"
      },
      "committer": {
        "name": "Sergey Poromov",
        "email": "poromov@google.com",
        "time": "Wed Feb 10 00:08:02 2016 +0000"
      },
      "message": "Update bmgr tool.\n\nAdd support to QUOTA_EXCEEDED error output.\nCommand \"backupnow --all\" without parameters now starts backup of all eligible packages.\n\nChange-Id: I563be35d575346d3dfb45a6dd254b387053c7ab7\n(cherry picked from commit d5d68528bc7a7c1edb4691b5a40e37955128e73b)\n"
    },
    {
      "commit": "faeb3eb0ba190e6d6cfe2b82ce20af587848de57",
      "tree": "eb611cc0e57ef8467dfd575dc6a0d274f98d7277",
      "parents": [
        "e64f3da729ae6a00fb627f00b8a97e7c5feb8bcb"
      ],
      "author": {
        "name": "Paul Crowley",
        "email": "paulcrowley@google.com",
        "time": "Mon Feb 08 15:58:29 2016 +0000"
      },
      "committer": {
        "name": "Paul Crowley",
        "email": "paulcrowley@google.com",
        "time": "Mon Feb 08 15:58:29 2016 +0000"
      },
      "message": "Password security for FBE disk encryption keys\n\nAdd the means to protect FBE keys with a combination of an auth token\nfrom Gatekeeper, and a hash of the password. Both of these must be\npassed to unlock_user_key. Keys are created unprotected, and\nchange_user_key changes the way they are protected.\n\nBug: 22950892\nChange-Id: Ie13bc6f82059ce941b0e664a5b60355e52b45f30\n"
    },
    {
      "commit": "25222f55f28221d49a984db465f94e9716635ad8",
      "tree": "12268434345bcf1ddd8da55fd0d68f9de689cedc",
      "parents": [
        "dccc4a834da7e845bdfa5aadf1d2122cb71df28e",
        "df6cb282937e5f804686ebbc952ae9f2290d93c7"
      ],
      "author": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Sat Feb 06 13:18:58 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Feb 06 13:18:58 2016 +0000"
      },
      "message": "Merge \"Add flag to \"am start\" to enable native debugging\""
    },
    {
      "commit": "c17d8b79afd02133b021d89b536c812578308329",
      "tree": "42a6752998fda312170eb6717c653595e60b0777",
      "parents": [
        "3bc8dd8eddc103a32a66a9cf3aa411f1f0615f2d"
      ],
      "author": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Wed Feb 03 16:52:59 2016 -0800"
      },
      "committer": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Thu Feb 04 09:01:05 2016 -0800"
      },
      "message": "Infrastructure for animating of maximizing pip activity.\n\nBug: 25672053\nChange-Id: Ie8a83c626680e01ff7115f40731ab9e6c13769c0\n"
    },
    {
      "commit": "debd9a5ed57dce70b77fdee107b870d1a037c8c9",
      "tree": "b747adde04351318d6a26846bfa7ea8a740ca7a5",
      "parents": [
        "56190d5e4b9d940ee64fccd75f3759e68bee15a7"
      ],
      "author": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Tue Feb 02 15:07:15 2016 -0800"
      },
      "committer": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Tue Feb 02 16:27:18 2016 -0800"
      },
      "message": "Allow specifying stack when starting activity in AM command.\n\nChange-Id: I42032bdebf16b6cd2c0c87fd9aa5c261bc9fe25d\n"
    },
    {
      "commit": "df6cb282937e5f804686ebbc952ae9f2290d93c7",
      "tree": "04617ce89d2846295ae33a020a8f5180992ff1a3",
      "parents": [
        "b61437de5f31d61698eec47221ca5fba1f76c61f"
      ],
      "author": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Fri Jan 29 12:07:00 2016 +0000"
      },
      "committer": {
        "name": "Tamas Berghammer",
        "email": "tberghammer@google.com",
        "time": "Mon Feb 01 13:49:32 2016 +0000"
      },
      "message": "Add flag to \"am start\" to enable native debugging\n\nSpecifying the new flag will enable several features in the runtime\nrequired by the native debugger to debug Java and C++ code at the same\ntime.\n\nThe enabled features:\n* Force JIT (never use the interpreter)\n* Debug info generation\n* Disbale some optimizations\n\nChange-Id: Iaf5ab649715a0c274bd1b0fc64e483705da53cd0\n"
    },
    {
      "commit": "b1faf60b896afe235175354ffd90290ff93a54b4",
      "tree": "cc016283d3a1355784e79fa710a2c6ae8b64cfbd",
      "parents": [
        "8ab1a37b767113357e77787d5fe2ba423d16ae3a"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Wed Jan 27 09:12:31 2016 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Fri Jan 29 07:44:33 2016 -0800"
      },
      "message": "Use resizeMode integer instead of resizeable boolean.\n\nChanges activity manager and window manager to use resizeMode\nas defined by ActivityInfo#resizeMode instead of a boolean.\n\nBug: 26774816\nChange-Id: I8cef46d9fba6bfdd21df7da63ed5d5330ad03d4b\n"
    },
    {
      "commit": "84fa3351a21b37d02fafd634a8de65cf6cd04c4d",
      "tree": "16cffa00cd4166998dbed47ac66a8a65d0b3b93f",
      "parents": [
        "e97bce53df66ae4d3084d8f530f20a95ceac044a"
      ],
      "author": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Mon Jan 25 16:28:49 2016 -0800"
      },
      "committer": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Thu Jan 28 08:47:54 2016 -0800"
      },
      "message": "Animate pinned stack resizing.\n\nThis introduces animating of stack bounds within window manager\nmodule. It also uses this type of animation when moving an activity from\nfullscreen stack to pinned stack.\n\nBug: 25672053\nChange-Id: I75914a685d10021f8a7535b47ef12b6920b3fd5e\n"
    },
    {
      "commit": "afad8783699b1ba6f3c7ee5961d6ddc2bd771dc1",
      "tree": "b003623b28ba92db60746872de361f203d5a7f0b",
      "parents": [
        "fe434a15d6bde9299b51dc284b336944e5cf8a1c"
      ],
      "author": {
        "name": "Alan Treadway",
        "email": "alantreadway@google.com",
        "time": "Tue Jan 19 15:15:08 2016 +0000"
      },
      "committer": {
        "name": "Alan Treadway",
        "email": "alantreadway@google.com",
        "time": "Mon Jan 25 15:46:30 2016 +0000"
      },
      "message": "Add explicit and persistent user provisioning state.\n\nAdd explicit modelling of provisioning state so that integration\nof management provisioning flows with packages such as setup-wizard\nare cleaner, and can be more direct. Previously we relied upon\nUSER_SETUP_COMPLETE secure setting and HOME intents to signal intent,\nbut this is not very clear and can be fragile.\n\nBug: 25858670\nChange-Id: Idc56a040f710c3aee281db420f21717da3960722\n"
    },
    {
      "commit": "b998532be8451993fe6d4e22f6ac290ffab57c76",
      "tree": "52db46dc20a9325ff55a775473dfa66fb2ff0ff6",
      "parents": [
        "b7cc096fd49e99c01a9e963a895f6d26d685e474"
      ],
      "author": {
        "name": "Sergey Poromov",
        "email": "poromov@google.com",
        "time": "Tue Jan 12 17:07:11 2016 +0100"
      },
      "committer": {
        "name": "Sergey Poromov",
        "email": "poromov@google.com",
        "time": "Fri Jan 22 13:15:06 2016 +0100"
      },
      "message": "Update bmgr cmd line tool to use requestBackup() API in BackupManager\n\nThe new command works as \"bmgr backupnow [list of packages]\"\nThis change should be submitted after ag/834173\n\nChange-Id: Ie1cdd18a38653dd71a1d499620dd2afec3cbbb24\n"
    },
    {
      "commit": "6390bd8d698e75232bf42f27e70e9702051e8a8a",
      "tree": "7135943dbf6b5b54a9358dbdf34fdbbc5b627a42",
      "parents": [
        "3dbb412c94b91a2f8f130c32417621d138c3f7ec"
      ],
      "author": {
        "name": "Tony Mak",
        "email": "tonymak@google.com",
        "time": "Mon Jan 11 14:38:11 2016 +0000"
      },
      "committer": {
        "name": "Tony Mak",
        "email": "tonymak@google.com",
        "time": "Tue Jan 19 19:32:18 2016 +0000"
      },
      "message": "Telecom shell command accepts userhandle as argument of phone account\n\nWe need a sort of way to enable phone account in managed profile for\nwriting cts running in managed profile.\n\nChange-Id: I2e869e792c6e145c93a314f64a5de98e2f6e315f\n"
    },
    {
      "commit": "3da5c97460d859ec6d9e5fffb3902a3242d32bf4",
      "tree": "8d5d252c69471913ab40a01f01c086a370e848af",
      "parents": [
        "2e8bafc38bd514668eddc223420fd879fb4b37f5"
      ],
      "author": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Fri Dec 11 18:16:30 2015 +0000"
      },
      "committer": {
        "name": "Michal Karpinski",
        "email": "mkarpinski@google.com",
        "time": "Fri Jan 08 17:50:16 2016 +0000"
      },
      "message": "Adjusting AMN#requestBugReport() to be able to invoke 3 types\nof bugreport services\n\nActivityManagerNative#requestBugReport() now can accept 3 types:\nFULL, INTERACTIVE AND REMOTE.\n\nBug: 26152603\nChange-Id: Ife9bbef4691e172fb56b72b256880f0d4ad4d198\n"
    },
    {
      "commit": "52641bc309ed1a4e767692586b3fb8e3f3031fb0",
      "tree": "b09535ebedd66674d1dae9e93a22be550a69ae39",
      "parents": [
        "6f2efd3d8c114f9a4b472ef699bbd844323cd82c"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Dec 29 14:28:32 2015 +0100"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Jan 05 13:50:10 2016 +0100"
      },
      "message": "Add am command for CTS tests for resizedDockedStack (1/2)\n\nBug: 25015474\nBug: 26311778\nChange-Id: Ia2b1f8ffc5c777d8199409041090a0106503c2e4\n"
    },
    {
      "commit": "8d9366cfe9657e6884c00e728bc3b4e8b191bc53",
      "tree": "fdd7d78944ae6bec3a9bc9e3b638ff45fdf3fc13",
      "parents": [
        "0550f1b8041e6a4ddd3447ce2db8e101d1b45b03"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Wed Dec 16 13:47:14 2015 -0800"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Wed Dec 16 13:47:14 2015 -0800"
      },
      "message": "Remove 2nd line from failure\n\nIn an attempt to provide more detailed information to the end-user, we\ncaused tests to fail [they parse the output of the \u0027pm\u0027 command]. Remove\nthe 2nd line of the output that was causing the failure.\n\nAlso took the opportunity to merge changes from the Pm command to the\nCmd command.\n\nBug: 26131598\nChange-Id: I459f9ec8978d87dd571136222f780039e426474e\n"
    },
    {
      "commit": "1fd413f63779b7cc42fc3890f9416a282270b56a",
      "tree": "2a5da058c59efb3c334dc3b18eeb3244f860b117",
      "parents": [
        "62b8dfd270df798a53e680c40177a82be5520efa",
        "9619d049bfb24dbd7be83543e2c66fe4b0d0594b"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Dec 08 17:07:15 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 08 17:07:15 2015 +0000"
      },
      "message": "Merge \"Temporarily stop proxying to cmd\""
    },
    {
      "commit": "c4dd021322d38ea32ac49930e904b6d08ce6490c",
      "tree": "08dc79dcbe4302b6a53753f01b11f389f4af6349",
      "parents": [
        "cde2287208d9aea41811b5844ab3142d3411bccd"
      ],
      "author": {
        "name": "Lenka Trochtova",
        "email": "ltrochtova@google.com",
        "time": "Wed Nov 18 12:22:06 2015 +0100"
      },
      "committer": {
        "name": "Lenka Trochtova",
        "email": "ltrochtova@google.com",
        "time": "Tue Dec 08 15:47:10 2015 +0100"
      },
      "message": "Introduce ephemeral users.\n\nBUG: 24883058\n\nChange-Id: I2e1d6aa184142c2a3dc0415c0cd407573453cf41\n"
    },
    {
      "commit": "9619d049bfb24dbd7be83543e2c66fe4b0d0594b",
      "tree": "cac0c0cdd634d5ca458e2b63af2169f68fb0a2ef",
      "parents": [
        "ef2f72bb0e6fa6d286e571aea42751a9266151fa"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Wed Dec 02 14:52:50 2015 -0800"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Mon Dec 07 13:26:08 2015 -0800"
      },
      "message": "Temporarily stop proxying to cmd\n\nUnless the APK is streamed, proxying pm install commands to the cmd command\nwill generally not work on any system that has SElinux enforcement. This\nis due to the system sever [where cmd commands are run] not having access\nto the directories where files are uploaded to. We\u0027ll re-enable the proxy\nonce we determine an appropriate, safe location for uploaded APKs.\n\nBug: 25769800\nChange-Id: I73b2da0b03fe8bd9ce29e20b37cb4eeff9b491b4\n"
    },
    {
      "commit": "a9d492d7ff28535b4e44da43aed850a4d306cbcd",
      "tree": "3672c8d45f1cb210a3c7375ef4f4cbc8f7879ce6",
      "parents": [
        "21d4b20f23c7fc7d88671375aea3c63d62780a10",
        "6bccb76a64ba74c2e0267db1d2ec14a4ffa96771"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Mon Dec 07 18:38:04 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 07 18:38:04 2015 +0000"
      },
      "message": "Merge \"Allow --user current in dpm command\""
    },
    {
      "commit": "21d4b20f23c7fc7d88671375aea3c63d62780a10",
      "tree": "7a5c318119f10d591db7ec2e01eed5df399f829d",
      "parents": [
        "86fd6d156087d8abe0ac65451db2a6fa7f30722c",
        "4cc863338d5e43b6189e05498d7cb53ebba135e1"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 07 18:02:40 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 07 18:02:40 2015 +0000"
      },
      "message": "Merge \"Changed ActivityManager.requestBugreport() to take a \u0027progress\u0027 parameter.\""
    },
    {
      "commit": "c72b3101ee368d2a9943e4436ede679acfa38f92",
      "tree": "a3017eaf8fecb5268a6d3a00a5241229a5f94c3f",
      "parents": [
        "70eaef412ee1db192037c3e1ae4c7c7e6a85055e",
        "2699f065558ba78066887210b0c7346105959860"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Mon Dec 07 15:33:05 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 07 15:33:05 2015 +0000"
      },
      "message": "Merge \"Add ephemeral installs\""
    },
    {
      "commit": "4cc863338d5e43b6189e05498d7cb53ebba135e1",
      "tree": "d2c9b0f66667595cd21d8b212546e846756bf2b2",
      "parents": [
        "471c1adf0867181c8f71a364606724ece7d4c56e"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Dec 04 16:37:28 2015 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Sat Dec 05 10:30:18 2015 -0800"
      },
      "message": "Changed ActivityManager.requestBugreport() to take a \u0027progress\u0027 parameter.\n\nWhen progress is set to \u0027true\u0027, it calls the new, enhanced\n\u0027bugreportplus\u0027 service, while when \u0027false\u0027 it calls the regular\n\u0027bugreport\u0027 service.\n\n\u0027bugreportplus\u0027 is more user-friendly (it shows a system notification\nwith the progress, allow user to cancel, etc...), at the cost of\nconsuming more resources. As such, the \"Take Bug Report\" UI will be\nchanged to offer the user a combo with these 2 options, but for now it\u0027s\nalways going to be \u0027bugreportplus\u0027\n\nBUG: 26034608\nChange-Id: I21a6b5b092a85614e91d523b8f4df1fb00e49b3b\n"
    },
    {
      "commit": "6bccb76a64ba74c2e0267db1d2ec14a4ffa96771",
      "tree": "1c28126277c16bc54fe02427771bb5e2302f4759",
      "parents": [
        "95bdfae278d34123c76153d340bf5f413442d2a3"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Fri Dec 04 10:58:37 2015 -0800"
      },
      "committer": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Fri Dec 04 14:28:46 2015 -0800"
      },
      "message": "Allow --user current in dpm command\n\ndpm command now accepts current user as an argument.\n\nBug: 25974105\nChange-Id: I5335a2fc2159f9574e319697dcf5e0485233d8f2\n"
    },
    {
      "commit": "2699f065558ba78066887210b0c7346105959860",
      "tree": "a05d333275945b9b3a6f49218d94884b5265c9eb",
      "parents": [
        "362ab0dd686e4c1df0c27c9ec0506d9d023d8ef6"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Fri Nov 20 13:07:17 2015 -0800"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Thu Dec 03 14:47:01 2015 -0800"
      },
      "message": "Add ephemeral installs\n\n* Add a new --ephemeral argument to \u0027adb install\u0027\n* Add plumbing to internally track ephemeralness\n* Create new app directory for ephemeral installs\n\nBug: 25119046\nChange-Id: I1d379f5ccd42e9444c9051eef2d025a37bd824fe\n"
    },
    {
      "commit": "633e837db627b0bfd7ef2f2a03bb6fdb460fe481",
      "tree": "68970346b1de7cdcd4d0c5b8a4c2e3d129dd18f0",
      "parents": [
        "ec52d7983ca02b4dea20cbd654bb136c8e3fad3d",
        "9571b3365be9a44234d051341529bd7309a89282"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Thu Dec 03 00:57:51 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 03 00:57:51 2015 +0000"
      },
      "message": "Merge \"Allow current user in settings command\""
    },
    {
      "commit": "9571b3365be9a44234d051341529bd7309a89282",
      "tree": "5139ccba2aa0138e389741034df7a5b13146d917",
      "parents": [
        "6449a9567ac204e0c9be71a7f983a753d8061220"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Tue Dec 01 15:19:40 2015 -0800"
      },
      "committer": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Wed Dec 02 16:29:05 2015 -0800"
      },
      "message": "Allow current user in settings command\n\nsettings command now accepts current user as an argument.\n\nBug: 25950700\nChange-Id: Ia0cee8e956efe7bc341d87e5a7c7ec57678313bc\n"
    },
    {
      "commit": "9cbfc9e212151e84910a22387365644916dde446",
      "tree": "6547aa07a379650aeb737548cc1f94e4c68a5fde",
      "parents": [
        "6449a9567ac204e0c9be71a7f983a753d8061220"
      ],
      "author": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Wed Oct 07 15:52:33 2015 -0700"
      },
      "committer": {
        "name": "Fyodor Kupolov",
        "email": "fkupolov@google.com",
        "time": "Wed Dec 02 10:22:23 2015 -0800"
      },
      "message": "Added DISALLOW_RUN_IN_BACKGROUND user restriction\n\nIt forces the user to stop instead of going into the background. Also\nchanged behavior of stopUser method. Now it also attempts to stop related\nusers along with the specified userId.\n\nBased on ag/807976, with the only difference that it\u0027s now a user restriction.\n\nBug: 24579258\nBug: 24708668\nChange-Id: I357298908816fc58feeed83b7e9979fc33d25da6\n"
    },
    {
      "commit": "b9e2803384b048087c02df7b87dc7a6521b05343",
      "tree": "884e92cb3d42f691c598a92a6d9f131c956c552f",
      "parents": [
        "027bea555dc2d4fb76cec917d403765130db7668",
        "268e4e3d00df6ea0eae6fca321e474a3d512fb7e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Nov 19 18:47:53 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Nov 19 18:47:53 2015 +0000"
      },
      "message": "Merge \"Move appops command to the service.\""
    },
    {
      "commit": "ba51235ef5c598d845b77fcf14491329493da34f",
      "tree": "7e628f0d1b7af2d10e4e2113cba5ac1e5f59c6a7",
      "parents": [
        "c38a5d7da10102b0664749f5720b6c50631e133d"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Nov 12 20:17:45 2015 -0800"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Nov 19 11:02:30 2015 -0700"
      },
      "message": "More file-based encryption work.\n\nAdd new \"am unlock-user\" command so we can trigger changes from the\ncommand line.\n\nMove FBE check to static method so it can safely be called early\nduring boot before the mount service is ready.  Move FBE emulation\nto persisted system property, and start reading/writing that value.\n\nChange default permission grants to ignore current encryption-aware\nflags, since many of the target apps aren\u0027t crypto aware.\n\nAlways prepare package data directories, which is how we create the\nnew \"user_de\" paths during boot.\n\nBug: 22358539\nChange-Id: I6f58ea2d34b3a466d3775d614f8a13de92272621\n"
    },
    {
      "commit": "268e4e3d00df6ea0eae6fca321e474a3d512fb7e",
      "tree": "6682d336e545dc11a9923f9c657f8b9c3d6a9b57",
      "parents": [
        "f91e74d9a945f59cdb714a80a2a87953d72dbd99"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Nov 18 16:29:56 2015 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Nov 18 16:29:56 2015 -0800"
      },
      "message": "Move appops command to the service.\n\nThe \"appops\" shell command is now just a wrapper around doing\n\"cmd appops\", no more need to launch a Java VM!\n\nChange-Id: I06fc68762d0ab95a016fb24db0affb0d91197588\n"
    },
    {
      "commit": "60c2e34543f5479bdc6efd72a4d2ec67f9851db2",
      "tree": "105704adf18de1e43f2ded4ef9e374a7664c30c3",
      "parents": [
        "d3e9e1835b599a6d1dbe50ca1175b80023c6b5f0"
      ],
      "author": {
        "name": "Xiaohui Chen",
        "email": "xiaohuic@google.com",
        "time": "Wed Nov 18 14:10:42 2015 -0800"
      },
      "committer": {
        "name": "Xiaohui Chen",
        "email": "xiaohuic@google.com",
        "time": "Wed Nov 18 14:10:42 2015 -0800"
      },
      "message": "cmds: fix settings command help msg\n\nThere is a missing white space.\n\nChange-Id: I7e7f4783464a7be02a3b2e1a30a629ed1ebdc913\n"
    },
    {
      "commit": "354c3bc3945cd0d676c403039c528c5f45d8a091",
      "tree": "43f7f3c1499d8d33a4c7dd78b47e549598f4a486",
      "parents": [
        "627dfa1ddafc96b912ae938677a48a16f7ab255c",
        "3cdb56efea044112bfe1b97b3ed78ee05e0dba46"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Nov 17 00:41:07 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 17 00:41:07 2015 +0000"
      },
      "message": "Merge \"Some debugging improvements.\""
    },
    {
      "commit": "3cdb56efea044112bfe1b97b3ed78ee05e0dba46",
      "tree": "7ce08b219efec3083b9d7399ac5e795c06068724",
      "parents": [
        "609b5b8c8e22ab0ea1caca1fed42cdf891c853c6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Nov 11 12:45:44 2015 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Nov 11 12:45:44 2015 -0800"
      },
      "message": "Some debugging improvements.\n\n- Fix dumping of package manager intent filters so the option\n  to print the filter detail works again.\n- Extend dump resolvers to allow you to specify the specific\n  types of resolvers you\u0027d like to dump.\n- Add new package manager commands for querying activities,\n  services, receivers.\n- Move the code for parsing a command line into an intent to\n  the framework, so it can be used by the new package manager\n  commands and later elsewhere.\n\nChange-Id: I56ea2bb8c3dd0e5198ee333be8f41ad9dcdb626f\n"
    },
    {
      "commit": "f9fc6d6cc05595241bc7ced6d4cab97b45f9b901",
      "tree": "0acf0e517de54713340c1ae88085ef9c7f88926e",
      "parents": [
        "cef9219fdad0585ab3948d349f346608a7b9feb3"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sun Nov 08 16:46:05 2015 -0800"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Nov 11 10:47:23 2015 -0800"
      },
      "message": "More file-based encryption work.\n\nAdd granular StorageManager APIs for key creation/destruction and\nunlocking/locking.  Start passing through an opaque token as part\nof the unlock command, but leave it empty for now.  We now have a\nseparate \"prepare\" method that sanity checks that user directories\nare correctly setup.\n\nDefine a handful of system properties used for marking devices that\nshould be operating in FBE mode, and if they\u0027re emulating FBE.  Wire\na command to \"sm\", but persisting will come later.\n\nStart using new \"encryptionAware\" flag on apps previously marked with\ncoreApp flag, which were apps running in the legacy CryptKeeper\nmodel.  Small tweaks to handle non-encryptionAware voice interaction\nservices.  Switch PackageManager to consult StorageManager about the\nunlocked state of a user.\n\nBug: 22358539\nChange-Id: Ic2865f9b81c10ea39369c441422f7427a3c3c3d6\n"
    },
    {
      "commit": "72cfcd02b89838264b018e9b9417d2829c87b7e2",
      "tree": "60ac079f1443ce0d63643649b51b4071e6e33f18",
      "parents": [
        "0afcfdca963f4cefcb90ac7061aafe3985875145"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Nov 03 17:08:55 2015 -0800"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Mon Nov 09 15:07:18 2015 -0800"
      },
      "message": "Move \u0027un/install\u0027 to cmd\n\nMove the implementation of the install variants and uninstall to the cmd\ncommand. Additionally, make two other important changes: 1) replace calls\nto the legacy PackageManager#installPackageAsUser with the PackageInstaller\n2) allow streaming package bits for \u0027pm install\u0027\n\nChange-Id: I5680f57208d377daadb69b2cc09c233c02fe5016\n"
    },
    {
      "commit": "18bc3305e43a040018add48c97cfbc7b3d9ecf7c",
      "tree": "b197aa8db1111391d607eea953a1c397d66ae8ee",
      "parents": [
        "ec059d839de6d061085dcfd85ce6565dcf4d5b69"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Mon Nov 09 15:36:43 2015 +0000"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Mon Nov 09 15:36:43 2015 +0000"
      },
      "message": "Revert \"Move \u0027un/install\u0027 to cmd\"\n\nThis reverts commit ec059d839de6d061085dcfd85ce6565dcf4d5b69.\n\nChange-Id: Ieaa1373e96fb4cc20aa41c3159518bd9e86c572b\n"
    },
    {
      "commit": "ec059d839de6d061085dcfd85ce6565dcf4d5b69",
      "tree": "4c308cdb1e40506262faa5146c806968a3911b08",
      "parents": [
        "8382f98f6246c514106ca2bd88ab9f3c8d2ff5c8"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Tue Nov 03 17:08:55 2015 -0800"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Fri Nov 06 09:27:22 2015 -0800"
      },
      "message": "Move \u0027un/install\u0027 to cmd\n\nMove the implementation of the install variants and uninstall to the cmd\ncommand. Additionally, make two other important changes: 1) replace calls\nto the legacy PackageManager#installPackageAsUser with the PackageInstaller\n2) allow streaming package bits for \u0027pm install\u0027\n\nChange-Id: Ia49dac0ccd6470f9d1c1964bdeb3c0b22b856075\n"
    },
    {
      "commit": "0881a7445f9106e835486c5a697c01f4f18e619b",
      "tree": "49850fcc71fcb4102234dd82b05c6ac74be7de33",
      "parents": [
        "429c5b93ff66e82fa3fd65475489fde133c66002"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Nov 05 00:57:12 2015 -0800"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Nov 05 13:03:26 2015 -0800"
      },
      "message": "Use std::unique_ptr instead of UniquePtr.\n\nWe\u0027re deprecating UniquePtr, so we need to move to the real thing.\n\nBug: http://b/22403888\nChange-Id: I5b7fdf4924dd8c12a8c7dba89278714ca6fdc60a\n(cherry picked from commit b0624da1181276ff4caa5e57a7a4abf766902e3e)\n"
    },
    {
      "commit": "ce8bf86d6d6d3342d6b94c90fcfe382070127eb2",
      "tree": "5bd65248df4bb6ad8cb5a514d674a8ff6fb50349",
      "parents": [
        "a76bafdc44b7f97a03a1e9f74c69f9a8514bc228",
        "f73e78fe1cb6803a29f7f85b49792f4e8a7350c8"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Nov 05 18:55:49 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Nov 05 18:55:49 2015 +0000"
      },
      "message": "Merge \"Fixes for sm and pm usage\" am: ffb15da518 am: 671d5965f7\nam: f73e78fe1c\n\n* commit \u0027f73e78fe1cb6803a29f7f85b49792f4e8a7350c8\u0027:\n  Fixes for sm and pm usage\n"
    },
    {
      "commit": "ffb15da518e35727e218bfba48927902d4368e2f",
      "tree": "4a594874acc0ce15a9987d6f0d1c10e8e575084c",
      "parents": [
        "d9a1b35df62eddc56f69281aea1534d187b63205",
        "82bfca4609244f2b8169bd779765791d6638b448"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Nov 05 18:38:56 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 05 18:38:56 2015 +0000"
      },
      "message": "Merge \"Fixes for sm and pm usage\""
    },
    {
      "commit": "82bfca4609244f2b8169bd779765791d6638b448",
      "tree": "fddf0a09086879831d65fff9a91f58c968b98b18",
      "parents": [
        "12dccb8a2450152102b32bf4882200f6b08a5a5a"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Nov 05 10:33:40 2015 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Nov 05 10:33:40 2015 -0800"
      },
      "message": "Fixes for sm and pm usage\n\nsm showed IllegalArgumentException after usage.\npm inconsistently used \"return showUsage()\"\n\nBug: 20948199\nChange-Id: I5828489a9d4ef2eabfb97dd408d66e1560a5a983\n"
    },
    {
      "commit": "60459abb211a11caf71238a44f543fdc18289772",
      "tree": "6ad47ddf7925e78b2cf947eb9fab4c8223a1f656",
      "parents": [
        "02a5a6bb9ba05bdf7517de90ede49fb535ea06ca"
      ],
      "author": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Fri Oct 30 11:32:16 2015 -0700"
      },
      "committer": {
        "name": "Todd Kennedy",
        "email": "toddke@google.com",
        "time": "Mon Nov 02 16:19:50 2015 -0800"
      },
      "message": "Implement shell commands for package and user services\n\nOnly implement the \u0027list\u0027 package service command. More will follow\nin future CLs.\n\nChange-Id: Iae225cd4ee63c7d468a4fd882d8cb4b6b76ccc09\n"
    },
    {
      "commit": "3797c22ea16e932329ebffdc7e7ce09f9ecd9545",
      "tree": "a5a4b09cb4c6dc8d8d4cc6e624ffb200856eab95",
      "parents": [
        "c11f46f41662feebbbd2184aaef25c14add45e7d"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Tue Oct 27 14:21:58 2015 -0700"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Mon Nov 02 11:32:42 2015 -0800"
      },
      "message": "Added StackId object for checking what features a stack supports\n\nHelps make the code easier to follow since we are no longer checking\nmultiple stack ids at various decision points.\n\nBug: 25282299\nChange-Id: Ifa6864a1ef56ce2eca4c94f87a4e0b993de987cd\n"
    },
    {
      "commit": "6f02b865df5b6d0fb88bf6ab8af07282b1b2745d",
      "tree": "0a5dbadfefd63e88369adfc3717aeebb026a9861",
      "parents": [
        "b6489e11da1df9a3bba1f4ba1429e7e3ec8b0711",
        "f5bf0de1aa939531f1efe6696c17d42c1980f57a"
      ],
      "author": {
        "name": "Xiaohui Chen",
        "email": "xiaohuic@google.com",
        "time": "Tue Oct 27 18:43:22 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 27 18:43:22 2015 +0000"
      },
      "message": "Merge \"clean up USER_OWNER in Pm command\""
    },
    {
      "commit": "079a0044a366b5a6ab8026aca452676a6e1e7215",
      "tree": "a4a7f0b9b5f97249970b877ecce6996f65ecdccd",
      "parents": [
        "99db1863a84364339fc5dc9142f15910cdd96ed8"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Sat Oct 24 11:44:07 2015 -0700"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Mon Oct 26 12:07:00 2015 -0700"
      },
      "message": "API for moving top activity in a stack to pinned stack.\n\n* AMS.moveTopStackActivityToPinnedStack can be used to move the top\nactivity in a stack to the pinned stack and also specify the bounds\nthe pinned stack should be sized to.\n* \u0027am stack move-top-activity-to-pinned-stack\u0027 command for testing\nAMS.moveTopStackActivityToPinnedStack API\n\nBug: 25006507\nChange-Id: I8392b4c39d8542153e691be7a627b7f35fd44884\n"
    },
    {
      "commit": "f5bf0de1aa939531f1efe6696c17d42c1980f57a",
      "tree": "add30a0a05c59b632669693ff95a9f5263b22ca3",
      "parents": [
        "b1423ddee906333d1ac3ec46226cd210e7648e10"
      ],
      "author": {
        "name": "Xiaohui Chen",
        "email": "xiaohuic@google.com",
        "time": "Mon Oct 19 15:10:28 2015 -0700"
      },
      "committer": {
        "name": "Xiaohui Chen",
        "email": "xiaohuic@google.com",
        "time": "Mon Oct 26 10:45:15 2015 -0700"
      },
      "message": "clean up USER_OWNER in Pm command\n\nChange-Id: I3092cdf1ca619b4c1ba881955b8a55b97ba10e24\n"
    },
    {
      "commit": "46a114dfcfeed37cea4f42b51376b751a6710501",
      "tree": "cc91e210bdba419e8176ac23064ba09be1d1fdd6",
      "parents": [
        "d1e0f4601ce7de053d984d3c719917772c1bd551",
        "2876b1f169e5342e46b27f3f94a8816837c9f61a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 20 23:51:55 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Oct 20 23:51:55 2015 +0000"
      },
      "message": "Merge \"Fix lseek argument order.\" am: 12dccb8a24 am: 9bbe41642a\nam: 2876b1f169\n\n* commit \u00272876b1f169e5342e46b27f3f94a8816837c9f61a\u0027:\n  Fix lseek argument order.\n"
    },
    {
      "commit": "9bbe41642a98a012f9df76224c1037127a8e5470",
      "tree": "a32107ccabe19997661ec5b2f5b5d4dca203f742",
      "parents": [
        "7acf8c21d848305400f645126918100f1d99f921",
        "12dccb8a2450152102b32bf4882200f6b08a5a5a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 20 20:35:44 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Oct 20 20:35:44 2015 +0000"
      },
      "message": "Merge \"Fix lseek argument order.\"\nam: 12dccb8a24\n\n* commit \u002712dccb8a2450152102b32bf4882200f6b08a5a5a\u0027:\n  Fix lseek argument order.\n"
    },
    {
      "commit": "70bef1c4bd9b1ef1c02c5585cd594289e6a9bc00",
      "tree": "ce8569d809cdf9942db61e43f845844176a1592d",
      "parents": [
        "59d548e1e54fa753d3776647b98dc34ea7c27685"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 20 13:23:18 2015 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 20 13:23:18 2015 -0700"
      },
      "message": "Fix lseek argument order.\n\nChange-Id: Ibc2f98e4c26d0ac6ac7b4a73775c5213c4df4518\n"
    },
    {
      "commit": "63afb863815a80b05c6f1acd6b0e99a3508540f4",
      "tree": "c0a58708a8a12eea7356a6f7ee0c0d65e0302fd1",
      "parents": [
        "c76b65e723b661f942248b273e6492268a8e93e6",
        "a4d4e82927ceadc23863e74b7e1160e4497504a7"
      ],
      "author": {
        "name": "Pablo Ceballos",
        "email": "pceballos@google.com",
        "time": "Mon Oct 19 17:55:59 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 19 17:55:59 2015 +0000"
      },
      "message": "Merge \"Remove GLTrace support\""
    },
    {
      "commit": "80435a7fcd98e5ad1a0537a9646be2fca575f3bb",
      "tree": "64881f56b3a2219032c12f1c68b75eaec99d86c4",
      "parents": [
        "d25c9018fbbc9318f48f139489a0ceabf7a52ef3",
        "bd5b6252a5dd068c2db30fbbd16e87a656047197"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Oct 15 16:16:07 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 15 16:16:07 2015 +0000"
      },
      "message": "am bd5b6252: am b9a28ae1: am f916524f: Merge \"Add support for --user to \"pm path\" for work profile use\"\n\n* commit \u0027bd5b6252a5dd068c2db30fbbd16e87a656047197\u0027:\n  Add support for --user to \"pm path\" for work profile use\n"
    },
    {
      "commit": "b9a28ae199ad44b07682f7417bc146acdc411c2a",
      "tree": "050fead98482479a22ff371977a03e114c2b68f7",
      "parents": [
        "a2e511d6ca6c3b3d465bbf2fe98f17e210c676d0",
        "f916524f44c9955e7c747e5319d17c46a61a3c4c"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Oct 15 16:02:57 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 15 16:02:57 2015 +0000"
      },
      "message": "am f916524f: Merge \"Add support for --user to \"pm path\" for work profile use\"\n\n* commit \u0027f916524f44c9955e7c747e5319d17c46a61a3c4c\u0027:\n  Add support for --user to \"pm path\" for work profile use\n"
    },
    {
      "commit": "f916524f44c9955e7c747e5319d17c46a61a3c4c",
      "tree": "d1304b37939d08bec683fc6110d68218ee2bba22",
      "parents": [
        "8b62654855b105e5ff7628107691309a63effe0c",
        "f83612b295bd4a50eeea74a262edd2db4ce7fdf0"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Oct 15 15:55:45 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Oct 15 15:55:45 2015 +0000"
      },
      "message": "Merge \"Add support for --user to \"pm path\" for work profile use\""
    },
    {
      "commit": "5247523c90f452689f2b0fea3e91da54b117c8b4",
      "tree": "d83732e0cb2ee783dc37f6cfb39de26400a115a7",
      "parents": [
        "9ba60c949f37a1694532095572f35cfcf953f591",
        "ffc11bb712343b634901fe2d0e0022e7e578dd5c"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Tue Oct 13 01:58:05 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 13 01:58:05 2015 +0000"
      },
      "message": "Merge \"Don\u0027t set incorrect stack bounds when rotating screen in docked mode\""
    },
    {
      "commit": "ffc11bb712343b634901fe2d0e0022e7e578dd5c",
      "tree": "45abb190daac4af889d97439c152e4756e0dd090",
      "parents": [
        "75f1e1182889dabcf5596e7c17df5005edee412c"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Sat Oct 10 13:05:45 2015 -0700"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Mon Oct 12 18:56:28 2015 -0700"
      },
      "message": "Don\u0027t set incorrect stack bounds when rotating screen in docked mode\n\nBoth window manager and activity manager could decide what the bounds\nof other stacks should be when the docked stack exist which can get\nout of sync. Now window manager does the bounds calculation and\nactivity manager asks window manager what the bounds should be when\nit needs to resize the stack.\n\nBug: 24738105\nChange-Id: I97356f008b676d2f58a8b54fdb08735ab51394af\n"
    },
    {
      "commit": "f5e18154b0ca85cc69bd94407fd3d5a01b836894",
      "tree": "da8a7c4dd41fab209c4e829acd1e38dcd4de860e",
      "parents": [
        "81892b095bfcbcf20130c29db3d3c319ca8b971c",
        "b8f8ca5139e3268c7447565940b63a543ebe9ed5"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Oct 13 01:24:48 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 13 01:24:48 2015 +0000"
      },
      "message": "am b8f8ca51: am 651cb804: am fe1934e4: Merge \"RRO: idmap: allow flock(2) to block\"\n\n* commit \u0027b8f8ca5139e3268c7447565940b63a543ebe9ed5\u0027:\n  RRO: idmap: allow flock(2) to block\n"
    },
    {
      "commit": "81892b095bfcbcf20130c29db3d3c319ca8b971c",
      "tree": "c260a8e5acbb2767945365b93cfa0ea0918aa2f3",
      "parents": [
        "45f704a4d0eb8d05e4f89f08385cc76f99be4048",
        "41bf75c606fa19b473bc87145f766757525ae96c"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Oct 13 01:24:38 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 13 01:24:38 2015 +0000"
      },
      "message": "am 41bf75c6: am 287cd2d1: am bac309ca: Merge \"RRO: idmap: fix sorting of overlays.list\"\n\n* commit \u002741bf75c606fa19b473bc87145f766757525ae96c\u0027:\n  RRO: idmap: fix sorting of overlays.list\n"
    },
    {
      "commit": "45f704a4d0eb8d05e4f89f08385cc76f99be4048",
      "tree": "acc1369cfa23f24b43eb309a6fe3ac75b365f082",
      "parents": [
        "4ffea4e4da10c14203a690d67cadf5b39489f84c",
        "89eaa06a10ed399ae9919de2795f76c2af932adc"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Oct 13 01:24:29 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 13 01:24:29 2015 +0000"
      },
      "message": "am 89eaa06a: am 6382a950: am 2327239d: Merge \"Handle \\\u0027root\\\u0027 pseudo-package in the appops command\"\n\n* commit \u002789eaa06a10ed399ae9919de2795f76c2af932adc\u0027:\n  Handle \u0027root\u0027 pseudo-package in the appops command\n"
    },
    {
      "commit": "4ffea4e4da10c14203a690d67cadf5b39489f84c",
      "tree": "bfd99c87e43a3356f1bcb124a71524c482bc2b0b",
      "parents": [
        "92d2fae09bfa9ae70abd0fd81d1d2c45ef5e2613",
        "d0c806b10c8e45dcfa950adc36742b15edababea"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Oct 13 01:24:16 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 13 01:24:16 2015 +0000"
      },
      "message": "am d0c806b1: am 6029dfa8: am 7caa8f14: Merge \"Make \\\u0027idmap --scan\\\u0027 accept more than one input directory\"\n\n* commit \u0027d0c806b10c8e45dcfa950adc36742b15edababea\u0027:\n  Make \u0027idmap --scan\u0027 accept more than one input directory\n"
    },
    {
      "commit": "651cb804b12614094c2b69a2133c8c0b2083556e",
      "tree": "aee271942e96fb17d892040de876ac16742a8205",
      "parents": [
        "287cd2d1e4fc6cc77b466f51d24a1c3e086140ae",
        "fe1934e470681ff7ec5b8ec0609ae9fe24bd7282"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Oct 12 19:34:43 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 12 19:34:43 2015 +0000"
      },
      "message": "am fe1934e4: Merge \"RRO: idmap: allow flock(2) to block\"\n\n* commit \u0027fe1934e470681ff7ec5b8ec0609ae9fe24bd7282\u0027:\n  RRO: idmap: allow flock(2) to block\n"
    },
    {
      "commit": "287cd2d1e4fc6cc77b466f51d24a1c3e086140ae",
      "tree": "ea6fff53e8bf93a6b5f2b58de184df38cc82a19d",
      "parents": [
        "6382a950cdd651070bcdedd5f89e6fc78e2b0450",
        "bac309ca8f4ecd1a835aa36f4be2a1fa45577eab"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Oct 12 19:34:37 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 12 19:34:37 2015 +0000"
      },
      "message": "am bac309ca: Merge \"RRO: idmap: fix sorting of overlays.list\"\n\n* commit \u0027bac309ca8f4ecd1a835aa36f4be2a1fa45577eab\u0027:\n  RRO: idmap: fix sorting of overlays.list\n"
    },
    {
      "commit": "6382a950cdd651070bcdedd5f89e6fc78e2b0450",
      "tree": "28b423b9fd9e908af62019bb04f66e22b3da72bc",
      "parents": [
        "6029dfa81a01ab41318a8e9601448387179f8703",
        "2327239d65525d8ba2bdbedd6e59809fef447a12"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Oct 12 19:34:28 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 12 19:34:28 2015 +0000"
      },
      "message": "am 2327239d: Merge \"Handle \\\u0027root\\\u0027 pseudo-package in the appops command\"\n\n* commit \u00272327239d65525d8ba2bdbedd6e59809fef447a12\u0027:\n  Handle \u0027root\u0027 pseudo-package in the appops command\n"
    },
    {
      "commit": "fe1934e470681ff7ec5b8ec0609ae9fe24bd7282",
      "tree": "c9f136e75d80646ff44cdac94070d3109ddf13d4",
      "parents": [
        "bac309ca8f4ecd1a835aa36f4be2a1fa45577eab",
        "df1a5b22cdbd5c453cf19d5c771b66dbc6e82f48"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Oct 12 19:30:23 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Oct 12 19:30:23 2015 +0000"
      },
      "message": "Merge \"RRO: idmap: allow flock(2) to block\""
    },
    {
      "commit": "bac309ca8f4ecd1a835aa36f4be2a1fa45577eab",
      "tree": "e4f1ac4ccd4beaaeb37eb0bb51a34c830601db8e",
      "parents": [
        "2327239d65525d8ba2bdbedd6e59809fef447a12",
        "7197d91eb7dfbd0f5b065b56d4f391019e71d03a"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Oct 12 19:29:39 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Oct 12 19:29:39 2015 +0000"
      },
      "message": "Merge \"RRO: idmap: fix sorting of overlays.list\""
    },
    {
      "commit": "2327239d65525d8ba2bdbedd6e59809fef447a12",
      "tree": "2143cb2d0df1b6bddd5a45cbca019365c588e9d8",
      "parents": [
        "7caa8f14a78d279e0392089dca2f54f27e7f5d15",
        "3875bf6c047b5e1e6a0bebe8f630b89fc60fd6f6"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Oct 12 19:29:14 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Oct 12 19:29:14 2015 +0000"
      },
      "message": "Merge \"Handle \u0027root\u0027 pseudo-package in the appops command\""
    },
    {
      "commit": "6029dfa81a01ab41318a8e9601448387179f8703",
      "tree": "e01ea154911f60c81dfb5ecc7aa9fb786f349d26",
      "parents": [
        "83a3908047f3438c5daf7c3b562cf9ad8fe76d71",
        "7caa8f14a78d279e0392089dca2f54f27e7f5d15"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Oct 12 18:59:03 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 12 18:59:03 2015 +0000"
      },
      "message": "am 7caa8f14: Merge \"Make \\\u0027idmap --scan\\\u0027 accept more than one input directory\"\n\n* commit \u00277caa8f14a78d279e0392089dca2f54f27e7f5d15\u0027:\n  Make \u0027idmap --scan\u0027 accept more than one input directory\n"
    },
    {
      "commit": "3875bf6c047b5e1e6a0bebe8f630b89fc60fd6f6",
      "tree": "b800530a91d7fcf7a5fa43c31691c583771552ea",
      "parents": [
        "c9390c8baf0a41633c176d6d9a2d7e5d0c61c387"
      ],
      "author": {
        "name": "Snild Dolkow",
        "email": "snild.dolkow@sonymobile.com",
        "time": "Thu Sep 03 11:50:05 2015 +0200"
      },
      "committer": {
        "name": "Zoran Jovanovic",
        "email": "zoran.jovanovic@sonymobile.com",
        "time": "Wed Oct 07 19:58:17 2015 +0200"
      },
      "message": "Handle \u0027root\u0027 pseudo-package in the appops command\n\nThe AppOpsService handles the \u0027root\u0027 pseudo-package as any other; it\ngets no automatic allowances. This is reasonable, but it blocked me from\naccessing the mms-sms provider through the \u0027content\u0027 command, even in a\nroot shell.\n\nSo I tried to change the rules:\n\n$ adb root\n$ adb shell appops set root WRITE_SMS allow\nError: No UID for root in user 0\n\nThis error occurs in the appops command because there isn\u0027t really a\npackage called root, so the UID lookup via PackageManager fails.\n\nBut we know that root is UID 0, so we can just skip the lookup.\n(Also, AppOpsService handles the other way around in getOpsLocked method.)\n\nChange-Id: Ie0cad67efa438a74a4d9921d29933610cfb13974\n"
    },
    {
      "commit": "7197d91eb7dfbd0f5b065b56d4f391019e71d03a",
      "tree": "6daff6d0712dc95cd24dc1421842691645509cb0",
      "parents": [
        "c9390c8baf0a41633c176d6d9a2d7e5d0c61c387"
      ],
      "author": {
        "name": "Mårten Kongstad",
        "email": "marten.kongstad@sonymobile.com",
        "time": "Wed Mar 18 15:24:18 2015 +0100"
      },
      "committer": {
        "name": "Zoran Jovanovic",
        "email": "zoran.jovanovic@sonymobile.com",
        "time": "Wed Oct 07 19:51:50 2015 +0200"
      },
      "message": "RRO: idmap: fix sorting of overlays.list\n\nMultiple overlay packages with targetPackage\u003d\"android\" are loaded in the\nwrong order due to the incorrect order they are listed in overlays.list.\nThis will cause runtime resource overlay to fail when multiple overlay\npackages target the same resources in framework-res.apk.\n\nCorrect the order in which overlays are loaded by changing the sorting\nof overlays.list.\n\nBackground: commit f90f2f8d changed the order in which overlay packages\nshould be added to ResTables. The expected order is now in ascending\npriority. This must be reflected in overlays.list.\n\nChange-Id: I249984c0e34b6009e7280ce2777750c76ab16e37\n"
    },
    {
      "commit": "83ab0d7c1824f3a29e41af8a95a954c73f48c287",
      "tree": "ee7747ed680a46cfc90ec83c3b1b243a2514aea1",
      "parents": [
        "c9390c8baf0a41633c176d6d9a2d7e5d0c61c387"
      ],
      "author": {
        "name": "Mårten Kongstad",
        "email": "marten.kongstad@sonymobile.com",
        "time": "Fri Mar 20 12:57:36 2015 +0100"
      },
      "committer": {
        "name": "Zoran Jovanovic",
        "email": "zoran.jovanovic@sonymobile.com",
        "time": "Wed Oct 07 19:45:09 2015 +0200"
      },
      "message": "Make \u0027idmap --scan\u0027 accept more than one input directory\n\nThe \u0027idmap --scan\u0027 command was limited to only scan a single directory\nfor overlay packages. Update idmap to support any number of directories.\n\nChange-Id: I851f5720a3c1d844235911a0833670652a20a3c8\n"
    }
  ],
  "next": "df1a5b22cdbd5c453cf19d5c771b66dbc6e82f48"
}
