)]}'
{
  "log": [
    {
      "commit": "b28ff487fb6db4a44e4d18aa17d8253f00a63bb6",
      "tree": "3e86f055fb0dd069bc41ba7c1270780fa34e9aaf",
      "parents": [
        "56dd295b69a78017baf44491cb27fcaaf8101f1c",
        "5e6cf24213c5eacc9d3e3c8da5826be4a23f22af"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Nov 12 13:24:42 2014 -0800"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Nov 12 13:24:42 2014 -0800"
      },
      "message": "resolved conflicts for merge of 5e6cf242 to lmp-mr1-dev-plus-aosp\n\nChange-Id: If21bd328a5c8ea3474abfe624e910d4830c72dc9\n"
    },
    {
      "commit": "ff1d8a6635fb6441615778a47e2881129574a5b1",
      "tree": "d2f490ec6a546461eda288e4383a50796d68059c",
      "parents": [
        "34acb4c8d4abe1c4f580b85ddc84b18b7e38e417"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Nov 11 19:31:26 2014 -0800"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Nov 12 11:22:20 2014 -0800"
      },
      "message": "Move frameworks/base over to libc++.\n\nBug: 15193147\nChange-Id: I96109d2d383f0c8a4aaa611f29fcf887afb3c69e\n"
    },
    {
      "commit": "0cc963c66334acbcaef7f50c2415080b56c60c78",
      "tree": "498e4d22ce6f8f373fd86c63c2ccd089998930ec",
      "parents": [
        "3fd340028fc24198edb23ddf5eb5a0a100bab745"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Nov 03 18:37:49 2014 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Nov 03 18:37:49 2014 -0800"
      },
      "message": "Fix build due to bad merge\n\n- tools/aapt/qsort_r_compat.c was removed\n  and the merge added it back to the src list in Android.mk\n\nChange-Id: I15aae8adc68f82ac2381020ac0b96a7b1ab59f9c\n"
    },
    {
      "commit": "3fd340028fc24198edb23ddf5eb5a0a100bab745",
      "tree": "489ffeed9998280d7402b74ed78bcc61d6cd8872",
      "parents": [
        "7fd12db350a341eb7a50759aa329be5281556928",
        "78be0498af2b7d5b6855701ef316f488e2de6f14"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Nov 03 18:03:53 2014 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Nov 03 18:06:22 2014 -0800"
      },
      "message": "Merge commit \u002778be0498\u0027 into manualmerge\n\nConflicts:\n\tlibs/androidfw/ResourceTypes.cpp\n\ttools/aapt/Android.mk\n\ttools/aapt/StringPool.cpp\n\ttools/aapt/StringPool.h\n\nChange-Id: I9d69efdfb892032895ace12159d193304f02dc6c\n"
    },
    {
      "commit": "4bf58108d442b37ab4adf5ce3a4ecd63472ce254",
      "tree": "2b6359ad85861bf339e6a45813c599ab683fc7c3",
      "parents": [
        "e8d9810cdef5b3e288f54f42adc3205532343406"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Nov 03 11:21:19 2014 -0800"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Nov 03 11:49:47 2014 -0800"
      },
      "message": "Fix issues that will be present in C++11\n\n- char16_t is a distinct type, so stay consistent\n  with it throughout the code base.\n- char16_t is defined as minimum size of 16 bits.\n  Since we mmap and cast data structures onto raw memory,\n  we need a precise definition (uint16_t), so we cast between\n  that (and static_assert that they are the same size).\n\nChange-Id: I869c32637543bbcfb39d2643e7d9df10d33acd3c\n"
    },
    {
      "commit": "8daabceb2efddebe2e7c0b2425ad9f8ef62c0a5c",
      "tree": "230e918cee633aa61318edf50e902c44e4a84fde",
      "parents": [
        "9f905f37b229294753ef08ee104a00f611de450f",
        "1dcc75b2dbaef7c3bb3410187bf38cabca0d1aea"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Oct 01 23:34:43 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Oct 01 23:35:41 2014 -0700"
      },
      "message": "resolved conflicts for merge of 1dcc75b2 to lmp-dev-plus-aosp\n\nChange-Id: I8e1c6ee2025b6acd90803545fb95ab1b98560d92\n"
    },
    {
      "commit": "87332a7109610d02ac7f5db6af99d3a11813d5c1",
      "tree": "19696ad7c6d520eeaff870636aa953a96adcc530",
      "parents": [
        "bee6dfe09d4381f9ddf666fd04012c662f31e7fd",
        "1dcc75b2dbaef7c3bb3410187bf38cabca0d1aea"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Oct 01 22:03:58 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Oct 01 23:26:06 2014 -0700"
      },
      "message": "resolved conflicts for merge of 1dcc75b2 to lmp-mr1-dev-plus-aosp\n\nChange-Id: I8f7cbd971beae3ab134195e612d705860665142f\n"
    },
    {
      "commit": "2412f84064c26b643c722ce914a97c4ec7776c69",
      "tree": "978c6b2e82fceee9153ffe612cfbb67e4b1b8c57",
      "parents": [
        "c46dbe8ac4748a0084b026524ad9e5ac44fb9fde"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Sep 30 20:55:57 2014 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Oct 01 16:18:06 2014 -0700"
      },
      "message": "Frameworks/base: Fix AAPT warnings\n\nTurn on -Wall -Werror. Fix warnings.\n\nChange-Id: I287fb3c1e851c654479bcf9ea8c73bd354a6b2a1\n"
    },
    {
      "commit": "47c23a228deb2fa2e7158c58fc42441e8517ea38",
      "tree": "692629c9de9597279eb24c75b4aebb3ac2ad395a",
      "parents": [
        "7ed7afb51ec2c415c8de8266ea8d38b9a00cdcd0",
        "fe50cfd53309af4dd49e572bd4a3120ea1494029"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Oct 01 13:52:49 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Oct 01 13:52:49 2014 -0700"
      },
      "message": "resolved conflicts for merge of fe50cfd5 to lmp-mr1-dev-plus-aosp\n\nChange-Id: Id09c2786db18fa7e747cd1652ea95f575c3f5c46\n"
    },
    {
      "commit": "864272f3eb1700b999275887a61dd228f8a565a9",
      "tree": "a12b7684194dbd7f6495b6806ba14d4985390067",
      "parents": [
        "b3ad87e6b1599a9b8881134f3491232aec722815",
        "fe50cfd53309af4dd49e572bd4a3120ea1494029"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Oct 01 13:47:12 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Oct 01 13:47:12 2014 -0700"
      },
      "message": "resolved conflicts for merge of fe50cfd5 to lmp-dev-plus-aosp\n\nChange-Id: Iea93ad20b44f0183f1868f078dd7982b2798fcd3\n"
    },
    {
      "commit": "0de19adc80d8caeac8ab5da79e70ed4adb18b1c1",
      "tree": "ad3d0d9727f762371d91685d97f2a9643050f206",
      "parents": [
        "0451728645d559d904f579894d4b59e971e2369e"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Oct 01 11:34:17 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Oct 01 11:34:17 2014 -0700"
      },
      "message": "Use std::sort instead of qsort_r wrapper.\n\nThe HAVE_(BSD|GNU)_QSORT_R in AndroidConfig.h has never worked, and we\nshould just be using something standard anyway.\n\nChange-Id: I784d6212f6c890a11c4af2f83d1ce2d279708652\n"
    },
    {
      "commit": "8ab25d82b56c7604dc945e4385b74a75de093e56",
      "tree": "7f112dd6a95cacfc2f6322f06f346162820ed23f",
      "parents": [
        "0e3b5a7986a7304c2239d35796a60e59b8076c55",
        "1a4527ce9449d913e7a60dc3784520006d8955b7"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Sep 19 16:13:49 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Sep 19 16:13:49 2014 -0700"
      },
      "message": "resolved conflicts for merge of 1a4527ce to lmp-mr1-dev-plus-aosp\n\nChange-Id: If649bd9ef98181a1e1e341cc5b73d237586fb72c\n"
    },
    {
      "commit": "c04d92cac93fdbbdc6d104f15f6496d197753e92",
      "tree": "8d8e1b83666562d4f28998c4b1e9b2ee5ac2ec44",
      "parents": [
        "901c36e51c052c6f0556b6272bbeaaa3aa716fd8",
        "1a4527ce9449d913e7a60dc3784520006d8955b7"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Sep 19 15:57:26 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Sep 19 15:57:26 2014 -0700"
      },
      "message": "resolved conflicts for merge of 1a4527ce to lmp-dev-plus-aosp\n\nChange-Id: Iee4e93e3a2b049ec5f13166dbbffdd77b301fe5c\n"
    },
    {
      "commit": "88ba339aefd74ffe0ea978ebb659a430f82940f0",
      "tree": "d10fa776649804e7b225f832a975a9814e66bb93",
      "parents": [
        "bcaaebb8a881951720190f4a6b9ffcbf871542af"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Sep 11 16:20:16 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Sep 11 16:21:19 2014 -0700"
      },
      "message": "Clean up makefile cruft.\n\nThe build system already takes care of all these things.\n\nChange-Id: Idef80b554e07cef5e5ed2adf1b5740a76f13ef6d\n"
    },
    {
      "commit": "ad2d07d2d98a46babb2a9472413fe9ce5080ca76",
      "tree": "40be93c366de29a74421b20cf8ae10c34ac34dfd",
      "parents": [
        "032402cff1fe5dc3a6b2adae3d4c13fb771cd91f"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Aug 27 16:21:08 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Aug 27 18:28:49 2014 -0700"
      },
      "message": "Stamp platform version code into app Apks\n\nThe versionCode of theframework resources that an app is built against\ngets stamped inside an app\u0027s AndroidManifest.xml in the \u003cmanifest\u003e\ntag as \"platformBuildVersionCode\" and \"platformBuildVersionName\"\nattributes.\n\nBug:17207635\nChange-Id: Id573c3dffcbca38eec9c0eb3e89f4a547e3361d3\n"
    },
    {
      "commit": "ad751224401564dcc8338df3d5c4c5de7722be8f",
      "tree": "823f29de0c71927f2f957a57736ee77205035042",
      "parents": [
        "90aefa2030b346d8e819157d83edf97733d8592b"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Aug 18 14:06:38 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Aug 18 23:42:21 2014 +0000"
      },
      "message": "Include build number in aapt version\n\nTeams are constantly confused over which version of aapt\nthey are running. Include the build number from the\nAndroid build system in the binary. Can be retrieved by executing\n\u0027aapt version\u0027.\n\nChange-Id: I9165c7d01f977344e143c2cb4dd963310ab28b72\n"
    },
    {
      "commit": "9a9a17eb07e748542dc8eff15daef1eccfa5717d",
      "tree": "ef3c0d881936b39270de8fa423b70be478354c59",
      "parents": [
        "71809ee7f63229d0ea4f6169922ddfbfee330fd2"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Aug 18 22:39:38 2014 +0000"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Aug 18 22:39:38 2014 +0000"
      },
      "message": "Revert \"Include build number in aapt version\"\n\nThis reverts commit a7ce555ee82ed91345a54ee171dc9a415b65e134.\n\nChange-Id: I1018747766963e75bec11ddb01ba6d138f133959\n"
    },
    {
      "commit": "71809ee7f63229d0ea4f6169922ddfbfee330fd2",
      "tree": "3575043a0027073f9e639eca996e5f4987dab895",
      "parents": [
        "2aaed141fa22b235ecbd009b11c426abfa5b847c"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Aug 18 14:06:38 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Mon Aug 18 21:08:15 2014 +0000"
      },
      "message": "Include build number in aapt version\n\nTeams are constantly confused over which version of aapt\nthey are running. Include the build number from the\nAndroid build system in the binary. Can be retrieved by executing\n\u0027aapt version\u0027.\n\nChange-Id: Ie4692fb160c7cbe720a8e76b73e435170214fe0e\n"
    },
    {
      "commit": "fab50875b98e8274ac8ee44b38ba42521bbbf1f9",
      "tree": "984277e1fadd3d5156bb6b05b21a1c23252b3a1b",
      "parents": [
        "57df4fd69e96c901ac0a027aa913f3f9086fbbf6"
      ],
      "author": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Wed Apr 16 14:40:42 2014 -0700"
      },
      "committer": {
        "name": "Adam Lesinski",
        "email": "adamlesinski@google.com",
        "time": "Sun May 11 18:30:12 2014 -0700"
      },
      "message": "Add support for building split APKs\n\nBuild multiple APKs, each containing a disjoint subset\nof configurations. These can then be loaded into the device\nAssetManager and should operate as if they were never split.\n\nUse the idea of building multiple sets of files, where each\nset represents an APK. An ApkBuilder can place files\nin a set based on its configuration, but you can actually\nadd directly to a set, in the case of the resources.arsc and\ngenerated AndroidManifest.xml for splits.\n\nChange-Id: Ic65d3f0ac1bbd290185695b9971d425c85ab1de3\n"
    },
    {
      "commit": "74bebf6faed2d34814ffc3d46664330ea568f7b2",
      "tree": "4c77c094ba71d651e37abda346444295724a3a76",
      "parents": [
        "01b5e765e59c14cdfb62f1a8684e9116a46874d2"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Fri Mar 07 15:55:14 2014 -0800"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Fri Mar 07 15:56:14 2014 -0800"
      },
      "message": "Exclude the host aapt and aidl from PDK build.\n\nBug: 13028632\nChange-Id: I0f774b19be77462d0fa271088a4a5a152729d13c\n"
    },
    {
      "commit": "afd31e08299008fdc5c2813f21b2573f29dc53df",
      "tree": "7f83dd8f1e7ed71d4fe8ce280841e43ce275ac6d",
      "parents": [
        "6e2d0c1d91f644ab50e0c0b7cae4306262a4ca41"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Dec 03 13:16:03 2013 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Dec 09 16:23:16 2013 +0000"
      },
      "message": "Reimplement ZipFileRO in terms of libziparchive.\n\nThis lets us share zip archive processing code with both\nthe runtime (Art, dalvik) and critical java code\n(StrictJarFile).\n\nThis change also moves several utility methods to ZipUtils\nand dedups code across several zip inflation methods.\n\nOne of the side effects of this change is that several\nprocessing loops are now O(n) instead of O(n^2).\n\nbug: 10193060\n\nChange-Id: I3c7188496837a47246c4f342e45485a70fef3169\n"
    },
    {
      "commit": "9d3b1a424c5c61e24e9659d15fb353026a00d925",
      "tree": "0e543391e3ac7b6ac0bff377e08cd2e233ef7363",
      "parents": [
        "8f5e3d13e166e4873e130a5ef7c987333dbac917"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 01 19:07:15 2013 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Jul 01 20:11:42 2013 -0700"
      },
      "message": "Move input library code to frameworks/native.\n\nNo longer compile libandroidfw as a static library on the device\nsince it already exists as a shared library.  Keeping the static\nlibrary would force us to provide a static library version of\nlibinput for the device as well which doesn\u0027t make sense.\n\nChange-Id: I3517881b87b47dcc209d80dbd0ac6b5cf29a766f\n"
    },
    {
      "commit": "5675b97f6591310d012a013a94a0ae9bd188d975",
      "tree": "9fbffeab628e77c6689519191ed8a46ee0b9c371",
      "parents": [
        "57b867f3f568b026833c6208afdeff2168838ffd"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Wed Jun 26 17:27:35 2013 -0700"
      },
      "committer": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Wed Jun 26 17:27:35 2013 -0700"
      },
      "message": "Switch to shared libpng/libz dependency.\n\nBug: 9593270\nChange-Id: I1eec2590cca046d6e030c73d31a6b400019e1ebd\n"
    },
    {
      "commit": "3b9831f6a2f991fb492d052cc07817db402f2340",
      "tree": "4346272d6d6258b06f9430bdcace0510176a8488",
      "parents": [
        "60e510af804b5b583d835a0f1f1e676d08b812bc",
        "823abb63145c7a7db2b766cf7bb816cbdac1de66"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Wed May 08 07:35:34 2013 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 08 07:35:34 2013 +0000"
      },
      "message": "Merge \"aapt: move qsort_r_compat here as it is sole client\""
    },
    {
      "commit": "1f5762e646bed2290934280464832782766ee68e",
      "tree": "123bcdf3ba4c98f885631b02bb90803b7885e438",
      "parents": [
        "9f3e1175657425115e863fdb256b83cadedc33e9"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 06 20:20:34 2013 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue May 07 17:09:46 2013 -0700"
      },
      "message": "libutils clean-up\n\nChange-Id: I11ee943da23a66828455a9770fc3c5ceb4bbcaa9\n"
    },
    {
      "commit": "823abb63145c7a7db2b766cf7bb816cbdac1de66",
      "tree": "a1502358a0e52f92aeb41dc8293ab01c82db1fec",
      "parents": [
        "e0eb0e90630c19808429a9bcdc9ff8dff085d2e8"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Mon May 06 23:17:58 2013 -0700"
      },
      "committer": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Tue May 07 16:19:41 2013 -0700"
      },
      "message": "aapt: move qsort_r_compat here as it is sole client\n\nThis code is only used on the host for MacOS X compatibility.\nApparently, glibc and Apple\u0027s libc disagree on the parameter\nordering.\n\nChange-Id: I214edcf2870b6ac88316306ac5af43f1dadf9b2e\nSigned-off-by: Dima Zavin \u003cdima@android.com\u003e\n"
    },
    {
      "commit": "fb903a45d7b924c1dfacadaa99ebdf93fd8a1de4",
      "tree": "6db6caa0c8d1cb6ac02175c5e2721fc8e5e605dd",
      "parents": [
        "007d4d7040c9b41de584e79ba7dbd15d25f54971"
      ],
      "author": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Mon Mar 18 21:17:26 2013 +0000"
      },
      "committer": {
        "name": "Bjorn Bringert",
        "email": "bringert@android.com",
        "time": "Fri Apr 26 15:07:09 2013 +0100"
      },
      "message": "Allow compiling aapt for the device\n\nChanges:\n\n- The static device version of libandroidfw now includes\n  the extra functions needed by aapt. I could only find\n  a few host tools that use the static library, so this is\n  hopefully not a problem.\n\n- The pseudolocalization code is moved into aapt.\n  It was previously in libhost, but only used by aapt.\n\nChange-Id: Ib393ebb7dcebee8abbb628cbe5255ea1679674ac\n"
    },
    {
      "commit": "d685894212e6dbeac1fda4996903c1da115d49a6",
      "tree": "c52d05c78811e79a869afbcdbe55a906e38f2fa1",
      "parents": [
        "9fa49cc3308f6af593d780581121afc3c1d7e046"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 21:54:12 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 21:54:12 2013 -0700"
      },
      "message": "Add liblog\n\nBug: 8580410\nChange-Id: I746aa8258866508c3a725d0773faf4518096548f\n"
    },
    {
      "commit": "d8dde13a63565dcd72bcf03a5088407b737ba793",
      "tree": "671cd9a2e230b1f960e673e8c2c1bbd3b535d9cc",
      "parents": [
        "aeb6268645d571dfc9f2d387a7ad2471039ddb54"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Nov 16 15:58:08 2012 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Nov 27 18:28:49 2012 -0800"
      },
      "message": "Cache resource ID lookups in aapt\n\nThis speeds up certain workloads considerably, particularly\nthose involved in buildling apps via the SDK.  Windows-based\nuse should particularly benefit from the change.\n\nChange-Id: I29f4b3a77400b201ee219729cc28a5e359c0c5e8\n"
    },
    {
      "commit": "ee15e1547531919effd77fa546daffaef94691a4",
      "tree": "c1d9284ef63cfb465dfab4151151a06a9c8bea40",
      "parents": [
        "bb60bc26020f3aabc50aa93ad9bf812af7f48f9c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sun Sep 09 14:45:32 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sun Sep 09 14:45:32 2012 -0700"
      },
      "message": "Fix aapt to get expat header files from the approved location.\n\nChange-Id: Ic7c796e048cfe98ee355c18b3708fee5ea716e2e\n"
    },
    {
      "commit": "f22eb96301aa1c4e0f7ac317daa64a617c21855c",
      "tree": "d85eda22d166b57293c05ae2e916eb63352f5f24",
      "parents": [
        "4835c17b13c08693cf9a370df86d660818f8d391",
        "c9fe6568f3e7e4d9dc6da072afc929b9a81001ed"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Jun 05 18:48:00 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 05 18:48:00 2012 -0700"
      },
      "message": "am c9fe6568: am 9e22d9c5: Merge \"Fix \"Too many open files\" error for aapt built with Mac OS X SDK 10.6.\"\n\n* commit \u0027c9fe6568f3e7e4d9dc6da072afc929b9a81001ed\u0027:\n  Fix \"Too many open files\" error for aapt built with Mac OS X SDK 10.6.\n"
    },
    {
      "commit": "41bdb03ffb81d7bcbf6fa35d7b40e196635c86f3",
      "tree": "5eedea44e81362a897f143d2c43bbc60f669b370",
      "parents": [
        "36ac43ba9982a78b4a047c8970776505a3fab4da"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed May 30 18:02:55 2012 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Jun 05 14:30:39 2012 -0700"
      },
      "message": "Fix \"Too many open files\" error for aapt built with Mac OS X SDK 10.6.\n\nWith SDK 10.6 without _DARWIN_UNLIMITED_STREAMS aapt sometimes fails\nright away with the error \"Too many open files\" when calling fopen().\n\nChange-Id: Ifa7bd8a9530d706aa47f98be8186f1aefe943d76\n"
    },
    {
      "commit": "cbc69718cb8c637426bc1a642a13a1880d843a45",
      "tree": "7131e704d79f81e0d6eee5022fa59c33cb6cca7d",
      "parents": [
        "30167542cb23726a0d28c2eeb280f16f3101e97f"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Feb 21 14:34:47 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Feb 21 14:34:47 2012 -0800"
      },
      "message": "another attempt at fixing the linux build\n\nChange-Id: Iac20439fd6eea4682859112e72f051294bc87ef6\n"
    },
    {
      "commit": "83c64e6b624a876436d2ef5d2f173b10407e27b4",
      "tree": "c4effc3260ab399e8fdae23baf06b076cd87a604",
      "parents": [
        "94d0024557f415b8463f085c9784a3e1d02b58c6"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 20 16:58:20 2012 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Feb 20 22:38:43 2012 -0800"
      },
      "message": "frameworks/base refactoring\n\ncreate the new libandroidfw from parts of libui and libutils\n\nChange-Id: I1584995616fff5d527a2aba63921b682a6194d58\n"
    },
    {
      "commit": "64ef6b47e020da5370af8897638a0a778fa52b74",
      "tree": "740353ef25502e55bae3bca6aaa81733f2fb3df9",
      "parents": [
        "63aa6622d0eb6592a582ac28078404bfc411bcef"
      ],
      "author": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Wed Oct 19 22:35:56 2011 -0700"
      },
      "committer": {
        "name": "Iliyan Malchev",
        "email": "malchev@google.com",
        "time": "Thu Oct 20 16:21:25 2011 -0700"
      },
      "message": "add -ldl to host executables\n\nThis fixes the build on Linux when RefBase is compiled with reference tracking\nenabled.\n\nChange-Id: I3e931e0b463ce836f6fdb30c37068d77144631a3\nSigned-off-by: Iliyan Malchev \u003cmalchev@google.com\u003e\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": "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": "b7ffaf6ae29f300c2d8e9c77e58710adfa388633",
      "tree": "d348cfc808378f4f47077d7068c3c287fb030783",
      "parents": [
        "6061af11cb2b59b6261d12f98b9e8dd395ea8ba7"
      ],
      "author": {
        "name": "hmepas",
        "email": "hmepas@gmail.com",
        "time": "Wed Jan 21 07:41:00 2009 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Aug 11 09:08:51 2010 -0700"
      },
      "message": "Fix build on some linux machines\n\nThis adds -lpthread on linux for aapt and localize, which appear to be\nneeded on some linux distros.\n\nSigned-off-by: Jean-Baptiste Queru \u003cjbq@google.com\u003e\n"
    },
    {
      "commit": "74905e5b0a471f727ae5bed770c2c7441f5163a1",
      "tree": "ba1f3dd11aa3bb841a9db8d0fd845ccf9aff71e2",
      "parents": [
        "75b6a6b972e6b18143fd629d3d9c824c442c5f4c"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 10 18:34:55 2010 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 10 18:36:57 2010 -0700"
      },
      "message": "The aapt and aidl tools are prebuilt when we\u0027re doing an apps-only build, so don\u0027t try to build them.\n\nChange-Id: I9896b11a9b90cbbbe2170243c8bdbc40231dfbff\n"
    },
    {
      "commit": "29355534384ee24bfe9a3bc97d7664dbe478b4fb",
      "tree": "6a34b62d8a06cbbb4fb608a522593354d9ab9f60",
      "parents": [
        "85a8dcec5460edda72e9917d4f02ad1b6a133251"
      ],
      "author": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Tue Apr 13 15:21:32 2010 -0700"
      },
      "committer": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Fri Apr 23 15:30:42 2010 -0700"
      },
      "message": "Fix aapt to build in Windows SDK under Linux\n\n(Merge master Change Ic4a7b9e4)\n"
    },
    {
      "commit": "55e3d60da5626752ffe1d15150d35ccb8fa644e7",
      "tree": "cdc453d4fbec7bed47110ab54f4fe2d2f6fe3b41",
      "parents": [
        "5e23cbc660e33c5e176f89ecdc6a1f81352e292e"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 05 14:56:35 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 05 14:56:35 2009 -0700"
      },
      "message": "break dependency on utils/ZipEntry.h and utils/ZipFile.h, get rid of inet_address.h and Socket.h which were not used\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": "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"
    }
  ]
}
