)]}'
{
  "log": [
    {
      "commit": "3b3c7d3359dda6ff57eda374fd19e6c2b0f3d46f",
      "tree": "abf47fe76350d281c72b88bdc59f9b102f365cbf",
      "parents": [
        "7b51f5fe4d726f2e247a94963ee926f74521d739"
      ],
      "author": {
        "name": "Jan Piotrowski",
        "email": "piotrowski@gmail.com",
        "time": "Tue Apr 16 19:18:53 2019 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 16 19:18:53 2019 +0200"
      },
      "message": "deprecation"
    },
    {
      "commit": "7b51f5fe4d726f2e247a94963ee926f74521d739",
      "tree": "33bede8afcd61263469033643a859fb59b3b5c76",
      "parents": [
        "042d942cca61a4d299f2d2a0e8f1f75ad3ace264"
      ],
      "author": {
        "name": "エリス",
        "email": "erisu@users.noreply.github.com",
        "time": "Tue Sep 18 17:51:58 2018 +0900"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Sep 18 17:51:58 2018 +0900"
      },
      "message": "Updated License with a Valid SPDX License (#3)\n\n"
    },
    {
      "commit": "042d942cca61a4d299f2d2a0e8f1f75ad3ace264",
      "tree": "94e3b66ada544acd0abdf222c350e55e9040c1ae",
      "parents": [
        "3a496a0cf3541a9809445c6f5c4db83bc68394da"
      ],
      "author": {
        "name": "Shazron Abdullah",
        "email": "shazron@apache.org",
        "time": "Tue Oct 04 22:31:46 2016 -0700"
      },
      "committer": {
        "name": "Shazron Abdullah",
        "email": "shazron@apache.org",
        "time": "Tue Oct 04 22:31:46 2016 -0700"
      },
      "message": "Add github pull request template\n"
    },
    {
      "commit": "3a496a0cf3541a9809445c6f5c4db83bc68394da",
      "tree": "48af261d4d519de785261e86432a13a8611a09dd",
      "parents": [
        "f5676e8715245de311212df86a22b8fc81e25ae1"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 22:42:05 2015 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 22:42:05 2015 -0400"
      },
      "message": "Fix up mistakes from cherry-picks\n"
    },
    {
      "commit": "f5676e8715245de311212df86a22b8fc81e25ae1",
      "tree": "590f3cf45ace0a3e308404aac744db6a5f260705",
      "parents": [
        "e724e18bb99e66f36d6ddb013783aeab4a13538b"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Apr 29 16:29:21 2015 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 22:22:39 2015 -0400"
      },
      "message": "Use npm-named plugins rather than CPR plugins\n"
    },
    {
      "commit": "e724e18bb99e66f36d6ddb013783aeab4a13538b",
      "tree": "26e93d7497da957f894d7748d239284cd2d59faf",
      "parents": [
        "55066a3e858433d79eb3a6cc5ab452a26c097053"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Apr 29 16:28:48 2015 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 22:21:04 2015 -0400"
      },
      "message": "Fix AppHarnessUI.java to work with latest cordova-android changes \u0026 to forward lifecycle events (minus onActivityResult)\n"
    },
    {
      "commit": "55066a3e858433d79eb3a6cc5ab452a26c097053",
      "tree": "251188097ffa17d9b986c45b24cb69a2348406a6",
      "parents": [
        "c183c956889bbb0073861d35367d002c8867a447"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Mar 17 15:17:44 2015 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 22:18:09 2015 -0400"
      },
      "message": "Tweak harness-push/README.md to say port forwarding no longer required\n"
    },
    {
      "commit": "c183c956889bbb0073861d35367d002c8867a447",
      "tree": "1f5d2c639e3bd12f25de8c5930648561a3ca7480",
      "parents": [
        "ab7d4b1729123bdca7450249c984511be5c7d5b9"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Mar 17 10:22:55 2015 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 22:17:49 2015 -0400"
      },
      "message": "Hook up the whitelist plugin for loaded apps\n"
    },
    {
      "commit": "ab7d4b1729123bdca7450249c984511be5c7d5b9",
      "tree": "fc6d94946e35841d63f83c41d5a07f7f3181549a",
      "parents": [
        "141def8bf6b72f36c9c0e1aea3c6e004505ac69f"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Mar 17 10:22:20 2015 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 22:08:31 2015 -0400"
      },
      "message": "Add cordova-plugin-file assets build hook\n\nThe plugin will add it itself eventually.\n"
    },
    {
      "commit": "141def8bf6b72f36c9c0e1aea3c6e004505ac69f",
      "tree": "b49a4f600ecd978abc787cf4c0a5aeb07a86b4f0",
      "parents": [
        "ccf90b06e56a4967c149a40f1d272680c408156b"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Mar 13 11:05:28 2015 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 22:06:42 2015 -0400"
      },
      "message": "Disable remapper in order to pick up custom CSP tags for Chrome Apps\n\nMay want to re-enable and make mapping more complicated for performance\nreasons.\n"
    },
    {
      "commit": "ccf90b06e56a4967c149a40f1d272680c408156b",
      "tree": "c06a3511ac07cd8ec186aeefcc039d1c806cf0eb",
      "parents": [
        "675a3d31df9af18ef396516d3826eb9f9d31d0a4"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Mar 13 10:58:38 2015 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 22:06:02 2015 -0400"
      },
      "message": "createproject.sh: Add whitelist plugin and --link platforms / plugins\n"
    },
    {
      "commit": "675a3d31df9af18ef396516d3826eb9f9d31d0a4",
      "tree": "025722e970d66c547f44642db01b6ee529846238",
      "parents": [
        "101b9ffdf3122a703077225f9cf288397a7d43fa"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Mar 13 10:58:00 2015 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 22:02:50 2015 -0400"
      },
      "message": "Update Android code to work with latest 4.0.x\n"
    },
    {
      "commit": "101b9ffdf3122a703077225f9cf288397a7d43fa",
      "tree": "49bfb32c91ab76f48e1ae0a834fbe71375cbb2b1",
      "parents": [
        "6fb0c3a1f73b4bd38d7a59866fba16d054544732"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Mar 05 15:17:54 2015 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue May 12 21:58:01 2015 -0400"
      },
      "message": "Make harnessclient compatible with node 0.12 as well as 0.10\n"
    },
    {
      "commit": "6fb0c3a1f73b4bd38d7a59866fba16d054544732",
      "tree": "2e73cbcc6ccd6d1814b96ac8d77d02c554ddc926",
      "parents": [
        "7654d54f2b084dc31fe2e24121a288342ca2ea10"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Jan 08 21:33:45 2015 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Jan 08 21:33:45 2015 -0500"
      },
      "message": "Delete .reviewboardrc\n"
    },
    {
      "commit": "7654d54f2b084dc31fe2e24121a288342ca2ea10",
      "tree": "62fc59fe49713a59b426cf8930af50a92356ccc6",
      "parents": [
        "a35f398dce4077303c0ea0a543619e5633518792"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Jan 08 14:49:22 2015 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Jan 08 14:49:22 2015 -0500"
      },
      "message": "Add /node_modules to .gitignore\n"
    },
    {
      "commit": "a35f398dce4077303c0ea0a543619e5633518792",
      "tree": "2df6c79e65c09e855fcaf54374f35e0c02732d2f",
      "parents": [
        "939fd660988fb4969bc7766bb3ddcabb82a14c69"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:54:55 2014 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:55:32 2014 -0500"
      },
      "message": "Fix typo in error message (chrome-app-developer-tool-client -\u003e harness-client)\n"
    },
    {
      "commit": "939fd660988fb4969bc7766bb3ddcabb82a14c69",
      "tree": "f0f8cc973da2c1eec19ed5919527f20323f1026e",
      "parents": [
        "ba347fd860aed8a615780286dd215bbcab7c1fa0"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Nov 25 15:59:01 2014 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:51:24 2014 -0500"
      },
      "message": "Update HttpServer to use chrome.sockets.tcp.pipeToFile.\n"
    },
    {
      "commit": "ba347fd860aed8a615780286dd215bbcab7c1fa0",
      "tree": "93924d97f3e9d7f64b1224d53d28f1465dd25931",
      "parents": [
        "1d3f2789268eb786227be9790b8b1137c9518493"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Nov 18 15:05:10 2014 -0800"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:50:42 2014 -0500"
      },
      "message": "Add debug logging to HttpServer.js (disabled by default)\n"
    },
    {
      "commit": "1d3f2789268eb786227be9790b8b1137c9518493",
      "tree": "6056c7a3e5409d6ee360935f7e2fef3be1de86ea",
      "parents": [
        "d3e0898244cf8f6a8805028e677cff9162d1df5a"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Nov 14 21:50:41 2014 +0100"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:50:14 2014 -0500"
      },
      "message": "Fix \"Unable to bind to port\" message when wifi is disabled.\n\nInstead, display that you are bound to localhost, which is perfectly\nfine for deploying via USB.\n"
    },
    {
      "commit": "d3e0898244cf8f6a8805028e677cff9162d1df5a",
      "tree": "0538cba05c37a25338a3b05359364f5798d61f00",
      "parents": [
        "e1a60693aaf6d9f6c1e55a8c6747e7d9827471e9"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Nov 14 21:33:23 2014 +0100"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:49:12 2014 -0500"
      },
      "message": "Use chrome.sockets.tcp.update({uri:}) to more efficiently pipe request payloads to files\n\n20 megs new takes just a few seconds!\nAdded in some TODOs to tweak the code once the API can take in the\nnumber of bytes to pipe.\n"
    },
    {
      "commit": "e1a60693aaf6d9f6c1e55a8c6747e7d9827471e9",
      "tree": "b6e95c72ac98d1bd8e300609602275842efa9c2c",
      "parents": [
        "1f58b1c27dfc04551078d88371e333762ab1072e"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Nov 13 13:19:46 2014 +0100"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:49:01 2014 -0500"
      },
      "message": "Fix appharness.reload() not calling success callback on iOS\n\nWas causing /launch to never send a response.\n"
    },
    {
      "commit": "1f58b1c27dfc04551078d88371e333762ab1072e",
      "tree": "34fdb0fff84d84d0ae39f496c3e0b99a5f1b615b",
      "parents": [
        "eb79102cf562c8f94546319a5f990b541504af2c"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Sat Nov 08 21:07:20 2014 +0100"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:48:42 2014 -0500"
      },
      "message": "Make gulpfile use windows-compatible paths\n"
    },
    {
      "commit": "eb79102cf562c8f94546319a5f990b541504af2c",
      "tree": "eb27cbcb7e5d0c01bbba20c5b7b5f2806fc8b001",
      "parents": [
        "8da05bf6f7af113b512aaf85eb051dfb090b6463"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Nov 06 15:44:50 2014 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:42:25 2014 -0500"
      },
      "message": "Fix jslint error in harnessclient\n"
    },
    {
      "commit": "8da05bf6f7af113b512aaf85eb051dfb090b6463",
      "tree": "5f19b9a8252e483a64f64bbada2f7ab033a7d40d",
      "parents": [
        "60211b80bc0978d1d9483964e8bb1557447dac38"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Nov 06 12:09:42 2014 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:42:05 2014 -0500"
      },
      "message": "Fix typo from prev adbkit commit (delete createSocket vs delete createConnection)\n"
    },
    {
      "commit": "60211b80bc0978d1d9483964e8bb1557447dac38",
      "tree": "929c6fe1d37a6d0aaaed8250e0e774d0737701c9",
      "parents": [
        "a2260d12f65b0432b9426b9df7efc4472ad612d6"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Nov 05 14:54:08 2014 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:41:44 2014 -0500"
      },
      "message": "Enhancements to new adbkit integration.\n\n- Fix jshint errors\n- Fix process never exiting after pushing\n- Expose a symbol for detecting connected devices\n- Destroy socket if it\u0027s not picked up by the connection\n- Disable multiple connections per-host since we were just returning the same socket for each call to createSocket\n"
    },
    {
      "commit": "a2260d12f65b0432b9426b9df7efc4472ad612d6",
      "tree": "0918902737e2b8d399c9644fa5c74e79e3be818b",
      "parents": [
        "3b91a0cc65e760829f55b2c46fa0ae7d9d30aa5f"
      ],
      "author": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Tue Nov 04 15:09:51 2014 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:36:25 2014 -0500"
      },
      "message": "Improved error handling.\n"
    },
    {
      "commit": "3b91a0cc65e760829f55b2c46fa0ae7d9d30aa5f",
      "tree": "87808c313ea26a2f5c6d8e6a25b77b6ce404d902",
      "parents": [
        "e867c3d31e61b98d088170d97b6e8f8c8fe3c3b5"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:34:46 2014 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:34:46 2014 -0500"
      },
      "message": "Allow installer.getPluginMetadata() to return a value instead of a promise\n"
    },
    {
      "commit": "e867c3d31e61b98d088170d97b6e8f8c8fe3c3b5",
      "tree": "00d8972103e17ac4db53da03dc9081ea6d4cd3cc",
      "parents": [
        "64b68d70e558cdd9aed4476d22f1e180c05c0538"
      ],
      "author": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Fri Oct 31 13:32:09 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Dec 31 00:34:35 2014 -0500"
      },
      "message": "Provided a connection to the appropriate port.\n\nThis removes the necessity of running `dab forward` to get USB connections to work.\nThis adds a dependency on adbkit.\n"
    },
    {
      "commit": "64b68d70e558cdd9aed4476d22f1e180c05c0538",
      "tree": "7e5c48129a0615ef316dbe74cb639a1d3597ee2f",
      "parents": [
        "1b600f9d197ba1a61c7086b4976fd30774a53b76"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Nov 05 11:40:27 2014 -0500"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Nov 05 11:40:27 2014 -0500"
      },
      "message": "Increase harness-push timeout from 30 seconds -\u003e 3000 seconds\n"
    },
    {
      "commit": "1b600f9d197ba1a61c7086b4976fd30774a53b76",
      "tree": "c556452a5a949ce1ff4fc542615e4af3b7e97e99",
      "parents": [
        "fa15deb069f38a4dc22af72d729e9d9f587a95ec"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Oct 27 15:12:14 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Oct 27 15:12:14 2014 -0400"
      },
      "message": "Convert from chrome.socket -\u003e chrome.sockets.tcp\n"
    },
    {
      "commit": "fa15deb069f38a4dc22af72d729e9d9f587a95ec",
      "tree": "103a23ecb7b9c745adda5fa92da7fd4db567fbd6",
      "parents": [
        "54cd7bbaa1d575bd05057565794fb8ae9d27c495"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Oct 27 15:10:36 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Oct 27 15:10:36 2014 -0400"
      },
      "message": "Add gulpfile to run jshint\n"
    },
    {
      "commit": "54cd7bbaa1d575bd05057565794fb8ae9d27c495",
      "tree": "5fd89e187a47528e3a2fe1d60f0a9003f6dde088",
      "parents": [
        "dc55639a0d1c0454097024c6f94ef18ef173101b"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:24:02 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:26:07 2014 -0400"
      },
      "message": "Fix android launch now that UrlRemapper doesn\u0027t apply to main webview\n"
    },
    {
      "commit": "dc55639a0d1c0454097024c6f94ef18ef173101b",
      "tree": "a365eb09e7d5bd1ed6792c7ab3b70f4ee90843a8",
      "parents": [
        "7f7279a1278c0fc35ff7119487f3566b930cff2b"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 09:25:11 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:26:07 2014 -0400"
      },
      "message": "Enable cordova-android\u0027s App plugin (e.g. navigator.app.exitApp())\n\nfixes MobileChromeApps/mobile-chrome-apps#383\n"
    },
    {
      "commit": "7f7279a1278c0fc35ff7119487f3566b930cff2b",
      "tree": "ed524249054906085db73d7ad3101ef7790fe96f",
      "parents": [
        "bbefd2aeb60b19e18f65f5caff3032d21a98b996"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Oct 21 15:47:30 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:26:07 2014 -0400"
      },
      "message": "Fix /deletefiles not working when deleting more than ~10 files.\n\nHttpRequest.readEntireBody() was completely broken :(\n"
    },
    {
      "commit": "bbefd2aeb60b19e18f65f5caff3032d21a98b996",
      "tree": "42199e7b0365ca2765b4b6d020d4a408edc71cf1",
      "parents": [
        "d9b8c499e918f8aa62e454ba2b9802664308af65"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Oct 21 15:47:03 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:26:07 2014 -0400"
      },
      "message": "Fix createproject.sh to work with hard-coded activity.java filename\n"
    },
    {
      "commit": "d9b8c499e918f8aa62e454ba2b9802664308af65",
      "tree": "4bb14045abf1d578eff8fb5445cdae2d71d23a52",
      "parents": [
        "634b3c4e3775577bdf9b9b183076701f976aa554"
      ],
      "author": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Thu Oct 09 11:39:30 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:26:07 2014 -0400"
      },
      "message": "Removed unnecessary checks.\n\nBy default, on Android, if a \"system\" webview type is specified, then we use the system webview; anything else and we use Crosswalk.\n"
    },
    {
      "commit": "634b3c4e3775577bdf9b9b183076701f976aa554",
      "tree": "cd80b18f16fd026463e184f3a793e43a6a4ff120",
      "parents": [
        "7c884d15369dd33897db72ef94f80c75ffd55a63"
      ],
      "author": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Mon Oct 06 16:50:32 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:26:07 2014 -0400"
      },
      "message": "Updated webview reload to take arguments.\n\nIt now takes and obeys the same arguments as `create` does...\n...except Android doesn\u0027t switch webview types yet.\n"
    },
    {
      "commit": "7c884d15369dd33897db72ef94f80c75ffd55a63",
      "tree": "675ff1efbc965cdfd44c78013f7f87bc243bf39e",
      "parents": [
        "da46492fc073c16858f42d1bbe6625f6c7b646a5"
      ],
      "author": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Mon Oct 06 15:34:11 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:26:07 2014 -0400"
      },
      "message": "Stopped destroying the webview on every launch.\n\nIf we\u0027re relaunching the same app, we reload the webview.  This handles the most annoying `cca push --watch` case.\nIf a new app is being launched, though, the webview is still destroyed and recreated (for now).\n"
    },
    {
      "commit": "da46492fc073c16858f42d1bbe6625f6c7b646a5",
      "tree": "eb46f5a62ca76f655e35471b7d2b3450d0443ebf",
      "parents": [
        "bc764cb59a40390fdd610e3b778c1413946ea16a"
      ],
      "author": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Mon Oct 06 15:26:33 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:26:07 2014 -0400"
      },
      "message": "Added a reload function.\n"
    },
    {
      "commit": "bc764cb59a40390fdd610e3b778c1413946ea16a",
      "tree": "5e65d68b6dcf23c50aefe10705de3adf5a93eb11",
      "parents": [
        "c7bb0ef1cdbb2ca63eb239458c60491beb4dead4"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 03 13:00:17 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:26:07 2014 -0400"
      },
      "message": "Add a /getfile endpoing to HarnessServer + Fixes for pipeFileToResponse.\n"
    },
    {
      "commit": "c7bb0ef1cdbb2ca63eb239458c60491beb4dead4",
      "tree": "fe35f8ea2922511318bc1d39906b53c3ef148903",
      "parents": [
        "9f5a4276489dd01a82c9b53cce7be83ac5e9d36a"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 03 12:56:08 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 21:26:07 2014 -0400"
      },
      "message": "Change config.xml-derived properties in installer into getters\n"
    },
    {
      "commit": "9f5a4276489dd01a82c9b53cce7be83ac5e9d36a",
      "tree": "152ba730e8c099834f8ecbda4eabd9cb7dc1eee3",
      "parents": [
        "55cf7bdcc248c699ef956302e036a5395eb15f6c"
      ],
      "author": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Thu Oct 02 15:04:14 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 20:44:20 2014 -0400"
      },
      "message": "Fixed missing declaration.\n"
    },
    {
      "commit": "55cf7bdcc248c699ef956302e036a5395eb15f6c",
      "tree": "eb9e6a688f3fe6fec1ced11d773224d821d4f577",
      "parents": [
        "6ce27408c50bea9eb123fb883ebcb593f8aa0444"
      ],
      "author": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Tue Sep 30 15:50:25 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 20:44:14 2014 -0400"
      },
      "message": "Added comments explaining launch handling.\n"
    },
    {
      "commit": "6ce27408c50bea9eb123fb883ebcb593f8aa0444",
      "tree": "7507756f1d23ab245355503fd326e8d0e74d49f3",
      "parents": [
        "4c0ac66f83a1eb5be9ce5c54b5f871b0273077a2"
      ],
      "author": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Tue Sep 30 15:01:06 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 20:44:03 2014 -0400"
      },
      "message": "Prevented launching an app that hasn\u0027t changed.\n\nAlso added an option to force a launch.  Sometimes, such as when an app is pushed for the first time, we want to launch the app even if it hasn\u0027t changed since the last time it was launched (in a previous session).\n"
    },
    {
      "commit": "4c0ac66f83a1eb5be9ce5c54b5f871b0273077a2",
      "tree": "ebb687d1b2299d9dafb9a9118f61605f3e434ec8",
      "parents": [
        "b0ec60698743ba8c1f9a8db22e3be7cf71b0a23d"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Sep 26 16:19:12 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 20:43:37 2014 -0400"
      },
      "message": "Delete manifest.json if it causes an exception\n"
    },
    {
      "commit": "b0ec60698743ba8c1f9a8db22e3be7cf71b0a23d",
      "tree": "a84422a95d15427a3150a9d67e490068d89fd4a8",
      "parents": [
        "33fcb5299d951b5f547be79a2d85f1272c34a9d0"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Sep 26 15:52:30 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 20:43:03 2014 -0400"
      },
      "message": "Make UrlRemap not apply to the main webview\n"
    },
    {
      "commit": "33fcb5299d951b5f547be79a2d85f1272c34a9d0",
      "tree": "160e5db89f255083a1dcf466dea076261460c961",
      "parents": [
        "5b77a1cb4b2540cbc4c1af10b4284eaad58c8a0f"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Sep 26 16:03:27 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 20:42:56 2014 -0400"
      },
      "message": "Make ResourcesLoader functions not depend on \"this\"\n"
    },
    {
      "commit": "5b77a1cb4b2540cbc4c1af10b4284eaad58c8a0f",
      "tree": "52594a2c6c49dbb8d12b2e4c55847576583ee009",
      "parents": [
        "1ddda0fcdce7a5e7fc8b344e8b0a25258df8e21f"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Sep 25 16:02:31 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Oct 24 20:42:39 2014 -0400"
      },
      "message": "Add filesystem location \u003cpreferences\u003e to config.xml\n"
    },
    {
      "commit": "1ddda0fcdce7a5e7fc8b344e8b0a25258df8e21f",
      "tree": "d9f8c520cd440f612447fabee3ed2b65ec7b9579",
      "parents": [
        "5fea836efe26b445bf57e2d380f760436f63339a"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Sep 23 10:45:26 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Sep 23 10:45:26 2014 -0400"
      },
      "message": "Update AppHarnessUI.java to include getExternalWhitelist()\n"
    },
    {
      "commit": "5fea836efe26b445bf57e2d380f760436f63339a",
      "tree": "bc8f30f911a454adaa91e153a5243317d03eda07",
      "parents": [
        "3b3236a31f615950df183050d3231ea3b2b84f88"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jul 25 22:02:46 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jul 25 22:02:46 2014 -0400"
      },
      "message": "createproject.sh: include ios by default when host\u003dDarwin\n"
    },
    {
      "commit": "3b3236a31f615950df183050d3231ea3b2b84f88",
      "tree": "0942340f9a029e7f869e9b95fa29a7956284e86c",
      "parents": [
        "f07fccfee6f31c06040fbe7e778b56e53c133636"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jul 25 21:51:36 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jul 25 21:51:36 2014 -0400"
      },
      "message": "Make createproject.sh work even when no dependencies are set up ahead of time\n\nAdds a package.json to get non-plugin dependencies.\n"
    },
    {
      "commit": "f07fccfee6f31c06040fbe7e778b56e53c133636",
      "tree": "bafe35e2816d3e5c7f6d12fd218ab92b709682b4",
      "parents": [
        "a7ece15583f005240ccf40039008662c7c04187e"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jul 11 12:27:00 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jul 11 12:27:00 2014 -0400"
      },
      "message": "Add ArrayBuffer.slice polyfill to unbreak Android pre-KK\n"
    },
    {
      "commit": "a7ece15583f005240ccf40039008662c7c04187e",
      "tree": "5d5f655494665cff333fbc5816ba103bd67f6418",
      "parents": [
        "ed0c8310b6f2fa1ac70c47a19fcc9f25e36c4efb"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Jul 10 16:36:42 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Jul 10 16:36:42 2014 -0400"
      },
      "message": "Fix exception on second launch and stop using plugin whitelist\n"
    },
    {
      "commit": "ed0c8310b6f2fa1ac70c47a19fcc9f25e36c4efb",
      "tree": "8ed5da9f55b1cb559490009a722911407d7b6adc",
      "parents": [
        "f30b3bc6d67067ad1eb9cf1e5c70231565c4c2f8"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jul 08 22:28:48 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jul 08 22:28:48 2014 -0400"
      },
      "message": "Fix wrong path in createproject.sh (failed every time)\n"
    },
    {
      "commit": "f30b3bc6d67067ad1eb9cf1e5c70231565c4c2f8",
      "tree": "623fa822339549264004fcef2b4ca0bcacbba5b1",
      "parents": [
        "7cf88fe2cbe049d4aece3a0e6212b7ff40e4674b"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jul 08 22:27:57 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jul 08 22:27:57 2014 -0400"
      },
      "message": "Make work with the latest changes to android-4.0.x\n"
    },
    {
      "commit": "7cf88fe2cbe049d4aece3a0e6212b7ff40e4674b",
      "tree": "e9ac4f95e60b8bea27a5553f7bed381116009107",
      "parents": [
        "d238bed9879f16564bb820a4d0104a428f1a6b6e"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 25 09:51:01 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 25 09:52:34 2014 -0400"
      },
      "message": "Fix up promise chaining for harness-push quit command\n"
    },
    {
      "commit": "d238bed9879f16564bb820a4d0104a428f1a6b6e",
      "tree": "8385f6ce85241775d0de4055cb7a5de91c03a062",
      "parents": [
        "99412342c9409e9231df9c86981283b4836e6c0e"
      ],
      "author": {
        "name": "David Kemp",
        "email": "drkemp@chromium.org",
        "time": "Tue Jun 24 08:40:13 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 25 09:49:13 2014 -0400"
      },
      "message": "Force app quit before push\n"
    },
    {
      "commit": "99412342c9409e9231df9c86981283b4836e6c0e",
      "tree": "2b450c83df8f4f76415a4d57a743b0c1fe745f05",
      "parents": [
        "958aae1999a88bacc226c737255dd7fc28d410f6"
      ],
      "author": {
        "name": "David Kemp",
        "email": "drkemp@chromium.org",
        "time": "Mon Jun 23 19:00:20 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 25 09:48:35 2014 -0400"
      },
      "message": "Adding support for app quit in harness-push\n"
    },
    {
      "commit": "958aae1999a88bacc226c737255dd7fc28d410f6",
      "tree": "ecd41bc1bc73e59568173507757a925ae56590a7",
      "parents": [
        "3f7bd69cc1f9005a1d20e2c00a6587e25867e8d1"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 24 14:38:19 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 24 14:38:19 2014 -0400"
      },
      "message": "Delete accidentally added CrxInstaller.js\n"
    },
    {
      "commit": "3f7bd69cc1f9005a1d20e2c00a6587e25867e8d1",
      "tree": "d81341b4d61357ef4c215db9617989848a2e384e",
      "parents": [
        "a7d4a4446b8c02cb137a214dea721c7806a035f1"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 24 14:16:28 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 24 14:35:16 2014 -0400"
      },
      "message": "First attempt at hooking back button up to exit app.\n\nRequires changes to cordova-android and x-walk plugin (so use master).\nCurrently has a bug where hitting back navigates to about:blank before\nminimizing.\n"
    },
    {
      "commit": "a7d4a4446b8c02cb137a214dea721c7806a035f1",
      "tree": "52125256934d6371affe95ed206c0c89e37d71c3",
      "parents": [
        "da50af87ca238ced26b10cdc3173abd7b6e8d1e2"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 24 12:45:16 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 24 14:32:08 2014 -0400"
      },
      "message": "Add plugin dependency info to prepare hook\n\nThis can be used to run apps without the need for platforms/ directory.\n"
    },
    {
      "commit": "da50af87ca238ced26b10cdc3173abd7b6e8d1e2",
      "tree": "e9f5fdeaaa12e6825088816988cd01268ab5b702",
      "parents": [
        "56c5edaaf76649ebbd9b29274e5739b940289fa1"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jun 20 14:06:23 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jun 20 14:06:23 2014 -0400"
      },
      "message": "Fix launched apps using renamed cordova_plugins.js file (ugh)\n"
    },
    {
      "commit": "56c5edaaf76649ebbd9b29274e5739b940289fa1",
      "tree": "e30b85003a8e53835f704565e88662820f5676f8",
      "parents": [
        "eed438dbea1565bf112087ea0c36b5d6be6b1e6e"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jun 20 13:47:40 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jun 20 13:47:40 2014 -0400"
      },
      "message": "Explicitly do a prepare at the end of createproject.sh to make launching in IDE easier\n"
    },
    {
      "commit": "eed438dbea1565bf112087ea0c36b5d6be6b1e6e",
      "tree": "0441e3c38f3602ce1329d46636ed3aa1ae6c9e69",
      "parents": [
        "6362305fa726ea65bf3288539371a43965e33eb5"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jun 20 13:37:48 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jun 20 13:37:48 2014 -0400"
      },
      "message": "Renaming cordova_plugins.js caused a race condition. Fix it by editing cordova.js\n"
    },
    {
      "commit": "6362305fa726ea65bf3288539371a43965e33eb5",
      "tree": "2d3c869783c4bf6964274dd65ca62d638a17438a",
      "parents": [
        "4eedf4d1ddcad774fa6514148ba3ef982d13123d"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jun 20 12:37:48 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jun 20 13:23:59 2014 -0400"
      },
      "message": "Fix cordova_plugins.js not being used on Android \u0026 restrict plugins on native side to only those that should be loaded.\n"
    },
    {
      "commit": "4eedf4d1ddcad774fa6514148ba3ef982d13123d",
      "tree": "23f8773cedba931ef5b18fb30efe76e40970ffa6",
      "parents": [
        "48ac896cc37c9a4055a24f2288b04ab7e5012251"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jun 20 13:18:15 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri Jun 20 13:23:59 2014 -0400"
      },
      "message": "Switch to using cordova-android 4.0.x branch\n"
    },
    {
      "commit": "48ac896cc37c9a4055a24f2288b04ab7e5012251",
      "tree": "e508aa3b6cb4ba2f979ea8d16459fc855c8aa7b1",
      "parents": [
        "56f2bb71c90468bac61cf92febe417f799b7db1e"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 18 21:40:22 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 18 21:44:56 2014 -0400"
      },
      "message": "Delete notification bubble\n"
    },
    {
      "commit": "56f2bb71c90468bac61cf92febe417f799b7db1e",
      "tree": "3317f6beb534bb4ce59c64dd4adf3f0c07460147",
      "parents": [
        "7a1b5ed549a2a10e99780307757be69c3458ab52"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 18 21:43:34 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 18 21:44:56 2014 -0400"
      },
      "message": "Make .gitignore use root-relative paths\n"
    },
    {
      "commit": "7a1b5ed549a2a10e99780307757be69c3458ab52",
      "tree": "f200fd79adec8df71197ef2360b45f7b426bcdfd",
      "parents": [
        "5047e0ead2fb048953c203e87f35981108b9e99d"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 18 21:41:55 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 18 21:44:56 2014 -0400"
      },
      "message": "Fix error on start-up from missing network-information plugin\n"
    },
    {
      "commit": "5047e0ead2fb048953c203e87f35981108b9e99d",
      "tree": "7b228d5cc475e8a580a50b8381912c3c469e67b7",
      "parents": [
        "c8fdd7ca19699a0c7852f989d65a334fd0082ab2"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 18 21:44:36 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed Jun 18 21:44:56 2014 -0400"
      },
      "message": "Fix zippush causing files to be base64 encoded (typo in prev commit)\n"
    },
    {
      "commit": "c8fdd7ca19699a0c7852f989d65a334fd0082ab2",
      "tree": "1a44c8a51afcf0cafe3d7dc8327f91b21a62b0b2",
      "parents": [
        "736c8d1dee8d28aa009984fb8e1c0a04829fefa6"
      ],
      "author": {
        "name": "David Kemp",
        "email": "drkemp@chromium.org",
        "time": "Wed Jun 18 16:33:46 2014 -0400"
      },
      "committer": {
        "name": "David Kemp",
        "email": "drkemp@chromium.org",
        "time": "Wed Jun 18 16:33:46 2014 -0400"
      },
      "message": "CB-6975 Improve the speed of the zip function\n"
    },
    {
      "commit": "736c8d1dee8d28aa009984fb8e1c0a04829fefa6",
      "tree": "ea35f6b1ec0035be799d6209a82a1b1a463eeee7",
      "parents": [
        "32145b8115c7b035077f46e5586a321cf450dd79"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 17 16:47:29 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 17 16:47:29 2014 -0400"
      },
      "message": "Add org.apache.cordova.media to --allplugins (mistakenly omitted)\n"
    },
    {
      "commit": "32145b8115c7b035077f46e5586a321cf450dd79",
      "tree": "7c95f54a459d82efc143cd6cd20a4407740eac11",
      "parents": [
        "7e9f136c3d98106e0cab55a46600a33175be34fd"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 17 16:22:29 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 17 16:40:02 2014 -0400"
      },
      "message": "Fix NPE in AppHarnessUI when events are sent and no one is listening\n"
    },
    {
      "commit": "7e9f136c3d98106e0cab55a46600a33175be34fd",
      "tree": "c4f731b354e6e771c61caa36d8d04b766446292c",
      "parents": [
        "a924bb0feee01e13532ceb43410f5e90f702e8f1"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 17 16:03:40 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 17 16:40:02 2014 -0400"
      },
      "message": "Fix ConcurrentModificationException in UrlRemap\n"
    },
    {
      "commit": "a924bb0feee01e13532ceb43410f5e90f702e8f1",
      "tree": "cb2da937fb4822fdb030e410efe23eb20bafe281",
      "parents": [
        "eafb3494809a87f21b4fe5d24dfd046a4e796477"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 17 15:30:41 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 17 16:40:02 2014 -0400"
      },
      "message": "Make pushsession.js properly update its cached assetManifest\n"
    },
    {
      "commit": "eafb3494809a87f21b4fe5d24dfd046a4e796477",
      "tree": "50668dedb39fc1320a1f167f49c8a01d4defbe0d",
      "parents": [
        "7a508c3bbb525680f7eda359a16d63a45c559d74"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 17 15:29:53 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 17 16:27:42 2014 -0400"
      },
      "message": "Bump HarnessServer protocol version, update comments, make bulkMove a bit safer\n"
    },
    {
      "commit": "7a508c3bbb525680f7eda359a16d63a45c559d74",
      "tree": "6070508091a53380e545efdd6e3060dfbdc0b7bc",
      "parents": [
        "e1994aa578984f0fcced4bb4bef8ee7992aa426a"
      ],
      "author": {
        "name": "David Kemp",
        "email": "drkemp@chromium.org",
        "time": "Tue Jun 17 08:08:55 2014 -0400"
      },
      "committer": {
        "name": "David Kemp",
        "email": "drkemp@chromium.org",
        "time": "Tue Jun 17 08:08:55 2014 -0400"
      },
      "message": "[CB6947] move app directory by default.\nuse parameter movetype\u003d\u0027file\u0027 to do merge\n"
    },
    {
      "commit": "e1994aa578984f0fcced4bb4bef8ee7992aa426a",
      "tree": "2508693232a61403e6d28d7c3bbb4dae0ff217ef",
      "parents": [
        "5c820244d5f2065f372f2a6306806ac4727c3934"
      ],
      "author": {
        "name": "Michal Mocny",
        "email": "mmocny@gmail.com",
        "time": "Mon Jun 16 14:24:26 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 16 22:48:07 2014 -0400"
      },
      "message": "Replacing CacheClear with inline cache clear (simpler called on slave webview)\n"
    },
    {
      "commit": "5c820244d5f2065f372f2a6306806ac4727c3934",
      "tree": "dc6b4f2081b67b36eec4b35c082123bf91928b5c",
      "parents": [
        "2ed499c942d65b98453ce71886951f99c1195d9a"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 16 22:43:39 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 16 22:43:39 2014 -0400"
      },
      "message": "createproject.sh: Use coho \u0026 cca to find plugins locally\n"
    },
    {
      "commit": "2ed499c942d65b98453ce71886951f99c1195d9a",
      "tree": "fa524b46aaf7eb37c65dc6eddcd78f688f28da17",
      "parents": [
        "f6fd67fe863717f29a77a2f6b8716048b16f4604"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 09 14:27:27 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 09 14:31:25 2014 -0400"
      },
      "message": "Fix curl example in comments for /zippush\n"
    },
    {
      "commit": "f6fd67fe863717f29a77a2f6b8716048b16f4604",
      "tree": "d12a0cb4b9dc9797e3fd0c1536346b7c363e5368",
      "parents": [
        "11f61169c1b21e44485c4834e27bb2a4c7fab7ec"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Jun 05 16:20:42 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 09 10:32:27 2014 -0400"
      },
      "message": "Add HttpServer.ResponseException for easier 500 responses\n"
    },
    {
      "commit": "11f61169c1b21e44485c4834e27bb2a4c7fab7ec",
      "tree": "30acdc57ce90d990243b14c49ebad638ceeee549",
      "parents": [
        "fbf4f181787805d1028f022c49536dce7d87f1d5"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu Jun 05 16:20:02 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 09 10:32:11 2014 -0400"
      },
      "message": "Fix deleteapp?all\u003d1 returning a 500 due to forgetting to return promise\n"
    },
    {
      "commit": "fbf4f181787805d1028f022c49536dce7d87f1d5",
      "tree": "34dd0dc8d961123d38cf6974b5545e7a2c9850ab",
      "parents": [
        "e1722eb98e499130049c6df0cb1d7c5224853aec"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 03 16:30:58 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 03 21:48:26 2014 -0400"
      },
      "message": "Move config.xml into template-overrides/\n"
    },
    {
      "commit": "e1722eb98e499130049c6df0cb1d7c5224853aec",
      "tree": "d76b530c59bc4d716d23696e34c486f4ff39d177",
      "parents": [
        "5385919a6763581f18cb82635d631deabadddc14"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 03 13:52:10 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 03 21:48:26 2014 -0400"
      },
      "message": "Small fix to UriRemap to remove double forward slash for plugin assets\n"
    },
    {
      "commit": "5385919a6763581f18cb82635d631deabadddc14",
      "tree": "7ecf95910b8454d1311290a02aeeb4b57accc07d",
      "parents": [
        "fd435c858c11145c95f02dc33db91572faf24510"
      ],
      "author": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Tue Jun 03 17:16:55 2014 -0400"
      },
      "committer": {
        "name": "Max Woghiren",
        "email": "max.woghiren@gmail.com",
        "time": "Tue Jun 03 17:16:55 2014 -0400"
      },
      "message": "Added dynamic ip updating.\n\nAlso added an option to skip caching when getting the address."
    },
    {
      "commit": "fd435c858c11145c95f02dc33db91572faf24510",
      "tree": "e2b4048b1b5c0736be933bbdcdf084b6f913c0bd",
      "parents": [
        "522332834ec67cf7c219ae160ec7b41f7e247a85"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 03 13:32:29 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Tue Jun 03 13:32:29 2014 -0400"
      },
      "message": "Add --allplugins to createproject.sh to add in more plugins\n"
    },
    {
      "commit": "522332834ec67cf7c219ae160ec7b41f7e247a85",
      "tree": "c0ce679460af53a81d4fa1dcfd876205fdcf081c",
      "parents": [
        "6f99cb1807c946b708d73e15d5b56b1a74cde692"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 02 16:37:14 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 02 16:37:14 2014 -0400"
      },
      "message": "Add NOTICE for topcoat.\n"
    },
    {
      "commit": "6f99cb1807c946b708d73e15d5b56b1a74cde692",
      "tree": "1686140b2e0ec22eab5f97b332ad5753fa49487e",
      "parents": [
        "3879ccfb48c732f33189270a792877b09f7e1d67"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 02 16:28:25 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Mon Jun 02 16:28:25 2014 -0400"
      },
      "message": "Use moment.js for last updated time\n"
    },
    {
      "commit": "3879ccfb48c732f33189270a792877b09f7e1d67",
      "tree": "a735a7b9d7d5a8fdb95a8d44e6e552312c38a562",
      "parents": [
        "f1a8fab759e20d937d88ffb64c346d2cbfbf7b16",
        "a40bfa31035abf9f9bc4939e76f42ce8f5686d8e"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri May 30 16:21:53 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri May 30 16:21:53 2014 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of https://git-wip-us.apache.org/repos/asf/cordova-app-harness\n"
    },
    {
      "commit": "f1a8fab759e20d937d88ffb64c346d2cbfbf7b16",
      "tree": "e6b5337c681acea74b27dedf3ea378433e47a592",
      "parents": [
        "3c31ce488ccf75dccb39751276a495a82559ee94"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri May 30 16:18:26 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri May 30 16:18:26 2014 -0400"
      },
      "message": "Make view shrink to reveal in-app-menu\n"
    },
    {
      "commit": "a40bfa31035abf9f9bc4939e76f42ce8f5686d8e",
      "tree": "5a27157be7b369b39ce224dc2ae9f0b12250328e",
      "parents": [
        "c95b39a89b0912420fb78c042e939202fc33e899"
      ],
      "author": {
        "name": "Marcel Kinard",
        "email": "cmarcelk@gmail.com",
        "time": "Fri May 30 12:03:45 2014 -0400"
      },
      "committer": {
        "name": "Marcel Kinard",
        "email": "cmarcelk@gmail.com",
        "time": "Fri May 30 12:03:45 2014 -0400"
      },
      "message": "CB-6818 Add license to CONTRIBUTING.md\n"
    },
    {
      "commit": "3c31ce488ccf75dccb39751276a495a82559ee94",
      "tree": "a9a96cf39cdbda4d6d00640356df286774efdb1e",
      "parents": [
        "c95b39a89b0912420fb78c042e939202fc33e899"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri May 30 10:24:40 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Fri May 30 10:39:39 2014 -0400"
      },
      "message": "Fix HarnessServer menu command\n"
    },
    {
      "commit": "c95b39a89b0912420fb78c042e939202fc33e899",
      "tree": "c45ad7887bab9fd510ed86d65c4ed1025fa4c9ec",
      "parents": [
        "be702a672654c0019502174a0dcfd40e11dd3745"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 15:54:38 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 16:04:34 2014 -0400"
      },
      "message": "Quit the active app if it\u0027s deleted via HarnessServer\n"
    },
    {
      "commit": "be702a672654c0019502174a0dcfd40e11dd3745",
      "tree": "636bdf9eecd73aaca053fc99e9593faaa4ce01d6",
      "parents": [
        "c03d3fb5283bfb9855f254133cf2afcaf0709b2b"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 15:48:44 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 15:48:44 2014 -0400"
      },
      "message": "Forgot to commit iOS changes for overlay change\n"
    },
    {
      "commit": "c03d3fb5283bfb9855f254133cf2afcaf0709b2b",
      "tree": "dedc836e7ffed924e5eb9dd604b9b710d83add62",
      "parents": [
        "f21635e6d09f893d69e775a463b796a788469e63"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 15:07:13 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 15:07:13 2014 -0400"
      },
      "message": "Remove some dead code left from last commit\n"
    },
    {
      "commit": "f21635e6d09f893d69e775a463b796a788469e63",
      "tree": "2e0a7e3f46fd15baa6fdf66cc0971f09f5eb0a04",
      "parents": [
        "425a9e2bff0a81349ea58328919d74b81098fc40"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 13:50:44 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 13:52:07 2014 -0400"
      },
      "message": "Rework Overlay menu to be another view within the main webview.\n\nMuch more performant and less complicated this way!\n"
    },
    {
      "commit": "425a9e2bff0a81349ea58328919d74b81098fc40",
      "tree": "500993c78b44aacdc5c46a45cb4bd82f11007ae9",
      "parents": [
        "daff4a57594253357822c21adfd46aa2d201b68b"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 13:49:19 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 13:49:19 2014 -0400"
      },
      "message": "Don\u0027t use UrlRemap on iOS (buggy with multiple webviews)\n"
    },
    {
      "commit": "daff4a57594253357822c21adfd46aa2d201b68b",
      "tree": "49ae2331bfc7109ce50ea4ae720751b1de51d247",
      "parents": [
        "ba3cb0edfb2c722643f63ad0db116c0fdaffedfe"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 10:54:36 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Thu May 29 10:54:36 2014 -0400"
      },
      "message": "Delete pinch to show overlay gesture.\n"
    },
    {
      "commit": "ba3cb0edfb2c722643f63ad0db116c0fdaffedfe",
      "tree": "9d656495edf93fc866fcf719d46d69ded02e7ac9",
      "parents": [
        "91d27cf7bf28a0d97377f974389bb0c971e69857"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed May 28 22:22:44 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed May 28 22:25:11 2014 -0400"
      },
      "message": "Show total plugin count in plugin message\n"
    },
    {
      "commit": "91d27cf7bf28a0d97377f974389bb0c971e69857",
      "tree": "60e586c006ab568bcab0227f6a5850a7652741c8",
      "parents": [
        "e780338523e4f711e49cb29f8739cd5bff3bb41d"
      ],
      "author": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed May 28 22:22:22 2014 -0400"
      },
      "committer": {
        "name": "Andrew Grieve",
        "email": "agrieve@chromium.org",
        "time": "Wed May 28 22:25:11 2014 -0400"
      },
      "message": "Add iconURL to Installer (to be shown in the UI in a future commit)\n"
    }
  ],
  "next": "e780338523e4f711e49cb29f8739cd5bff3bb41d"
}
