)]}'
{
  "log": [
    {
      "commit": "2385e2184a68318a582f075bcd483baa35c776b4",
      "tree": "69cf4190698a1f718faeb441d37f9dfb3e2e950c",
      "parents": [
        "60f2c17e273ea919dc663f387ef246b3d359c412",
        "621c43d8e538a82047100ec56b88e74bb5dea57e"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Apr 29 20:05:37 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 29 20:05:39 2016 +0000"
      },
      "message": "Merge \"Revert \"Switch LayoutLib to Java 8\"\" into nyc-dev"
    },
    {
      "commit": "a0a51b6fb629c06c763b73cfe24c6c4d540d54eb",
      "tree": "dced8d9a3c8ec4838d4008f6a76e3578f440dff9",
      "parents": [
        "73c9391d9bfa0f8f90dc3bee841642f46ba46bda"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Apr 12 15:34:26 2016 +0100"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Apr 12 17:21:00 2016 +0100"
      },
      "message": "Fix broken delegates for FontFamily and PathParser\n\nThe theme editor is throwing an exception with the last embedded\nlayoutlib because a missing method. Added also another missing method in\nFontFamily.\n\nChange-Id: I710ba7618df6444a3185b581cdc5dc8400f7c604\n"
    },
    {
      "commit": "fc970ab65ad8c860dd0654d59b70bbe271f95784",
      "tree": "5955fcb8488c70e647fe96a09246642cf2817416",
      "parents": [
        "9a99629eaa79a7e6c3bcc0ecf674bd7981fef5a0"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 26 11:03:39 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Mar 30 17:53:23 2016 +0000"
      },
      "message": "Implement VirtualRefBasePtr native methods\n\nThe VirtualRefBasePtr is used to track the usage of native objects from\nthe java side by reference counting. Implementing the class delegate to\nmake sure we dispose the objects correctly.\n\nChange-Id: I3dd4717944b0dbe79f30e49b3083bf65c6e5276d\n"
    },
    {
      "commit": "618ca261f370c257723a3c7a5871bb6f6b4d7f3a",
      "tree": "5d45c303b9fcfaf9182de4fa1ffde14eb8f37122",
      "parents": [
        "4bbbeaa68b3d2c8ecf4918b98999469b7ca3a813"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Mar 18 19:39:58 2016 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Mar 24 12:02:17 2016 -0700"
      },
      "message": "Support getResource*Name() methods for Resources\n\nThe following methods are now supported:\ngetResourceEntryName\ngetResourcePackageName\ngetResourceTypeName\ngetResourceName\n\nBug: http://b.android.com/181872\nChange-Id: If06b5e0687ab6f8cb20ab77f339870dd08a84ce1\n"
    },
    {
      "commit": "3e2b413dc72f267571421cfb0c8ced7a4778704a",
      "tree": "c40fce9e08537407e84d21db576fdbaaa91122cf",
      "parents": [
        "a785c80a5ec3cdd4c14dc8519a2d8cbcc716a0f2",
        "fa5f55fe906b3d19df2fdf6af731f700c1038029"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Mar 23 20:48:13 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 23 20:48:15 2016 +0000"
      },
      "message": "Merge \"Exclude java namespace classes from layoutlib\" into nyc-dev"
    },
    {
      "commit": "fa5f55fe906b3d19df2fdf6af731f700c1038029",
      "tree": "6b2a74208029fe4343f91ef494c3fcb6cf665c09",
      "parents": [
        "61ad7ad7fd8932854c498884770810d2424ee7af"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Mar 23 12:39:27 2016 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Mar 23 12:39:27 2016 -0700"
      },
      "message": "Exclude java namespace classes from layoutlib\n\nSuch classes can\u0027t be loaded anyway. No point including them\n\nChange-Id: I26934014de96aa59f0d4aef59f61d1e4f71b86ea\n"
    },
    {
      "commit": "5ceb30f2164c745789c13bd0060e57fa8c04a8fd",
      "tree": "f28622a649aa145e4d497c10167db67d2fa430e4",
      "parents": [
        "ace5a7819486309a639fb4f4505839f46db55e3c"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Mar 22 11:29:47 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Mar 23 09:40:23 2016 +0000"
      },
      "message": "Add fill type support to vector drawable\n\nThe platform has added fill type to vector drawables. This CL implements\nthe native replacement.\nAlso remove a couple of delegates for classes that have been removed\nfrom the platform.\n\nChange-Id: Ie6ba344db9c9c2c45cd0ef4b99f11f9d8bcfd7de\n"
    },
    {
      "commit": "7ba6dc0fcc66c96383aabd8db40adf1bac66ce7f",
      "tree": "06e3483b8d89acb55622227156ef25c1e30ef1d3",
      "parents": [
        "5b5b1c0c5debd7a90c086f36cbafa688c857a673",
        "e05f1c4684fcc7e3f6a429ff01b210aa19f75304"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@google.com",
        "time": "Mon Mar 07 20:28:12 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 07 20:28:14 2016 +0000"
      },
      "message": "Merge \"Change BridgeResources to Resources_Delegate\" into nyc-dev"
    },
    {
      "commit": "e05f1c4684fcc7e3f6a429ff01b210aa19f75304",
      "tree": "e78fa776b10ae7d6c2b777daaa3b56667aa89e7f",
      "parents": [
        "bf8f1cc3c0d9931828d166aea585b6b29d4c6664"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Mar 04 19:31:28 2016 +0530"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Mar 07 09:09:02 2016 +0000"
      },
      "message": "Change BridgeResources to Resources_Delegate\n\nThis is a very hacky fix to make layoutlib work with the latest support\nlib. Inject a couple of fields in android.content.res.Resources to\nallow using most of the earlier code as is.\n\nBug: 27403642\nBug: http://b.android.com/201934\nChange-Id: Ia96a1b4642a1907a77d9ca7a2392f78809b92e38\n"
    },
    {
      "commit": "8a9a824cd5641d214906a20a2a9372e62e9f3fb8",
      "tree": "e01d97eb0056593f900ced756bf3dfca7e52f646",
      "parents": [
        "34bfcf1fdfe26d510cd6a13ce77113a0b18b9ea4"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Mar 03 09:58:02 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Mar 03 12:57:16 2016 +0000"
      },
      "message": "Animated vector drawable support\n\nChange-Id: Iefd41d95503bb4f3b26020a519636a63d3da799b\n"
    },
    {
      "commit": "a38b7c180df47f88904ad6a11fda605235f6c91c",
      "tree": "83bc5761046fd20fc30a2f8d92b6c58dd630741c",
      "parents": [
        "488727f8c0b03a6067d9927af75f1d76bec5d640",
        "5d1013cf13e59b7f8dc8f16b5811cb29982e0ef3"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Mar 03 09:55:04 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 03 09:55:05 2016 +0000"
      },
      "message": "Merge \"Implement native methods in VectorDrawable\" into nyc-dev"
    },
    {
      "commit": "1aeb31bdbb86faef361567e37a71fe500a8f19ac",
      "tree": "0ee79d68ff17e5d0b8745844c701f3857bb2fcad",
      "parents": [
        "7a0b6e5213b3b717392c9f505fd55180fccfabf9",
        "a9de835c17a8d8d36ef4ccab7cd06254f3a081fa"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Mar 02 13:32:17 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 02 13:32:18 2016 +0000"
      },
      "message": "Merge \"Add StubMethodAdapterTest\" into nyc-dev"
    },
    {
      "commit": "a9de835c17a8d8d36ef4ccab7cd06254f3a081fa",
      "tree": "f0538b40751f7a324fe48ac64113b4407d9390c5",
      "parents": [
        "c14893bf5a2ad76ad6279f09b66020610e32041f"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Mar 02 00:39:24 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Mar 02 13:30:31 2016 +0000"
      },
      "message": "Add StubMethodAdapterTest\n\nThis tests the bugfix in StubMethodAdapter made in the change with id\nI098996e43e330e995d33f12df1c16355bbc02f0f (commit 491523d)\n\nChange-Id: I1ac897a49071dd9558bdc6b8abec29df913a6047\n"
    },
    {
      "commit": "dbe8a0fe3b4f01f7457aafc30783e50b77c33ff3",
      "tree": "779d03af8c8ddb78cdffb175f5a4ab44eee62bed",
      "parents": [
        "c14893bf5a2ad76ad6279f09b66020610e32041f"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Oct 06 17:53:51 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Mar 02 13:26:18 2016 +0000"
      },
      "message": "LayoutLib: Reference android\u0027s junit in intellij project.\n\nPrevents errors due to mismatch in junit version.\n\nChange-Id: I2adf32efb16472aa5f5e51025b6bb75afc76a8b4\n"
    },
    {
      "commit": "5d1013cf13e59b7f8dc8f16b5811cb29982e0ef3",
      "tree": "c5a1727bc82ec88b6fdd548dcad9f5f43e6afcc7",
      "parents": [
        "e6423ee0eda00466172d86917d6d66112974f342"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Feb 23 12:19:11 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Mar 02 09:03:03 2016 +0000"
      },
      "message": "Implement native methods in VectorDrawable\n\nMost of the VectorDrawable implementation has been moved to native code.\nThis CL implements most of the required functionality that existed in\nMarshmallow.\n\nChange-Id: I009bcd5c166f2bfa0795d2718fabab4a549eba9f\n"
    },
    {
      "commit": "70f97ba54a727e456fd8d4647ad633a03281321e",
      "tree": "1523efe26f312d48408aa6cf127e0c671aa88be7",
      "parents": [
        "f19e782233c4135097f12e7f770ba041718078d7"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Feb 24 15:02:36 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 29 10:24:52 2016 +0000"
      },
      "message": "Fix StackMap renaming in Java 8\n\nWith the move to Java 8 of layoutlib, we now need to make sure that the\nmethod stackmaps are kept up to date or the class verification step will\nfail. Up until now, we were ignoring them but this caused TestDelegates\nto start failing.\nThis updates the code to make sure that when we modify a class name, we\nalso update the stackmap in the calls.\n\nChange-Id: Iddbde7454f065ddb8da5bb1ab499ec0616f9b4fe\n"
    },
    {
      "commit": "26b27543109689a7a25cc0ddf764cf785b700ae0",
      "tree": "be049254b64a0871e85235a7678d042ce60d5a29",
      "parents": [
        "e17575d3b5461866c7b2812432b7798ee04e775e"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 22 17:16:50 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 22 17:16:50 2016 +0000"
      },
      "message": "Remove layoutlib RunQueue implementation\n\nChange-Id: Id2b666f086a48f101ff7ef4177fe28ad17d10783\n"
    },
    {
      "commit": "18780f60ef4c71a7de3509d9978ef81df7f5f372",
      "tree": "c980e9ea1ececc17c570bc523e1b57e1377de52c",
      "parents": [
        "87a5de3e3282bc4c01544603e1abd678bdba568a",
        "b75a0426d8c2339f2d552f96cc4dfcd86deb3447"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 22 16:19:12 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Feb 22 16:19:12 2016 +0000"
      },
      "message": "DO NOT MERGE: Fix Canvas memory leak\nam: b75a0426d8\n\n* commit \u0027b75a0426d8c2339f2d552f96cc4dfcd86deb3447\u0027:\n  DO NOT MERGE: Fix Canvas memory leak\n"
    },
    {
      "commit": "f5650cf3a3a1a8d6ced9fc7b0f399689c9adc1b8",
      "tree": "ae86a7e6fef40247d8b959cace32798cb45bdc0f",
      "parents": [
        "eb3771cd1468ac14e5a7bbea1332ee2344f6a67a"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 01 11:48:16 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 22 15:01:30 2016 +0000"
      },
      "message": "Fix Canvas memory leak\n\nEvery RenderSession would call the AttachInfo.setAttachInfo but wouldn\u0027t\nissue a View.dispatchDetachedFromWindow.\nThis caused some Canvas to be slowly leaked in the DelegateManager in\nevery session.\n\nChange-Id: Iec418a86f5c5e55c2a2860ef945268c51c0e8173\n"
    },
    {
      "commit": "b75a0426d8c2339f2d552f96cc4dfcd86deb3447",
      "tree": "07f389bc62e7458515197747a5b4271ababbd58b",
      "parents": [
        "44f92b00d1a060773625de5884fc86e7218e2dd5"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 01 11:48:16 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 22 14:09:09 2016 +0000"
      },
      "message": "DO NOT MERGE: Fix Canvas memory leak\n\nEvery RenderSession would call the AttachInfo.setAttachInfo but wouldn\u0027t\nissue a View.dispatchDetachedFromWindow.\nThis caused some Canvas to be slowly leaked in the DelegateManager in\nevery session.\n\nChange-Id: Ib0392303e6d00a4fe5494ae484f28135b1fe6b28\n"
    },
    {
      "commit": "4f2103631a44303257e3adbe89fa2a6854841bbb",
      "tree": "0d2b1e72fd729e3fda3760f8bee1b55e72cef3e7",
      "parents": [
        "412eee17cd3221483901f0d0325153acc66e4990",
        "44f92b00d1a060773625de5884fc86e7218e2dd5"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 20:18:28 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Feb 19 20:18:28 2016 +0000"
      },
      "message": "Merge \"Revert \"Fix Canvas memory leak\"\" into mnc-ub-dev\nam: 44f92b00d1\n\n* commit \u002744f92b00d1a060773625de5884fc86e7218e2dd5\u0027:\n  Revert \"Fix Canvas memory leak\"\n"
    },
    {
      "commit": "44f92b00d1a060773625de5884fc86e7218e2dd5",
      "tree": "1ab1d21102edf3666697da11b689a5786eb1f675",
      "parents": [
        "bad0e07ee9163d6b0f0bf73ad591ff6e453199ef",
        "cf935728897e9f208e250d3bb57296c84cfa0ef9"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 20:09:08 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 19 20:09:09 2016 +0000"
      },
      "message": "Merge \"Revert \"Fix Canvas memory leak\"\" into mnc-ub-dev"
    },
    {
      "commit": "cf935728897e9f208e250d3bb57296c84cfa0ef9",
      "tree": "21d0ea4b55be1d41649a8c6fbdc84dd8b4779e79",
      "parents": [
        "e82bd72b6e7ab3135d3b28fc2c2694d08af45c3d"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 20:07:44 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 20:07:44 2016 +0000"
      },
      "message": "Revert \"Fix Canvas memory leak\"\n\nThis reverts commit e82bd72b6e7ab3135d3b28fc2c2694d08af45c3d.\n\nChange-Id: Ie9ef25b17d5f725d5054c039992a8cd2912868a6\n"
    },
    {
      "commit": "1d3c41e563c30d85d5524df598f4bd6e6a226362",
      "tree": "0f53809dc274aff9558f0545238117a4bb340383",
      "parents": [
        "53503069895918a59a305addaac84ea11937edcf",
        "bad0e07ee9163d6b0f0bf73ad591ff6e453199ef"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 18:08:00 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Feb 19 18:08:00 2016 +0000"
      },
      "message": "Merge \"Fix Canvas memory leak\" into mnc-ub-dev\nam: bad0e07ee9\n\n* commit \u0027bad0e07ee9163d6b0f0bf73ad591ff6e453199ef\u0027:\n  Fix Canvas memory leak\n"
    },
    {
      "commit": "bad0e07ee9163d6b0f0bf73ad591ff6e453199ef",
      "tree": "07f389bc62e7458515197747a5b4271ababbd58b",
      "parents": [
        "aa9c9fb29e0630f252fb60e1972d333bbc54d70d",
        "e82bd72b6e7ab3135d3b28fc2c2694d08af45c3d"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 17:58:16 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 19 17:58:17 2016 +0000"
      },
      "message": "Merge \"Fix Canvas memory leak\" into mnc-ub-dev"
    },
    {
      "commit": "e82bd72b6e7ab3135d3b28fc2c2694d08af45c3d",
      "tree": "07f166af78ef08d405a893c2331becd95d13fd4a",
      "parents": [
        "ded4d14e3348ebb0cdfa3498a53d3fbfc58b2043"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Mon Feb 01 11:48:16 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Feb 19 17:57:36 2016 +0000"
      },
      "message": "Fix Canvas memory leak\n\nEvery RenderSession would call the AttachInfo.setAttachInfo but wouldn\u0027t\nissue a View.dispatchDetachedFromWindow.\nThis caused some Canvas to be slowly leaked in the DelegateManager in\nevery session.\n\nChange-Id: I0322767e5fffc6053ce1be852dd8ca904dfaa137\n"
    },
    {
      "commit": "16e17a77301a8b8d46d5762d301fc29ceb0673ab",
      "tree": "a5f8733603887cd99813c8c5a522d3a577cac280",
      "parents": [
        "bc163f07ee77b6f2b6cee02156935eab476b19a8",
        "aa9c9fb29e0630f252fb60e1972d333bbc54d70d"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Feb 18 18:28:50 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Feb 18 18:28:50 2016 +0000"
      },
      "message": "resolve merge conflicts of aa9c9fb29e to nyc-dev\n\nChange-Id: Id46238cb759f2d63a072cb7ea8a27c5fd8a6672e\n"
    },
    {
      "commit": "621c43d8e538a82047100ec56b88e74bb5dea57e",
      "tree": "5dfed2e628b035a404cf3db912973535d5b81c6c",
      "parents": [
        "7914e4ca03322427740d6f8c00837375dbf3031a"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Feb 18 04:53:55 2016 +0000"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Feb 18 04:53:55 2016 +0000"
      },
      "message": "Revert \"Switch LayoutLib to Java 8\"\n\nThis reverts commit 7914e4ca03322427740d6f8c00837375dbf3031a.\n\nChange-Id: I0f7c40199e4c31c4f321d40d4d4dfe60a0fda299\n"
    },
    {
      "commit": "7914e4ca03322427740d6f8c00837375dbf3031a",
      "tree": "6d50537083ae66d94e504d647556fb34206f184b",
      "parents": [
        "f0c5b7af6f062e6e064af22ee58e9eb6b549a6ce"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Feb 17 20:42:31 2016 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Feb 17 20:50:00 2016 -0800"
      },
      "message": "Switch LayoutLib to Java 8\n\nThe main build hasn\u0027t swtiched to java 8, but lambdas are already used\nin layoutlib. This fixes the build break.\n\nChange-Id: I4dd69ebd736179067899f5d86d3608d5fdb03d93\n"
    },
    {
      "commit": "491523d52cd8368ef9a92e95fb3e9332bf86a996",
      "tree": "be5cf46b349157aceac88e5b4ff0b3677849270d",
      "parents": [
        "be8c223c2459be17f7ee8a5f078b11a34fd1b7ca"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Oct 06 17:56:37 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Feb 18 02:10:24 2016 +0000"
      },
      "message": "LayoutLib fixes for N\n\nMoves LayoutLib to Java 8 - YAY!\nFix delegates\n\nChange-Id: I098996e43e330e995d33f12df1c16355bbc02f0f\n"
    },
    {
      "commit": "aa9c9fb29e0630f252fb60e1972d333bbc54d70d",
      "tree": "1ab1d21102edf3666697da11b689a5786eb1f675",
      "parents": [
        "3381cde9f293c52f195b31b0e4049649db31181a"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Feb 17 18:54:17 2016 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Feb 17 18:54:17 2016 +0000"
      },
      "message": "Replace SimpleDateFormat implementation\n\nThis will process all the classes and replace all the uses of\njava.text.DateFormat and java.text.SimpleDateFormat with the\nandroid.icu.text. package implementations. The original ones do not\nmatch the Android platform behaviour.\n\nChange-Id: Id55f103c21117a8d6403bf2124b6c1a0e1fb2f71\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": "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": "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": "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": "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": "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": "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": "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": "95e58deaa2ab56de3df827ad615f5b7799506edc",
      "tree": "0172c929801601e8082b79292945153cfe330a22",
      "parents": [
        "1bd58bfd5bab7f517de41ec17342d0710c64ad9a"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Dec 07 14:02:13 2015 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Dec 07 14:48:38 2015 -0800"
      },
      "message": "Fix ninepatch scaling.\n\nReally fix the bug now. Also add tests for the same and update\nallwidgets golden file for M.\n\nBug: http://b.android.com/187939\nChange-Id: I98cd55da0561fef9d47d8759bcd287ee36d03cc2\n"
    },
    {
      "commit": "7c4420bd04f8f56f6044f88e34616d8c5d96c7e9",
      "tree": "0106c27bf8be69200e11d560837161a157875a0e",
      "parents": [
        "cbb1ba7f493116882b79578ec68646366f29cde4"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Dec 01 21:55:58 2015 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Dec 01 21:58:29 2015 -0800"
      },
      "message": "Revert \"Revert \"Add support for Choreographer animations\"\"\n\nThis reverts commit 8390b2ac85765e768d4b685077a96e6395d208b4.\n\nThe build break should now be fixed by\ncbb1ba7f493116882b79578ec68646366f29cde4\n\nChange-Id: I9bf21cc6dbdb5d515a665384dc6dfa464c3e6e2e\n"
    },
    {
      "commit": "cbb1ba7f493116882b79578ec68646366f29cde4",
      "tree": "720f70c91d0bd7bb72d58679a61f5781ead7b571",
      "parents": [
        "9c165d76010d9f79f5cd71978742a335b6b8d1b4"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Dec 01 21:44:56 2015 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Dec 01 21:49:12 2015 -0800"
      },
      "message": "Add ability to promote fields.\n\nThis adds the ability to promote private fields to public ones to\nenable layoutlib to access them. This was first added in change\nb556decf75b2b084e1aed54ac7fa23a141eedb7f, but reverted in\n847b0d3ad22a47e0bca3d8bc8168fea7a0ba2f80. This is essentially a revert\nof the change again, but without the SimpleMonthView related stuff.\n\nAlso, promote the Choreographer\u0027s field as is needed to support\nanimations.\n\nChange-Id: Iee45a465c7a1cadd362c1841385941e6232e4900\n"
    },
    {
      "commit": "8390b2ac85765e768d4b685077a96e6395d208b4",
      "tree": "ad8b5226ea8f73213da89fd4b8e92cd4d19a99ab",
      "parents": [
        "56e086f5da39e64240464cad2a260f3e9389d939"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Dec 02 04:10:22 2015 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Dec 02 04:10:22 2015 +0000"
      },
      "message": "Revert \"Add support for Choreographer animations\"\n\nThis reverts commit 29ed07524ce0fc2e5950f5340d306247145d0efa.\n"
    },
    {
      "commit": "2ee825f507bec9c01667787ce11ddb5d8786d863",
      "tree": "218cbe57259aeba72b02f90dce816a6a7e1196b3",
      "parents": [
        "d76acc80932f954ebda58b18e9639410fa4e27d2",
        "956cad887014fae52d10f5371856173088b4ad30"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Dec 02 00:04:08 2015 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Dec 02 00:04:08 2015 +0000"
      },
      "message": "resolve merge conflicts of 956cad8870 to master.\n\nChange-Id: Iebad149b2768bcd7a52ee2c7c8c260a9279d1742\n"
    },
    {
      "commit": "29ed07524ce0fc2e5950f5340d306247145d0efa",
      "tree": "c08278be73f5cf5c4056435b747ac416bf0c7184",
      "parents": [
        "1bd58bfd5bab7f517de41ec17342d0710c64ad9a"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Oct 14 14:20:26 2015 +0100"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Tue Dec 01 10:14:52 2015 +0000"
      },
      "message": "Add support for Choreographer animations\n\nFirst step to add support for Choreographer based animations. The\nChoreographer_Delegate avoid using a handler so the animation callbacks\ncan be called on-demand (by using doFrame). This allows things like\nframe by frame animation or selecting a specific frame, and doesn\u0027t need\na separate thread to run.\n\nThe CL also changes the System and SystemClock implementations to allow\nto set specific times. Because animations heavily rely on the system\ntime, this allows controlling it. It can also be useful to ensure that\nthe rendering produces a deterministic result when using controls like\nthe Calendar widget.\n\nChange-Id: Iff221d2698a82075cafbb60f341be01741f7aa13\n"
    },
    {
      "commit": "865ad592fe01301a1d623e7b6e4bb5f693d48ab2",
      "tree": "3aec70a1d83d4609f202021ebbf042d971b32905",
      "parents": [
        "cae4f1222f012da554c5376ee327af66068a7a96",
        "f9281b6dfe94f1df0fac3ddbad846012b0a6fb7d"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Thu Nov 19 03:19:00 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Nov 19 03:19:00 2015 +0000"
      },
      "message": "Merge \"Fix delegation of methods within inner static classes\" into mnc-ub-dev am: 603544d4c4 am: 14a826380d am: 0b76d094c6\nam: f9281b6dfe\n\n* commit \u0027f9281b6dfe94f1df0fac3ddbad846012b0a6fb7d\u0027:\n  Fix delegation of methods within inner static classes\n"
    },
    {
      "commit": "6777f54fa44341dd4b23456c97d97c6e4ffe915f",
      "tree": "879d92f92007cb7070e1688f295869971fce3a28",
      "parents": [
        "7a062ed396f6e563766367de70e0d9c6ba615fed"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Nov 13 13:58:14 2015 +0000"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Fri Nov 13 14:06:50 2015 +0000"
      },
      "message": "Fix delegation of methods within inner static classes\n\nCurrently, delegation of inner static classes methods is broken since\nthe rewritten method tries to pass an instance to the outer class. This\nupdates the method generation to only pass the reference if the inner\nclass is not static.\n\nChange-Id: I8493929cafdbd80968989b422af0f956fa65681a\n"
    },
    {
      "commit": "51747638ed8db603a1464f74a89f52e9b85b5d1c",
      "tree": "e3aedd1643a7c74f153b37233879a602f24910bb",
      "parents": [
        "c91300490c7ddfbb9e4ca4336f1823beb141f4b7",
        "d7b7e93a47e99fb54c91fb0d5b37971c8638074d"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 07 21:29:30 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 07 21:29:30 2015 +0000"
      },
      "message": "am d7b7e93a: am 9969f858: LayoutLib: Fix ring rendering.\n\n* commit \u0027d7b7e93a47e99fb54c91fb0d5b37971c8638074d\u0027:\n  LayoutLib: Fix ring rendering.\n"
    },
    {
      "commit": "9969f858c34ba7e35a977c819f2d1e24de586990",
      "tree": "ede3e08a6c16336d3e504eb52bd3e79d4c949d42",
      "parents": [
        "8db8bc63624bbd1d803e02571fa865f1f7fa584c"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 07 11:47:50 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 07 12:46:15 2015 -0700"
      },
      "message": "LayoutLib: Fix ring rendering.\n\nBug: http://b.android.com/65503\nChange-Id: I6ed901703cffee345f3083ea3ddeb52a28f4ac64\n"
    },
    {
      "commit": "f32a1089c672470fa16217c08647e69af30ad987",
      "tree": "8f4ed71e004ee97548e8e80ea219e9e4d3023ae4",
      "parents": [
        "2dafb47c528ac6076d0ae62f8f2166c223e323ec",
        "4a36d982592c3a3238009be785574dd65ff33cc6"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Oct 07 16:15:55 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 07 16:15:55 2015 +0000"
      },
      "message": "am 4a36d982: am 081cebf5: Implement Path.approximate and add PathMeasure support\n\n* commit \u00274a36d982592c3a3238009be785574dd65ff33cc6\u0027:\n  Implement Path.approximate and add PathMeasure support\n"
    },
    {
      "commit": "081cebf52b19e848c07fb781b35fa1f96695c311",
      "tree": "2c2166e7c3a485d3dd0b2295ca36b0116fddfd06",
      "parents": [
        "c6865806a4f76c44bc3cc55cff87cc85f0a48061"
      ],
      "author": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Oct 07 12:33:44 2015 +0100"
      },
      "committer": {
        "name": "Diego Perez",
        "email": "diegoperez@google.com",
        "time": "Wed Oct 07 17:04:26 2015 +0100"
      },
      "message": "Implement Path.approximate and add PathMeasure support\n\nPathMeasure is needed to use the trimPath* properties in drawables.\nThese properties are used in the vector drawable for indeterminate\nprogress bars in Material so this is needed to be able to render them\ncorrectly in the preview.\nPathMeasure makes use of Path.approximate to calculate which segments to\npaint.\n\nChange-Id: Ic513f0a30a6aac0317f7c13cd75e9154c37405c8\n"
    },
    {
      "commit": "847b0d3ad22a47e0bca3d8bc8168fea7a0ba2f80",
      "tree": "70e7e66137b379bb902fbd8f084417d0101854ca",
      "parents": [
        "741a2cb9b16d502f544dd9cef2df9ea361fd8007"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Aug 07 10:30:52 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Aug 07 10:31:54 2015 -0700"
      },
      "message": "Revert \"LayoutLib: Switch SimpleDateFormat to icu.\"\n\nThis reverts commit b556decf75b2b084e1aed54ac7fa23a141eedb7f.\n\nThis is no longer needed as the SimpleDateFormat has been switched in\nthe framework. Also, the revert leaves the change to intellij inspection\nprofiles as is, because that change was independent of the main issue.\n\nChange-Id: I6f4d7d9ddc10262b087ad6a2604fa50562fac043\n"
    },
    {
      "commit": "b556decf75b2b084e1aed54ac7fa23a141eedb7f",
      "tree": "057a67f5c9a59aec9ac37959d2b8b8d5e5e544ab",
      "parents": [
        "82c7fdb1f6346862de373c95c618e370f81d8df6"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Aug 06 15:32:44 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Aug 06 16:04:04 2015 -0700"
      },
      "message": "LayoutLib: Switch SimpleDateFormat to icu.\n\nUse ICU\u0027s implementation of SimpleDateFormat in LayoutLib. The format\npatterns used are not supported by java.text.SimpleDateFormat.\n\nThe change required adding a mechanism for promoting visibility of\nfields in the framework in the create tool.\nTODO: Add additional tests in the create tool for this new\nfunctionality.\n\nChange-Id: Id0f4be41f9731c42a28919c32cc5ef271a656982\n"
    },
    {
      "commit": "82c7fdb1f6346862de373c95c618e370f81d8df6",
      "tree": "457e98df11bbf104526d0632d948957ca92002ec",
      "parents": [
        "0437cac76c24dc6cac7b530e6d80f789565550ec"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Aug 04 16:17:46 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Aug 06 16:03:19 2015 -0700"
      },
      "message": "Replace Locale.getDefault with custom impl.\n\nIn LayoutLib the default locale should always be the locale set the\nrendering params. This change replaces all calls to Locale.getDefault in\nthe framework with calls to AndroidLocale.getDefault() which tries to\nfind the locale from the current context, but falls back to the original\ncall.\n\nChange-Id: I496b35dcfc17fd61fedee21c7495541ab870b1fc\n"
    },
    {
      "commit": "214466c777e11eb7c8ab569b8fd7d2c38357003a",
      "tree": "ddf1aa46d3af7982394dd756fa9d1e9e498e6d2d",
      "parents": [
        "4a6ee98d39ab2300b2cd17c60221e43bf4ade8e7"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Jul 29 14:23:38 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Jul 29 14:30:05 2015 -0700"
      },
      "message": "Include EpicenterTranslateClipReveal in LayoutLib\n\nNeeded by Spinner to create transitions that are then ignored :)\n\nChange-Id: Ibe7167a643ecb186e97c9af446c0e1d2eb2d6f86\n"
    },
    {
      "commit": "c71450114131c59bb3a8d65968faae4995cd2345",
      "tree": "a23d9f1f33f4232b891712034a67ec59a8b2f94d",
      "parents": [
        "008e1fb9ed9ab18726762839bcfc74cb0feb82c8"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Jul 07 13:10:14 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Jul 07 13:13:48 2015 -0700"
      },
      "message": "Revert \"Replace infinite loop with foreach.\"\n\nThis reverts commit c77f9c76e4142db8dd76a28ad99b8f0395b82eba.\n\nClass.getDeclaredClasses() doesn\u0027t return anonymous inner class and\nhence the change was wrong.\n\nThe revert doesn\u0027t undo the typo fixed in the original change.\n\nChange-Id: Id0595c4bc3db1185dd1ce39808a6b8c3610a1e11\n"
    },
    {
      "commit": "c77f9c76e4142db8dd76a28ad99b8f0395b82eba",
      "tree": "b9a1629b9288ab652e4bbb01b3928bfe9c97f18a",
      "parents": [
        "5d1eaf4a197130f561b16c4ed083cf016b20ab92"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Jun 30 14:30:55 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Jun 30 15:36:34 2015 -0700"
      },
      "message": "Replace infinite loop with foreach.\n\nA method call exists to find all inner classes. Use it instead of\nmanually enumerating the possibilities and checking.\n\nAlso fix a typo.\n\nChange-Id: I2af678e92ea0c11b53617b247d8cda324391c185\n"
    },
    {
      "commit": "86caef1892e1ce063e0e880396c8deaa3a6a171d",
      "tree": "adf59c1fe3baf13444cbf6f48e37e9d0d0e3df48",
      "parents": [
        "b3e872be9e634c8d1f34d07778ea753880bbf2d9"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Jun 01 14:21:24 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Jun 01 14:43:28 2015 -0700"
      },
      "message": "LayoutLib: Skip classes from java package.\n\nClasses in \"java\" package can\u0027t be defined at runtime anyway. No use\nincluding them in LayoutLib.\n\nChange-Id: I7e7c46f0d74e32c893b23093828569b4fa5e3a73\n"
    },
    {
      "commit": "bcbe9ba0f939803dfa9b48519e113dc1c32268dc",
      "tree": "00b3c7c217ae64f065db1081e78b60509bbbb30c",
      "parents": [
        "a268ae5f51b8b4697aeb337a7d0700ed6e281f66",
        "59164ec0551aa49f497acca81222f304cf4f344b"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue May 26 22:37:26 2015 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 26 22:37:27 2015 +0000"
      },
      "message": "Merge \"Include Shapes in LayoutLib.\" into mnc-dev"
    },
    {
      "commit": "59164ec0551aa49f497acca81222f304cf4f344b",
      "tree": "86aed79c719ad5481dfcb813717effe0ce633132",
      "parents": [
        "327c364113c18c9d5a05df0c912b65788461da41"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue May 26 09:24:48 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue May 26 16:28:53 2015 +0000"
      },
      "message": "Include Shapes in LayoutLib.\n\nChange-Id: Ifb32882c478f8d407ad904e224b67fe2bd65dc08\n"
    },
    {
      "commit": "476e582d2ffdf25102d4c55f8c242baa3d21d37f",
      "tree": "55697be085d321b979f833996cb8c9cee9a4afc5",
      "parents": [
        "dd5ee4b89083ec9b50b8c9739274136b0c74abb5"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri May 22 14:11:22 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri May 22 17:57:29 2015 -0700"
      },
      "message": "LayoutLib: Change nullity annotations.\n\nSwitch from using tools nullity annotations (com.android.annotations)\nto android framework annotations (android.annotation).\n\nA new sdk-common prebuilt is required for LayoutLib tests. The new\nsdk-common requires an updated tools-common. The updated tools-common\ndoesn\u0027t have nullity annotations. So, instead of adding the annotation\ndependency, just reuse the platform ones. This also paves the way to\ninclude other platform annotations like IdRes etc.\n\nChange-Id: I87b8f767d3681d914abe7d1329e26a87f49f50a7\n"
    },
    {
      "commit": "d5b82845450beac2d3c7db9cd80e9fc34d43a297",
      "tree": "f3298fd893d2383f6297b77a12741dd192c968da",
      "parents": [
        "10dff451f3998728f4bb54585e4c5402edca06ba"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed May 20 18:01:48 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed May 20 18:01:48 2015 -0700"
      },
      "message": "Make DatePicker rendering not fail.\n\nEnsures that having a DatePicker in the layout doesn\u0027t crash the\ncomplete rendering. The rendering is still not perfect, but at least it\nworks.\n\n- Return a non-null window token so that ViewPager thinks that it\u0027s\n  attached to a window and doesn\u0027t skip populating the views.\n- Fix a style not found issue.\n\nChange-Id: Ied2b71de5b32bcb640bf4ec445e8a39509f800e9\n"
    },
    {
      "commit": "bfc9c3bcbe3b7056d3330f754811c1506f181b88",
      "tree": "37850cf7b4ee68bb02b2b1d5f4abc64692b1009d",
      "parents": [
        "612a05e7e15184b21437731b9aa5db2d1d4fc54c"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed May 20 14:51:37 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed May 20 23:31:31 2015 +0000"
      },
      "message": "Inject anonymous inner classes of injected classes\n\nWhen injecting classes in LayoutLib (eg. CreateInfo), so that LayoutLib\ncan refer back to the changes, also inject the anonymous inner classes.\nWithout this, the injected classes are not loadable. Although, LayoutLib\nitself doesn\u0027t load these classes, but some tests do.\n\nChange-Id: Ib5f6b779ef4d79dec8d614d3dbb26eeac88a1064\n"
    },
    {
      "commit": "f8ea750455eec81e4e6d877b3e18e29a86d4ec95",
      "tree": "98759198fabb789eaa05ccd8c893d4dfaa64d3fc",
      "parents": [
        "21b564573327b1ed2f7e06146b8a01c47ede3089"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon May 18 18:47:07 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue May 19 19:56:20 2015 -0700"
      },
      "message": "Make Context.getClassLoader() work.\n\nContext.getClassLoader() is used by the LayoutInflater and can be used\nby custom views. However, when called from the LayoutInflater, this\nneeds to return only the Framework classes. This is so that the IDE gets\na chance to instantiate the custom views, which helps in better error\nreporting and better fallback in case of exceptions, like MockView.\n\nTo workaround this need of the same method returning different results\nbased on where it\u0027s called from, the method call in LayoutInflater is\nrenamed to getFrameworkClassLoader() and the new method is injected in\nContext. The implementation of getFrameworkClassLoader() maintains the\nexisting behaviour of getClassLoader().\n\nContext.getClassLoader() is now modified to return classes from both\nFramework and the app namespace.\n\nAlso, update the list of packages to search for Framework views.\n\nChange-Id: I1a6be4aa1fc5c1c5520b5440a348a52f10b6eb3b\n"
    },
    {
      "commit": "eca056926a5acacbd1fe6b144df2d2952dc4a86e",
      "tree": "99e383966d6e06cf9d7b09ffca941a88e83f392c",
      "parents": [
        "d77b9ed7dcc42efca33b225c4594a30aab9e709c"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed May 13 14:58:15 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed May 13 18:15:32 2015 -0700"
      },
      "message": "Load ICU data in LayoutLib\n\nAlso return the correct version numbers for ICU data.\n\nChange-Id: I7de973b5553c73948870b97bdc12a880bb2fdd85\n"
    },
    {
      "commit": "d77b9ed7dcc42efca33b225c4594a30aab9e709c",
      "tree": "31e0b5365f9095b7587ec65bffafadea43b303c1",
      "parents": [
        "a12ec8f1e28cb5a8601bf606852f1d34d7c91996"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue May 12 12:01:16 2015 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed May 13 18:15:20 2015 -0700"
      },
      "message": "Add missing delegates for M preview.\n\n- Remove ICU dependency (use the version bundled with platform).\n- Restructure intelliJ project to move dependencies to module.\n- Minor fixes to layoutlib tests.\n\nTODO:\n- Load ICU data.\n- Hyphenator doesn\u0027t work.\n- High quality line breaker not present.\n\nChange-Id: I965e096e17bfc97ee995a649c3f4f6f64bb4f70d\n"
    },
    {
      "commit": "b10e33ff804a831c71be9303146cea892b9aeb5d",
      "tree": "a0b6158f87621aa8cd42cbaec60f0e4540d397c8",
      "parents": [
        "85bd63f461b117bf826003e671b3730255bbbe56"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Feb 04 21:57:40 2015 +0100"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Tue Feb 10 14:56:02 2015 +0100"
      },
      "message": "Split up android.policy into framework.jar and services.jar 1/3\n\nChange-Id: Ifd69f1f3dd308a7e17a1442e2f3950da8b03cec4\n"
    },
    {
      "commit": "321bf43315ace2f091a54d514dd56902990bec7a",
      "tree": "ebaa28a801a0121faa271d2054e38252ecdb72d6",
      "parents": [
        "f0da92bfda9a7b393cac87436173c1284c7d48be",
        "03c822aa585c319fb9cd05f392d8518501cc4f79"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Jan 08 01:49:23 2015 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jan 08 01:49:23 2015 +0000"
      },
      "message": "am 2d14feb4: Merge \"Replace java.util.LinkedHashMap.eldest()\" into lmp-mr1-dev\nautomerge: 03c822a\n\n* commit \u002703c822aa585c319fb9cd05f392d8518501cc4f79\u0027:\n  Replace java.util.LinkedHashMap.eldest()\n"
    },
    {
      "commit": "1330f79f95fd14b53c393402fbcbf7b7bbdcbc60",
      "tree": "89f05af111d935521ca93bb6c021665cf83eae84",
      "parents": [
        "6aede34e246e03be618c30504fc2fc8b07f23225"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Jan 07 16:25:59 2015 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Jan 07 16:32:21 2015 -0800"
      },
      "message": "Replace java.util.LinkedHashMap.eldest()\n\nProvide an alternate implementation for the above method and replace the\ncalls to it, since the method is not available on host VM.\n\nChange-Id: I329d86b457d1859b137da8fb2790ddd7f8efa788\n"
    },
    {
      "commit": "e88c120ebf42f5a16565414415fa292f5ef9525b",
      "tree": "67397a71dfdc03078059bc3a3bfc0ac98b9f598b",
      "parents": [
        "a2a5ce49b29b8e3bf3cd695ff9f968e5579f4be2"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Jan 06 14:58:37 2015 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Jan 06 14:58:37 2015 -0800"
      },
      "message": "resolve conflict for 8c831b2f -\u003e lmp-mr1-dev-plus-aosp again\n\nThe earlier resolution (a2a5ce49b29b8e3bf3cd695ff9f968e5579f4be2)\nwasn\u0027t the right one. This fixes it.\n\nChange-Id: I6a6dc908d3e7dd510064a46df932d129a58eed98\n"
    },
    {
      "commit": "86f96d07c7d531d69bab3d402d33eb8f15038eee",
      "tree": "6e847d1870b12ff58338a54fb6efd80829d76609",
      "parents": [
        "229ce66583a51baabf83fec4d0c42af0d3ecba38",
        "0db2524caa01022629075a113d3370a1b7c3da30"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Jan 06 22:22:56 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 06 22:22:56 2015 +0000"
      },
      "message": "am 0db2524c: am b2ebb968: Merge \"Remove Time from CreateInfo\" into lmp-dev\n\n* commit \u00270db2524caa01022629075a113d3370a1b7c3da30\u0027:\n  Remove Time from CreateInfo\n"
    },
    {
      "commit": "b88a65df73798becc57004b3fc55fdf8c0a83a13",
      "tree": "0e53201e19f8dd398ae2be3b628a6ee1809ae8a8",
      "parents": [
        "2bd01ebfa99815d4fb6b4e77754146a22cf66d03",
        "cec8e5a10de413c733223b8b1cc11b70c6254647"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Jan 06 22:22:40 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 06 22:22:40 2015 +0000"
      },
      "message": "am cec8e5a1: am f861c0ce: Merge \"Fix default initial value for preferences\" into lmp-dev\n\n* commit \u0027cec8e5a10de413c733223b8b1cc11b70c6254647\u0027:\n  Fix default initial value for preferences\n"
    },
    {
      "commit": "2bd01ebfa99815d4fb6b4e77754146a22cf66d03",
      "tree": "011f40d5cd52450bfc1b2c7e6872bd0217630d2a",
      "parents": [
        "ebc2872929177c4780c68a0371a44c25f89a4f1f",
        "7ed145493d3f5bea32c567980f77cc42f613197e"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Jan 06 22:22:36 2015 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 06 22:22:36 2015 +0000"
      },
      "message": "am 7ed14549: am 7081a114: Merge \"Add preferences rendering.\" into lmp-dev\n\n* commit \u00277ed145493d3f5bea32c567980f77cc42f613197e\u0027:\n  Add preferences rendering.\n"
    },
    {
      "commit": "4022272a4f714a8d140c09804881ad338964f324",
      "tree": "ae924814dd60435def117eca419b2499705d2a04",
      "parents": [
        "eae390a94ee63676bc6cbe3b36dbe5bb48e82f6b"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Jan 02 13:55:20 2015 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Jan 02 13:55:20 2015 -0800"
      },
      "message": "Remove Time from CreateInfo\n\nTime_Delegate was removed in change with Change-Id:\nIae5ef65678f0e6c7c5af520c45bd15980ce3fa55. But the name wasn\u0027t removed\nfrom CreateInfo. This didn\u0027t cause any problems at runtime, but caused\nthe layoutlib_create tests to fail.\n\nChange-Id: I079b1e024b97d389eb07d4f088fd860efbb02eb3\n"
    },
    {
      "commit": "f5b02eb7c43a96d3f70a3ecc81738b0dff86df13",
      "tree": "549898ece11468385b9372f7254ec2c07f566ccb",
      "parents": [
        "a30fdf790d66e241252c51d7dbdc401e021e51ad"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Nov 18 21:53:47 2014 +0000"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Dec 30 14:07:29 2014 -0800"
      },
      "message": "resolved conflicts for a0bc2e7e to lmp-mr1-dev\n\nThe original change wasn\u0027t properly merged into lmp-mr1-dev because of\nmerge conflicts. This change manually resolves the conflicts. The main\nreason for the conflict was that TimePickerSpinnerDelegate was swapped\nwith TimePickerClockDelegate.\n\nThis change also fixes the typo in the original change which was fixed\nin a subsequent change.\n\nOriginal commit: 12b6d29b7b5592dcfb6e6fd6f0c21a40f37d014a\nfix for typo: cb09bc45c58740af953874f9915306d351fc3d9d\n\nChange-Id: I50bf8c2d86318f632465a38adfad16d1382a9319\n"
    },
    {
      "commit": "dfeffd4c0ae165a3f225b818ef8d6f5d1cb89a2c",
      "tree": "d309fdad95f6e14217e0f35d659621878ba8b47a",
      "parents": [
        "10bb1371dca38b5b59f083ee963f7987da6511f2"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Oct 06 10:52:25 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Dec 23 12:04:30 2014 -0800"
      },
      "message": "Fix default initial value for preferences\n\nNO_SQ: Depends on unsubmitted changes.\nChange-Id: I061cf71f6167d382e9ef060abeb4d5cff83c4104\n"
    },
    {
      "commit": "10bb1371dca38b5b59f083ee963f7987da6511f2",
      "tree": "e7510e46158806a04a28162ca5917b226fe45656",
      "parents": [
        "029acc8ee8e40933c62f19d6f7ced43dca10a6ff"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Sun Oct 05 14:41:17 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Dec 23 12:04:30 2014 -0800"
      },
      "message": "Add preferences rendering.\n\nNO_SQ: Depends on updating layoutlib-api-prebuilt.jar\nChange-Id: Iae93ab74c478e6f2158e1528467bec9ee2d7ee9b\n"
    },
    {
      "commit": "302a7cc13a02863ef2e9d9102df761e92150de65",
      "tree": "419bf0aa94d2f5e2ebfd887e7b518c2b2100bab1",
      "parents": [
        "b2ded18a84b3b23a76b462644dcd24b3c33f5234",
        "4628d51a0d01641ca7fe2cf8403ad551ea6f50ce"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Dec 04 07:00:14 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 04 07:00:14 2014 +0000"
      },
      "message": "am 4628d51a: am 141c7614: Merge \"Fix AnalogClock rendering\" into lmp-dev\n\n* commit \u00274628d51a0d01641ca7fe2cf8403ad551ea6f50ce\u0027:\n  Fix AnalogClock rendering\n"
    },
    {
      "commit": "17a6170c62e6f74f2881623a9c16f0b6fea54721",
      "tree": "9b00a9ffbe17fc54f270ddb8d768d2f0e61a4fc8",
      "parents": [
        "cb09bc45c58740af953874f9915306d351fc3d9d"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Nov 21 00:53:41 2014 +0000"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Nov 26 12:03:39 2014 +0000"
      },
      "message": "Fix AnalogClock rendering\n\n1. Change calls to java.lang.System.log* since they don\u0027t exist on the\nhost.\n2. Clean up method rewrite mechanism in ReplaceMethodCallsAdapter.\n3. Stub out creation of uninitialized GregorianCalendar.\n4. Memory map the time zone data base file and provide a custom\nimplementation of BufferIterator for use by ZoneInfoDB\n5. Delete unused Time_Delegate\n\nAlso fixed a comment in BridgeAssetManager and an error message in\nFontFamily_Delegate.\n\nBug: http://b.android.com/79160\nChange-Id: Iae5ef65678f0e6c7c5af520c45bd15980ce3fa55\n"
    },
    {
      "commit": "12b6d29b7b5592dcfb6e6fd6f0c21a40f37d014a",
      "tree": "321d6a6ceea591567752472836abaece57e5b28f",
      "parents": [
        "2c5cddbd07bb46b22617a362f3af23be7720f9d5"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Nov 18 21:53:47 2014 +0000"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Nov 18 22:02:40 2014 +0000"
      },
      "message": "LayoutLib: Stub AM/PM keycodes in Time Picker.\n\nTimePickerSpinnerDelegate doesn\u0027t need to deal with input when running\ninside LayoutLib. So, we just return the keycodes as if it\u0027s running in\nEnglish locale.\n\nBug: http://b.android.com/79189\nChange-Id: Ife0ae91a1e34a8dac379bc1dda1c1c8ed461c164\n"
    },
    {
      "commit": "2c5cddbd07bb46b22617a362f3af23be7720f9d5",
      "tree": "a9e8e1984e90cce008f10f87f386af34a470954e",
      "parents": [
        "8657baa06d2efe845cafef571bd9dce627cf5045"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Nov 11 15:21:19 2014 +0000"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Nov 11 15:21:19 2014 +0000"
      },
      "message": "Don\u0027t skip loading object animator.\n\nThis is used by Buttons as part of StateListAnimator.\n\nChange-Id: Id370869e71898d46e11bbd17ad31169c9f9f5274\n"
    },
    {
      "commit": "796e9b7f9910f2ba8133cdb6f137107585b2e5fa",
      "tree": "db85df3bd9830e22f22ce69e6ea6ec774f1b511d",
      "parents": [
        "9173c8a2e90a48959dedc9d4aa415482f5014844"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Nov 04 18:19:55 2014 -0800"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Nov 07 22:26:11 2014 +0000"
      },
      "message": "Add primitive shadows support to LayoutLib\n\nThe shadows rendered are not the same as rendered by the framework. The\nmain purpose of the shadows here is let the user know when shadows will\nbe cast.\n\nCurrently rectangular shadows are available in only two intensities. Any\nelevation below 10dp uses one shadow and any elevation over 10 dp uses\nthe other.\n\nAlso, even though the code for arbitrary shapes exist, it doesn\u0027t quite\nwork yet. No shadows are visible when that code is run.\n\nChange-Id: Ie8235ffccf1d3809713f5d8f82afde434817d6b2\n"
    },
    {
      "commit": "75bf1b1c6af0bc0d09b04292565915fab0e49a30",
      "tree": "6a771a73fa4dafd20ec33be5b77c72e1780beb5e",
      "parents": [
        "c55eb170cccea10158cedaeccd991b4b97d0036c",
        "0b42936d860238be9321f05cf70e934f81b94d72"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 29 00:13:53 2014 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 29 00:13:54 2014 +0000"
      },
      "message": "Merge \"Skip loading animations.\" into lmp-dev"
    },
    {
      "commit": "0b42936d860238be9321f05cf70e934f81b94d72",
      "tree": "f44b357f91bb992862622cb0ea09d20991163991",
      "parents": [
        "5c0ed74b3886c5765c576e9e427b93c76b37635a"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Oct 28 15:07:25 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Oct 28 15:07:25 2014 -0700"
      },
      "message": "Skip loading animations.\n\nThis is a temporary fix until Path.approximate() is supported.\n\nBug: http://b.android.com/77865\nChange-Id: I28739e58f51fabaaf1dcc1c9be61cd0b17e84eec\n"
    },
    {
      "commit": "b6444c43094353065f083d1ae6e4617f098a8b2b",
      "tree": "58819f2468af014503108acc3a31e4ea5c834544",
      "parents": [
        "4a605c6fa0027ee116beb29fbc9625721f0441f0"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Oct 28 11:01:06 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Oct 28 11:11:10 2014 -0700"
      },
      "message": "Fix multiple styles case in resource resolution.\n\nWhen multiple styles are applied to a theme, we only remembered the last\none. This change fixes the issue.\n\nChange-Id: I46490e882edc3eabe522a641c83366234b5bb25d\n"
    },
    {
      "commit": "908a4f9a4372a9627e821b5800936095b0f0b5b0",
      "tree": "7ac469f5fd61ffd4c5dab2b04f6fcb4edf97d44b",
      "parents": [
        "562262cc89838529316ff2f3e511c0d876b08677",
        "4f133894a6e98d8d30557ea42cec92cfb21fa5c9"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 08 17:34:12 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Oct 08 17:34:12 2014 +0000"
      },
      "message": "am 4f133894: Exclude KXmlParser from LayoutLib.\n\n* commit \u00274f133894a6e98d8d30557ea42cec92cfb21fa5c9\u0027:\n  Exclude KXmlParser from LayoutLib.\n"
    },
    {
      "commit": "4f133894a6e98d8d30557ea42cec92cfb21fa5c9",
      "tree": "857491e20b9b98ce1b37e00347f2fb54ee5bc0e6",
      "parents": [
        "59c04ece5614ffa20e10964a70c5faeafe565aa3"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Tue Oct 07 18:36:57 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 08 10:12:11 2014 -0700"
      },
      "message": "Exclude KXmlParser from LayoutLib.\n\nThe class was incorrectly being included in the LayoutLib.\n\nChange-Id: I3c86662efa068019fe9165f2fc49a00d0a1b7f2d\n"
    },
    {
      "commit": "11b14e3996d3602155d6a61afb286e5bc0941a1f",
      "tree": "5e6be348665b76fc059cfdce770bd3a05b88051f",
      "parents": [
        "916a6ea30377730d578692b625b1c18aa9f13564"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Sat Aug 02 13:16:24 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 08 02:05:05 2014 +0000"
      },
      "message": "LayoutLib: Use ICU\u0027s line break algo. [DO NOT MERGE]\n\nChange-Id: I7e5b0ab7423a72f5a4b0e1163d0a537f0b03ba07\n(cherry picked from commit 760f6394d0f65fbb5365186e8e068d53c506b653)\n"
    },
    {
      "commit": "039d5849ea3acd011e0c3dc75e1cfa24e0162b49",
      "tree": "076f861eb5896d394ee529f271f689250e8a827f",
      "parents": [
        "6fb5fdc23364f922cb2c554f52b6927925d1fb15"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Sep 08 18:38:57 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 01 12:44:05 2014 -0700"
      },
      "message": "Build layoutlib create tests as part of sdk build. [DO NOT MERGE]\n\nLayoutLib Create tests are now built whenever LayoutLib create is built.\n\nChange-Id: Id215e8690e435019579dba1734090a0d585f37e1\n(cherry picked from commit 4efe6264f1251fa200427f54ea6f5dd4c4d03665)\n"
    },
    {
      "commit": "6fb5fdc23364f922cb2c554f52b6927925d1fb15",
      "tree": "752786265e796ffed1e5a57870a3ff25e0d51ca3",
      "parents": [
        "bd4133133a55d0cf6a36bb39e89cfd09078d01e9"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Sep 04 19:07:40 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 01 12:43:52 2014 -0700"
      },
      "message": "Add layoutlib tests to DIST_DIR [DO NOT MERGE]\n\nAdd the layoutlib and layoutlib-create tests to DIST_DIR for sdk\ntargets. These can be used for continuous testing on the build server.\n\nChange-Id: I747dddcddfd8009937668bec4d75cb99bf63235f\n(cherry picked from commit f9c749c9901c459f77ffc6f4fbbc15f4142c6e0a)\n"
    },
    {
      "commit": "bd4133133a55d0cf6a36bb39e89cfd09078d01e9",
      "tree": "7054cb10e1827b86a455a03b776a887b19bf9004",
      "parents": [
        "3f0e467a0627b435493e5f45d672421bfb931c22"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Sep 03 12:57:12 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 01 12:43:43 2014 -0700"
      },
      "message": "Build layoutlib_create tests. [DO NOT MERGE]\n\nChange-Id: Ia13a090f8ec29b2b2a107825b6a13d7db77e6d61\n(cherry picked from commit 2294f939bc79ce902a40db37def64cc28394d56b)\n"
    },
    {
      "commit": "b6a37d897aca9d09a09d5c4fa9e60f6f43d6a166",
      "tree": "6027e80c5f18c386cef5652b355c2012f98951a7",
      "parents": [
        "23f09423cb2cb59333d2f410e89534f0a08ac424"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Jul 31 11:32:25 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Oct 01 12:43:11 2014 -0700"
      },
      "message": "Add testing framework to LayoutLib. [DO NOT MERGE]\n\nThis change adds an end to end test which loads the framework resources\nand a test app and ensures that no exceptions or warnings are thrown.\n\nThe change also adds project configuration for intelliJ.\n\nChange-Id: I7b67c0f1a2af2dac95df7f3231cab537b9826d7d\n(cherry picked from commit a8e9517470869fa29946ae1fa1ceeb24c7970391)\n"
    },
    {
      "commit": "8f92d92a0992456b56f3d552531129c787db7a08",
      "tree": "16ae30604048dd80d01a44e0e7f66b27b305fb67",
      "parents": [
        "592b95901ef3fa7248bb9b79d8ea9ce3df9628bc"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Sep 08 18:38:57 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Mon Sep 08 18:38:57 2014 -0700"
      },
      "message": "Build layoutlib create tests as part of sdk build.\n\nLayoutLib Create tests are now built whenever LayoutLib create is built.\n\nChange-Id: Id215e8690e435019579dba1734090a0d585f37e1\n"
    },
    {
      "commit": "a0904bf7aa0ec7a954b5740c67bd922171c72ca1",
      "tree": "92a2172eb06569a25df77bb0f374878861bbbb37",
      "parents": [
        "f2f3bde62fd9738e1a5b7bd250aec3569cbb14c1"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Thu Sep 04 19:07:40 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Fri Sep 05 14:01:27 2014 -0700"
      },
      "message": "Add layoutlib tests to DIST_DIR\n\nAdd the layoutlib and layoutlib-create tests to DIST_DIR for sdk\ntargets. These can be used for continuous testing on the build server.\n\nChange-Id: I747dddcddfd8009937668bec4d75cb99bf63235f\n"
    },
    {
      "commit": "b988c8fa66f35a3f046ee9066ed0dc0f2b4c495b",
      "tree": "b9ec9d2385241d1ef5ef9e53b9290a54af501341",
      "parents": [
        "c0dce273a8af0263b660b57c1a05395a0bd2d2e5"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Sep 03 12:57:12 2014 -0700"
      },
      "committer": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Sep 03 12:57:12 2014 -0700"
      },
      "message": "Build layoutlib_create tests.\n\nChange-Id: Ia13a090f8ec29b2b2a107825b6a13d7db77e6d61\n"
    },
    {
      "commit": "6ebeefa04cb3c360d8028eb77e60bacf8a800cb1",
      "tree": "47ddc05482de9b916c1d840f466f4c471567043a",
      "parents": [
        "4881578e6ccd8b51606750e3fd4e20b2204287c7",
        "904d77118bab63139174470ef728ca9a53e75a15"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Aug 06 22:51:47 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 06 22:51:47 2014 +0000"
      },
      "message": "am 904d7711: am 7b561be3: am 09c3c2ed: am ba31d628: am db94ea9e: am f970d2c2: am 79c3f678: am 206c691b: am 72cf03a2: am 3a544a81: resolved conflicts for merge of a232a68d to jb-mr1.1-docs\n\n* commit \u0027904d77118bab63139174470ef728ca9a53e75a15\u0027:\n  Fix SystemProperties in LayoutLib.\n"
    },
    {
      "commit": "7b561be3a6fedebfce412cecd8c36d6686f6576c",
      "tree": "c030bef5bff5e0fed885dadffbaa04c4bb0a94fa",
      "parents": [
        "b86675f14bea0c833f0ac3f0ec4d3e5f46784569",
        "09c3c2edb2391d3ffed9a07ec360b9f75b9f7637"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Aug 06 22:37:10 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 06 22:37:10 2014 +0000"
      },
      "message": "am 09c3c2ed: am ba31d628: am db94ea9e: am f970d2c2: am 79c3f678: am 206c691b: am 72cf03a2: am 3a544a81: resolved conflicts for merge of a232a68d to jb-mr1.1-docs\n\n* commit \u002709c3c2edb2391d3ffed9a07ec360b9f75b9f7637\u0027:\n  Fix SystemProperties in LayoutLib.\n"
    },
    {
      "commit": "db94ea9ed03dbaa0ca075a433a986d7e414e8f8d",
      "tree": "a77ce10b5515d365a802ecbed6c5a0f0ca880277",
      "parents": [
        "14a4e69cc656b60c705d2f05229aed2a7049693c",
        "f970d2c201649843b8d51d094b865f16b15bc0bc"
      ],
      "author": {
        "name": "Deepanshu Gupta",
        "email": "deepanshu@google.com",
        "time": "Wed Aug 06 22:21:54 2014 +0000"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 06 22:21:54 2014 +0000"
      },
      "message": "am f970d2c2: am 79c3f678: am 206c691b: am 72cf03a2: am 3a544a81: resolved conflicts for merge of a232a68d to jb-mr1.1-docs\n\n* commit \u0027f970d2c201649843b8d51d094b865f16b15bc0bc\u0027:\n  Fix SystemProperties in LayoutLib.\n"
    }
  ],
  "next": "f970d2c201649843b8d51d094b865f16b15bc0bc"
}
