)]}'
{
  "log": [
    {
      "commit": "9e1923d02fbc161abe107c814224c594cb4beb56",
      "tree": "215e20cc10d89e9466c6cdb1f297737653cca62b",
      "parents": [
        "59e04c6f92da584b322c87072f18e6cab4de4c60"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Feb 11 14:17:25 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Feb 11 14:17:25 2016 -0800"
      },
      "message": "AAPT: Remove warnings for public resources without comments\n\nThere are so many public resources that do not warrant comments\nthat having a warning that no one cares about is just producing\nlog spam.\n\nBug:21495023\nChange-Id: I84e3b39c7139ee67fb5cb711d5ab466d8f4ef2e0\n"
    },
    {
      "commit": "59e04c6f92da584b322c87072f18e6cab4de4c60",
      "tree": "c08dd13ae57f9b6000441035201f226d532f8896",
      "parents": [
        "41466449aae2d304cf05680f5adbf44312d7a65e"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Feb 04 15:59:23 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Feb 09 19:59:17 2016 +0000"
      },
      "message": "AAPT2: Switch to protobuf for intermediate format\n\nWithout needing to conform to the runtime data format,\nit is much easier to add new features such as debugging symbols\nand carrying over product data to link time.\n\nThis also simplifies the runtime format parser and serializer,\nwhich will change much less frequently than the protobuf intermediate\nformat.\n\nChange-Id: I209787bbf087db0a58a534cb8511c51d21133e00\n"
    },
    {
      "commit": "e12aece4cad849efbbe6a806f132613a56699230",
      "tree": "4d8c0f1b9c720fa3042180f2d06dcf5fb05daa6e",
      "parents": [
        "5affef077316e73337eb42a098a126b01d20568e"
      ],
      "author": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Tue Feb 02 22:43:27 2016 -0800"
      },
      "committer": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Mon Feb 08 20:46:53 2016 +0000"
      },
      "message": "Ensure surfaces stay alive until activity stop.\n\nPrior to this commit in this case of activity pause, with finishing\u003dtrue\nthe activity manager will notify us of app visibility and we will begin\nan exit animation. When this exit animation finishes, we will destroy\nthe application surface (unless its eligible for saving). However there\nare two cases where this breaks down:\n\n1. The exit animation finishes before the activity thread handles\nthe stop transition. Many activities stop rendering on Pause\nbut many do not and it is totally legal to do so. Sometimes this\nresults in non fatal dequeue buffer errors and sometimes results in\nfatal errors with Pixel Buffers, etc...\n2. We may resume the activity shortly after asking the window manager\nto pause it. If the window wasn\u0027t eligible for animation, we will\nimmediately destroy it after being told of the visibility change\nfollowing PAUSE_FINISHING. It\u0027s possible for this to complete\nbefore we process the resume. On the other hand the client\nhappilly processes the resume and transitions back from PAUSE\nand then crashes once it attempts to use it\u0027s surface.\n\nIn this commit we have the activity manager notify the window manager\nwhen an application has actually finished (or we have timed out\nwaiting). For windows which have not been explicitly removed by the\nclient, we defer destruction until we have received both this signal\nand the animation has completed.\n\nBug: 26793431\nChange-Id: Ib6ee8fbdd1f03450fbbfd62468a19e97774befab\n"
    },
    {
      "commit": "6a008170cb18666e04c42856f992fc7a0afa1e1f",
      "tree": "5998b2ccc5c4e4006f6b0ab5ed37b40f7502b9dd",
      "parents": [
        "e909d94e03e2bd3eba0bb47b6295ae0bf6538c31"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Feb 02 17:02:58 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Feb 02 17:02:58 2016 -0800"
      },
      "message": "AAPT2: Support -c configuration filtering\n\nChange-Id: I1e5855ca73440bdc30c21bcbc1dfdd31a9842363\n"
    },
    {
      "commit": "08df538482f00611133a0b3aba64e8fed663afc3",
      "tree": "e48ead48e2d089728cb0aefda4aca03d78908b7a",
      "parents": [
        "76855d322b18f47962727588550e5aec3850c5e8",
        "29e8071d2e9f3a8171624fd63b849f5c14360b21"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Feb 01 22:56:43 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Feb 01 22:56:43 2016 +0000"
      },
      "message": "Remove obsolete try catch am: ebdcc80ac2\nam: 29e8071d2e\n\n* commit \u002729e8071d2e9f3a8171624fd63b849f5c14360b21\u0027:\n  Remove obsolete try catch\n"
    },
    {
      "commit": "1444cfd50efd95662e848009d1c2e8a81291efee",
      "tree": "da024ffb73bcb7b51612131c331dde4818fb69fb",
      "parents": [
        "ccdab44d25f0adb9ed583472c792e2b1464d193f"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Mon Feb 01 14:24:05 2016 -0800"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Mon Feb 01 22:24:46 2016 +0000"
      },
      "message": "Fix build\n\nChange-Id: Ifed64dc2a4db9a58c3588ea0ca899f628efe685a\n"
    },
    {
      "commit": "ebdcc80ac26ae51ba27d9469a501a6242256aa50",
      "tree": "dc28ea0d194a851a53016e550ad213f3e55c7fa6",
      "parents": [
        "ded4d14e3348ebb0cdfa3498a53d3fbfc58b2043"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Feb 01 14:03:30 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Feb 01 14:03:30 2016 -0800"
      },
      "message": "Remove obsolete try catch\n\nThe try catch was to prevent crashing on preview releases of Android\nStudio. We don\u0027t support them anymore.\n\nChange-Id: I8e33cae98117c0034aea1b56903b623fcb64435e\n"
    },
    {
      "commit": "37a866e9a6e325a6bcebd052e959ff264a34dd6a",
      "tree": "0ecf9fef4f6482850d5c5eb785e827d33c137e65",
      "parents": [
        "4c95e0b4df62918d6e2abf9878ad4a7e7bb54123",
        "33fcd11bc296fa495a4f4584f782c1c0fe4fe592"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Mon Feb 01 15:22:42 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 01 15:22:42 2016 +0000"
      },
      "message": "Merge \"Encode paletted PNGs more efficiently (part 2)\""
    },
    {
      "commit": "4c95e0b4df62918d6e2abf9878ad4a7e7bb54123",
      "tree": "80cc1a1afe22a7589fc86d20efcb18d70274f308",
      "parents": [
        "9bcdf36af2affd7c72be13a942b879492fc7c0fc",
        "2a84e23399840dc365cd03edcbfcf2727a17cd6e"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Mon Feb 01 15:20:24 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Feb 01 15:20:24 2016 +0000"
      },
      "message": "Merge \"Encode paletted PNGs more efficiently\""
    },
    {
      "commit": "33fcd11bc296fa495a4f4584f782c1c0fe4fe592",
      "tree": "fb44746d2dfeda5dfd09522810a2ea789ea8141b",
      "parents": [
        "fc1159c808962a32746cbddd088ed069f78afcc2"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Jan 29 18:02:41 2016 -0500"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Mon Feb 01 14:15:35 2016 +0000"
      },
      "message": "Encode paletted PNGs more efficiently (part 2)\n\nMany PNGs have multiple distinct pixels with zero alpha.  This\nCL allows us to treat all of those pixels as a single zero pixel.\n\nThis saves space in the color palette and also may help save\nmemory pages when we skip writing zeros.\n\nThere is also a potential disadvantage: if someone intended to decode\nthis image as unpremultiplied with particular transfer modes where\ntheir color components have an effect even though alpha is zero,\nthis will prevent that.  At the moment, we do not support unpremul as\na source, so this won\u0027t affect anyone trying to draw with the view\nsystem.\n\nThis change originated in:\nhttps://googleplex-android-review.git.corp.google.com/#/c/854580/\n\nChange-Id: I702c7bd22d431cc7c775ed29bbd73c930f945ca3\n"
    },
    {
      "commit": "2a84e23399840dc365cd03edcbfcf2727a17cd6e",
      "tree": "cd5ded413e882134f7c62ae0cfdaa606e1d0769f",
      "parents": [
        "795c458c89418885f146f40b8d4de96fb0d08ffe"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Thu Jan 28 18:38:38 2016 -0500"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Mon Feb 01 09:03:34 2016 -0500"
      },
      "message": "Encode paletted PNGs more efficiently\n\nSaves about 2 MB of encoded size across affected assets.\n\nAlso will enable more efficient decoding.\n\nSpecifically, encoded palette values are assumed to be opaque unless\nalpha values are provided in a tRNS chunk.  Before this change, we\nwould wastefully store many opaque alpha values in tRNS chunk.\nAdditionally, the decoder used to need to premultiply all of these\nopaque colors, because the encoded data indicated that they had alpha.\n\nChange-Id: Id21b3b31850c9db6149ced6d20ed5e0ce2d71c5b\n"
    },
    {
      "commit": "35871f2c2bb114806b4e3f109960b7f863d7885c",
      "tree": "9a89bda9cbc01d61a3fd35271f31f092c856672d",
      "parents": [
        "f6ede47b78f557d49a1e2273e37f355d39a75a59"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Jan 29 17:13:29 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Sat Jan 30 17:03:23 2016 -0700"
      },
      "message": "Offer to migrate databases and SharedPreferences.\n\nDatabases and SharedPreferences often involve multiple files under\nthe hood, so developers wanting to migrate them between different\nstorage contexts should ask us to make sure all relevant files are\nmigrated correctly.\n\nThis makes a best-effort attempt to recover from battery pulls\nduring migration, while still trying to alert developers to\nconflicting files.\n\nBug: 26668510, 25860525\nChange-Id: I9ffa3e8cb6191dfd4237b9466a081d6d77df3ba0\n"
    },
    {
      "commit": "2c0348ffbba52a3cb1e2d20aeb9ec512bad6834a",
      "tree": "92dac5826a900fa1327af324f249b44a7c65b1db",
      "parents": [
        "4b164b6d4cd6a253454ac988c83b441ae2a8e4e0",
        "634ac1e497d020496f48a1fb3b589717597b8ffe"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Jan 29 23:59:40 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 29 23:59:40 2016 +0000"
      },
      "message": "Merge \"Revert \"Encode paletted PNGs more efficiently\"\""
    },
    {
      "commit": "634ac1e497d020496f48a1fb3b589717597b8ffe",
      "tree": "ce7be42e707b44b76021694e208d601c94b83a70",
      "parents": [
        "3c7235d3868d4bf554d4c1700ac11fc3d4125c71"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Jan 29 23:57:53 2016 +0000"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Jan 29 23:57:53 2016 +0000"
      },
      "message": "Revert \"Encode paletted PNGs more efficiently\"\n\nThis reverts commit 3c7235d3868d4bf554d4c1700ac11fc3d4125c71.\n\nChange-Id: I615827c7f4570467bb85c115c01de8c3b46e4e8a\n"
    },
    {
      "commit": "fc1159c808962a32746cbddd088ed069f78afcc2",
      "tree": "5852a79cfde64bb7c19cbd2eb1466cc330047c45",
      "parents": [
        "f2a4f9af97954a8ea57c473adab477cf3f847530",
        "3c7235d3868d4bf554d4c1700ac11fc3d4125c71"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Jan 29 22:57:12 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 29 22:57:12 2016 +0000"
      },
      "message": "Merge \"Encode paletted PNGs more efficiently\""
    },
    {
      "commit": "3c7235d3868d4bf554d4c1700ac11fc3d4125c71",
      "tree": "51e11327490ba6ee3f0b2e9201239cf02a1d3d6c",
      "parents": [
        "795c458c89418885f146f40b8d4de96fb0d08ffe"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Thu Jan 28 18:38:38 2016 -0500"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Fri Jan 29 22:56:45 2016 +0000"
      },
      "message": "Encode paletted PNGs more efficiently\n\nSaves about 2 MB of encoded size across affected assets.\n\nAlso will enable more efficient decoding.\n\nSpecifically, encoded palette values are assumed to be opaque unless\nalpha values are provided in a tRNS chunk.  Before this change, we\nwould wastefully store many opaque alpha values in tRNS chunk.\nAdditionally, the decoder used to need to premultiply all of these\nopaque colors, because the encoded data indicated that they had alpha.\n\nChange-Id: I1d5400f71a0e3cb800fd0fc68a04c8c4069da8ef\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": "a4a58efe8203d63a9a6bf78b0fa9f2992b25871b",
      "tree": "112bddba545fd9c020aa85ca2b0ba88b86890185",
      "parents": [
        "08b372f71ad24ce29b86ace726bd12d2326ae87e"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Jan 27 02:10:08 2016 -0800"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Jan 27 14:00:02 2016 -0800"
      },
      "message": "Fix app staying in drag resizing when undocking\n\nWhen dismissing the docked stack, the fullscreen stack stayed in drag\nresize mode because it got a relayout, but because the bounds didn\u0027t\nchange (it switches to the fullscreen layout a bit earlier) it never\ncalled WM.relayoutWindow, so it stayed in drag resize mode indefinitely.\n\nTo fix this, introduce forceRelayout in Window.resized(), which makes\nsure the client always calls relayoutWindow. Set this to true whenever\ndrag resizing is changing.\n\nFor some very weird reason this also broke that home button was not\nresponding anymore.\n\nBug: 26806532\nChange-Id: I4b39c1c419a166aa7093c31226f2a4915f642328\n"
    },
    {
      "commit": "a68cf3c4a74fc9939fcdaae0df4e3a0711293739",
      "tree": "d2ad35cbc8a19a74d103b3e358599bc8843dac30",
      "parents": [
        "b7cf50cb957ad8bd3a304f0b80427adf4c61e5af",
        "8900aa8b44f2dae3ee7b0f53422a4dbcb4fd2903"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Tue Jan 26 06:51:42 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 26 06:51:42 2016 +0000"
      },
      "message": "Merge \"AAPT2: Add -x and -z flags to minimize changes in build scripts\""
    },
    {
      "commit": "8900aa8b44f2dae3ee7b0f53422a4dbcb4fd2903",
      "tree": "5053e3a98e9f7dfa7c0561c5801799b6cdca8193",
      "parents": [
        "ac7c606c90bcf3bfea2b04f518680baf5549b9f5"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 25 22:48:15 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 25 22:48:15 2016 -0800"
      },
      "message": "AAPT2: Add -x and -z flags to minimize changes in build scripts\n\nThe -z flag will be supported soon anyway and -x is legacy.\n\nChange-Id: I710467d35066d267dea8dfe7c521737fc768ede9\n"
    },
    {
      "commit": "2260a618424b1cbdb1a051e613bd9e24a25d8436",
      "tree": "64cd0b899dffaf59f78be3d8e2e37a3d5097f1e4",
      "parents": [
        "3236fef5d7e6e4fc12ee1d056f2dd8fbaf46efd5"
      ],
      "author": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Mon Jan 25 19:07:58 2016 -0800"
      },
      "committer": {
        "name": "Ian Pedowitz",
        "email": "ijpedowitz@google.com",
        "time": "Mon Jan 25 19:09:42 2016 -0800"
      },
      "message": "Fix build and reorder methods to match ec6a447c86b03f5896fdb717de530c8abf8887f9\n\nChange-Id: I39ee2864eda489bf0e485ea96d30e56b29500865\n"
    },
    {
      "commit": "0a66b6bc9226c170f1a522f81aca04cf03fd41a2",
      "tree": "82b25028ae2fbf62a6dbb51ddb0f0a16d17b34f8",
      "parents": [
        "fe434a15d6bde9299b51dc284b336944e5cf8a1c"
      ],
      "author": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Mon Jan 25 18:25:28 2016 -0800"
      },
      "committer": {
        "name": "Filip Gruszczynski",
        "email": "gruszczy@google.com",
        "time": "Mon Jan 25 18:25:28 2016 -0800"
      },
      "message": "Fix build.\n\nChange-Id: I68d6fade1b2a44a3542182914e0cd5853f4f0a81\n"
    },
    {
      "commit": "676ae8c8c95e4246cfd03c232c080c25b3ca5dea",
      "tree": "d072a95259005476e8a3559598fa3975386286f5",
      "parents": [
        "ee8ba01401502eabd347d5fabf9e6ecf1366abe7",
        "08f736e7b143f825fe3c29e70e9b505bbf8e1ae6"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Sat Jan 23 01:05:26 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jan 23 01:05:26 2016 +0000"
      },
      "message": "Merge \"Remove GregorianCalendar hack\" am: 187c022bf1\nam: 08f736e7b1\n\n* commit \u002708f736e7b143f825fe3c29e70e9b505bbf8e1ae6\u0027:\n  Remove GregorianCalendar hack\n"
    },
    {
      "commit": "c8680438c0481b9c1e2b0bc856f900057ea14ba2",
      "tree": "89bce83e053b00606194b9c6ec38c5db75d575ea",
      "parents": [
        "8d4d5c1c20cfb24099376c444822dae9d6118e0a",
        "ba761124e624ffed2681a9e171cd3f7d8c6ed59e"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Sat Jan 23 00:26:01 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 23 00:26:01 2016 +0000"
      },
      "message": "Merge \"Change mouse pointer when drag and drop is active\""
    },
    {
      "commit": "08f736e7b143f825fe3c29e70e9b505bbf8e1ae6",
      "tree": "8aeaff095ad46ea954894a6d7f094c2f15d66121",
      "parents": [
        "afbf1570acfac5dfc28196c3f4b424fdaef85508",
        "187c022bf187f137d48d9031c43cfc233c9fc158"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Sat Jan 23 00:02:05 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jan 23 00:02:05 2016 +0000"
      },
      "message": "Merge \"Remove GregorianCalendar hack\"\nam: 187c022bf1\n\n* commit \u0027187c022bf187f137d48d9031c43cfc233c9fc158\u0027:\n  Remove GregorianCalendar hack\n"
    },
    {
      "commit": "ac7c606c90bcf3bfea2b04f518680baf5549b9f5",
      "tree": "fadd3bbe4a50b8be13372a22827520781a5f9791",
      "parents": [
        "9b4716b531a26b2db4eeae307e20a38668ae6a21",
        "ef9c50120d1535b2133c74f969e74180d3011402"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 22 22:12:01 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 22 22:12:01 2016 +0000"
      },
      "message": "Merge \"AAPT2: Allow specifying non-final IDS when building \u0027legacy\u0027 style libraries\""
    },
    {
      "commit": "ef9c50120d1535b2133c74f969e74180d3011402",
      "tree": "ef711406aa808c6c40501698864d6ac904ae4227",
      "parents": [
        "6f0324315b3c92b3b307c258e1dcba7aac95ac92"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 22 14:09:53 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Fri Jan 22 14:09:53 2016 -0800"
      },
      "message": "AAPT2: Allow specifying non-final IDS when building \u0027legacy\u0027 style libraries\n\nReal libraries will be built correctly, but since we are not doing that\nyet, support the old way and allow a flag --non-final-ids to remove\nthe final modifier from R.java.\n\nChange-Id: Iad55fb9140e55dbb0f41d0d55f2e2bd958294c8e\n"
    },
    {
      "commit": "ba761124e624ffed2681a9e171cd3f7d8c6ed59e",
      "tree": "ea9c88a0c20035def61a2f3c05a96ff8a3619702",
      "parents": [
        "1f0945e9f6fc81f5c58da24a29c86e1efa2714ef"
      ],
      "author": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Fri Jan 22 12:09:45 2016 -0800"
      },
      "committer": {
        "name": "Vladislav Kaznacheev",
        "email": "kaznacheev@google.com",
        "time": "Fri Jan 22 12:09:45 2016 -0800"
      },
      "message": "Change mouse pointer when drag and drop is active\n\nMouse pointer is set to STYLE_GRAB when the drag has started and\nreset to STYLE_DEFAULT when the drag has ended.\n\nResetting the pointer shape to the one defined by an underlying\nview will be handled in a separate patch.\n\nBug: 24415739\nChange-Id: I8df0a08c5701a34a48f10ec6b43c2cf2e6362d61\n"
    },
    {
      "commit": "4f3d0c6caab16a7296ad46179762e0c80e55e130",
      "tree": "3313ddae7551b878c73fcac707ce525522977396",
      "parents": [
        "fca558c5490e319448ce69d1f526f5a446bb3045"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Jan 22 11:11:57 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Jan 22 11:33:53 2016 -0800"
      },
      "message": "Remove GregorianCalendar hack\n\nBug: http://b.android.com/199424\nChange-Id: I589d153e1f57b6302c6fe3c031c5c63e33ad9996\n"
    },
    {
      "commit": "e797745d757ef8eda5e36c33fec3ca74c0f4ec99",
      "tree": "29df60d4a3438d9e8a4246cc5e93e61ea48ef5bb",
      "parents": [
        "e27e0850fe4acbdc911e2e4e6272be10ac2f2779"
      ],
      "author": {
        "name": "Selim Cinek",
        "email": "cinek@google.com",
        "time": "Thu Jan 21 23:11:47 2016 -0800"
      },
      "committer": {
        "name": "Selim Cinek",
        "email": "cinek@google.com",
        "time": "Fri Jan 22 07:17:39 2016 +0000"
      },
      "message": "Fix build by adding missing method\n\nChange-Id: I4309225f9c799237857ce4c8f7ae2f8667d0b8be\n"
    },
    {
      "commit": "2d05094209baa26b1c53a72de77a3dfdd60c30b0",
      "tree": "a2075f869852ea3e4ab0394a822d9c9ec7f524a3",
      "parents": [
        "6f0324315b3c92b3b307c258e1dcba7aac95ac92",
        "b927c559e1ef8530b08712507f320502627db298"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Thu Jan 21 22:17:31 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 21 22:17:31 2016 +0000"
      },
      "message": "Merge \"Implement smarter locale resource selection\""
    },
    {
      "commit": "6f0324315b3c92b3b307c258e1dcba7aac95ac92",
      "tree": "1dafea6a465c3e9d56800675d704164936c905f8",
      "parents": [
        "7f193c5b03a3db5baf147b460fa4fc0b1911d83e",
        "c446a733b82872ce25dcba2c4185f924aa766349"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Jan 21 22:13:15 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 21 22:13:15 2016 +0000"
      },
      "message": "Merge \"AAPT2: Accept empty zip files\""
    },
    {
      "commit": "b927c559e1ef8530b08712507f320502627db298",
      "tree": "f0d2fd051cb4486239e6f6187e0da53e416fdaeb",
      "parents": [
        "ac3e599069e1b87ea190f008aef60a506c8561c7"
      ],
      "author": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Fri Jan 15 11:23:42 2016 -0800"
      },
      "committer": {
        "name": "Roozbeh Pournader",
        "email": "roozbeh@google.com",
        "time": "Thu Jan 21 13:47:22 2016 -0800"
      },
      "message": "Implement smarter locale resource selection\n\n* Add support for determining script from language and region.\n* Add support for determining special parents of locales.\n* Add support for smart comparison of locales with only a difference\n  in region, using the locale parentage tree.\n* Fix LocaleData.matchScore() to not fallback to old locale matching\n  behavior if we can\u0027t determine a script.\n* Allow four-character variant codes. (Previously, only five- to\n  eight-character variant codes were allowed.)\n\nBug: 7296673\nBug: 26589793\nChange-Id: Ibde0a48c0564ff383b41068095a5cbacfe7b94bc\n"
    },
    {
      "commit": "c446a733b82872ce25dcba2c4185f924aa766349",
      "tree": "060ddb989e6c6f41e7a0661e86e6aafec2e2d891",
      "parents": [
        "88f04309806ec9964235e02543c7e2dbd18d6b8a"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Jan 21 11:04:46 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Jan 21 11:04:46 2016 -0800"
      },
      "message": "AAPT2: Accept empty zip files\n\nThe libziparchive returns an error on empty zip files.\nWork around this by checking for that error condition and\nreturning an empty ZipFileCollection.\n\nChange-Id: I9edaf2e089456b6ccb4bb099b20ede10331bd352\n"
    },
    {
      "commit": "751766a561048a3dbf20e423ad57dab7f69b7b7e",
      "tree": "361f72c03c7946d20d1ca9aa96651b4bb80e1dc0",
      "parents": [
        "197b1678b670f58302c0cb0f15055c99a464e808",
        "cc90965d8f3b8779fc477ec8a43b16306e5da535"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Jan 21 13:19:57 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 21 13:19:57 2016 +0000"
      },
      "message": "Deals with translation and scaling in layoutlib am: ded4d14e33\nam: cc90965d8f\n\n* commit \u0027cc90965d8f3b8779fc477ec8a43b16306e5da535\u0027:\n  Deals with translation and scaling in layoutlib\n"
    },
    {
      "commit": "ded4d14e3348ebb0cdfa3498a53d3fbfc58b2043",
      "tree": "21d0ea4b55be1d41649a8c6fbdc84dd8b4779e79",
      "parents": [
        "7efb74d54a22d0c693ebddf5438815b65bc67616"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Jan 21 11:21:47 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Thu Jan 21 11:21:47 2016 +0000"
      },
      "message": "Deals with translation and scaling in layoutlib\n\nLayoutlib now correctly interprets the translation and scaling\nxml attributes of views, by implementing what the Android platform\ndoes in native code.\n\nChange-Id: Ie8465f40ef4508d3c31796200800f12cb8f883a4\n"
    },
    {
      "commit": "b384adf63fe227798db859e403c6a2a75dd204a6",
      "tree": "59a24447f4c5ae2f93da63c03eb3902d8456c736",
      "parents": [
        "c1b92381f5cc0063cf5d5ce3167ed9b70373dd5b",
        "426910e4dfb1f84f93697017c90400c0b4f8e6c0"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Wed Jan 20 17:44:57 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 20 17:44:57 2016 +0000"
      },
      "message": "Merge \"Deals with android:rotation attribute in layoutlib\" into mnc-ub-dev am: 7efb74d54a\nam: 426910e4df\n\n* commit \u0027426910e4dfb1f84f93697017c90400c0b4f8e6c0\u0027:\n  Deals with android:rotation attribute in layoutlib\n"
    },
    {
      "commit": "7efb74d54a22d0c693ebddf5438815b65bc67616",
      "tree": "1825d25eddba1a778cc054a69794656defc76822",
      "parents": [
        "ada8c117b197dd61bd472399147dd18ff337a204",
        "c92d70dff716a8b38982b3d6ec05427ad66497fa"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Wed Jan 20 11:44:07 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 20 11:44:07 2016 +0000"
      },
      "message": "Merge \"Deals with android:rotation attribute in layoutlib\" into mnc-ub-dev"
    },
    {
      "commit": "0102a8a8e957c38e8fe40e6cd184339ea9f38906",
      "tree": "4450c9dfce5b8bcc855e6dad145556b1c7d7f615",
      "parents": [
        "c5fd350522d9269e6239af818f7261a6ead51570",
        "23fa16b759f023ea18ab9f84e89df50d4b449dfd"
      ],
      "author": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Tue Jan 19 22:59:10 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 19 22:59:10 2016 +0000"
      },
      "message": "Merge \"Replace SurfaceViews across resize trigerred relaunches.\""
    },
    {
      "commit": "23fa16b759f023ea18ab9f84e89df50d4b449dfd",
      "tree": "07b8681fce82a05f8d1cdbe68847a8560c6c903b",
      "parents": [
        "8a47292e1c853f9b0d2f1436df84a7db365ced23"
      ],
      "author": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Wed Jan 13 13:19:58 2016 -0800"
      },
      "committer": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Tue Jan 19 22:23:41 2016 +0000"
      },
      "message": "Replace SurfaceViews across resize trigerred relaunches.\n\nIn resize modes where we are preserving the main application\nwindow, we need to tell the WindowManager to prepare to replace\nthe child surfaces, or they will dissapear across relaunches.\n\nBug: 26070641\nChange-Id: I864168688dc320e9280e651f9c5df614f52bc96c\n"
    },
    {
      "commit": "c92d70dff716a8b38982b3d6ec05427ad66497fa",
      "tree": "ffe91e720f8a0640e6eccc92155b094ba1137d07",
      "parents": [
        "b9c48d8f49d35e2682c7205a9d8d5fcc25d7c736"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Tue Jan 19 13:11:08 2016 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Tue Jan 19 18:31:06 2016 +0000"
      },
      "message": "Deals with android:rotation attribute in layoutlib\n\nThe way Android views deal with their rotation xml attribute is through\nnative code called for hardware accelerated rendering. So layoutlib\nhas to bypass that in order to take those attributes into account.\n\nBug: http://b.android.com/73300\nChange-Id: Ieb5bf0567a25a9021491ebf3250cedd0752f7863\n"
    },
    {
      "commit": "82b425f85397ae9ed89bc423b1a382ecba6798a7",
      "tree": "06c770b100e32c7fceb87a18808837fd85ccd913",
      "parents": [
        "7d569db9361a7d4d797366c1b20643aa92eb97e0",
        "0eac32be0b7804184ad5e61af87f79d45b82c6b2"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Jan 19 15:53:12 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 19 15:53:12 2016 +0000"
      },
      "message": "Fix bug in PropertyValuesHolder_Delegate method index am: ada8c117b1\nam: 0eac32be0b\n\n* commit \u00270eac32be0b7804184ad5e61af87f79d45b82c6b2\u0027:\n  Fix bug in PropertyValuesHolder_Delegate method index\n"
    },
    {
      "commit": "ada8c117b197dd61bd472399147dd18ff337a204",
      "tree": "fd723713f67598301c3b27898fdd6e98b5ab9e81",
      "parents": [
        "b9c48d8f49d35e2682c7205a9d8d5fcc25d7c736"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Jan 19 10:42:19 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Jan 19 10:42:19 2016 +0000"
      },
      "message": "Fix bug in PropertyValuesHolder_Delegate method index\n\nThe method index in PropertyValuesHolder was using only the method name\n+ the number of parameters in the call to index the different properties\nmethods. This worked ok most of the time because, for a given method\nname (let\u0027s say setTrimStartOffset), the class is usually the same.\nHowever, if the same method name is used in multiple classes, this will\ncause collisions and will most likely crash.\n\nChange-Id: Ie6fa8872c5c5e69e690f4f1bb79191a31bef2a28\n"
    },
    {
      "commit": "365bd8f9b12e1c3d7314e165894980f1c1314112",
      "tree": "7832d68a31e6aab239d7b8cfc9f66173b1c4ac2c",
      "parents": [
        "a0b16caf88f06189daaf4ded007c46db0dae5fe5",
        "6952063e7166599f5300427019ca845bbaafa660"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Jan 19 10:39:46 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 19 10:39:46 2016 +0000"
      },
      "message": "New path interpolation to paint vector drawables am: b9c48d8f49\nam: 6952063e71\n\n* commit \u00276952063e7166599f5300427019ca845bbaafa660\u0027:\n  New path interpolation to paint vector drawables\n"
    },
    {
      "commit": "b9c48d8f49d35e2682c7205a9d8d5fcc25d7c736",
      "tree": "e4ab1ceefbaed1d6b482092c13f0b9565bcb4e18",
      "parents": [
        "f5984d5fce511a669e8d4bb6eaeb9679ff2ba9f0"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Dec 18 16:01:24 2015 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Jan 19 10:14:46 2016 +0000"
      },
      "message": "New path interpolation to paint vector drawables\n\nBefore this CL, PathMeasure_Delegate would use Path_Delegate.approximate\nto get a path segment to draw. Path_Delegate.approximate uses a\nflattening iterator to do the path approximation.\nUnfortunately, because we do not control the stroke mode while painting,\nin some cases the approximation would draw unwanted artifacts caused by\nthe rough approximation and the use of wrong miter values.\nThis CL does a much better calculation of the path and interpolates the\nsegments of the curves instead of replacing them with line segments.\n\nThis also fixes an issue with the calculation of empty paths.\n\nBug: http://b.android.com/187256\n\nChange-Id: I450f7aa4c3d9efcbf902a40c3b4d6d388546893f\n"
    },
    {
      "commit": "46736ec81c2a35d450b2c2d86ca3423cd92a225d",
      "tree": "47e971fdba33b805440a12bf58fdaca3df1281b0",
      "parents": [
        "3ee3b9d17b2aec84e791f3efa6b9453cab0d9c9b",
        "2edfa8c9b00cd0c0bd18738f75e0928394b99c76"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Sat Jan 16 02:25:22 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jan 16 02:25:22 2016 +0000"
      },
      "message": "Merge \"Make the appropriate cast to protect from mingw.\" am: dbf8c17bd2\nam: 2edfa8c9b0\n\n* commit \u00272edfa8c9b00cd0c0bd18738f75e0928394b99c76\u0027:\n  Make the appropriate cast to protect from mingw.\n"
    },
    {
      "commit": "0da43029fd73129e39e8d00d17cd7423d99f9634",
      "tree": "37b82f9e393ea4f24821efed06cb4637abc81500",
      "parents": [
        "298c08115110a5615a1972884fa7ee24dd9c59d6"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Jan 15 16:18:30 2016 -0800"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Jan 15 16:20:25 2016 -0800"
      },
      "message": "Fix build\n\nChange-Id: I6d4bebf90c11a4a00d259aac34bb9459d973da9b\n"
    },
    {
      "commit": "2edfa8c9b00cd0c0bd18738f75e0928394b99c76",
      "tree": "108f5a08a9279b50cebaf694a2da364ee59ecf76",
      "parents": [
        "f19a33a0704d0e605c0a5206fe5df3ab7dbf6864",
        "dbf8c17bd20c3c5b4ba99242afa8b714841914d1"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Jan 15 21:02:29 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 15 21:02:29 2016 +0000"
      },
      "message": "Merge \"Make the appropriate cast to protect from mingw.\"\nam: dbf8c17bd2\n\n* commit \u0027dbf8c17bd20c3c5b4ba99242afa8b714841914d1\u0027:\n  Make the appropriate cast to protect from mingw.\n"
    },
    {
      "commit": "ed811eeaea83453df91fa564287cd2f1b7cb705f",
      "tree": "cdb34fd8c9a3e3b8eb1efb8e1f05f43f7dc945dd",
      "parents": [
        "d736cba6e7f93a2e6df172a644e413f27a1dc939"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Jan 15 12:16:06 2016 -0800"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Jan 15 12:16:06 2016 -0800"
      },
      "message": "Make the appropriate cast to protect from mingw.\n\nAs the comment at the top of the file says:\n\n    STATUST: mingw does seem to redefine UNKNOWN_ERROR from our enum\n    value, so a cast is necessary.\n\nBug: http://b/26523949\nChange-Id: I9d86cafdc47bbb9ce0e967cdde9315babc083432\n"
    },
    {
      "commit": "15cc7bba8d04c7ced6fa41bafc9810f0b55bbe12",
      "tree": "836f2f99bd24bbdb3e1e8519cec70145e811a8e8",
      "parents": [
        "02bb4295f0aff8fab1d58ac48b1ca2c8a727ceb5",
        "14df39f9e5855caef8d272fb136abe17b225d971"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Jan 15 05:29:10 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 15 05:29:10 2016 +0000"
      },
      "message": "Merge \"Fix custom font rendering\" into mnc-ub-dev am: f5984d5fce\nam: 14df39f9e5\n\n* commit \u002714df39f9e5855caef8d272fb136abe17b225d971\u0027:\n  Fix custom font rendering\n"
    },
    {
      "commit": "9757c933b0d809f2777231d312a59fbbd2f97a1d",
      "tree": "0583bd8d763025f9c5c07ec3fcb43f2c281ed4d2",
      "parents": [
        "bc490ca283ee442008b14c113323d434bf261892",
        "bbd0b324ba8e89bd51aad0a59b1a1c891383779f"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Jan 15 00:23:33 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 15 00:23:33 2016 +0000"
      },
      "message": "LayoutLib: Fix device used comments in intensive tests am: 1665a621da\nam: bbd0b324ba\n\n* commit \u0027bbd0b324ba8e89bd51aad0a59b1a1c891383779f\u0027:\n  LayoutLib: Fix device used comments in intensive tests\n"
    },
    {
      "commit": "4da12f19a62ff72cbdc31825a6338d196d3c4846",
      "tree": "fe80abf70da5935e28cde74098905dc81010c44b",
      "parents": [
        "6dc6b8996273f50553c5dc77e2faab40f1ee5ee8",
        "8b4a6981fdd7849a57de2f56203cfd81e9eb6e99"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Jan 14 23:54:14 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 14 23:54:14 2016 +0000"
      },
      "message": "Merge \"Minor fix to wrong error message\""
    },
    {
      "commit": "8b4a6981fdd7849a57de2f56203cfd81e9eb6e99",
      "tree": "2e373c9bf181c1c9422cb907c3c59c0a631b1b8d",
      "parents": [
        "23e47f5621271db9b84f53f15a3e3d81d8b8b48d"
      ],
      "author": {
        "name": "Tor Norbye",
        "email": "tnorbye@google.com",
        "time": "Thu Jan 14 15:52:15 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Jan 14 15:53:05 2016 -0800"
      },
      "message": "Minor fix to wrong error message\n\nChange-Id: I3d34c90d37d35d0649a6ef8a73ca0d9320f975dd\n"
    },
    {
      "commit": "f5984d5fce511a669e8d4bb6eaeb9679ff2ba9f0",
      "tree": "d3556c249cd5a73999e0bd127570f46337069720",
      "parents": [
        "1665a621da2d503d405fb784bd50b5a8596539a1",
        "2ea852541fd7c7af14b6919c5c2f57584b896d2b"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Jan 14 23:48:17 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 14 23:48:17 2016 +0000"
      },
      "message": "Merge \"Fix custom font rendering\" into mnc-ub-dev"
    },
    {
      "commit": "2ea852541fd7c7af14b6919c5c2f57584b896d2b",
      "tree": "57f5b3163d1237eabe5b1bfd6708d3307fb270d0",
      "parents": [
        "0c08fc0fc58be4f52527d7a0529960752056e83b"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Jan 14 14:52:32 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Jan 14 23:46:42 2016 +0000"
      },
      "message": "Fix custom font rendering\n\nThe context was using the wrong asset manager.\n\nBug: http://b.android.com/198897\nChange-Id: Id58473a4539ed93a9f338c730686128c7089fc92\n"
    },
    {
      "commit": "1665a621da2d503d405fb784bd50b5a8596539a1",
      "tree": "85bf60d30082c9378fe4eef3a26fc580bc5d424b",
      "parents": [
        "0c08fc0fc58be4f52527d7a0529960752056e83b"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Jan 04 16:32:02 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Jan 14 23:19:29 2016 +0000"
      },
      "message": "LayoutLib: Fix device used comments in intensive tests\n\nChange-Id: I65ee2f8bdf096ea991e72c99777c8981da7b5ae2\n"
    },
    {
      "commit": "656a577a34bfbb68d4f1557bfdaa8c2f2b6f8723",
      "tree": "02a6e5aa8044eaec2fc0c025c9d312b5d9123848",
      "parents": [
        "44859db74bb1cc2341524c5484cc3e765ec42c42"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Jan 14 15:17:41 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Jan 14 15:17:41 2016 -0800"
      },
      "message": "AAPT2: Accept zip, jack, jar, and flata extensions as archives\n\nChange-Id: I3a4db129998e2351e8221f9d72a4b40d2c7a8cf9\n"
    },
    {
      "commit": "52364f7ae31716d7827ea8f8566f4a28bd30a921",
      "tree": "ce146fb6dc5e9f9b1166964b77273b6481f8258b",
      "parents": [
        "d901155166983adde84d9da2a6b265371191068a"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 11 13:10:24 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jan 13 18:48:24 2016 -0800"
      },
      "message": "AAPT2: Variety of small fixes to get the build working\n\n- Add option to rename package in AndroidManifest.xml\n- Support default versionName and versionCode\n- Accept True and False as valid booleans\n\nChange-Id: I400e350b9dcd0fd1c197d1929144299c7823617d\n"
    },
    {
      "commit": "b2d135694f5a2979e7acef48255a6ea10f749dd2",
      "tree": "89a165154926b26f9d3e3a116ad6b994b2f1bb93",
      "parents": [
        "f890afad176e3217ff388d0aedabe50b20fa75a2"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Wed Jan 13 15:08:29 2016 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Wed Jan 13 15:08:29 2016 -0800"
      },
      "message": "Fix build breakage.\n\nBug: 22405482\nChange-Id: I8fc522885801e9735544ec3820c8fdd4a4368d71\n"
    },
    {
      "commit": "04a424082b86ae9a532c59a6e5a3d50c660b07cb",
      "tree": "8c6036951315ed4e3a2ba9632d5e8e515057f405",
      "parents": [
        "1075d812f6d8a0058371f2aecafe38f8706b6374",
        "979ccb2e6f3f1f7f00a448eb440a85daf033dc9e"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 11 18:44:58 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 11 18:44:58 2016 +0000"
      },
      "message": "Merge \"AAPT2: Warn when positional arguments exist and --legacy is on\""
    },
    {
      "commit": "979ccb2e6f3f1f7f00a448eb440a85daf033dc9e",
      "tree": "fd2e294460c4832e1a450ed333b80a545cfdfc7e",
      "parents": [
        "e5b386d2bbfa0fdf6439850191a24dfc17ee50c3"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 11 10:42:19 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Jan 11 10:42:19 2016 -0800"
      },
      "message": "AAPT2: Warn when positional arguments exist and --legacy is on\n\nThis is normally an error, but old AAPT didn\u0027t check for it correctly,\nso many projects violate this. With --legacy, this becomes a warning.\n\nChange-Id: I23647e029930e11b719591cd38609e1b43247e20\n"
    },
    {
      "commit": "0beaeadbe3a32825229066dac9a7d659172a1cd9",
      "tree": "c1c367aa770cb9b853d572d320f9406c18969415",
      "parents": [
        "27f28509a643831b2484864f4f893c1ca2b349e3",
        "2aebcddf02383c84a8a21279d32fd00376b8c25e"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Jan 11 18:23:50 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jan 11 18:23:50 2016 +0000"
      },
      "message": "Merge \"Fix ninepatch scaling.\" into mnc-ub-dev am: 0c08fc0fc5\nam: 2aebcddf02\n\n* commit \u00272aebcddf02383c84a8a21279d32fd00376b8c25e\u0027:\n  Fix ninepatch scaling.\n"
    },
    {
      "commit": "63ebf34d6d7b228c477341bbe0fd214ab8a74b0b",
      "tree": "f20d8c2674241a3c359a32503522e4597bad9f48",
      "parents": [
        "f8642182b7c1d2274873d08169098fba19ed4932",
        "1bddf2b19dbfc3f1edc540a5aaaacd84f8831412"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 11 18:20:35 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Jan 11 18:20:35 2016 +0000"
      },
      "message": "Merge \"Get color state list file content from PSI instead of disk\" into mnc-ub-dev am: 171a2a9322\nam: 1bddf2b19d\n\n* commit \u00271bddf2b19dbfc3f1edc540a5aaaacd84f8831412\u0027:\n  Get color state list file content from PSI instead of disk\n"
    },
    {
      "commit": "0c08fc0fc58be4f52527d7a0529960752056e83b",
      "tree": "c207f9b694d4873145bf62c78618a6a08a3f7946",
      "parents": [
        "171a2a932234cdbc25ab672c5ea2285adb6eca84",
        "95e58deaa2ab56de3df827ad615f5b7799506edc"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Jan 11 18:09:45 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 11 18:09:45 2016 +0000"
      },
      "message": "Merge \"Fix ninepatch scaling.\" into mnc-ub-dev"
    },
    {
      "commit": "171a2a932234cdbc25ab672c5ea2285adb6eca84",
      "tree": "28589bb95432d3138cd5f0a4226a6ad54d60872c",
      "parents": [
        "3b90b74cf96c88267e20a410b639b68de84c3323",
        "b63da06a7ab9ad06184b0359abddd9137742ea4a"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 11 18:06:10 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 11 18:06:10 2016 +0000"
      },
      "message": "Merge \"Get color state list file content from PSI instead of disk\" into mnc-ub-dev"
    },
    {
      "commit": "b63da06a7ab9ad06184b0359abddd9137742ea4a",
      "tree": "cda906e3ca0cbc6e82423146c43333a597b6b206",
      "parents": [
        "4b0fe7f14bb36769ef30c59c407bd6ed5b3d5cf7"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Dec 14 20:40:53 2015 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 11 11:37:19 2016 +0000"
      },
      "message": "Get color state list file content from PSI instead of disk\n\nUse new functionality from callback to get the content of state list files\nfrom PSI instead of disks.\n\nBug: http://b.android.com/183767\nChange-Id: Ic256d1e7787209d772ccd42c2e3c7f409cac2964\n"
    },
    {
      "commit": "cd65448ccd13c4c2d0fe9e9623fec3a898ab9372",
      "tree": "da60bd6e2d928bfe7119258f8908d8360166f2c0",
      "parents": [
        "629f98466a4c2d778ddd4ce5a9df107e28f9b98a"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Jan 08 17:42:11 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Fri Jan 08 18:35:54 2016 -0700"
      },
      "message": "Even more PackageManager caller triage.\n\nFinish moving all UID/GID callers to single AIDL method that requires\ncallers to provide flags.\n\nTriage AppWidgets and PrintServices, which currently can only live on\ninternal storage; we should revisit that later.\n\nFix two bugs where we\u0027d drop pending install sessions and persisted\nUri grants for apps installed on external storage.\n\nBug: 26471205\nChange-Id: I66fdfc737fda0042050d81ff8839de55c2b4effd\n"
    },
    {
      "commit": "63ea81ebf4a85191307ddc099d5592eae6d1676e",
      "tree": "61cfbd56c42adc2caf296e37bf25fc37b44f5ac6",
      "parents": [
        "80dc34e3587bad9334d79f91eb1a7f3e2478205b",
        "f2eb8b236fada3e7223617689776ef44c9403cfa"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jan 08 17:48:44 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 08 17:48:44 2016 +0000"
      },
      "message": "Merge \"Frameworks/base: New preload tool\" am: f2c7983de1\nam: f2eb8b236f\n\n* commit \u0027f2eb8b236fada3e7223617689776ef44c9403cfa\u0027:\n  Frameworks/base: New preload tool\n"
    },
    {
      "commit": "f2eb8b236fada3e7223617689776ef44c9403cfa",
      "tree": "3292ab2615dfa5eb39fb3a0f68d9d7db5c22061d",
      "parents": [
        "7e308606f605dd1bd047e20e17ee53122a64b8ba",
        "f2c7983de141d008c7c02e3331fbde67e13ac46c"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jan 08 17:44:54 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jan 08 17:44:54 2016 +0000"
      },
      "message": "Merge \"Frameworks/base: New preload tool\"\nam: f2c7983de1\n\n* commit \u0027f2c7983de141d008c7c02e3331fbde67e13ac46c\u0027:\n  Frameworks/base: New preload tool\n"
    },
    {
      "commit": "80dc34e3587bad9334d79f91eb1a7f3e2478205b",
      "tree": "afc770e4ab724354c2d730e0829a08bb8b79215a",
      "parents": [
        "8f593ef88d5e18ba8e254c0f093e330c19c1dedd",
        "23e47f5621271db9b84f53f15a3e3d81d8b8b48d"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Jan 08 17:37:56 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 08 17:37:56 2016 +0000"
      },
      "message": "Merge \"Java 8 in layoutlib-create\""
    },
    {
      "commit": "f2c7983de141d008c7c02e3331fbde67e13ac46c",
      "tree": "98c71d734ac4e5e04dca9cb098e82bd11f072fb1",
      "parents": [
        "a909dad0c36542ffbc155f98b4eb054921b1bbd0",
        "554d7ee0f5d177b6c0bce805f5a5917b6b211978"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jan 08 17:35:45 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 08 17:35:45 2016 +0000"
      },
      "message": "Merge \"Frameworks/base: New preload tool\""
    },
    {
      "commit": "554d7ee0f5d177b6c0bce805f5a5917b6b211978",
      "tree": "079ed524d19d81bb2634157cc0d02ecba60a852d",
      "parents": [
        "60d142c54b16be08d8352c7fd1510538014839f7"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Sep 15 08:57:12 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Jan 08 09:25:15 2016 -0800"
      },
      "message": "Frameworks/base: New preload tool\n\nAdd a new preload tool based on hprof dumps. This means that only\na userdebug build (to adjust the pre-existing preloaded-classes\nfile) is required now, not a recompiled runtime.\n\nChange-Id: Ib0c00de3b248e49fa8271cbace67c5d4a50170a1\n"
    },
    {
      "commit": "23e47f5621271db9b84f53f15a3e3d81d8b8b48d",
      "tree": "2788f0c7830b38ad4c139fdb71b63ee1ef431122",
      "parents": [
        "a5fcd5028a158df5ed11413ac2d4c5a313ecdb37"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Jan 07 15:54:27 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Jan 08 08:03:06 2016 -0800"
      },
      "message": "Java 8 in layoutlib-create\n\nUpgrade to ASM 5 and diamond operators.\n\nAlso minor fixes here and there.\n\nBug: 26442940\nChange-Id: I5611ed0889aa94cca8655fec47799e1ddccb0150\n"
    },
    {
      "commit": "e7565ad9593df7f4b1ef37bca2d88cb2f25aa02d",
      "tree": "4ef99b184588704c4d80f43d83d344df6decbff5",
      "parents": [
        "ba75a9b6bab16114a8206015a4d2c7ce3bd70f2a",
        "4a06b7ea7e493bf7b575da5219429e2cbeb5b3e8"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Thu Jan 07 19:21:59 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 07 19:21:59 2016 +0000"
      },
      "message": "Merge \"[1/3] Remove unnecessary throws statement in ServiceManager\" am: d1240219aa\nam: 4a06b7ea7e\n\n* commit \u00274a06b7ea7e493bf7b575da5219429e2cbeb5b3e8\u0027:\n  [1/3] Remove unnecessary throws statement in ServiceManager\n"
    },
    {
      "commit": "4a06b7ea7e493bf7b575da5219429e2cbeb5b3e8",
      "tree": "d0f8e705a013f8fa4445df3b4787f3a14aa450da",
      "parents": [
        "2c8f42d73005507bcd4d169fc42e844ee0a16521",
        "d1240219aadedc867b50158c67d1737a27fa7c6f"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Thu Jan 07 19:18:01 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 07 19:18:01 2016 +0000"
      },
      "message": "Merge \"[1/3] Remove unnecessary throws statement in ServiceManager\"\nam: d1240219aa\n\n* commit \u0027d1240219aadedc867b50158c67d1737a27fa7c6f\u0027:\n  [1/3] Remove unnecessary throws statement in ServiceManager\n"
    },
    {
      "commit": "6190d9cf17e325912e449d693b2673dd07caa1d0",
      "tree": "bf41edfdff6d96f1eebb948b578b6983b9ffa695",
      "parents": [
        "055b82aa50fe7a75b36a3c91c2dfdcfd729bacd7",
        "8588bc1ef1f020bbe4a24d46874f675708149a57"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Thu Jan 07 18:31:53 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 07 18:31:53 2016 +0000"
      },
      "message": "Merge \"Add flags to requests for package UID/GIDs.\""
    },
    {
      "commit": "3b1b68d6c764a4f60d034e57a94879b7df65fd43",
      "tree": "6f478d0afc03ca5aae4928eda211a9a4baa81e3a",
      "parents": [
        "cc5061f73e8acde4e91b34187f41bdd131cf85ec"
      ],
      "author": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Mon Dec 14 13:08:33 2015 -0500"
      },
      "committer": {
        "name": "Matt Sarett",
        "email": "msarett@google.com",
        "time": "Thu Jan 07 18:17:33 2016 +0000"
      },
      "message": "Allow ninepatches to be encoded using non-RGBA modes\n\nThe original intention for forcing ninepatches to be encoded as\nRGBA (with alpha) was to avoid the possibility of the decoder\nproducing 565 output.\n\n565 output is bad for ninepatches because dithering tiny images\nthat we intend to scale later leads to bad results.  I would\nargue that, since the new BitmapFactory does not dither, we might\nnow be ok to allow 565 decodes for ninepatches.  However, we\nwill maintain the old behavior by disabling 565 decodes for\nninepatch.\n\nThere are two changes to PNG encodings:\n(1) Allows ninepatch images to be encoded in any mode.  Forcing\n    them to RGBA makes things awkward for the decoder.  Currently,\n    BitmapFactory\u0027s png decoder checks every pixel for alpha.\n    That way, RGBA images that are actually opaque can be marked\n    as opaque, in order to optimize drawing.  We want to remove\n    this complexity from the decoder.\n(2) Make sure ninepatch chunks are stored in the png header.  That\n    way we know immediately that the png is a ninepatch, and can\n    refuse to decode to 565 (if we feel this is best).\n\nChange-Id: I724f5dbefb1be7b412f9b362dff83cbc0603f0bf\n"
    },
    {
      "commit": "8588bc1ef1f020bbe4a24d46874f675708149a57",
      "tree": "ac8ebdc1706f519a8f798ac4f5ca3e26e0439e99",
      "parents": [
        "aec99bf78ff2404bf5497fdcb01430150709d8b3"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jan 06 16:47:42 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Thu Jan 07 10:33:26 2016 -0700"
      },
      "message": "Add flags to requests for package UID/GIDs.\n\nThis gives callers the ability to request details for missing\npackages.  Also add annotations for userId and appId variables and\nstart tagging their usage.\n\nChange-Id: I63d5d7f870ac4b7ebae501e0ba4f40e08b14f3f6\n"
    },
    {
      "commit": "9ccebbfc370b24bfc4bba1ed65f254b2ed9d4e07",
      "tree": "eb8c858ba0d184125b6e66acd16b2e2ba2ccc441",
      "parents": [
        "2786002bd51b229d9a4672e3c43f835796de06ea"
      ],
      "author": {
        "name": "Umair Khan",
        "email": "omerjerk@gmail.com",
        "time": "Wed Jan 06 19:47:20 2016 +0530"
      },
      "committer": {
        "name": "Umair Khan",
        "email": "omerjerk@gmail.com",
        "time": "Thu Jan 07 15:08:27 2016 +0530"
      },
      "message": "[1/3] Remove unnecessary throws statement in ServiceManager\n\nThe exception is already caught by the try-catch block.\n\nChange-Id: I0c10fe51d12a10cbc02a25c719d03a4ba6497767\nSigned-off-by: Umair Khan \u003comerjerk@gmail.com\u003e\n"
    },
    {
      "commit": "7751afc796842bbb24bfbb19bd0fee4a7b7c8a4e",
      "tree": "fad12506e9f244038a186dd8dbe31e87f6bafafe",
      "parents": [
        "198ce1a5e6fbe2cb84263e427032e9715e27379f"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jan 06 15:45:28 2016 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jan 06 16:18:40 2016 -0800"
      },
      "message": "AAPT2: Fix product support\n\nPreviously the default product wasn\u0027t tried if \u0027default\u0027 wasn\u0027t specified on the command line.\nAlso adds support for multiple products.\n\nChange-Id: I1e4872b34bb8d609b6444841a4e7e4dbb3bbb76b\n"
    },
    {
      "commit": "198ce1a5e6fbe2cb84263e427032e9715e27379f",
      "tree": "79ee0d9b3f968f2c0b58ff08ef4a75cd5415f563",
      "parents": [
        "f68f066cdfbd9df6fcab30ed034640c7a81d2cfe",
        "393b5f0d6130d3848dd82075986a5cf40c09ce44"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jan 06 23:55:06 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 06 23:55:06 2016 +0000"
      },
      "message": "Merge \"AAPT2: Port AAPT pseudolocalization to AAPT2\""
    },
    {
      "commit": "f68f066cdfbd9df6fcab30ed034640c7a81d2cfe",
      "tree": "73c55847c9107378ce9edf9b514184a7415aa398",
      "parents": [
        "457a7e74bebac65cfb1b0c01677116074a7cafac",
        "24b8ff0faf7c59323d0171cdd825ca09e712aa1e"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jan 06 23:50:50 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 06 23:50:50 2016 +0000"
      },
      "message": "Merge \"AAPT2: Fix references to private parent\""
    },
    {
      "commit": "457a7e74bebac65cfb1b0c01677116074a7cafac",
      "tree": "d2ac2b13c806355189ee46c89c069e4981c08f08",
      "parents": [
        "5ea212c9a0fb004d0944f8ba70dec55203a732d3",
        "7ff3ee19f4b831a526baf4b928d1ac172d070d82"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jan 06 23:50:10 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 06 23:50:10 2016 +0000"
      },
      "message": "Merge \"AAPT2: Respect format attribute of \u003citem\u003e tag\""
    },
    {
      "commit": "e06b4d1d9f718b9fe02980fea794a36831a16db2",
      "tree": "cfef7d72c17fc71b008f0c9a8f08d49553a30e16",
      "parents": [
        "2a90f673f5819e05ea72f6aba3e75956e0f807dc"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jan 06 14:51:50 2016 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jan 06 15:21:06 2016 -0700"
      },
      "message": "Consistent naming for PackageManager methods.\n\nWhen hidden PackageManager methods take a userId argument, they\nshould be named explicitly with the \"AsUser\" suffix.  This fixes\nseveral lagging examples so that we can pave the way to safely\nstart passing flags to new methods without scary overloading.\n\nAlso fix spacing issues in various logging statements.\n\nChange-Id: I1e42f7f66427410275df713bea04f6e0445fba28\n"
    },
    {
      "commit": "393b5f0d6130d3848dd82075986a5cf40c09ce44",
      "tree": "5643311ac74ad383b2efa37fee2f3d21878cf6d8",
      "parents": [
        "24b8ff0faf7c59323d0171cdd825ca09e712aa1e"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Dec 17 13:03:11 2015 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Jan 06 12:05:41 2016 -0800"
      },
      "message": "AAPT2: Port AAPT pseudolocalization to AAPT2\n\nPseudolocalization happens at the compile phase. Pseudolocalized\nvalues are weak, such that manually specified values will take precedence.\n\nChange-Id: I5e064ce0d270c9f4f9022f75aecedab9d45bc980\n"
    },
    {
      "commit": "4f6d400b0fa4c94e0f785a7b15ffb30126e6759d",
      "tree": "2f85230444fb27a1cc6d1e2ea8164b9a9c7585bc",
      "parents": [
        "4c6604865945723ecb4300f720d03ddd30bc5527",
        "31ffb442414bd9cf6c0225799d7d0c5409f3769d"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Tue Jan 05 21:19:41 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 05 21:19:41 2016 +0000"
      },
      "message": "Merge \"No need to pass digest of AndroidManifest.xml around.\""
    },
    {
      "commit": "2a37455a285c831dbe4e367bdb632f687f3d3f5d",
      "tree": "013d62b6051f5a67709c683f9fb81623353e8310",
      "parents": [
        "a65ebea1ad62526633933205929a65a6e90f1f9f"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Jan 05 15:25:24 2016 +0100"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Jan 05 14:31:50 2016 +0000"
      },
      "message": "Fix build\n\nChange-Id: Ifd69818ca6d5dbf129f6c956c1a7dfae760e30d6\n"
    },
    {
      "commit": "a65ebea1ad62526633933205929a65a6e90f1f9f",
      "tree": "c665d4568d06d54a6d48e1321c141502bb4beeca",
      "parents": [
        "514b2cf0f8ddd11a4176412cb3584ab96fbb763a",
        "968ee5368b7d626e7ac64b0befd212a04e9533cf"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Tue Jan 05 14:21:04 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jan 05 14:21:04 2016 +0000"
      },
      "message": "Create new Navigation Bar for the Theme Editor Preview am: 3b90b74cf9\nam: 968ee5368b\n\n* commit \u0027968ee5368b7d626e7ac64b0befd212a04e9533cf\u0027:\n  Create new Navigation Bar for the Theme Editor Preview\n"
    },
    {
      "commit": "66d2dd686e14ff8cbdf4544cac7ecacbcaac469c",
      "tree": "75358eeaedc61bbee8bb46f221c5e1e7ae011abc",
      "parents": [
        "3a39664b077f5f1d17b56f140f705ec8eecfa145"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Mon Jan 04 17:54:26 2016 -0800"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Mon Jan 04 17:54:26 2016 -0800"
      },
      "message": "Fix build breakage.\n\nChange-Id: I694a885e705d2543e671fd2809bbb518176c3804\n"
    },
    {
      "commit": "31ffb442414bd9cf6c0225799d7d0c5409f3769d",
      "tree": "5e163c32b628b53a36c7c5252e8e7ffb27d6cb11",
      "parents": [
        "8464831bf27cfe27980d0d86b96ba1c348792020"
      ],
      "author": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Mon Dec 21 11:32:53 2015 -0800"
      },
      "committer": {
        "name": "Alex Klyubin",
        "email": "klyubin@google.com",
        "time": "Mon Jan 04 12:31:29 2016 -0800"
      },
      "message": "No need to pass digest of AndroidManifest.xml around.\n\nWhen an APK is being installed, the full path to the file is\noccasionally passed between processes. To detect changes to the file\nduring these handovers, the digest of the AndroidManifest.xml entry\ncould be passed around as well.\n\nThis security feature is no longer used and is no longer needed. APKs\nshould be installed using the modern Package Installer API\n(android.content.pm.PackageInstaller).\n\nBug: 24542768\nChange-Id: I2762634c85448e7adcd47ffc9a5294c021e127bd\n"
    },
    {
      "commit": "3b90b74cf96c88267e20a410b639b68de84c3323",
      "tree": "71d5293116305a3df596b50356a7ee435956906d",
      "parents": [
        "4b0fe7f14bb36769ef30c59c407bd6ed5b3d5cf7"
      ],
      "author": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Fri Dec 18 18:13:39 2015 +0000"
      },
      "committer": {
        "name": "Jerome Gaillard",
        "email": "jgaillard@google.com",
        "time": "Mon Jan 04 15:38:12 2016 +0000"
      },
      "message": "Create new Navigation Bar for the Theme Editor Preview\n\nThe standard navigation bar was not working well in the Theme Editor preview\nwhen in a wide configuration. The bar then did not fit entirely inside the display.\nSo we created a new Navigation Bar to use in the Theme Editor preview, that fixes\nthe size problem.\n\nBug: http://b.android.com/198179\nChange-Id: Ifb1fa7b8f399f17392934de89078696337eca3e1\n"
    },
    {
      "commit": "f59c02a65e9fd529467c4e5083d94ed6453e70f7",
      "tree": "e9a5698ba44b2e3104a2747e7dc7125346ae61b3",
      "parents": [
        "68521a682524c53e6bfd883a3f41b4fe514c2d0c",
        "e0e81bf407508ec096c752948f8794af5fd480ca"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Dec 24 04:07:42 2015 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 24 04:07:42 2015 -0800"
      },
      "message": "Merge changes from topic \\\u0027aosp-merge-24-12\\\u0027\nam: e0e81bf407\n\n* commit \u0027e0e81bf407508ec096c752948f8794af5fd480ca\u0027:\n  Special case system_server to not create the JIT code cache.\n  Don\u0027t use IntegralToString\n  Track libcore commit 85d69e16fe1e59e50c1ad228e754abf325088362.\n  Track API changes to java.lang.ref.Reference.\n  Remove merge markers from preloaded-classes\n  Move StrictJarFile from libcore to framework\n  Switch RecoverySystem impl to use sun.security.pkcs\n  API update for OpenJdk based libcore\n  Use libcore/known_oj_tags for the javadoc stage.\n  Stop preloading fortress classes\n  Use HexDump instead of java.lang.IntegralToString\n  Add core-oj to the list of core library jars.\n"
    },
    {
      "commit": "1b1f1b14eef5f73a82c1bb7cefd63ded5a9f6ebb",
      "tree": "b4678b62f31f924565d2abbca193452a8db5e7ba",
      "parents": [
        "c1f9e7c4875e791e108c79382508aab8d171f25f"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Dec 22 13:01:05 2015 -0800"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Dec 22 13:44:56 2015 -0800"
      },
      "message": "AAPT2: Fix compiler error in 32-bit host test\n\nWe now default host native tests to build both 32-bit and 64-bit\nversions.\n\nThe 32-bit version of libaapt2_test was broken because it was comparing\nan unsigned int to the result from std::count(std::vector), which is a\nsigned int. The 64-bit version compiled fine, since\nstd::count(std::vector) returns a long.\n\nChange-Id: I786fcd8a54d9f78b76b19ef82ab8dda6f5c42197\n"
    },
    {
      "commit": "62ed63185c4fb9fa5fb74c7bddcf9885fa06ac6d",
      "tree": "96aff6423f1ee864ca348c554dd8fb9e75ced003",
      "parents": [
        "76a9e55a8fd751e747511a9c7d02dddca31964c3"
      ],
      "author": {
        "name": "Piotr Jastrzebski",
        "email": "haaawk@google.com",
        "time": "Tue Feb 17 16:58:52 2015 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Dec 22 13:10:55 2015 +0000"
      },
      "message": "Add core-oj to the list of core library jars.\n\nWith some core classes moved to separate core-oj jar\nwe need to use the new jar.\n\n(cherry picked from commit cfa292e1dad184648bf673167f3f35b4fb34fc93)\n\nChange-Id: Iba481c3df029902a2bd0f9661d0819f4a191b2aa\n"
    },
    {
      "commit": "24b8ff0faf7c59323d0171cdd825ca09e712aa1e",
      "tree": "f1350009e8e3aa03ab93b088619635991aeb989a",
      "parents": [
        "7ff3ee19f4b831a526baf4b928d1ac172d070d82"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Dec 16 14:01:57 2015 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Dec 17 11:01:55 2015 -0800"
      },
      "message": "AAPT2: Fix references to private parent\n\nChange-Id: Id4697551b6c8cb6167f562de593006ae3c6158c0\n"
    },
    {
      "commit": "7ff3ee19f4b831a526baf4b928d1ac172d070d82",
      "tree": "6b80cd676d4d9d3e98f4382090011834be106228",
      "parents": [
        "36a832dd128c18628783cc629b89b2ae399db4f8"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Dec 14 16:08:50 2015 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Thu Dec 17 11:01:55 2015 -0800"
      },
      "message": "AAPT2: Respect format attribute of \u003citem\u003e tag\n\nAn \u003citem\u003e is a general tag that can override certain behavior. For\ninstance, this is allowed:\n\n    \u003citem name\u003d\"foo\" type\u003d\"integer\" format\u003d\"float\"\u003e0.4\u003c/item\u003e\n\nEven though without the format attribute, this would be illegal.\n\nChange-Id: I8133ce59e14719a70d7476a1464c3f564c435289\n"
    },
    {
      "commit": "087e0fcba687bce677f39fd2b708a9cbb1defcd0",
      "tree": "a2e894ed821b9e5afdabb45786715d80e368a50a",
      "parents": [
        "6e49caeaabeb852f0b6cd1e75d9871bc6b70b981",
        "1f7a36b8e6aa55dcb22a63c250fb318260ac349f"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Dec 16 23:44:25 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 16 23:44:25 2015 +0000"
      },
      "message": "DO NOT MERGE: AAPT: Dump uses-permission-sdk-23 am: b2c5155638 am: 40d1ab91d2 am: 8c9209183f am: 7f5ad22330\nam: 1f7a36b8e6\n\n* commit \u00271f7a36b8e6aa55dcb22a63c250fb318260ac349f\u0027:\n  DO NOT MERGE: AAPT: Dump uses-permission-sdk-23\n"
    },
    {
      "commit": "1f7a36b8e6aa55dcb22a63c250fb318260ac349f",
      "tree": "9fd18b01619ae55975bbe33cc7657d0317b6320d",
      "parents": [
        "1d817160447901754e23c5cac841480ea8de18da",
        "7f5ad223306a482bdf33d213971af041e9fba590"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Dec 16 23:35:17 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 16 23:35:17 2015 +0000"
      },
      "message": "DO NOT MERGE: AAPT: Dump uses-permission-sdk-23 am: b2c5155638 am: 40d1ab91d2 am: 8c9209183f\nam: 7f5ad22330\n\n* commit \u00277f5ad223306a482bdf33d213971af041e9fba590\u0027:\n  DO NOT MERGE: AAPT: Dump uses-permission-sdk-23\n"
    },
    {
      "commit": "7f5ad223306a482bdf33d213971af041e9fba590",
      "tree": "76c402cc38aba7a9565b210bb0577beecd58c1d8",
      "parents": [
        "489304256944d6d170ab4dfd30a3e53efd994d2b",
        "8c9209183fa67953bebe1adb5dfb529c1b6273f0"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Dec 16 23:25:45 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 16 23:25:45 2015 +0000"
      },
      "message": "DO NOT MERGE: AAPT: Dump uses-permission-sdk-23 am: b2c5155638 am: 40d1ab91d2\nam: 8c9209183f\n\n* commit \u00278c9209183fa67953bebe1adb5dfb529c1b6273f0\u0027:\n  DO NOT MERGE: AAPT: Dump uses-permission-sdk-23\n"
    },
    {
      "commit": "b2c51556382acd3981e5a6380e2fb3d85c2f68a5",
      "tree": "38c2bedf474a02362bed4a0cc682918bad38ad15",
      "parents": [
        "69c5e7143dd308e8db9b6055b428b7ad3964c1ff"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Dec 02 15:40:19 2015 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Dec 16 22:43:07 2015 +0000"
      },
      "message": "DO NOT MERGE: AAPT: Dump uses-permission-sdk-23\n\nInclude \u003cuses-permission-sdk-23\u003e permissions in dump badging and dump permissions.\n\nThis will also add implied features for that permission, marked as -sdk-23 features.\n\nEx:\n\nuses-permission: name\u003d\u0027android.permission.ACCESS_FINE_LOCATION\u0027\nuses-permission-sdk-23: name\u003d\u0027android.permission.CAMERA\u0027\n\nfeature-group: label\u003d\u0027\u0027\n  uses-feature: name\u003d\u0027android.hardware.location\u0027\n  uses-implied-feature: name\u003d\u0027android.hardware.location\u0027 reason\u003d\u0027...\u0027\n  uses-feature-sdk-23: name\u003d\u0027android.hardware.camera\u0027\n  uses-implied-feature-sdk-23: name\u003d\u0027android.hardware.camera\u0027 reason\u003d\u0027...\u0027\n\nBug:24939655\nChange-Id: Ifb374696ed4760b0ba2f1cc3516f3bf08e6cb6a3\n(cherry picked from commit 5f3b2ecb3e9d27e77bd59c7b9006a6239b773944)\n"
    }
  ],
  "next": "1e2839188fb49575b86646d3aadb355c81ef9cc5"
}
