)]}'
{
  "log": [
    {
      "commit": "cdbf5746fcbee26bed74090e22aff761d1b4da3b",
      "tree": "1510a11b6a9277616cbbd94ca16398b1c87b1a89",
      "parents": [
        "87e9b8f14e0555351b892cf67578a7d26c4505c8",
        "b5ef7ee1644b099498ddd29c1d051e7ee26ccfd3"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Dec 10 20:23:04 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 10 20:23:04 2009 -0800"
      },
      "message": "am b5ef7ee1: Default to UTF8 resources when packaging with aapt\n\nMerge commit \u0027b5ef7ee1644b099498ddd29c1d051e7ee26ccfd3\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027b5ef7ee1644b099498ddd29c1d051e7ee26ccfd3\u0027:\n  Default to UTF8 resources when packaging with aapt\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": "926d1a22007d94ef2b29ec979ab6038fa8d9e40e",
      "tree": "23b289645646e6defbf06d5cba10cdece18030b1",
      "parents": [
        "4570dfa2016fa32b6f7b29aabadb9d708482b94d",
        "a5a8cc13d3f906650a1eb17e20e1b26d68b78453"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 10 17:57:04 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 10 17:57:04 2009 -0800"
      },
      "message": "am a5a8cc13: resolved conflicts for merge of ce307f88 to eclair-mr2\n\nMerge commit \u0027a5a8cc13d3f906650a1eb17e20e1b26d68b78453\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027a5a8cc13d3f906650a1eb17e20e1b26d68b78453\u0027:\n  Add --custom-package to aapt\n"
    },
    {
      "commit": "a5a8cc13d3f906650a1eb17e20e1b26d68b78453",
      "tree": "656976c8ca4d5a7c096119a3e087770651c3009c",
      "parents": [
        "7b0463a949b57620680b95e45c66a05f67426b74",
        "ce307f889b509143899a2221359219fbc91b618c"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 10 17:53:27 2009 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Dec 10 17:53:27 2009 -0800"
      },
      "message": "resolved conflicts for merge of ce307f88 to eclair-mr2\n"
    },
    {
      "commit": "5cd6fcd518d47d1974a10fccf3c3d5431a83307a",
      "tree": "513a7efe23cc172c9f863f1a28e96d53d7fc0461",
      "parents": [
        "d44c2f2c85c8720763837b89a8988b6e5cc248bf",
        "e6c0e99334bc2f47e5d36db253ac8f166047c03b"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Dec 09 15:51:21 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Dec 09 15:51:21 2009 -0800"
      },
      "message": "am e6c0e993: Merge change I129483f8 into eclair-mr2\n\nMerge commit \u0027e6c0e99334bc2f47e5d36db253ac8f166047c03b\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027e6c0e99334bc2f47e5d36db253ac8f166047c03b\u0027:\n  Optional use of UTF-8 strings in resource bundles\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": "88721afe2f161ae23de952b790aaa8b4d3560ba8",
      "tree": "0f1cc4e39be75305bb9007c6d9b3cd09e23ede09",
      "parents": [
        "8280c2b15f6875b2d387c05df23d264864eb9cd5"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kenny@the-b.org",
        "time": "Fri Aug 21 15:23:45 2009 -0500"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Dec 04 13:40:54 2009 -0800"
      },
      "message": "Fix bitmask in aapt\u0027s StringPool length construction\n\nThe StringPool indicates the length of a string with a 16-bit\ninteger. If the length of the string is greater than 0x7FFF,\nit splits it into two 16-bit integers with the first one\nhaving the high bit set.\n\nThe length calculation has a small bug that masks off the\n19 bits instead of the first 15 bits as intended.\n"
    },
    {
      "commit": "63459ad555c10de1f316d6de01fc3cd0c0aaa457",
      "tree": "7ad778da942760c7ad82559a3fbb56cb313489a3",
      "parents": [
        "abf7fed21bfa7eb899be558477d928a7c9f3e1f6"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Nov 30 18:05:10 2009 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Nov 30 18:05:10 2009 -0800"
      },
      "message": "Add --custom-package to aapt\n\nThis is needed to add library support to the SDK.\n\nThe goal is to have libraries and main project use the same\npackage for the R/Manifest classes to that they can share code\nand resources.\n\nBUG 2293994\n\nChange-Id: Ie4cdb5a3bdabe1760a91316fd8969e4f53344bf9\n"
    },
    {
      "commit": "fe11d1a7a5480737c9331531592d4c70f374198e",
      "tree": "6535f4636f2b9e34d860668e66f71818e65ace1d",
      "parents": [
        "1ff57418a7d58887301766031554a146c1ededd1",
        "43e9eb28ab9a246472149384567f505434f492a3"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Nov 16 20:04:59 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 16 20:04:59 2009 -0800"
      },
      "message": "am 43e9eb28: am 9ddb7df8: Fix build.\n\nMerge commit \u002743e9eb28ab9a246472149384567f505434f492a3\u0027 into eclair-mr2-plus-aosp\n\n* commit \u002743e9eb28ab9a246472149384567f505434f492a3\u0027:\n  Fix build.\n"
    },
    {
      "commit": "9ddb7df88a62a131519264f75f5d6616ee11b6e6",
      "tree": "1c5d3106848a10cca9c68e164eaec788c2c7c14e",
      "parents": [
        "69e0b6646f109d17a5cff4b8c32582e3d3a3f544"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Nov 16 17:59:32 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Nov 16 17:59:32 2009 -0800"
      },
      "message": "Fix build.\n\nChange-Id: I70c86738e2894d7f8c51034aea8fda1585a6fcb3\n"
    },
    {
      "commit": "1bd7261d2b595552ac852ca8ed8a5e184bd10b44",
      "tree": "4093c105c75fb450b1f0458ba7ac85fe1e4bc187",
      "parents": [
        "daf05d3e91e817825562055cbf0b67e704defc7a",
        "1ddc0077ac0c26a9dc74875791bfea3f34a8cc7b"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Nov 16 14:40:22 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 16 14:40:22 2009 -0800"
      },
      "message": "am 1ddc0077: am 19e420c5: Merge change Iae493184 into eclair\n\nMerge commit \u00271ddc0077ac0c26a9dc74875791bfea3f34a8cc7b\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00271ddc0077ac0c26a9dc74875791bfea3f34a8cc7b\u0027:\n  Minor fix for the parent style computation in the layoutlib.\n"
    },
    {
      "commit": "0da2676ea841ff85b373c2960dd2c497dcf4e441",
      "tree": "0837d28b366841085dcaba8074ef8f79dc47ccf3",
      "parents": [
        "ae2104371d84570011dbb8c1621832a132ed4584"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Sun Nov 15 16:13:01 2009 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Sun Nov 15 16:15:33 2009 -0800"
      },
      "message": "Minor fix for the parent style computation in the layoutlib.\n\nThis is an SDK change only.\n\nChange-Id: Iae493184ae76b2e21200dd6bb48795ff74f79ab3\n"
    },
    {
      "commit": "85a612d03eded507c8981716277a1f4b5526ea22",
      "tree": "09f05885c607fcc08e17f73a48ec34a375448c58",
      "parents": [
        "c104e1b3912f1389848b0cc841866564d9314287",
        "b2d7c60f125e243d915fae037b30f54110f1b237"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Nov 13 15:51:09 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Nov 13 15:51:09 2009 -0800"
      },
      "message": "am b2d7c60f: am ae210437: Merge change I7082e366 into eclair\n\nMerge commit \u0027b2d7c60f125e243d915fae037b30f54110f1b237\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027b2d7c60f125e243d915fae037b30f54110f1b237\u0027:\n  Properly implement Paint.breakText for layoutlib.\n"
    },
    {
      "commit": "76410f1eb316763018b7480d9cd8dc3684803576",
      "tree": "a770dc9ce917cc36307e6ed9cc20961ea2d498cd",
      "parents": [
        "27d6e65b71f515deafbd93d5aa98732898c34ddf"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Nov 13 14:10:20 2009 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Nov 13 14:10:20 2009 -0800"
      },
      "message": "Properly implement Paint.breakText for layoutlib.\n\nBUG 2260400\n\nChange-Id: I7082e366b65da0b5de2a6dbb547f66e05e0b78e0\n"
    },
    {
      "commit": "eac4222f7f30bf1df14b223cf62e594914dd32d4",
      "tree": "b13fa529a4aef564c2516db8b4b5d25b4297c77f",
      "parents": [
        "5a39e5831d8ef19c6bb46d5337f4f5503deca3fd",
        "949ffa3da5231772425c3bde50caeab6c4d08ec5"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Nov 09 19:38:31 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 09 19:38:31 2009 -0800"
      },
      "message": "am 949ffa3d: am 11cff8cd: Merge change Ie211adae into eclair\n\nMerge commit \u0027949ffa3da5231772425c3bde50caeab6c4d08ec5\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027949ffa3da5231772425c3bde50caeab6c4d08ec5\u0027:\n  Add a way for wallpapers to know the delta between virtual screens.\n"
    },
    {
      "commit": "bf6956b1d95442e9d9c483894d578fe6b7044cbb",
      "tree": "dd8e921d31d3182c90eba295bea96848cb221e06",
      "parents": [
        "e6ab011b8b8aa6c461e64cabb9b25d890d68edb1"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Nov 09 15:21:13 2009 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Nov 09 17:39:33 2009 -0800"
      },
      "message": "Add a way for wallpapers to know the delta between virtual screens.\n"
    },
    {
      "commit": "3969e50a2872014e459b802e2e654b901eecc574",
      "tree": "d49fcd90e7d56e8348eb0a3a65b6450816ed103d",
      "parents": [
        "9e0da5bd2d40b33d7de8897aa5e95a06d42fd990",
        "aa10b9fb52db88e3cc9045019f42fa83e9da9868"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Nov 09 17:00:33 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Nov 09 17:00:33 2009 -0800"
      },
      "message": "am aa10b9fb: am e6ab011b: Merge change Ib12bcb7f into eclair\n\nMerge commit \u0027aa10b9fb52db88e3cc9045019f42fa83e9da9868\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027aa10b9fb52db88e3cc9045019f42fa83e9da9868\u0027:\n  Support for fallback fonts in layoutlib.\n"
    },
    {
      "commit": "9a4593ffcce99e9f7b89b165911c2a870c27cc45",
      "tree": "36b4e3b3c613fc4e2e30f980049a879b444ae4b6",
      "parents": [
        "3f857b78fc68e5d700139bdc6078c5333b62a9bc"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Sun Nov 08 15:15:01 2009 -0800"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Nov 09 14:55:08 2009 -0800"
      },
      "message": "Support for fallback fonts in layoutlib.\n\nBUG 2041229\n\nChange-Id: Ib12bcb7f6d8f0e4c2b51871f8129ecf51fa938ee\n"
    },
    {
      "commit": "5b40ead81bdd350c3f4a585d851d91e5bec0c5c6",
      "tree": "176bb74d6962d29469007561a06f2bf0c3ab35ae",
      "parents": [
        "4360624241251035534a46449e23be38d9e6b03c",
        "0d55daffc31c123dcf83f6db85f8198854ddc564"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Wed Nov 04 14:32:34 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 04 14:32:34 2009 -0800"
      },
      "message": "am 0d55daff: am 5fc71e67: am 00e44ef2: Merge change I54545dfd into eclair-sdk\n\nMerge commit \u00270d55daffc31c123dcf83f6db85f8198854ddc564\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00270d55daffc31c123dcf83f6db85f8198854ddc564\u0027:\n  doc change: fix broken R.styleable formatting (caused by missing periods). Adjust table markup.\n"
    },
    {
      "commit": "5fc71e67498ed64ad2d41c23471b008f93cb580e",
      "tree": "e2641958a91cabcb16d45145c355faefb35b42f8",
      "parents": [
        "9a54d7dddcbc982d644c627693dc39fb2cb5c0fb",
        "00e44ef21777f32b67a8d51ee375cd290a3fb2d4"
      ],
      "author": {
        "name": "Dirk Dougherty",
        "email": "ddougherty@google.com",
        "time": "Wed Nov 04 14:12:29 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Nov 04 14:12:29 2009 -0800"
      },
      "message": "am 00e44ef2: Merge change I54545dfd into eclair-sdk\n\nMerge commit \u002700e44ef21777f32b67a8d51ee375cd290a3fb2d4\u0027 into eclair\n\n* commit \u002700e44ef21777f32b67a8d51ee375cd290a3fb2d4\u0027:\n  doc change: fix broken R.styleable formatting (caused by missing periods). Adjust table markup.\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": "8e59b032c34b1b9fe42235ce59c5daaba59ee30c",
      "tree": "993343e381edf0bd7d0cacf761ca25807fb326e3",
      "parents": [
        "bce8f5f3a0b262c469fa3169175d6ca004f418ff",
        "4899daa0c8e747cd3c0ecf1c6ceeec022f6c7524"
      ],
      "author": {
        "name": "Brett Chabot",
        "email": "brettchabot@android.com",
        "time": "Tue Nov 03 11:44:48 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Nov 03 11:44:48 2009 -0800"
      },
      "message": "am 4899daa0: am c54e0ce9: Merge change Ia86f2849 into eclair\n\nMerge commit \u00274899daa0c8e747cd3c0ecf1c6ceeec022f6c7524\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00274899daa0c8e747cd3c0ecf1c6ceeec022f6c7524\u0027:\n  Fix layoutlib tests so they pas when run from Eclipse workbench.\n"
    },
    {
      "commit": "a86f28494c526ef14c736a977d746b3e5d9ab49e",
      "tree": "5f4f30f6598ce63a6b492bc9bf93b6d684a0a059",
      "parents": [
        "65e4f6188bfc8ec3c9d1c8476953cd1beb7922bc"
      ],
      "author": {
        "name": "Brett Chabot",
        "email": "brettchabot@android.com",
        "time": "Tue Nov 03 10:31:31 2009 -0800"
      },
      "committer": {
        "name": "Brett Chabot",
        "email": "brettchabot@android.com",
        "time": "Tue Nov 03 10:31:31 2009 -0800"
      },
      "message": "Fix layoutlib tests so they pas when run from Eclipse workbench.\n\nBug 2222616\n"
    },
    {
      "commit": "8368e510a90ab30a9f850144f5adabb0455d26f9",
      "tree": "e02e2d5c650abf325da354b685084b1c1df1c39b",
      "parents": [
        "3bf0210dca67e534bf8d344575abf32e653c8407",
        "c6bead14fe6fe70bcfd8802ee9f0259476a074ce"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Oct 22 20:32:09 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Oct 22 20:32:09 2009 -0700"
      },
      "message": "am c6bead14: am 7580493b: Implement feature #2117336: Create event communication APIs for live wallpaper\n\nMerge commit \u0027c6bead14fe6fe70bcfd8802ee9f0259476a074ce\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027c6bead14fe6fe70bcfd8802ee9f0259476a074ce\u0027:\n  Implement feature #2117336: Create event communication APIs for live wallpaper\n"
    },
    {
      "commit": "7580493b014a2c7ea883cd291255798dc72ebbff",
      "tree": "22bffa58ac973192ea8b06ea747e1582526c1249",
      "parents": [
        "86dc4d312216be0b4c2847a1e79d94efaf4b9559"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Oct 20 20:15:20 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Oct 22 20:10:53 2009 -0700"
      },
      "message": "Implement feature #2117336: Create event communication APIs for live wallpaper\n\nNote: currently only implements an async version (no result), and not yet\nactually tested.\n\nChange-Id: Id47ed045a4b0eb309ea8c58daf41a0e03eff1d3a\n"
    },
    {
      "commit": "37c4157d7cdad71dc9abc93d652e81c33e346d93",
      "tree": "8fbf09577c3882912db555221fc032e73b2e2e43",
      "parents": [
        "62df88bcc95a714c1d5035471dfe7fe0ddd9d50b"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Mon Oct 19 17:04:21 2009 -0700"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Mon Oct 19 17:04:21 2009 -0700"
      },
      "message": "add \"junk path\" -k option to aapt (DO NOT MERGE)\n\nAdds a \"junk path\" option to aapt so that you can do:\n\n   aapt add -k archive.zip path/to/some.file\n\nand have the file stored in the zip under the name \"some.file\"\n(without the path).  Needed so that we can use \u0027aapt add\u0027 in place of\n\u0027zip -j\u0027 when building jar files, which will lead to smaller\nincremental OTAs.\n\n(This is a cherry-pick of a change already submitted to eclair-mr2;\nthe change was approved for mr1.)\n"
    },
    {
      "commit": "b80d1d0cc8b75b9e51c94169892f1d03cdcd788a",
      "tree": "51a4c2ae6626cbe3630dd24bc5fdec5ed9f6654a",
      "parents": [
        "947c45b29586b64c358b7824881d98faa8733ba8",
        "afbf8afa858a78b66c19f11cfda030e913b34085"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Oct 13 13:47:54 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 13 13:47:54 2009 -0700"
      },
      "message": "am afbf8afa: Merge change I564b5b00 into eclair-mr2\n\nMerge commit \u0027afbf8afa858a78b66c19f11cfda030e913b34085\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027afbf8afa858a78b66c19f11cfda030e913b34085\u0027:\n  add \"junk path\" -k option to aapt\n"
    },
    {
      "commit": "dbe7a68cc13ae135b33769918932838d2d447169",
      "tree": "325051b0f903da2157f6c511a5b8f6608592851a",
      "parents": [
        "2d295a9601315a2610a2cb759ed9a4f787e7d4b5"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Fri Oct 09 11:24:51 2009 -0700"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Oct 13 13:33:31 2009 -0700"
      },
      "message": "add \"junk path\" -k option to aapt\n\nAdds a \"junk path\" option to aapt so that you can do:\n\n   aapt add -k archive.zip path/to/some.file\n\nand have the file stored in the zip under the name \"some.file\"\n(without the path).  Needed so that we can use \u0027aapt add\u0027 in place of\n\u0027zip -j\u0027 when building jar files, which will lead to smaller\nincremental OTAs.\n"
    },
    {
      "commit": "4ab1b3a292216620cbf7cb6f424e6a159f138dd1",
      "tree": "f254f4757018f207e7c61b4aab15faa16fc3c66b",
      "parents": [
        "66ce0f07fcb79b97dc52aa0a1c5fce1565f4f090",
        "88fb78d2091764e1265976bdb7027f7785f0b33b"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Oct 06 15:53:05 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 06 15:53:05 2009 -0700"
      },
      "message": "am 88fb78d2: am 5f9d4bae: layout lib tests cleanup\n\nMerge commit \u002788fb78d2091764e1265976bdb7027f7785f0b33b\u0027 into eclair-mr2-plus-aosp\n\n* commit \u002788fb78d2091764e1265976bdb7027f7785f0b33b\u0027:\n  layout lib tests cleanup\n"
    },
    {
      "commit": "66ce0f07fcb79b97dc52aa0a1c5fce1565f4f090",
      "tree": "cc0726ade98cb4a7bb4d66ba99eda723adb0b557",
      "parents": [
        "2a9b411d4ed60acbe089068c93850ecd049f57f2",
        "c7bade2a910d3fd34275440d1cc8bb9c0c9a989a"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Oct 06 15:52:59 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 06 15:52:59 2009 -0700"
      },
      "message": "am c7bade2a: am 0a9d46b7: Add a test to make sure the replaced classes in layoutlib are correct.\n\nMerge commit \u0027c7bade2a910d3fd34275440d1cc8bb9c0c9a989a\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027c7bade2a910d3fd34275440d1cc8bb9c0c9a989a\u0027:\n  Add a test to make sure the replaced classes in layoutlib are correct.\n"
    },
    {
      "commit": "5f9d4bae03b2dfa9c1e43a6e01cacaa5a5326690",
      "tree": "b9283cdd9d1b225f404d034cfacffe313d239c64",
      "parents": [
        "0a9d46b7e741ccf7272bb69a4eef3c1f2adc91b7"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Oct 06 12:04:03 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Oct 06 15:14:09 2009 -0700"
      },
      "message": "layout lib tests cleanup\n\n- Move test files to their own package for easy binary inclusion\n  in adt-test\n- fix some tests and remove obsolete ones.\n\nChange-Id: I5b967f29074fdad74073f9b37d903eabe8dc29e6\n"
    },
    {
      "commit": "0a9d46b7e741ccf7272bb69a4eef3c1f2adc91b7",
      "tree": "8eb811aae9d4ca1c34f882d56af66de97203461e",
      "parents": [
        "92b5caa4e21d48db6efeddba532d1546c6e686b1"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Oct 06 09:58:08 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Oct 06 15:13:58 2009 -0700"
      },
      "message": "Add a test to make sure the replaced classes in layoutlib are correct.\n\nChange-Id: I9641635153c12e2c0a23583f7d094767533fc683\n"
    },
    {
      "commit": "3557d5bc9eb8ac33641430ca52d8e2121d0f1a4b",
      "tree": "f88f0f2939d2915935abd599418a102c27747193",
      "parents": [
        "2c3dc14acb7308570b9d695ba9ac904a9502b043",
        "9cf2bbb08c0eb66bcfa45a03d4b21cac78be8e99"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Oct 06 10:03:17 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Oct 06 10:03:17 2009 -0700"
      },
      "message": "am 9cf2bbb0: am 841a8eea: Merge change I24895c35 into eclair\n\nMerge commit \u00279cf2bbb08c0eb66bcfa45a03d4b21cac78be8e99\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00279cf2bbb08c0eb66bcfa45a03d4b21cac78be8e99\u0027:\n  Reimplement all the method of Paint for layoutlib\n"
    },
    {
      "commit": "9f751ab3fc4fc4af9dc3ec226839bbf9a1b5305e",
      "tree": "a33373df8cf3ea3226cccf539629cf2ed97f6d94",
      "parents": [
        "8c739671d262c74c5743bf249180b1ba58bef4da"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 05 18:49:08 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 05 19:10:04 2009 -0700"
      },
      "message": "Reimplement all the method of Paint for layoutlib\n\nThere were a few missing methods that should have been reimplmented\n(because they were native).\n\nOthers have been added just to be sure so that we can test whether methods\nare missing or not (test coming soon).\n\nChange-Id: I24895c353e38545e9b1abe28d41224fdc78cadb1\n"
    },
    {
      "commit": "636d9cd63b77a87e6cb627a90cc8f37e81bedb14",
      "tree": "5c8e295be2db39a526463e3c9f2974c8d813d686",
      "parents": [
        "4bc6158d6bdeff796cfd61d489c01db0d203534c",
        "5becdc32c899f1e8031f5a694c064cb559a8fc88"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 05 16:09:29 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 05 16:09:29 2009 -0700"
      },
      "message": "am 5becdc32: am a970bf52: Merge change I34f51342 into eclair\n\nMerge commit \u00275becdc32c899f1e8031f5a694c064cb559a8fc88\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00275becdc32c899f1e8031f5a694c064cb559a8fc88\u0027:\n  Fix the layoutlib test to run from adt-tests.\n"
    },
    {
      "commit": "5903a83df1ebca83ce1e9a05f11a21701db48692",
      "tree": "287bd2cc2a0323d33e37df798f9dfb9e19c1e1b5",
      "parents": [
        "e1bf39bc764c78344dd2a6c59c5709919bdc1da9",
        "864cbf5f9396f35eafd90ad58911b5d280d8eab8"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 05 16:04:45 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Oct 05 16:04:45 2009 -0700"
      },
      "message": "am 864cbf5f: am 71060f29: Merge change I8874a405 into eclair\n\nMerge commit \u0027864cbf5f9396f35eafd90ad58911b5d280d8eab8\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027864cbf5f9396f35eafd90ad58911b5d280d8eab8\u0027:\n  Refactor class/method names used by layoutlib_create.\n"
    },
    {
      "commit": "8c739671d262c74c5743bf249180b1ba58bef4da",
      "tree": "f623fc522ce9d66316255628c399c96381d65433",
      "parents": [
        "ac7391de5f32cf051678886f0d393fe0431dc6d1"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 05 15:28:33 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 05 15:36:53 2009 -0700"
      },
      "message": "Fix the layoutlib test to run from adt-tests.\n\nChange-Id: I34f513429593dce9f781ed8a08c4664a5d6f9aa8\n"
    },
    {
      "commit": "ac7391de5f32cf051678886f0d393fe0431dc6d1",
      "tree": "679f84c70031002c28be99fd7e71d1579a8fcd89",
      "parents": [
        "f7ae77cd67f1a3993b8e56c1af4720a7adf4e69d"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 05 14:12:04 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Oct 05 14:16:09 2009 -0700"
      },
      "message": "Refactor class/method names used by layoutlib_create.\n\nInformation about classes and methods that are replaced, renamed, removed\ninto CreateInfo, so that it can be used by the tests.\n\nChange-Id: I8874a40503249416621aa90b2ca02dcaf30ecd57\n"
    },
    {
      "commit": "25c70dd9a13a0ff631e4d3911fceaea863ec2586",
      "tree": "af796e980d115f8f22a8f0ecac5b867e0d662438",
      "parents": [
        "ba0167861d71b0412503843369530575f0d9faeb",
        "279ba943553ec2368d14e1b3c8a88c36bf17785d"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Sep 28 13:55:36 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 28 13:55:36 2009 -0700"
      },
      "message": "am 279ba943: Merge change I7c7b1596 into eclair\n\nMerge commit \u0027279ba943553ec2368d14e1b3c8a88c36bf17785d\u0027 into eclair-plus-aosp\n\n* commit \u0027279ba943553ec2368d14e1b3c8a88c36bf17785d\u0027:\n  Fix a warning output.\n"
    },
    {
      "commit": "f18ccc13a663fe385ecdfbdfd55ef503d48833f5",
      "tree": "32a2eb1f0fbd1420eea722e150c8fd1cfda9bbfe",
      "parents": [
        "41c64ba73cf4dbc14beeaaa618afdd908da8b0cb"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Sep 28 12:57:42 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Sep 28 12:59:33 2009 -0700"
      },
      "message": "Fix a warning output.\n\nThis was introduced by the dpi work.\n\nChange-Id: I7c7b1596085f70532b8279139c287a2a58f57046\n"
    },
    {
      "commit": "041653714524b37972169071e7569d2432ae8747",
      "tree": "f4eed1d13f387220d21b99df895da8ac33663630",
      "parents": [
        "d3d0f03b5a7974ca484b63a57e48ccb987dcc54d",
        "20b394719daa218be7ff767fad024504f12e937b"
      ],
      "author": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Thu Sep 24 15:45:17 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 24 15:45:17 2009 -0700"
      },
      "message": "am 20b39471: Merge change 26933 into eclair\n\nMerge commit \u002720b394719daa218be7ff767fad024504f12e937b\u0027 into eclair-plus-aosp\n\n* commit \u002720b394719daa218be7ff767fad024504f12e937b\u0027:\n  AAPT: Ignore visual source safe files in resources\n"
    },
    {
      "commit": "3cdfc042dca4264bdd2e51320f7edb81fd8f9ee0",
      "tree": "7607902e234f71672c065407d407c7e871d53626",
      "parents": [
        "b87f24a6a88a994256ca97b69904af28824bc9ce"
      ],
      "author": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Thu Sep 24 15:30:53 2009 -0700"
      },
      "committer": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Thu Sep 24 15:30:53 2009 -0700"
      },
      "message": "AAPT: Ignore visual source safe files in resources\n\nBUG 1895888\n"
    },
    {
      "commit": "ad8d9dfb2458e5195df71afdcf07725a13ebe1c7",
      "tree": "266bb37961f73a65b8ac1cf83869bdb7d5243c9c",
      "parents": [
        "f77902c224eaae350169e19011d9badd417792f9",
        "ffa424800d0338b8b894aef2ea1e3e3344cbda7a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 23 23:28:06 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 23 23:28:06 2009 -0700"
      },
      "message": "am ffa42480: Fix issue #2133206: dialogs/menus should auto-dismiss when screen turns off\n\nMerge commit \u0027ffa424800d0338b8b894aef2ea1e3e3344cbda7a\u0027 into eclair-plus-aosp\n\n* commit \u0027ffa424800d0338b8b894aef2ea1e3e3344cbda7a\u0027:\n  Fix issue #2133206: dialogs/menus should auto-dismiss when screen turns off\n"
    },
    {
      "commit": "ffa424800d0338b8b894aef2ea1e3e3344cbda7a",
      "tree": "93a2e14b145042fe8fdd9fccef26303c55341272",
      "parents": [
        "f11cc96ee837f8b0d530f3a5dd78ffc358727411"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 23 22:20:11 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 23 23:17:07 2009 -0700"
      },
      "message": "Fix issue #2133206: dialogs/menus should auto-dismiss when screen turns off\n\nLot of infrastructure for more things to go away when \"clear system dialogs\"\nhappens, and now do this when we turn on the lock screen.\n\nChange-Id: I567130296fe47ce82df065ed58ef21b37416ceaf\n"
    },
    {
      "commit": "d6fdec7bd12317ddea3e0c20f304c544a88440be",
      "tree": "e0475d3789752492739ba3856e8e262a6ed51864",
      "parents": [
        "eb6d4bf93c63f79e4346b5df81ca5ab914948207",
        "3b805d570716749966b909be16513f882522c58e"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Sep 23 19:24:00 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 23 19:24:00 2009 -0700"
      },
      "message": "am 3b805d57: Merge change 26616 into eclair\n\nMerge commit \u00273b805d570716749966b909be16513f882522c58e\u0027 into eclair-plus-aosp\n\n* commit \u00273b805d570716749966b909be16513f882522c58e\u0027:\n  Add density support to layoutlib so that bitmap are scaled if needed.\n"
    },
    {
      "commit": "56a92e3ba0d7da310b4c6e09f54dee10f1f395bb",
      "tree": "bba9ee0477759921a28f95fc4bc29191c1bc5335",
      "parents": [
        "311ed0191d6423e41b1cf5137a38e53504494818"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Sep 23 10:39:50 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Sep 23 16:38:57 2009 -0700"
      },
      "message": "Add density support to layoutlib so that bitmap are scaled if needed.\n\nChange-Id: I00204bb136ccaa44deeafbe0ea8746fea9903341\n"
    },
    {
      "commit": "5ddbc0d59d8143d50a19950624c38fdb8102156b",
      "tree": "1a657341c79cf250e85a40e9d029533324ecc0be",
      "parents": [
        "addb0c52ba9a0aac019a21b9d49b4a51d53c2014",
        "de0dfb7b65a02d4dd74c271b558adee0973fc267"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 23 14:36:42 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 23 14:36:42 2009 -0700"
      },
      "message": "am de0dfb7b: Fix issue #2125720 Weather Forecast Widget - graphics do not scale\n\nMerge commit \u0027de0dfb7b65a02d4dd74c271b558adee0973fc267\u0027 into eclair-plus-aosp\n\n* commit \u0027de0dfb7b65a02d4dd74c271b558adee0973fc267\u0027:\n  Fix issue #2125720 Weather Forecast Widget - graphics do not scale\n"
    },
    {
      "commit": "de0dfb7b65a02d4dd74c271b558adee0973fc267",
      "tree": "c2e701a78f831978378ff3a9c219209aae3e4fc2",
      "parents": [
        "5dd7c726f45fd7b7ab473471dc504c00012a6856"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 23 14:09:34 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Sep 23 14:26:02 2009 -0700"
      },
      "message": "Fix issue #2125720 Weather Forecast Widget - graphics do not scale\n\nI forgot to add the new density field to the Bitmaps\u0027 parcelable data.\n\nChange-Id: I77cf3e93e356297e0caed6fc71b62b5cd8f79124\n"
    },
    {
      "commit": "a37b3616932e03122b536ff2b9f038c3ae65da4e",
      "tree": "5896f7776611fda554b3e15de2a59f6fc0cc5ba5",
      "parents": [
        "2fd4943847d0209bef39171c1278ad6c86072dcc",
        "3136d4b0108deaca5ab525881de47d2979911131"
      ],
      "author": {
        "name": "Bob Lee",
        "email": "crazybob@crazybob.org",
        "time": "Wed Sep 23 11:34:36 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 23 11:34:36 2009 -0700"
      },
      "message": "am 3136d4b0: Merge change 26635 into eclair\n\nMerge commit \u00273136d4b0108deaca5ab525881de47d2979911131\u0027 into eclair-plus-aosp\n\n* commit \u00273136d4b0108deaca5ab525881de47d2979911131\u0027:\n  Added tool to generate application-specific reports from class load profiling data. Generated new profiling data. Deleted old data. Generated new preloaded-classes file.\n"
    },
    {
      "commit": "3136d4b0108deaca5ab525881de47d2979911131",
      "tree": "b67a065e416e1db2cbfcdb61f035a8fbcaa99b78",
      "parents": [
        "6d181166a2e5c819e274397f90e33d340061750f",
        "fcc3ccb9769dd39ac93dbad56ee590e2f7d041c3"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 23 14:28:16 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 23 14:28:16 2009 -0400"
      },
      "message": "Merge change 26635 into eclair\n\n* changes:\n  Added tool to generate application-specific reports from class load profiling data. Generated new profiling data. Deleted old data. Generated new preloaded-classes file.\n"
    },
    {
      "commit": "fcc3ccb9769dd39ac93dbad56ee590e2f7d041c3",
      "tree": "043fcb85ad730552ff7ac4e48de42d3a9abbf7dd",
      "parents": [
        "b06c9a8c8e59067edd3c6b5af574ff382a4ef656"
      ],
      "author": {
        "name": "Bob Lee",
        "email": "crazybob@crazybob.org",
        "time": "Wed Sep 23 11:21:22 2009 -0700"
      },
      "committer": {
        "name": "Bob Lee",
        "email": "crazybob@crazybob.org",
        "time": "Wed Sep 23 11:21:22 2009 -0700"
      },
      "message": "Added tool to generate application-specific reports from class load profiling data. Generated new profiling data. Deleted old data. Generated new preloaded-classes file.\n"
    },
    {
      "commit": "b47d07c29d70f487ea21e91313947d18367796c2",
      "tree": "1f3dd06c1703ebf9c27d97a7426371bd4273936d",
      "parents": [
        "c3bfa6048da74dd54f9147f6600ad0537cbe7bd6",
        "0acf9a5b2f81413641d3d139ae6fd5f9df621e5f"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Sep 23 10:40:15 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 23 10:40:15 2009 -0700"
      },
      "message": "am 0acf9a5b: Merge change 26539 into eclair\n\nMerge commit \u00270acf9a5b2f81413641d3d139ae6fd5f9df621e5f\u0027 into eclair-plus-aosp\n\n* commit \u00270acf9a5b2f81413641d3d139ae6fd5f9df621e5f\u0027:\n  Add density value to density enum.\n"
    },
    {
      "commit": "39cd36ec1fed5f370983dbd8933acc5e779003c6",
      "tree": "e63b1a3b9c248f3eca65d26a60dc6fb541793fef",
      "parents": [
        "32f76f34075450c03c68fc1f65e395d5eddd6d51"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Sep 22 21:00:12 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Sep 22 21:00:12 2009 -0700"
      },
      "message": "Add density value to density enum.\n\nThis is going to be used as constant to both ADT classes and the\nlayoutlib.\n\nChange-Id: Id9befe83c5c2be3fbc5f045c7ed21aa8ee0108cc\n"
    },
    {
      "commit": "296e7b951914f983b4d063da02d38162ac01abd0",
      "tree": "bc53993087519114e91686ecbc3e07ec207d1d31",
      "parents": [
        "648297ff5d1a56f08985d26d58f1471e2ff0ba86",
        "32f76f34075450c03c68fc1f65e395d5eddd6d51"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Sep 22 19:56:31 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Sep 22 19:56:31 2009 -0700"
      },
      "message": "am 32f76f34: Merge change 26517 into eclair\n\nMerge commit \u002732f76f34075450c03c68fc1f65e395d5eddd6d51\u0027 into eclair-plus-aosp\n\n* commit \u002732f76f34075450c03c68fc1f65e395d5eddd6d51\u0027:\n  Add a new IResourceValue that knows about the density.\n"
    },
    {
      "commit": "ccb630df4bb32ef93c55ad32859849a08b840288",
      "tree": "95fda8bb19deb7f6eb41291f9eeb9e2b6fff4478",
      "parents": [
        "63147705bc2893d6ad43270e04beb9ee01e2ad53"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Sep 22 18:30:22 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Sep 22 18:30:22 2009 -0700"
      },
      "message": "Add a new IResourceValue that knows about the density.\n\nThis will allow the layoutlib to resize bitmaps that are\nnot in the native density of the rendering.\n\nChange-Id: If9dca6d51cd93a2083c96fce3ac64335ec6ad801\n"
    },
    {
      "commit": "e8e977bc4a5031da623188a562a1276305a7bf21",
      "tree": "46c5cd06ba11834511c794c46b6bccc7a5f3502f",
      "parents": [
        "358d4aa1e4b4282b7637fec24364ab286358c451",
        "f1871e273e1bf49d72a7f2ef51a4ef377d8f3112"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Sun Sep 20 14:35:24 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Sep 20 14:35:24 2009 -0700"
      },
      "message": "am f1871e27: Merge change 26009 into eclair\n\nMerge commit \u0027f1871e273e1bf49d72a7f2ef51a4ef377d8f3112\u0027 into eclair-plus-aosp\n\n* commit \u0027f1871e273e1bf49d72a7f2ef51a4ef377d8f3112\u0027:\n  Fix issue with printing gles version in aapt dump badging option\n"
    },
    {
      "commit": "40b94725dc1c62ea66db0b9502dd81b97dd3e35f",
      "tree": "bb7d73271a12f26ea9774fb149d744f08c64c405",
      "parents": [
        "d163f4babe101b89aaf322c34d3bafeae237f7da"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Sun Sep 20 13:39:37 2009 -0700"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Sun Sep 20 13:40:02 2009 -0700"
      },
      "message": "Fix issue with printing gles version in aapt dump badging option\nIf the name attribute for uses-feature or uses-permission is empty\nthe error value is still empty indicating error and preventing the\nelse part from being checked as it should be.\n"
    },
    {
      "commit": "b7b083090f7312f83453e3f3c2e40a91644a3059",
      "tree": "3b8dbe781aa0ef2aaa5c4b7a718995047abab612",
      "parents": [
        "480a353f589035b62a81e2981cfba325ad1264f2",
        "a382cb81187437aa389dc131687e181ceaefa8ba"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Sep 19 12:29:56 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sat Sep 19 12:29:56 2009 -0700"
      },
      "message": "am a382cb81: Merge change 25929 into eclair\n\nMerge commit \u0027a382cb81187437aa389dc131687e181ceaefa8ba\u0027 into eclair-plus-aosp\n\n* commit \u0027a382cb81187437aa389dc131687e181ceaefa8ba\u0027:\n  Add API to send an ordered sticky broadcast.\n"
    },
    {
      "commit": "efa199f016985b0a9d0471e42c803ee9f7941f0e",
      "tree": "0320870eeb2ca842a3729eb0f72220037ea89f82",
      "parents": [
        "338c48554f35dbee3faa4e39525a972f20a7c32d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Sep 19 12:03:15 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sat Sep 19 12:05:25 2009 -0700"
      },
      "message": "Add API to send an ordered sticky broadcast.\n\nChange-Id: Ida7081204e226db0cd07ff618c08e308a909ec0c\n"
    },
    {
      "commit": "1f3914b7f2f3c233da8b643c426c0ffd42f32f87",
      "tree": "85f6c8bc024bb8dd9166d3aed508049529e98160",
      "parents": [
        "fb4ef8fd2e046d022f0e3eb550094be28b048b44",
        "fa82f22f1d8c4c828bdf9b670006be4f4fec772e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 17 18:13:26 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 17 18:13:26 2009 -0700"
      },
      "message": "am fa82f22f: Fix issue #2093608: Calendar widget takes a few seconds to launch\n\nMerge commit \u0027fa82f22f1d8c4c828bdf9b670006be4f4fec772e\u0027 into eclair-plus-aosp\n\n* commit \u0027fa82f22f1d8c4c828bdf9b670006be4f4fec772e\u0027:\n  Fix issue #2093608: Calendar widget takes a few seconds to launch\n"
    },
    {
      "commit": "fa82f22f1d8c4c828bdf9b670006be4f4fec772e",
      "tree": "586dbd1bf9cbefe26cfecd6cf853b78eb6a4fb64",
      "parents": [
        "9b64ef133c1eb24c8d00aa7e46ec86c544af5fe2"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 17 15:14:12 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Sep 17 18:01:35 2009 -0700"
      },
      "message": "Fix issue #2093608: Calendar widget takes a few seconds to launch\n\nAvert your eyes!\n\nThe key change here is that RemoteViews can now call a Context API to\nstart its pending intent, which inside of the activity manager we can\nuse to determine to cancel the timeout delay for external entities\nto disrupt the home screen.\n\nChange-Id: If097cf7478cbed7a3c04a304050bd7fd5703d197\n"
    },
    {
      "commit": "10bedaaf3ec24af5fa4dcea54545e4d4953a1c7d",
      "tree": "9f6089b6865682539c126c1915cc8d6fbb3e8887",
      "parents": [
        "454e3c848feee705df79ea02feca5c9b97bfc5de",
        "7fc39b26fc4ec9df7d147ff34ebba90556cdb4da"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 15 23:11:35 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Sep 15 23:11:35 2009 -0700"
      },
      "message": "am 7fc39b26: Merge change 25238 into eclair\n\nMerge commit \u00277fc39b26fc4ec9df7d147ff34ebba90556cdb4da\u0027 into eclair-plus-aosp\n\n* commit \u00277fc39b26fc4ec9df7d147ff34ebba90556cdb4da\u0027:\n  Implement issue #1780928: Need support hiding nav keys.\n"
    },
    {
      "commit": "93e462b79d6896da10e15e74c5aec6beb098dddf",
      "tree": "1f5f178b544a49ba5a80e74269b083775ff97854",
      "parents": [
        "6cf05f1c3d6f4585573c8663a62848a09f6a08ff"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 15 22:50:40 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Sep 15 22:50:40 2009 -0700"
      },
      "message": "Implement issue #1780928: Need support hiding nav keys.\n\nThis implements support for devices whose hardware can hide\ntheir navigation keys.  It works much like the existing keyboardHidden\nconfiguration, and for compatibility uses the same configuration\nchange bit.\n\nAlso add FLAG_TURN_ON_SCREEN for windows, which has the system\ncause the screen to be turned on when the window is displayed.\nGreat fun when used with FLAG_SHOW_WHEN_LOCKED!\n\nChange-Id: I0b867f19af85cfd8786a14cea194b34f7bdd9b7a\n"
    },
    {
      "commit": "7c32e4bc300bb75203f65ca55b08ecd3156fa2bb",
      "tree": "d3710e91519317909f11a8828c617a6e336aacdd",
      "parents": [
        "d5b281f4b4e018a41846f1e81d02e75059bf7030",
        "d023f9a9a90705410250cd86bc6446c738423a99"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 14 15:54:08 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 14 15:54:08 2009 -0700"
      },
      "message": "am d023f9a9: Merge change 24829 into eclair\n\nMerge commit \u0027d023f9a9a90705410250cd86bc6446c738423a99\u0027 into eclair-plus-aosp\n\n* commit \u0027d023f9a9a90705410250cd86bc6446c738423a99\u0027:\n  Some optizations to wallpaper drawing/scrolling.\n"
    },
    {
      "commit": "d023f9a9a90705410250cd86bc6446c738423a99",
      "tree": "7ed7ccf3847d48af6e692813cdcc5e5838a53c8b",
      "parents": [
        "aa931bcb0acb93ce760f4e5d27153fb1c6d33a10",
        "19382ac1a4e4e7c23a1346d299368763f149de9c"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 14 18:45:42 2009 -0400"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 14 18:45:42 2009 -0400"
      },
      "message": "Merge change 24829 into eclair\n\n* changes:\n  Some optizations to wallpaper drawing/scrolling.\n"
    },
    {
      "commit": "19382ac1a4e4e7c23a1346d299368763f149de9c",
      "tree": "9165f1b94f1bd5e9966729b1047d03a733570867",
      "parents": [
        "714ec1360cde8b1cbf6e6b8572256e4100f11560"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Sep 11 21:13:37 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Sep 14 15:29:44 2009 -0700"
      },
      "message": "Some optizations to wallpaper drawing/scrolling.\n\nFirst, fix some issues with the final wallpaper bitmap\nwe use: ensure it is always 16bpp, and make sure dithering\nof its bitmap is turned off.   We take of dithering\nwhen loading, to make sure we don\u0027t use it when drawing.\n\nAlso add new APIs to return the wallpaper with the equivalent\nof Launcher\u0027s old FastBitmapDrawable.  As doing this, also load\nthe default wallpaper the same way as custom ones, taking care to\nresize it as needed at load time.\n\nFinally implement a mechanism for the window manager to wait\nfor the wallpaper to redraw at its new position before returning\nfrom the application\u0027s call to change the offset.  This ensures\nthat the wallpaper better tracks the application.  Note that there\nis a timeout in this wait that is relatively short, and if it\nexpires we will run for a while without waiting.\n\nChange-Id: Ife449437746da85958bd447e0a6cf3d2223b398c\n"
    },
    {
      "commit": "d2bb9eae1737287f80a1d95acfdfb238c7058934",
      "tree": "c446462a960729f1d54f2668f004b1b06d9a5807",
      "parents": [
        "76d82371a90e81f2d5214d7b16ba713cb73771d1",
        "7cec54302d421dd8c45ea25456b9677a7aa3d8d3"
      ],
      "author": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Mon Sep 14 12:12:51 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Sep 14 12:12:51 2009 -0700"
      },
      "message": "am 7cec5430: Merge change 24903 into eclair\n\nMerge commit \u00277cec54302d421dd8c45ea25456b9677a7aa3d8d3\u0027 into eclair-plus-aosp\n\n* commit \u00277cec54302d421dd8c45ea25456b9677a7aa3d8d3\u0027:\n  Fix some LayoutBridge javadoc.\n"
    },
    {
      "commit": "7a79628cd9b5149a7b38b90bf6cef9ea67cfbc21",
      "tree": "55e5a2a501a46f3fee9da2471ecb1963b4b229d0",
      "parents": [
        "466dbbfd4595d714127a4bc92dd9235807b88be6"
      ],
      "author": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Mon Sep 14 11:17:49 2009 -0700"
      },
      "committer": {
        "name": "Raphael",
        "email": "raphael@google.com",
        "time": "Mon Sep 14 11:17:49 2009 -0700"
      },
      "message": "Fix some LayoutBridge javadoc.\n\nChange-Id: I255d1d58d3537403ac9a8a5c7adece30ae989ce0\n"
    },
    {
      "commit": "3c193a4a8d748faf420988250aabda0145e74bf7",
      "tree": "b87595f22ad6de262be371ad1fcf72c9785abe2c",
      "parents": [
        "8e739ac69fbfc36a138800e7b0a2caf88b11a181",
        "be8e36e32b9cb2bb37e28e4c0d414ee0e46c84a2"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Sep 04 07:54:30 2009 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Fri Sep 04 07:54:30 2009 -0700"
      },
      "message": "merge from open-source master\n"
    },
    {
      "commit": "be8e36e32b9cb2bb37e28e4c0d414ee0e46c84a2",
      "tree": "34ae4ff9404e97d9c3b858903b0a414149671ac9",
      "parents": [
        "44b283dc27ed8ba5a946d809489f29b4ae88cb15",
        "8f4b5a561813ee8c22d2b8e73c33299471d4a3f3"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Sep 03 15:18:14 2009 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Sep 03 15:19:21 2009 -0700"
      },
      "message": "merge from donut\n"
    },
    {
      "commit": "1cfe4b2a75041b6853c304eeaee1ae84bbf5f2a8",
      "tree": "92b3c32b512290b45971f073076563e38f83fd08",
      "parents": [
        "7a1140ee899a9fef550e7a573e44c2d1bd9ad721",
        "e8f605ff44664d0ecc9a5a24886176ef447db2a9"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Sep 03 09:11:10 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Sep 03 09:11:10 2009 -0700"
      },
      "message": "am e8f605ff: Merge change 23761 into eclair\n\nMerge commit \u0027e8f605ff44664d0ecc9a5a24886176ef447db2a9\u0027 into eclair-plus-aosp\n\n* commit \u0027e8f605ff44664d0ecc9a5a24886176ef447db2a9\u0027:\n  Fix compilation of add-resource tag.\n"
    },
    {
      "commit": "93d72516994277acdd3894a169ec1f1cbc50db97",
      "tree": "8a12fcb8bb24d01221f4c401ef672ea69274fbfc",
      "parents": [
        "6e478d7afb33eff4efe704a16b1a05435b431062"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Sep 02 18:23:57 2009 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Sep 02 18:23:57 2009 -0700"
      },
      "message": "Fix compilation of add-resource tag.\n\nIt used the wrong tag-type to find the end of itself.\n"
    },
    {
      "commit": "7a797a02afafc1fcbdbe66d564f036c7ef38211f",
      "tree": "a31c705cc55fa8db9b73ccd68d5252d907963a6e",
      "parents": [
        "30a85367eae2754039a5b4560032ae9c20574610",
        "66c70e13d9f39cf82df8542fe53f2049d3f2062e"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Wed Sep 02 11:19:19 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Sep 02 11:19:19 2009 -0700"
      },
      "message": "am 66c70e13: Merge change 23529 into eclair\n\nMerge commit \u002766c70e13d9f39cf82df8542fe53f2049d3f2062e\u0027 into eclair-plus-aosp\n\n* commit \u002766c70e13d9f39cf82df8542fe53f2049d3f2062e\u0027:\n  Make it an error to use a bare apostrophe in aapt, and adjust warnings/errors.\n"
    },
    {
      "commit": "44b283dc27ed8ba5a946d809489f29b4ae88cb15",
      "tree": "8f55d551271abe035e8468f398a1478a15a9ed54",
      "parents": [
        "0369a7c3ac97b4791716ddd183e83309b1455476"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kenny@the-b.org",
        "time": "Tue Sep 01 19:03:11 2009 -0500"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kenny@the-b.org",
        "time": "Tue Sep 01 19:07:48 2009 -0500"
      },
      "message": "Fix %p vs %s typo in aapt message\n\nWhen trying to print an xmltree or xmlstrings from aapt, the error\nmessage if the resource didn\u0027t exist erroneously printed a pointer\ninstead of a string.\n\nChange-Id: I317bbbdc1200e0f10922e80a36e41a22b2d50d0d\n"
    },
    {
      "commit": "c87d25215c842cea370c6a86ce67585fa8da4900",
      "tree": "221eb50bb658c745f0ce5c56588193d565a1ccf3",
      "parents": [
        "b7559e02803266e5fa9f4496174bc343ecd245ab"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Tue Sep 01 15:20:30 2009 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Tue Sep 01 15:20:30 2009 -0700"
      },
      "message": "Make it an error to use a bare apostrophe in aapt, and adjust warnings/errors.\n\nIn practice, no one ever writes an apostrophe in an aapt string with the\nintent of using it to quote whitespace -- they always mean to include a\nliteral apostrophe in the string and then are surprised when they find\nthe apostrophe missing.  Make this an error so that it is discovered\nright away instead of waiting until late in QA or after the strings have\nalready been sent for translation.  (And fix a recently-introduced string\nthat has exactly this problem.)\n\nSilence the warning about an empty span in a string, since this seems to\nannoy people instead of finding any real problems.\n\nMake the error about having a translated string with no base string into\na warning, since this is a big pain when making changes to an application\nthat has already had some translations done, and the dead translations\nshould be removed by a later translation import anyway.\n"
    },
    {
      "commit": "85a2c7f1cad8fd55ed72a8a3dbb2b36632ebbff3",
      "tree": "36dea48bb2bef6646ae333bad57af4955b5379f8",
      "parents": [
        "f84b803478eeb3ce34da55f242d9b9685c6c943d",
        "0369a7c3ac97b4791716ddd183e83309b1455476"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Sep 01 11:46:14 2009 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Sep 01 11:46:14 2009 -0700"
      },
      "message": "merge from open-source master\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": "72b1f379d5c97c8ff31d2201e78215af777d6bda",
      "tree": "8be18715a615095bea90d189af9774710b33edef",
      "parents": [
        "ac1e59d887651220f5367cc7fa4207b34eab774d"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Aug 31 09:17:57 2009 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Aug 31 09:17:57 2009 -0700"
      },
      "message": "donut snapshot\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": "49237345d83e62fdb9eb8d50b13ad086636a04fa",
      "tree": "224ca2d134177a09184c1440f4fceac13a10b627",
      "parents": [
        "5511c66955d96019ee62ac334d73e4d2bcda178b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 27 20:08:01 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 27 21:51:00 2009 -0700"
      },
      "message": "Add platform infrastructure for features.\n\nThis introduces a new mechanism to define features associated with\na platform, query the current device for the available features,\nand enforce that apps requiring features that aren\u0027t available can\u0027t\nbe installed.\n\nAlso now allows uses-library to specify that a library is optional,\nso the lack of such a library will not prevent the app from being\ninstalled (but if it does exist it will be correctly linked into\nthe app).\n\nChange-Id: I5b369b46cfa0b3d37c9e08fd14ef1098a978e67b\n"
    },
    {
      "commit": "e5276a74746b5e8f09b05a50155e7aa0bbb4a747",
      "tree": "38f66bbad2a14adbee770b1d1c1caa842ecf4e28",
      "parents": [
        "d6ac7c73e17f0ce0cc3b1290760c4f67cafcdec5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 27 16:28:44 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Aug 27 16:28:44 2009 -0700"
      },
      "message": "Fix issue #2084148: Define the format for the auto focus preview for barcode scanning\n\nAdd new manifest/aapt support for specifying device features an application\nrequires.  The aapt badging now returns these (as well as uses-permission since\nI need to look for those anyway); if an app doesn\u0027t explicitly request the\ncamera feature but does request the permission, then aapt will say that it has\nrequested both the basic camera feature as well as the autofocus feature.\n\nHere\u0027s what you put in your manifest to say you need a camera but don\u0027t need\nautofocus:\n\n    \u003cuses-permission android:name\u003d\"android.permission.CAMERA\" /\u003e\n    \u003cuses-feature android:name\u003d\"android.hardware.camera\" /\u003e\n    \u003cuses-feature android:name\u003d\"android.hardware.camera.autofocus\" android:required\u003d\"false\" /\u003e\n\nHere\u0027s what will be seen from aapt:\n\nuses-permission:\u0027android.permission.CAMERA\u0027\nuses-feature:\u0027android.hardware.camera\u0027\nuses-feature-not-required:\u0027android.hardware.camera.autofocus\u0027\n\nChange-Id: I4dd19cee0486cc54771f5bf14fc9db0e892115d5\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": "841ce8b7b9fffcc66cf1349097ed821b94627d63",
      "tree": "748ab250a25f8013bcf30be39ff502adc6615ad9",
      "parents": [
        "83bad3df01504e08d5a8520e46e01754bd5109b9"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kenny@the-b.org",
        "time": "Fri Aug 21 15:23:45 2009 -0500"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kenny@the-b.org",
        "time": "Fri Aug 21 15:23:45 2009 -0500"
      },
      "message": "Fix bitmask in aapt\u0027s StringPool length construction\n\nThe StringPool indicates the length of a string with a 16-bit\ninteger. If the length of the string is greater than 0x7FFF,\nit splits it into two 16-bit integers with the first one\nhaving the high bit set.\n\nThe length calculation has a small bug that masks off the\n19 bits instead of the first 15 bits as intended.\n"
    },
    {
      "commit": "ad013fae0db2864ad13631a44d26bacafc36f861",
      "tree": "1de6842cd122e5786a396331b53b1954ee4f0b17",
      "parents": [
        "3be63c09309b21c01b535271625d4c39045690e5"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Aug 21 12:55:59 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Aug 21 12:55:59 2009 -0700"
      },
      "message": "Replace fullHeight support by fullSize (height and width)\n\nThis is useful for linearlayout in horizontal mode.\n"
    },
    {
      "commit": "d604ad1ad442790af53847d24060ecb097106d26",
      "tree": "0b75fae936dcbb683367b50ab962838c9f0960d5",
      "parents": [
        "58b6d1be26bd015b0da9336e82a83fd2cf303d2a"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Aug 20 14:29:56 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Aug 20 15:15:35 2009 -0700"
      },
      "message": "Support full length rendering.\n\nNew rendering method in ILayoutBridge to specify whether the rendering\nheight should be the specified height or if it should be the height\nrequired by the layout (specified height is always the minimum).\n"
    },
    {
      "commit": "9abcba3c81e7cce3e52286dd2009dd46cdcae4c4",
      "tree": "e97100d71032bee97544aaffebee46449e4e7acd",
      "parents": [
        "12c9561b8faf630517896b0b8caf39e35d8566fd",
        "1b125980c5de597c18a179b9b02b9a5afe106895"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 18 16:57:02 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 18 16:57:02 2009 -0700"
      },
      "message": "Merge change 21764 into eclair\n\n* changes:\n  Add aapt extensions to dump badging to print more info about activities, receivers and services Fix issue with checking end tags. Earlier some boolean variables were being set once a new tag is detected at the same level which causes some incorrect values to be overwritten. we should be doing this when we detect the end tag.\n"
    },
    {
      "commit": "1b125980c5de597c18a179b9b02b9a5afe106895",
      "tree": "e65ed37e315f0d808d60406118942fa399813c73",
      "parents": [
        "d97bcef6e4d2a4bacf335f412488c72e38d590e6"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Aug 18 01:42:27 2009 -0700"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Aug 18 16:25:28 2009 -0700"
      },
      "message": "Add aapt extensions to dump badging to print more info about activities, receivers and services\nFix issue with checking end tags. Earlier some boolean variables were being set once a new\ntag is detected at the same level which causes some incorrect values to be overwritten.\nwe should be doing this when we detect the end tag.\n"
    },
    {
      "commit": "f369b7199f537bba7d8fced8b0f826249d19fdf5",
      "tree": "a543928728c1ab8d9a71db8496d19e113aa8637e",
      "parents": [
        "d97bcef6e4d2a4bacf335f412488c72e38d590e6",
        "ad4bc607bd236dd9b06df9cf89dc5e14541ff66c"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Aug 18 13:42:09 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 18 13:42:09 2009 -0700"
      },
      "message": "am ad4bc607: Merge change 21772 into donut\n\nMerge commit \u0027ad4bc607bd236dd9b06df9cf89dc5e14541ff66c\u0027 into eclair\n\n* commit \u0027ad4bc607bd236dd9b06df9cf89dc5e14541ff66c\u0027:\n  Fix Resources#opeRawResource(int, TypedValue) in layoutlib.\n"
    },
    {
      "commit": "72e4bcd3d0da90f6c9550c93e58c12b2903a5ab8",
      "tree": "bffd42883e1f457bcd8d502aa6e4f64538211b62",
      "parents": [
        "238f8fe645271a0ef891553e1c8c3c964c3c876d"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Aug 18 13:35:55 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Aug 18 13:35:55 2009 -0700"
      },
      "message": "Fix Resources#opeRawResource(int, TypedValue) in layoutlib.\n"
    },
    {
      "commit": "9cefd00f83df16f1763eaea08b96569db826e1f2",
      "tree": "a62d88b82a3b847619fbcc7fd573ff7fc3822302",
      "parents": [
        "30c0b83490d856c1cd82441c8e2d800a88927237",
        "6ba69734d8034d761be3f92681bf02e8b6a88fd1"
      ],
      "author": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 18 13:08:40 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 18 13:08:40 2009 -0700"
      },
      "message": "resolved conflicts for merge of 6ba69734 to eclair, skipping preloaded-classes as pre Bob\n"
    },
    {
      "commit": "f7064e18fbafa6091a7e5f604978331135bcf4b6",
      "tree": "41750f95388e320185a6314582b5b1522d0397ac",
      "parents": [
        "ef99e248fe5f556bbd216d3ac669391b83ab5ebb",
        "ace6a5cfc0d14a909b4b95bdfe16609188125baf"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Aug 18 11:01:19 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 18 11:01:19 2009 -0700"
      },
      "message": "am ace6a5cf: Merge change 21408 into donut\n\nMerge commit \u0027ace6a5cfc0d14a909b4b95bdfe16609188125baf\u0027 into eclair\n\n* commit \u0027ace6a5cfc0d14a909b4b95bdfe16609188125baf\u0027:\n  Improved drawing/matrix support in layoutlib\n"
    },
    {
      "commit": "6919f69281e32d0c3d4b3791b273f71f178cbb7c",
      "tree": "053aed49b5f39f1f527c83e05e485dcb88a23791",
      "parents": [
        "db33d4bbaeedf2095968ec7795b488038cdcd015",
        "75c498426a17b47d445711bb9e36794b05876a56"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Aug 18 10:59:08 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 18 10:59:08 2009 -0700"
      },
      "message": "am 75c49842: Add maxSdkVersion information in dump badging option\n\nMerge commit \u002775c498426a17b47d445711bb9e36794b05876a56\u0027 into eclair\n\n* commit \u002775c498426a17b47d445711bb9e36794b05876a56\u0027:\n  Add maxSdkVersion information in dump badging option\n"
    },
    {
      "commit": "1a8c1599de630ae4199b71cb3eca75d7db9c40d6",
      "tree": "5508bab41808c7f7ef40df92d34feb7e3dbd79eb",
      "parents": [
        "0deb41abc68ff05b6c2e06175982f9d22a5abd92",
        "c1c432f57b782ed9d8d65be7ea1bee1e1d7d7839"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Aug 18 08:44:59 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Aug 18 08:44:59 2009 -0700"
      },
      "message": "am c1c432f5: Merge change 21241 into donut\n\nMerge commit \u0027c1c432f57b782ed9d8d65be7ea1bee1e1d7d7839\u0027 into eclair\n\n* commit \u0027c1c432f57b782ed9d8d65be7ea1bee1e1d7d7839\u0027:\n  Layoutlib now uses the dimen status_bar_height instead of hard-coded value\n"
    },
    {
      "commit": "82e7408be29c6c8c6ed80887ea97f48f38b3223d",
      "tree": "e8168ab0dd81395ad3bfd4f055c0977419fe030b",
      "parents": [
        "8735d553c58c2ff445798a26de78e89e34964d08",
        "3547f859d4a4e90eea52e9caf686c69a6e015b85"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 18 07:20:06 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 18 07:20:06 2009 -0700"
      },
      "message": "Merge change 21326 into eclair\n\n* changes:\n  aapt now attempts to process all assets even if some are malformed.\n"
    },
    {
      "commit": "8df8b2b405c60cacf7a66c4e2ca078dd3d7ec7bd",
      "tree": "302a410dcd7af7bbf61f435cd96dd8b7384def2e",
      "parents": [
        "948ee251276e1ce7f5c5517b24bf88a75e99f160"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Aug 17 15:15:18 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Aug 17 21:23:05 2009 -0700"
      },
      "message": "Allow wallpapers to get touch events.\n"
    },
    {
      "commit": "6ba69734d8034d761be3f92681bf02e8b6a88fd1",
      "tree": "7222083bf4c2b532542a93a56a8758729f45ea0e",
      "parents": [
        "d9d2576017fadcf47589b54e8ee198f48cc19352",
        "9d2d6e14b0932b6a74e01f393d5efed61458941b"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 17 17:58:05 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 17 17:58:05 2009 -0700"
      },
      "message": "Merge change 21178 into donut\n\n* changes:\n  Simplified algorithm used to generate the preloaded-classes list. Generated a new preloaded-classes file.\n"
    },
    {
      "commit": "9d2d6e14b0932b6a74e01f393d5efed61458941b",
      "tree": "833ec805d5f8eded7819bd98fea6587ed2098501",
      "parents": [
        "802527c6a8a91f7da72f2ce9f6cb3cc342582127"
      ],
      "author": {
        "name": "Bob Lee",
        "email": "crazybob@google.com",
        "time": "Thu Aug 13 14:41:54 2009 -0700"
      },
      "committer": {
        "name": "Bob Lee",
        "email": "crazybob@google.com",
        "time": "Mon Aug 17 15:36:15 2009 -0700"
      },
      "message": "Simplified algorithm used to generate the preloaded-classes list. Generated a new preloaded-classes file.\n"
    },
    {
      "commit": "2473ef5654b2a4b65132a35677c6ddfd481aab2c",
      "tree": "98ff9700a5a8854c139b7b27413c2208d21c7b34",
      "parents": [
        "75c498426a17b47d445711bb9e36794b05876a56"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Aug 14 20:47:50 2009 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Aug 17 14:17:05 2009 -0700"
      },
      "message": "Improved drawing/matrix support in layoutlib\n\n- Make the custom Canvas actually replace the original one so that it\u0027s used\n  even by parts of the framework that allocate their own temp Canvas object.\n- Better support for Matrix: added support for mapPoint() and mapRect(), and invert()\n- Implemented drawBitmap() with a Matrix, and made the paint object not NPE when null.\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"
    }
  ],
  "next": "64551b2e0e52fe89c360b1951acc528d94ebaf7a"
}
