)]}'
{
  "log": [
    {
      "commit": "faebd8f0795b7d275fb4e503533c8c0c4a9acc21",
      "tree": "464de8bb5dcd9ae99402ebb630d329dc8ce953cc",
      "parents": [
        "b3caa9200a61cde1178a2c83419de56579d3c5a5"
      ],
      "author": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Fri May 18 14:17:57 2012 -0700"
      },
      "committer": {
        "name": "Chet Haase",
        "email": "chet@google.com",
        "time": "Thu Apr 18 13:33:13 2013 -0700"
      },
      "message": "First draft of Scenes \u0026 Transitions feature\n\nThis checkin has preliminary API (in flux, definitely changes still\nto be made) and implementation for a new \"Scenes \u0026 Transitions\" feature.\nThe current implementation allows you to define different Scenes\n(via layout resource IDs or callbacks) and Transitions to be used when\nchanging to those scenes. By default, scene changes will use AutoTransition,\nwhich generally does the right thing.\n\nThere are no overview docs or tutorials yet. The best way to learn how things\nwork is to see the code for the various tests in\nframeworks/base/tests/TransitionTests.\n\nExpect the API to change. Expect the implementation to change (mostly to add\nmore functionality). Expect bugs, but tell me if things do not work\nas expected.\n\nChange-Id: Ib025a9f565678b225afa4759325cf6d496cc7215\n"
    },
    {
      "commit": "a068eeddc9d47af1a12afbe6efe7d00e8e903b9f",
      "tree": "df9f8663d47adc21195ea822fc107c514d514c27",
      "parents": [
        "301e95f2e17164c6f432f1b68f55e5f12aa0ca78"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Sat Apr 13 09:48:01 2013 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Sat Apr 13 09:48:01 2013 -0700"
      },
      "message": "Revert \"Make --non-constant-id generates non final IDs for styleable.\"\n\nThis reverts commit 8730f46ae5ba9021a0e01c068ffc6b552b6c4510.\n"
    },
    {
      "commit": "8730f46ae5ba9021a0e01c068ffc6b552b6c4510",
      "tree": "0029a29868d6ff22577549764334b6e664766fbf",
      "parents": [
        "e203384f1627f27c81ff72426498927fb9d80698"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Apr 12 16:00:49 2013 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Apr 12 16:02:54 2013 -0700"
      },
      "message": "Make --non-constant-id generates non final IDs for styleable.\n\nThis was already done for all other types of resources, but not\nfor styleable (or the constants for the styleable array indices).\n\nThis fixes this. This only affects the SDK as this is used by the\nSDK toolchain only.\n\nChange-Id: Idfc2f7915be2b0e88590f38fd660610ffc7e160c\n"
    },
    {
      "commit": "253f76357dc9acdb329f321190eca4f0b049b4af",
      "tree": "d791e452faaeb3ae4e13029ee29a6fbf7fad1690",
      "parents": [
        "b079d1f28089ad4de05162b7df0ace90bc40a5f3",
        "fb34490f4dca7aac623fb9a80fe9a2371107a786"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Sep 26 10:44:22 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 26 10:44:22 2012 -0700"
      },
      "message": "am fb34490f: Merge \"Fix writing text version of styleable IDs.\"\n\n* commit \u0027fb34490f4dca7aac623fb9a80fe9a2371107a786\u0027:\n  Fix writing text version of styleable IDs.\n"
    },
    {
      "commit": "d16047434bca24b2811de7ea9d22de6ee0f87f79",
      "tree": "ef2b9d05669191e2b2a5f82e8e5b3063670c2dd2",
      "parents": [
        "5e8cbdc0bd6dfc51e6b54db1d5fd61347336d862"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Sep 26 10:11:54 2012 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Sep 26 10:11:54 2012 -0700"
      },
      "message": "Fix writing text version of styleable IDs.\n\nChange-Id: I3f2614689a597de3fd46628c020cf649a808c82f\n"
    },
    {
      "commit": "5de9603529ee01a416b5fa31074197565fde4482",
      "tree": "f610ba56bf685b21bbc81bbf4d6ed8b2d5640ef7",
      "parents": [
        "cc9747ed45302956a3ec9dd21f7b950b837dbfdd",
        "31820a35b2cf864a8dcb71d43e6fd21d54f49a2d"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Sep 17 12:03:19 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 17 12:03:19 2012 -0700"
      },
      "message": "am 31820a35: Merge \"Add --output-text-symbols option to aapt.\"\n\n* commit \u002731820a35b2cf864a8dcb71d43e6fd21d54f49a2d\u0027:\n  Add --output-text-symbols option to aapt.\n"
    },
    {
      "commit": "cc9747ed45302956a3ec9dd21f7b950b837dbfdd",
      "tree": "4f5bf98606f87858b78a95bd8dd09e9e6a797716",
      "parents": [
        "f5437ee86a34751fa6d441b95282feb315e19eb6",
        "d72525718ea7ef3e1f97cf557365b143c8919a5b"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Sep 17 12:03:12 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 17 12:03:12 2012 -0700"
      },
      "message": "am d7252571: Merge \"Add --error-on-failed-insert option to aapt.\"\n\n* commit \u0027d72525718ea7ef3e1f97cf557365b143c8919a5b\u0027:\n  Add --error-on-failed-insert option to aapt.\n"
    },
    {
      "commit": "f5de650ff1e161ea135c828e43515895343d2c0f",
      "tree": "4398a8d071f3322512e6c4d5f153fb9564865d6a",
      "parents": [
        "7714a2429b192c88e134ff67b969121bbaeb5457"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Sep 11 14:45:22 2012 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Sep 11 18:19:00 2012 -0700"
      },
      "message": "Add --output-text-symbols option to aapt.\n\nLibrary projects in the SDK are built using --non-constant-id\nto generate a temporary R.java class.\nWhen the library is packaged with the application to generate an\napk, the R class is recreated with the proper IDs due to all the\nresources coming from the app and all the libraries.\n\nHowever for large apps with many libraries (each with their own\nR class in their package), this means a lot of unnecessary IDs:\nall R classes contains all the IDs including for resources from\nby projects they don\u0027t have access through the dependency graph.\n\nFor really large apps (X,000 resources), with lots of libraries\n(10+), this can generate tens of thousands of resources, which\ncan trigger dalvik\u0027s limit of 65K fields and methods per dex\nfiles.\n\nThis changes lets aapt generate not only the R class but a simple\ntext file containing the list of all those IDs so that it is\neasier to parse back. The SDK build system will not ask aapt\nto generate the R class of the libraries (through the\n--extra-packages option), instead it will then read this\nfile to know what IDs are needed for each library and generate\na much smaller R class for each library (using the same text\nfile output from compiling all the resources to get the final\ninteger value).\n\nChange-Id: I4db959fec372cf3ead9950e4b2b82fa1ae7eed2d\n"
    },
    {
      "commit": "7714a2429b192c88e134ff67b969121bbaeb5457",
      "tree": "13d8c0eeb0d9eee815e3444fd236924306861fe3",
      "parents": [
        "2415841c370d855d7f3a3e6a537e641c69a57097"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Sep 05 17:49:21 2012 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Sep 11 18:17:22 2012 -0700"
      },
      "message": "Add --error-on-failed-insert option to aapt.\n\nThe new SDK build system give the ability to insert\nversionCode/Name and min/targetSdkVersion in the manifest\nbut aapt won\u0027t replace those if they already exist.\n\nThe main problem is that aapt doesn\u0027t actually fail when\nit doesn\u0027t replace them, making the output not what the\ndeveloper wanted.\n\nThis patch set adds an option to aapt to make it return\nan error if the insert failed because the attribute\nalready existed.\n\nChange-Id: I8938ec1238da407a8562c974e9598db39001ffd9\n"
    },
    {
      "commit": "095cd2e2d14e4fe25b66df54861fb66000a25adc",
      "tree": "b16c8e094f998b23b77a68e364e70f45629f13b5",
      "parents": [
        "12a5475205243bc2d069a87d2c7d4982b5f4d11d"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jul 18 18:06:09 2012 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Jul 19 09:06:03 2012 -0700"
      },
      "message": "Fix aapt -G to properly support class attr in fragment.\n\nThe code added attributes android:name and class to a\nKeyedVector under the same key (fragment) so the 2nd\nadd (android:name) removed class with was never checked.\n\nThis replace the value type in the KeyedVector to be\nVector\u003cNamespaceAttributePair\u003e instead of just\nNamespaceAttributePair.\n\nChange-Id: I009b8a8cca878191661c2a63bb14c967d230498d\n"
    },
    {
      "commit": "9275197d35a99c3f187d18d0eda6ead3b8a32603",
      "tree": "ba364f6cf805ce6dac0d3eb8ced5d82d71cd956a",
      "parents": [
        "fb5c3dba4ddac023cfd4cdcabdfdbcf343197c94"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 18 19:22:14 2012 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 18 19:23:19 2012 -0700"
      },
      "message": "Add aapt support for generating proguard rules for onClick methods.\n\nAlso fix Activity menu inflater when using the dark on light\ntheme wrapper to still be able to find onClick listeners.\n\nChange-Id: Ie206db26d1df96041bc477804e476b02ad99dc9d\n"
    },
    {
      "commit": "c0f7366a15655c6973ea21029f1997f24c006cca",
      "tree": "ad9302a32cfbfa603ce5b58a6fa263c92953795a",
      "parents": [
        "c9fd9263feedac32e4f5b1f13a3246347efdc25f"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Mar 16 22:17:41 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Sat Mar 17 14:12:57 2012 -0700"
      },
      "message": "aapt: Preprocess images in parallel.\n\nCurrently hardcoded to use up to 4 threads.\n\nThis change substantially reduces the amount of time spent\npreprocessing framework resources to just a few seconds.\n\nChange-Id: I02fdd283fb529a152aeb22ac87f278779fd77983\n"
    },
    {
      "commit": "1644c6d7f4931d0b4fe7ea77c63b016af01a46d3",
      "tree": "794f3b2ccf8ce784b043b74e03fe970b811bc455",
      "parents": [
        "e7171effdf9ef0700782520187c0a292b0a74759"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Feb 06 15:33:21 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 07 12:57:50 2012 -0800"
      },
      "message": "Only generate private symbols that are needed.\n\nChange-Id: Icc4c86638db8429a387bf87c934cc712f807e213\n"
    },
    {
      "commit": "6c997a9e880e08c354ffd809bd62df9e25e9c4d4",
      "tree": "593504e8a7d67bf57e0799daff1e8eb9e4797857",
      "parents": [
        "2247e3f0dc00762b44ef6adcbb2a91c8bbc1be58"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 31 11:27:43 2012 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 31 15:41:30 2012 -0800"
      },
      "message": "aapt now sorts the strings in the resource string pool.\n\nIn our current environment with very many translations, this can\nsave a lot of RAM -- for example over 200K in Gmail just by sorting\nthe strings in the Gmail .apk (not the framework).\n\nAlso add a new aapt command to print the contents of the resource\ntable string pool.\n\nChange-Id: I1da037b3e2c377b890833ff57ab158965314ac48\n"
    },
    {
      "commit": "f51125d8429ffa71c57ba6fbdca9effc72642a9b",
      "tree": "f94891383e3cd48374f02bff435b0a3ca783bd90",
      "parents": [
        "e87d2da0b4e44051edbee4a4339f846eba9d3a36"
      ],
      "author": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Thu Oct 27 17:01:31 2011 -0700"
      },
      "committer": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Thu Oct 27 17:11:21 2011 -0700"
      },
      "message": "AAPT fix printf %zd crash on Windows.\n\nThere\u0027s no printf %zd on Mingw/Cygwin so the verbose\nprintf crashes aapt.\n\nSDK bugs: 20395, 20986\n\nChange-Id: I5b8ac36749263205a19f1448b1aaca90d5a2e06d\n"
    },
    {
      "commit": "e6b680364dd992907a8d2037685a2e500d188dfb",
      "tree": "3d931a3139f058da9ae934e5cf50cd6dc50f7e64",
      "parents": [
        "d814d4fa0c76a0384f7e32816e1ca36f237911c6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Oct 13 16:26:02 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Oct 16 11:52:17 2011 -0700"
      },
      "message": "New aapt feature to do smarter filtering of configurations.\n\nThis adds a --preferred-configurations flag that specifies the\nspecific configurations you would like to have.\n\nIt is smarter than \"-c\" because it will avoid stripping a\nconfiguration if that would result in there being no value\nfor the resource.\n\nIt is dumber than \"-c\" because it can\u0027t process as many kinds\nof resources.  It is really only intended for bitmaps and use\nwith density configs.\n\nThis required re-arranging AaptAssets to group files together\nby config again, like they used to be.  I think this hasn\u0027t\nbroken anything.  Hopefully.\n\nChange-Id: I4e9d12ff6e6dbd1abb8fd4cb1814c6674b19d0e5\n"
    },
    {
      "commit": "1797d6086f9acbea582cac6d484e749abafa1868",
      "tree": "4b1af23c311a9e261d3494d9b6b0bcb54550c9a6",
      "parents": [
        "6ccadb04a42703f8d6f51db5ada034ed01a48afa",
        "d98e1be20e1cca5c36c7e0344500d4a5574568aa"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Aug 18 14:51:43 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Aug 18 14:51:43 2011 -0700"
      },
      "message": "am d98e1be2: am f4750724: am 9d829f98: am 21e6e2de: Merge \"Change generated dependency file names\"\n\n* commit \u0027d98e1be20e1cca5c36c7e0344500d4a5574568aa\u0027:\n  Change generated dependency file names\n"
    },
    {
      "commit": "d98e1be20e1cca5c36c7e0344500d4a5574568aa",
      "tree": "9fb8a00956a58e1eb452f7b91e109fa4461f8027",
      "parents": [
        "294539df2c05eb62c417e25b2e1c8a71474b09e6",
        "f4750724cf8db972a052cb388dc9a39fc7aa6dd6"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Aug 18 14:48:49 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Aug 18 14:48:49 2011 -0700"
      },
      "message": "am f4750724: am 9d829f98: am 21e6e2de: Merge \"Change generated dependency file names\"\n\n* commit \u0027f4750724cf8db972a052cb388dc9a39fc7aa6dd6\u0027:\n  Change generated dependency file names\n"
    },
    {
      "commit": "b711f3f7ee0544685ef26a1a4b4755d5a6233dba",
      "tree": "a597541ade9616440906a10db603d377d2211506",
      "parents": [
        "d144748d4767b2ccfb13857e23f78bc944e9531d"
      ],
      "author": {
        "name": "Josiah Gaskin",
        "email": "josiahgaskin@google.com",
        "time": "Mon Aug 15 18:33:44 2011 -0700"
      },
      "committer": {
        "name": "Josiah Gaskin",
        "email": "josiahgaskin@google.com",
        "time": "Tue Aug 16 08:14:51 2011 -0700"
      },
      "message": "Change generated dependency file names\n\nThis changes the name of the generated dependency files to R.java.d\nand \u003cApkName\u003e.ap_.d respectively.\n\nChange-Id: I17e18770fc0d0a5d31c7b37b40ac1949f45ef13a\n"
    },
    {
      "commit": "ac1fe6f8460448d379721677a064868e103a2260",
      "tree": "210b3ac8b0e15d02a24ea5b31b29867dfa4cec66",
      "parents": [
        "ae7c0926499491999fa5964d75fd05a1b5f4480d",
        "84be06e4ce0778fbf0c1ac72f94795ef8433439b"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jul 20 17:49:26 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 20 17:49:26 2011 -0700"
      },
      "message": "am 84be06e4: resolved conflicts for merge of ea9e6d24 to honeycomb-plus-aosp\n\n* commit \u002784be06e4ce0778fbf0c1ac72f94795ef8433439b\u0027:\n  Added Caching for PreProcessed PNGs\n"
    },
    {
      "commit": "84be06e4ce0778fbf0c1ac72f94795ef8433439b",
      "tree": "ea9b35882420896cfba281f17293bce74e564089",
      "parents": [
        "a125c937de06b1cc43368743592f47513eb88b76",
        "ea9e6d24a458c06df6237fddd22b6165b2f92cb5"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jul 20 17:45:11 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jul 20 17:45:11 2011 -0700"
      },
      "message": "resolved conflicts for merge of ea9e6d24 to honeycomb-plus-aosp\n\nChange-Id: I8e047147a4d2c899b6654c03a5f32b04d929e602\n"
    },
    {
      "commit": "e53365f6f145303b8c7a0613189ad415959dd697",
      "tree": "83922948d5c70b79f6b58d05c696291cca3bb291",
      "parents": [
        "0f4e81df9942dbea16f803bb795cae057fb085f5",
        "a125c937de06b1cc43368743592f47513eb88b76"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jul 20 17:18:04 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 20 17:18:04 2011 -0700"
      },
      "message": "am a125c937: resolved conflicts for merge of 2c311be7 to honeycomb-plus-aosp\n\n* commit \u0027a125c937de06b1cc43368743592f47513eb88b76\u0027:\n  Add generation of dependency file for .ap_ package\n"
    },
    {
      "commit": "a125c937de06b1cc43368743592f47513eb88b76",
      "tree": "514f08565d17813860d4cc240162806f3fda9816",
      "parents": [
        "57aebc6109f2059ba335a02bf95928a494cff4ba",
        "2c311be720341e3249887e592bbc1881008b02bd"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jul 20 16:31:25 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jul 20 16:31:25 2011 -0700"
      },
      "message": "resolved conflicts for merge of 2c311be7 to honeycomb-plus-aosp\n\nChange-Id: I806c7b4ae95f66df621587e52497dd8739a115fe\n"
    },
    {
      "commit": "8a39da80b33691b0c82458c3b7727e13ff71277e",
      "tree": "b6fa94370ecb2dba85d5fdb45c83729cef8708e1",
      "parents": [
        "1e24ccbdd56a45c8bb5f2eba94af5aecd2d02554"
      ],
      "author": {
        "name": "Josiah Gaskin",
        "email": "josiahgaskin@google.com",
        "time": "Mon Jun 06 17:00:35 2011 -0700"
      },
      "committer": {
        "name": "Josiah Gaskin",
        "email": "josiahgaskin@google.com",
        "time": "Wed Jul 20 15:20:26 2011 -0700"
      },
      "message": "Added Caching for PreProcessed PNGs\n\nAdded a cache management system for pre-processed PNG files\nalong with unit tests. The cache system will be used if\nthe --no-crunch flag is passed to AAPT during the package\nphase. The cache can be updated by a call to \u0027aapt crunch\u0027\n(see usage statement). Also put in benchmarking code.\n\nChange-Id: I58271fb2ee2f5f9075fd74d4ff6f15e7afabd05c\n"
    },
    {
      "commit": "c810fffe1ffda8876c083f10b5f2b3b197768809",
      "tree": "c1156134ff4a0ab798c1c0e588dca02c650be9a4",
      "parents": [
        "e242042b81bc88c6231caf4628d0c7364b29abad",
        "9139868b6c5cb29b3665984225dceb0193fec31d"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jul 19 10:23:19 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jul 19 10:23:19 2011 -0700"
      },
      "message": "am 9139868b: am ba6c98db: am 82943ecf: am d40c93f6: Merge \"Add dependency generation to Aapt for R.java\"\n\n* commit \u00279139868b6c5cb29b3665984225dceb0193fec31d\u0027:\n  Add dependency generation to Aapt for R.java\n"
    },
    {
      "commit": "9139868b6c5cb29b3665984225dceb0193fec31d",
      "tree": "01c3dfab0f56bfcf38d32f2c2054915a6864d10d",
      "parents": [
        "bf31250ba0858a2e72a3906a1f0216846683bc2e",
        "ba6c98db8f21016f81ecac35bb0ea3c433044bb7"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jul 19 10:18:28 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jul 19 10:18:28 2011 -0700"
      },
      "message": "am ba6c98db: am 82943ecf: am d40c93f6: Merge \"Add dependency generation to Aapt for R.java\"\n\n* commit \u0027ba6c98db8f21016f81ecac35bb0ea3c433044bb7\u0027:\n  Add dependency generation to Aapt for R.java\n"
    },
    {
      "commit": "03589cc65355220e0a4a0c816189a9fa25cc81fc",
      "tree": "ebe98e64c530708e8709025e8ad051c714eab9a3",
      "parents": [
        "9bf34ca6f85309c65b0ebdf614cb8266401b49ba"
      ],
      "author": {
        "name": "Josiah Gaskin",
        "email": "josiahgaskin@google.com",
        "time": "Mon Jun 27 16:26:02 2011 -0700"
      },
      "committer": {
        "name": "Josiah Gaskin",
        "email": "josiahgaskin@google.com",
        "time": "Mon Jul 18 16:37:55 2011 -0700"
      },
      "message": "Add generation of dependency file for .ap_ package\n\nMake Aapt generate a dependency file in the same directory as the\noutput ap_ file if the --generate-dependencies flag is set.\nThis dependency file can then be read by the ant exec loop task\nto see whether to repackage resources.\n\nChange-Id: I763679414daf76369700aa599c26dcf78d4de099\n"
    },
    {
      "commit": "9bf34ca6f85309c65b0ebdf614cb8266401b49ba",
      "tree": "50708801cb3c58aa23a32bc1a1ad39315e3aeff5",
      "parents": [
        "ce89f1531ed8b96b8b790b3f8b18dd4cf483f7f0"
      ],
      "author": {
        "name": "Josiah Gaskin",
        "email": "josiahgaskin@google.com",
        "time": "Tue Jun 14 13:57:09 2011 -0700"
      },
      "committer": {
        "name": "Josiah Gaskin",
        "email": "josiahgaskin@google.com",
        "time": "Mon Jun 27 16:44:57 2011 -0700"
      },
      "message": "Add dependency generation to Aapt for R.java\n\nMake Aapt generate a dependency file in the location specified\nby RClassDir for R.java if the --generate-dependencies flag is set.\nThis dependency file is then read by the ant exec loop task\nto see whether to recreate R.java.\n\nChange-Id: I7152dac86b6ea0e448ef65e3a95694afe233c789\n"
    },
    {
      "commit": "45ccfa5870517374d06e1eec9f61947d8c00cb0d",
      "tree": "eade784b108e83e2ab5f6076b6ae897ca655b3ef",
      "parents": [
        "df02afe8355e1e7a6f8f02549f41a166c3ee6932"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Mon Jun 20 15:41:08 2011 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Mon Jun 20 15:41:08 2011 -0700"
      },
      "message": "Output Proguard options for also overlay layouts.\n\nChange-Id: I7bfac476247bd7b532510e295cb1a3e61e9af88b\n"
    },
    {
      "commit": "b732b7b5e8192501360edc15fb8c6399d11fb97d",
      "tree": "a2fab9c785f055c9962e565896d5e4a1bdadc769",
      "parents": [
        "1649d91f781445a78ce09ed5500503fd96eb9113",
        "ce57a7f35344e76689d30f45964d1e37b78280cb"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Feb 28 10:10:38 2011 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 28 10:10:38 2011 -0800"
      },
      "message": "am ce57a7f3: am 6504490c: am dff6b8e7: Merge \"Add --non-constant-id to aapt.\"\n\n* commit \u0027ce57a7f35344e76689d30f45964d1e37b78280cb\u0027:\n  GpsLocationProvider: Clean up HAL initialization/cleanup sequence\n  Fixed GSM encoded network initiated position request\n  Ensuring thread-safe usage of DateFormat.\n  Fixing infinite loop for zero duration.\n  Fix for an infinite loop while scrolling lists.\n  WAPPushManager, WAP Push over SMS message handler\n  Add --non-constant-id to aapt.\n"
    },
    {
      "commit": "d06c1afbb920111d6bb77381560faa1fac5f2d69",
      "tree": "edb82445efe4b01dcf4e88f61d71ff649b84baba",
      "parents": [
        "93552de8e305027fb003401e347b9493c64c981f"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Feb 14 16:58:00 2011 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Feb 14 17:06:19 2011 -0800"
      },
      "message": "Add --non-constant-id to aapt.\n\nThis option enbables creating resource constant in the R class\nthat are not actual constant, but simply static fields.\n\nThe goal is to build library projects with these types of\nIDs so that the constant does not get inlined in the library\ncode, since the ID for the library resources only are not\nthe final values.\n\nThe final resource IDs, generated from the main project and\nits library(ies), will have proper constant with the final\nvalues.\n\nThis allows us to generate binary library bundle (a jar file\nand associated resources) that can be distributed. Additionally,\nthis will let us make the library project support in Eclipse\nmuch more robust and a better user experience overall.\n\nChange-Id: Ibe2f08d68493fde658fc3f7606abf7446f312ad2\n"
    },
    {
      "commit": "f31161a0e71c0446283610e9bf7a11e0be12bd5e",
      "tree": "f7c479d8e0a0596d9af96283258432f71e043af1",
      "parents": [
        "70588bf864f961974c93aace7586d3e2773a54a8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 04 21:02:48 2011 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jan 05 14:12:55 2011 -0800"
      },
      "message": "Add new \"animator\" and \"interpolator\" resource directories.\n\nFirst phase, allowing apps to move over to the new names.\n\nChange-Id: Ia16f3e2383e4a6599a0011d0464f0aacb1ce9207\n"
    },
    {
      "commit": "ddb76c4644756b31be948d70aaa8ee541dd94999",
      "tree": "782d260d2da982941148be7c1a0a0780749cdfdc",
      "parents": [
        "8028a951c3aa74990907efb9376d1093d84084af"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Nov 24 12:56:06 2010 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Dec 08 11:21:30 2010 -0800"
      },
      "message": "Change assets to use 64-bit API\n\nThe asset system and supporting libraries were using off_t instead of\noff64_t to access files larger than 2GB (32-bit signed). This change\nreplaces all off_t with off64_t and lseek64.\n\nThere is a new utils/Compat.h added for Mac OS compatibility.\n\nAlso fixed some size-related compiler warnings.\n\nBug: 3205336\nChange-Id: I9097b3cb7a602e811fe52f245939d8975da55e9e\n"
    },
    {
      "commit": "7c71023b7f5aafac09bd2f0425fccb5fe2d22b27",
      "tree": "a3c86b0da5f22866d64c8d5ff61b6e0689a8453c",
      "parents": [
        "83d97c8c7ddff9374f876bef48758414a7775cb1"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Nov 22 22:28:37 2010 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Nov 22 22:28:44 2010 -0800"
      },
      "message": "Add knowledge of mipmap to aapt\n\nNew mipmap drawable type that does not get filtered according to\nconfiguration. Useful for things that get built as part of the system.\n\nChange-Id: I556033d065e504079271dce79c23c90d3c387ce4\n"
    },
    {
      "commit": "f14fafdb7d107b1303e6c93e54b20d457195dca2",
      "tree": "a112f3032693ee0c9638c777d341bb82a23e7280",
      "parents": [
        "5d77928f328feefe0ba15fd12c5b0b9a54b89519",
        "fa8887848e2877dd96e853dfcd52086f1b66c26b"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Sep 10 15:01:56 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 10 15:01:56 2010 -0700"
      },
      "message": "am fa888784: am 89fef418: Merge \"Avoid pre-processing images when they won\\\u0027t be used\"\n\nMerge commit \u0027fa8887848e2877dd96e853dfcd52086f1b66c26b\u0027\n\n* commit \u0027fa8887848e2877dd96e853dfcd52086f1b66c26b\u0027:\n  Avoid pre-processing images when they won\u0027t be used\n"
    },
    {
      "commit": "fa8887848e2877dd96e853dfcd52086f1b66c26b",
      "tree": "923ad4607189c83780383ae6a69c06d3cfb7380c",
      "parents": [
        "e3dabc4bc4ad977d8b126e644e4328e70bd58b72",
        "89fef4183a3c58aebbbf66e894bbdc1ae9f634e9"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Sep 10 13:03:43 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Sep 10 13:03:43 2010 -0700"
      },
      "message": "am 89fef418: Merge \"Avoid pre-processing images when they won\\\u0027t be used\"\n\nMerge commit \u002789fef4183a3c58aebbbf66e894bbdc1ae9f634e9\u0027 into gingerbread-plus-aosp\n\n* commit \u002789fef4183a3c58aebbbf66e894bbdc1ae9f634e9\u0027:\n  Avoid pre-processing images when they won\u0027t be used\n"
    },
    {
      "commit": "578a57fc6bba6d19e31e91961ef5a9e86b890e4b",
      "tree": "f56287c185424d57a6e94c667518e5edf785ac1b",
      "parents": [
        "bd6abed3c8c7c0215fd937d27f1eda1ee88d11a1"
      ],
      "author": {
        "name": "Anthony Newnam",
        "email": "anthony.newnam@garmin.com",
        "time": "Wed Sep 01 12:06:04 2010 -0500"
      },
      "committer": {
        "name": "Garmin Android technology group",
        "email": "android@garmin.com",
        "time": "Fri Sep 03 15:17:09 2010 -0500"
      },
      "message": "Avoid pre-processing images when they won\u0027t be used\n\nChange-Id: Iffa31228ca95a2e29ccc0aa81bda0fc66922d577\n"
    },
    {
      "commit": "8e9bfab2a3ce35b31350b8de18d024f4da6e3886",
      "tree": "86f46a6d4acb9628de2b1a91806fccf8be9dd26a",
      "parents": [
        "12dbee827353ecdb690d27c3f52e26afc71e0774"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Aug 31 10:45:31 2010 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Aug 31 15:46:59 2010 -0700"
      },
      "message": "Add a --debug-mode option to aapt.\n\nWhen passed (with no needed parameters) to the aapt command line,\naapt will insert debuggable\u003dtrue in the application node of the manifest\nautomatically.\n\nThis is to be used by the SDK tools to make true \"debug\" builds\nthat require no code/file change.\n\nChange-Id: I909759caef499a91d10cc9a0902c6448c87e75ef\n"
    },
    {
      "commit": "d092f380021ca0520cc27b0272cd1a44d801d167",
      "tree": "3a27e164e233afcbd483830925b0f08c9ee5fa4f",
      "parents": [
        "f06a44995142696e5867c50c39be64c03157f5d3",
        "b4649ec720fa959b700a7a03c089bfdc61321d16"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Aug 31 14:35:28 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 31 14:35:28 2010 -0700"
      },
      "message": "am b4649ec7: am 23827557: Merge \"Add a --debug-mode option to aapt.\" into gingerbread\n\nMerge commit \u0027b4649ec720fa959b700a7a03c089bfdc61321d16\u0027\n\n* commit \u0027b4649ec720fa959b700a7a03c089bfdc61321d16\u0027:\n  Add a --debug-mode option to aapt.\n"
    },
    {
      "commit": "6487b099231b1e5d36ae37a921399b028b3b3ad9",
      "tree": "25018182d96a759798431af7230de27202fb5543",
      "parents": [
        "7ec7b9970cc3a6311bf043e228991adf24c43523"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Aug 31 10:45:31 2010 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Aug 31 11:07:56 2010 -0700"
      },
      "message": "Add a --debug-mode option to aapt.\n\nWhen passed (with no needed parameters) to the aapt command line,\naapt will insert debuggable\u003dtrue in the application node of the manifest\nautomatically.\n\nThis is to be used by the SDK tools to make true \"debug\" builds\nthat require no code/file change.\n\nChange-Id: I6f0a7af7b7d51f26bb0ec012e6f142a6060b8618\n"
    },
    {
      "commit": "8a44bb23c1f12ba58d0cb5732e3e216d48e7ccdb",
      "tree": "e3151310770488e74fe4ea201428a90ee8678787",
      "parents": [
        "ed23e3b87906d367304dbf5bd49ed17448d5d684"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 19 12:56:10 2010 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Aug 20 12:56:42 2010 -0700"
      },
      "message": "Update aapt to find fragment references.\n\nAdd knowledge about \u003cfragment class\u003d\"...\"\u003e for layout files\nand update to reflect the change of the header tag from Header.\n\nChange-Id: I91e2a5f204a8e222367985383c1721030c7954d8\n"
    },
    {
      "commit": "af4798d9c3e32229131fe7d74a61bc81ce4172fd",
      "tree": "fdf7fecb53ffce626040e43b39b23848fb769df7",
      "parents": [
        "a774f5817b5a24f5ccbb15c97fc4d5038310245b",
        "8cfd3c01e4582a587765588c02234527e7808ca0"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Mon Aug 16 15:16:52 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Aug 16 15:16:52 2010 -0700"
      },
      "message": "am 8cfd3c01: am e05184f2: Merge \"Output proguard keep flags for fragment classes.\" into gingerbread\n\nMerge commit \u00278cfd3c01e4582a587765588c02234527e7808ca0\u0027\n\n* commit \u00278cfd3c01e4582a587765588c02234527e7808ca0\u0027:\n  Output proguard keep flags for fragment classes.\n"
    },
    {
      "commit": "561a91824fbfcdae9031fb2cdbb745578a969981",
      "tree": "58ca329e4e7f834396c325019d6254dc70ee7d40",
      "parents": [
        "ae3a1f45951aeb716e1f6b9a99a09838eb55dab4"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Fri Aug 13 13:56:07 2010 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Fri Aug 13 14:06:58 2010 -0700"
      },
      "message": "Output proguard keep flags for fragment classes.\n\nChange-Id: I28c10fbf18b91f8ba3dfc2575cd41215f65f11ec\nBug: 2916847\n"
    },
    {
      "commit": "f1ff21ac62a51f5ba8ca0821ea8a90f70957e25d",
      "tree": "93b20482d80f3008a887e0c89eaa9a7cd3ad61ca",
      "parents": [
        "b5c49c8bb1e830ba934c7fbceec9409b89ead4a9"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Mon Jun 14 17:34:04 2010 +0100"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Fri Jun 25 11:02:15 2010 +0100"
      },
      "message": "Fixes a few minor problems with AAPT\n\n- Fixes casting problems with stricter compilers\n- Adds a couple of missing ifdef guards\n\nThis is a first step toward being able to generate APKs on the fly on the device.\n\nBug: 2766918\nChange-Id: Icaaee5a4032afa313256add321b447443861dd85\n"
    },
    {
      "commit": "c9f3088036dd7cce6903e307afea3e289a334036",
      "tree": "e443791605a84703e7530e51f5b1ab97809da6b3",
      "parents": [
        "f60ce402dd1ff5fe402c606c41dafe1294b1f0ff"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Mar 24 11:55:16 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Mar 24 12:05:24 2010 -0700"
      },
      "message": "Use correct API version for UTF-8 checking\n\nUse the constant for checking the API version in aapt instead of a bare\nnumber.\n\nBug: 2541326\nChange-Id: Ice7af7b393363a00f1832dd84753b8138d057fb4\n"
    },
    {
      "commit": "ed9830999aede5e827b31446f91ad90a37b8bba9",
      "tree": "49c40ace21ad5bd9021a243c8bd8abfdbb785f17",
      "parents": [
        "a0d6b59d875edb54b1c820fd4573552989c3869b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Mar 18 14:14:49 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Mar 18 14:14:52 2010 -0700"
      },
      "message": "Make aapt warning concise\n\nThe previous warning made it seem like it could be using the value\nspecified on the command line, but, in fact, it would ignore the command\nline value if it were already specified in the AndroidManifest.xml\n\nChange-Id: I15e8161e094f17412680d25d3b7b810474eb4a31\n"
    },
    {
      "commit": "1741cd4904414b5b4e768953a8f1abb3f0ef0a0a",
      "tree": "e58d120464d0e466c672a71818cdcb3aa2019bfb",
      "parents": [
        "2fbc10f3559b85f6550dd34b8779e9ee94e4c73c"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Mar 18 12:12:11 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Mar 18 12:12:11 2010 -0700"
      },
      "message": "Fix minSdkVersion scanning to not throw warnings\n\nFor the UTF8/UTF16 switch code, we needed to know what was the\nminSdkVersion specified as early as possible. Unfortunately, this threw\nwarnings when the SDK was compiling since we always set this field in\nthe Bundle.\n\nThis splits out the field used by the initial AndroidManifest.xml scan\nto a separate one that we won\u0027t attempt to re-insert into the\nAndroidManifest.xml  This also switches the logic to better reflect the\npreference of UTF-8 over UTF-16; previously UTF-16 was the default.\n\nChange-Id: Ia81f6b21047043ebb711eb24c2c3718534979ef6\n"
    },
    {
      "commit": "cf244ada58539ce857ec041d7288d0271204fbb6",
      "tree": "ec16084d19a3b0c0e43e11dd276fbe7c6a6813c5",
      "parents": [
        "ae58f6d7473c67d76b6c6373794fd1a77543ddb4"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 09 15:00:30 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 09 17:18:05 2010 -0800"
      },
      "message": "Add ability for some manifest attributes to reference resources.\n\nThis loosens our restriction on many manifest attributes requiring\nliteral string values, to allow various ones to use values from\nresources.  This is only allowed if the resource value does not change\nfrom configuration changes, and the restriction is still in place\nfor attributes that are core to security (requesting permissions) or\nmarket operation (used libraries and features etc).\n\nChange-Id: I4da02f6a5196cb6a7dbcff9ac25403904c42c2c8\n"
    },
    {
      "commit": "83f4c0994fd34f9b35eeb2c14908d9e6c2e15930",
      "tree": "e5932102ec13dae4cdec89244315d7968e70ed33",
      "parents": [
        "687c1330641b614e44c11842b37477666ae63c23"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Mar 04 15:21:59 2010 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Mar 05 11:11:28 2010 -0800"
      },
      "message": "Fix potential aapt crash when processing overlay.\n\nIf an overlay has a type of resources that\u0027s not defined in\nthe main res pool, then aapt would crash.\n\nThis dynamically create new ResourceTypeSet when needed\nwhen processing the overlays\n\nChange-Id: I67bc3622281bde73cf42f37a0983798d3f658ce2\n"
    },
    {
      "commit": "b0381efaf71e917214cec78ed1c35eb688454e93",
      "tree": "8c9a91dc69a5674319312237eb5374bf8a92eff4",
      "parents": [
        "f6bd0ba6308673a8b6bb9f71dd40a09d11c0d90d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Mar 03 13:36:35 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Mar 03 13:36:35 2010 -0800"
      },
      "message": "Fix issue #2485441: SettingsBackupAgent crashed system server\n\nNeed to take care of fixing up backupAdjust as well as reporting it\nto ProGuard.\n"
    },
    {
      "commit": "abd03658bc4cd925bf89d60f49d0c56351cf08da",
      "tree": "305811d570f2e7fea2e68028dffe8a1fb13ffb02",
      "parents": [
        "d2b41b6e7d23c4d2cb2b0fb58f2bbef94c95b5d1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 02 14:56:51 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 02 14:56:51 2010 -0800"
      },
      "message": "Fix issue #2482423: Settings is broken due to dead-code stripping\n\nTake care of more custom classes in layouts, and also scan through\npreference XMLs.\n"
    },
    {
      "commit": "ef05e076ced1a32c5c0aaee28403779834adb2ba",
      "tree": "20dcf607adf508481d57610937ceab6ef2c6aee2",
      "parents": [
        "883dbacb12a003f8f46c3faab26b744fdef649a1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Mar 01 17:43:39 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Mar 01 20:42:14 2010 -0800"
      },
      "message": "Fix issue #2448075: aapt doesn\u0027t fix up activity-alias android:targetActivity links\n\nAnd related:\n\n- The aapt tool now sets a resource configurations sdk level to match any configs\n  that have been set (for example if you specify density your sdk level will be\n  at least 4).\n- New option to modify the targetPackage attribute of instrumentation.\n- Clean up of aapt options help.\n- Fix of UI type values to leave 0 for \"unspecified\".\n- Make the UI mode config APIs public.\n"
    },
    {
      "commit": "7ff20e30c50cf1d47a7eaacd71665a1d2f4ecdc4",
      "tree": "c9af0416cb8e87c61178b63b13d385bcb62af4c5",
      "parents": [
        "74f39d4c172398c96fa3d6dbdec740bc168e60f1"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Feb 24 23:49:59 2010 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Feb 24 23:49:59 2010 -0800"
      },
      "message": "Create own reference for minSdkVersion in aapt\n\nFix bug where applications defining a minSdkVersion were experiencing\ntransient errors from memory corruption in aapt.\n\nChange-Id: I839d5eda7388baac6133e735fa59f9799ca2822d\n"
    },
    {
      "commit": "5a8ec761213d723fc3a6a92250e5e855605046a6",
      "tree": "2b9d6b08297b36efacdf8bdf21c1da8d763e9657",
      "parents": [
        "406b09bbd117446814a05aabc5971fd55c6afa5d"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Feb 24 20:00:03 2010 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Feb 24 20:03:17 2010 -0800"
      },
      "message": "Scan for android namespace in manifest\n\nandroid:minSdkVersion wasn\u0027t being correctly scanned because the\nnamespace was incorrect. This fixes that problem so packages aren\u0027t\ngenerated as UTF-8 when minSdkVersion is less than 7.\n\nChange-Id: I8f45d47ea886915da6a4770f6e111e6085d61bee\n"
    },
    {
      "commit": "27b28b3f62bd3b54fa13acd5d035940b9be464f3",
      "tree": "d1f44096f7071bbc53e5bc979117be8e0f4aa55c",
      "parents": [
        "d5663a108760de672b130ffabd4f6632982f75e5"
      ],
      "author": {
        "name": "Tobias Haamel",
        "email": "haamel@google.com",
        "time": "Tue Feb 09 23:09:17 2010 +0100"
      },
      "committer": {
        "name": "Tobias Haamel",
        "email": "haamel@google.com",
        "time": "Thu Feb 11 21:25:58 2010 +0100"
      },
      "message": "Introduce special UI modes for night and car usage.\n\nThe device mode is now called ui mode. Furthermore is the order of\nprecedence for the resources now in such a way that the ui mode needs\nto be specified after the orientation and before the density.\n\nThe ui mode can be set, like it is done for the locale, as follows:\n\nIActivityManager am \u003d ActivityManagerNative.getDefault();\nConfiguration config \u003d am.getConfiguration();\nconfig.uiMode \u003d Configuration.UI_MODE_TYPE_CAR | Configuration.UI_MODE_NIGHT_ANY;\nam.updateConfiguration(config);\n\nTo allow users to disable the car mode and set the night mode the IUiModeManager\ninterface is used.\n\nThe automatic night mode switching will be added in a separate change.\n"
    },
    {
      "commit": "2fee0ed6eb99b211efa06f095a41268a2021214a",
      "tree": "bc7ce3df25a1d7ec1f61fb85ef56899dab5eb66b",
      "parents": [
        "7188f946521d64ea21121939d2a4c279f33fe910"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Wed Jan 06 15:46:38 2010 -0600"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Mon Feb 01 18:47:01 2010 -0600"
      },
      "message": "Add the --rename-manifest-package option to aapt.\n\nIt allows you to force override the manifest\npackage listed in the AndroidManifest.xml when\ncreating an APK file.\n\nChange-Id: I7eac7943c4e56610b65728ae54773a273634fd9d"
    },
    {
      "commit": "15900779058611c1a082724486cb0a49c50ae606",
      "tree": "2200e19624d9ff30ee64f0615b836d95160dba9d",
      "parents": [
        "507354e4ba07e1d8701d747d60414b053eb517b4",
        "6efe03b19e0734361b262f9a0be4d225088d7f9e"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Jan 27 15:53:20 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 27 15:53:20 2010 -0800"
      },
      "message": "am 6efe03b1: am 6f9e2c64: Merge \"Find layout classes in all \"layout-*\" dirs.\" into eclair\n\nMerge commit \u00276efe03b19e0734361b262f9a0be4d225088d7f9e\u0027\n\n* commit \u00276efe03b19e0734361b262f9a0be4d225088d7f9e\u0027:\n  Find layout classes in all \"layout-*\" dirs.\n"
    },
    {
      "commit": "b70efcbbb1ae0672c43da86511daf49d177d8ed8",
      "tree": "271aac9e655c1c0fbf603a16e214c8dbb237ca97",
      "parents": [
        "6d001c0f7a7659d456012c220aed14a891a20a83",
        "3c05f1fbac2ce35483f61dbd5d5bfb6341da6d9c"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Fri Jan 22 09:45:31 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 22 09:45:31 2010 -0800"
      },
      "message": "am 3c05f1fb: am b5fb50a1: Merge \"Add instrumentation as a source tag for proguard keep options.\" into eclair\n\nMerge commit \u00273c05f1fbac2ce35483f61dbd5d5bfb6341da6d9c\u0027\n\n* commit \u00273c05f1fbac2ce35483f61dbd5d5bfb6341da6d9c\u0027:\n  Add instrumentation as a source tag for proguard keep options.\n"
    },
    {
      "commit": "c111296b97d51147f8c9448c7c27b53309ee6f39",
      "tree": "e49323643bb412cc1430df6881f5d2e3ee6cd3c2",
      "parents": [
        "e834722f547d13eaa453464502456892c6225e42"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Jan 20 22:12:46 2010 -0800"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Jan 20 22:12:46 2010 -0800"
      },
      "message": "Find layout classes in all \"layout-*\" dirs.\n\nBefore this CL, the generated keep flags for layout classes are incomplete,\nsuch as layout classes in res/layout-port/ and res/layout-land and so on.\n"
    },
    {
      "commit": "46f4b9827efaceb0ceae49f06130caa2d2b9743e",
      "tree": "45366f6d098210d7222fbd81355661e27591eb2f",
      "parents": [
        "a1d08886ec8549878ad16c19754a3239706fb61b"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Jan 13 14:18:11 2010 -0800"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Jan 13 16:53:07 2010 -0800"
      },
      "message": "Add instrumentation as a source tag for proguard keep options.\n"
    },
    {
      "commit": "ffebd7c2cc267ee0c33378e0c3b3b0ff260ba150",
      "tree": "aa19199bfc924052239a209e8ff694db0ed254cc",
      "parents": [
        "4a4b6e0d4646a0a4bc3cfa76cb37b4c6876dedbf",
        "b4f41119044e5ec7f7b76ed4ac02b5cfbaeb474d"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Jan 12 16:37:31 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 12 16:37:31 2010 -0800"
      },
      "message": "am b4f41119: am a1d08886: Merge \"Only output proguard keep for nonempty attribute name in the AndroidManifest.xml.\" into eclair\n\nMerge commit \u0027b4f41119044e5ec7f7b76ed4ac02b5cfbaeb474d\u0027\n\n* commit \u0027b4f41119044e5ec7f7b76ed4ac02b5cfbaeb474d\u0027:\n  Only output proguard keep for nonempty attribute name in the AndroidManifest.xml.\n"
    },
    {
      "commit": "4199528aab2cbc3ba3c6540670fabb2040c8e081",
      "tree": "903585d3dab0768ef2321d9a22346a1b32c43fd5",
      "parents": [
        "ce63c639e90daafc3382020bb2d9e2b17350f1f0"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Jan 12 16:08:23 2010 -0800"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Jan 12 16:08:23 2010 -0800"
      },
      "message": "Only output proguard keep for nonempty attribute name in the AndroidManifest.xml.\n\nBefore this change, aapt generates proguard keep flags like\n\"-keep class com.android.somepackage.\", which proguard doesn\u0027t recognize.\n"
    },
    {
      "commit": "b5ef7ee1644b099498ddd29c1d051e7ee26ccfd3",
      "tree": "5097c3ed0a1c60a75c93ccac7c43ae4c720f8e68",
      "parents": [
        "05bbeb356286bfb6ddc26ac546cce03334e346dd"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Dec 10 13:52:53 2009 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Dec 10 20:17:33 2009 -0800"
      },
      "message": "Default to UTF8 resources when packaging with aapt\n\nThis change makes it so with API level 7 and above all resources will be\npackaged in UTF-8 format. Any minSdkVersion level that is named will also\nhave resources packaged in UTF-8, because it is assumed that previous\nreleases will only be rebuilt with their proper integer number and only\nfuture releases will temporarily have names.\n\nChange-Id: If5d1ee5e48fbaf31798816b068ac44b14a93121b\n"
    },
    {
      "commit": "19138468caf7050d482dc15f35a344eab11bb756",
      "tree": "ea1f96c5bcab356355ab05d315abfa66a7f888c4",
      "parents": [
        "6be01bf207077ffbdcd3879250171a26ec805835"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Dec 04 09:38:48 2009 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Dec 07 15:14:15 2009 -0800"
      },
      "message": "Optional use of UTF-8 strings in resource bundles\n\nAllows the use of UTF-8 for packing resources instead of the\ndefault of UTF-16 for Java. When strings are extracted from the\nResStringPool, they are converted to UTF-16 and the result is\ncached for subsequent calls.\n\nWhen using aapt to package, add in the \"-8\" switch to pack the\nresources using UTF-8. This will result in the value, key, and\ntype strings as well as the compiled XML string values taking\nsignificantly less space in the final application package in\nmost scenarios.\n\nChange-Id: I129483f8b3d3b1c5869dced05cb525e494a6c83a\n"
    },
    {
      "commit": "59ad275e937bb3c32e59bc01d86f484e7b4bdbe1",
      "tree": "d24f9a40a7428257c2de8dbd4559bb375b06b0dc",
      "parents": [
        "5a4d66965d3c5061d47201fcaa62c90d126e7187"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Tue Nov 03 15:33:37 2009 -0800"
      },
      "committer": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Tue Nov 03 15:33:37 2009 -0800"
      },
      "message": "doc change: fix broken R.styleable formatting (caused by missing periods). Adjust table markup.\n\nBug: 2230588\nChange-Id: I54545dfd9d26acef567e586cfc916f6b883a4de7\n"
    },
    {
      "commit": "832528f92c8d6995318777ead009da20963bcf7a",
      "tree": "1751ed0ae2812c818ec20ea28229665efd66bdf2",
      "parents": [
        "3e59cf7ede6d6c66cbb0b1e1f345cf132972a713"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Mon Aug 31 14:48:20 2009 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Mon Aug 31 14:56:28 2009 -0700"
      },
      "message": "Fix replacement-after-add of resource files in overlay.\n\nAapt was adding/removing elements from a list an continuing to use a stale copy for future indexes.\nThis could cause incorrect subsequent processing.  Add an en resource and modify an es, for example.\nAdding the en would cause the base fileset\u0027s es version to be moved in the list.  Using the old index\nwe\u0027d then attempt to remove the old es version with the wrong index and then add the new es version\ngenerating a \"duplicate file\" error.\n\nbug: 2090015\n"
    },
    {
      "commit": "56d8eeae6f863771d759448d45f7ce75aef73b21",
      "tree": "4eaa45503f60e8a656d5fbc76f47dfcc16c83d68",
      "parents": [
        "1553c82e084ac5763fb393857224145506771b99"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Sun Aug 30 16:54:12 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Sun Aug 30 16:54:12 2009 -0700"
      },
      "message": "applications are at level 2\n"
    },
    {
      "commit": "1553c82e084ac5763fb393857224145506771b99",
      "tree": "10e4b4b4e26f59b81f531dbee5094304caa670cc",
      "parents": [
        "b0a054048329c31948c2f5dbcc11b6f99e454177"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Sun Aug 30 13:36:22 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Sun Aug 30 16:51:29 2009 -0700"
      },
      "message": "Add a flag (-G) to aapt to have it output the classes that shouldn\u0027t be obfuscated by ProGuard.\n"
    },
    {
      "commit": "4a51c20ce607c74914f90fd897f04080121ac13b",
      "tree": "067caf43aa752a8952061d7d8e03fb1aeb77c96e",
      "parents": [
        "cf3a08307d1599eaa91d7cc4e7c601e5fa13037f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Aug 21 15:14:02 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Aug 24 17:37:32 2009 -0700"
      },
      "message": "I am getting tired of the java doc warnings, so fix them.\n\nChange-Id: I2205eebae419eaf4a0992c9f5b7cd807eb843fe1\n"
    },
    {
      "commit": "3547f859d4a4e90eea52e9caf686c69a6e015b85",
      "tree": "68bc10f7e35b46565d203afe7f4233f7dfb48c89",
      "parents": [
        "6ba7ae1e4c3c04f6a71380b913ad79f83b00a628"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Fri Aug 14 13:47:30 2009 -0700"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Mon Aug 17 10:55:47 2009 -0400"
      },
      "message": "aapt now attempts to process all assets even if some are malformed.\n\nPreviously aapt would bail out on the first broken image, making it difficult to compile a comprehensive list of broken images.  Now it will pre- and post-process all of them and report any and all errors (before exiting with an error code if any errors were encountered).\n\nBug: 2055485\n"
    },
    {
      "commit": "64551b2e0e52fe89c360b1951acc528d94ebaf7a",
      "tree": "28d3c52441af6a40adac92152d254bd8e46550f2",
      "parents": [
        "c650bf583dbed8701da9a49b9dbd9023768f0df8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Aug 15 00:00:33 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Aug 15 00:00:33 2009 -0700"
      },
      "message": "Fix aapt to be able to add configs from overlays.\n\nFixes a bug where any new configurations introduced in an overlay\nwould be half-way ignored (enough to result in a broken .apk).\n"
    },
    {
      "commit": "58c27a0a03f573791935116fa35f6a7c8bf93896",
      "tree": "edece19830db9d14352390f5ea6e36cc6d8ccc17",
      "parents": [
        "364277866f6433560dc0a32047884a954605785b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 13 13:36:00 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 13 13:36:00 2009 -0700"
      },
      "message": "Allow overlays to add resources.\n"
    },
    {
      "commit": "dd931864209eac0b4182d7a0d1ca965fcc3b8c03",
      "tree": "27cd6d92392b837373bf97682d91834e7c4238d8",
      "parents": [
        "3cdff8133b96b672523c330bbc1adcab59125b9f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jul 13 13:02:33 2009 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Jul 13 14:14:01 2009 -0700"
      },
      "message": "Format aapt warnings the same way as other compiler warnings\n(\u0027warning: \u0027 instead of \u0027WARNING: \u0027 or \u0027WARNING \u0027)\n"
    },
    {
      "commit": "641fa6c602258f15b5a484975ff9dd43e8d421c9",
      "tree": "a787dbcf0bc0ac225b437073056c34098ffe1f91",
      "parents": [
        "19436561c60b5a66e7326ac4523841cd7a74351e",
        "fa5c7e1dfede7e26260789dd2de5175497e9659b"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Mon Jun 08 11:06:48 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 08 11:06:48 2009 -0700"
      },
      "message": "am fa5c7e1d: Catch when a file resource (non values) added in an overlay.\n\nMerge commit \u0027fa5c7e1dfede7e26260789dd2de5175497e9659b\u0027\n\n* commit \u0027fa5c7e1dfede7e26260789dd2de5175497e9659b\u0027:\n  Catch when a file resource (non values) added in an overlay.\n"
    },
    {
      "commit": "fa5c7e1dfede7e26260789dd2de5175497e9659b",
      "tree": "ceca995a4e4ed0429ea337c0a931f7c3febf8556",
      "parents": [
        "1e3d1b4b83452286b000b8cd1997e5aef97fe2a7"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Jun 05 18:53:26 2009 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Mon Jun 08 09:10:29 2009 -0700"
      },
      "message": "Catch when a file resource (non values) added in an overlay.\n\nFile resources are assigned resource id\u0027s and if an overlay adds one\nit renumbers things and breaks compatability.  Used to segfault\nif you tried before, but now catches it and lets you know what file\ncaused the problem.\n"
    },
    {
      "commit": "62da8461ed5317fe78ae5e3793662694e7fc99a3",
      "tree": "e82ca35be1ad67465407f6992e5e0f47fef73c39",
      "parents": [
        "53071d6d159f6dfd6fe0328a39bcf967ef308a64"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed May 13 15:06:13 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 15 18:23:56 2009 -0700"
      },
      "message": "Implement compatibility support for WRITE_SDCARD permission.\n\nNow old applications will automatically be granted it.  Also renamed it from\nSDCARD_WRITE to WRITE_SDCARD to be consistent with our other permissions,\nand re-arranged how we do targetSdkVersion to actually be usuable for this\nkind of stuff.\n\nNote that right now this results in basically all apps being given the\nWRITE_SDCARD permission, because their targetSdkVersion is not set.  I will\nbe dealing with that in a future change.\n"
    },
    {
      "commit": "a96cbb435d7b2197ab2b61fd98d14cbd6e0c5c3d",
      "tree": "75e0804e6628f9bb818c5f6f918315640c721d4b",
      "parents": [
        "ba2a3a1b32e242eea4e97c927d886e8987fde3d4"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed May 13 15:06:13 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 15 18:02:47 2009 -0700"
      },
      "message": "Implement compatibility support for WRITE_SDCARD permission.\n\nNow old applications will automatically be granted it.  Also renamed it from\nSDCARD_WRITE to WRITE_SDCARD to be consistent with our other permissions,\nand re-arranged how we do targetSdkVersion to actually be usuable for this\nkind of stuff.\n\nNote that right now this results in basically all apps being given the\nWRITE_SDCARD permission, because their targetSdkVersion is not set.  I will\nbe dealing with that in a future change.\n"
    },
    {
      "commit": "6a1fadea851db236331b3dfe1f3c1e482556057f",
      "tree": "ec5174266cd02bb0010ca51d687a20ba7d3a3b38",
      "parents": [
        "e38e90bf222515538281cc73c5e4a9f3c269c875"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "",
        "time": "Mon Apr 20 16:16:01 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Apr 20 16:16:01 2009 -0700"
      },
      "message": "AI 147028: Fix up aapt so it runs cleanly under the valgrind leak checker.\n\nAutomated import of CL 147028\n"
    },
    {
      "commit": "9066cfe9886ac131c34d59ed0e2d287b0e3c0087",
      "tree": "d88beb88001f2482911e3d28e43833b50e4b4e97",
      "parents": [
        "d83a98f4ce9cfa908f5c54bbd70f03eec07e7553"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:31:44 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:31:44 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "d83a98f4ce9cfa908f5c54bbd70f03eec07e7553",
      "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904",
      "parents": [
        "076357b8567458d4b6dfdcf839ef751634cd2bfb"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:45 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:45 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "9266c558bf1d21ff647525ff99f7dadbca417309",
      "tree": "1630b1ba80f4793caf39d865528e662bdb1037fe",
      "parents": [
        "b798689749c64baba81f02e10cf2157c747d6b46"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jan 15 16:12:10 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jan 15 16:12:10 2009 -0800"
      },
      "message": "auto import from //branches/cupcake/...@126645\n"
    },
    {
      "commit": "f013e1afd1e68af5e3b868c26a653bbfb39538f8",
      "tree": "7ad6c8fd9c7b55f4b4017171dec1cb760bbd26bf",
      "parents": [
        "e70cfafe580c6f2994c4827cd8a534aabf3eb05c"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Dec 17 18:05:43 2008 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Dec 17 18:05:43 2008 -0800"
      },
      "message": "Code drop from //branches/cupcake/...@124589\n"
    },
    {
      "commit": "54b6cfa9a9e5b861a9930af873580d6dc20f773c",
      "tree": "35051494d2af230dce54d6b31c6af8fc24091316",
      "parents": [],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "message": "Initial Contribution\n"
    }
  ]
}
