)]}'
{
  "log": [
    {
      "commit": "3348f14b3d46b172a5b557f81aac526b7e8bf5fb",
      "tree": "af66a1968163d529addff9c15b776102a3ecf91a",
      "parents": [
        "b4ee8349cc7e64a264335ee2dfecc00980eca07a"
      ],
      "author": {
        "name": "Costin Manolache",
        "email": "costin@google.com",
        "time": "Tue Sep 29 18:58:36 2009 -0700"
      },
      "committer": {
        "name": "Costin Manolache",
        "email": "costin@google.com",
        "time": "Tue Sep 29 22:52:05 2009 -0700"
      },
      "message": "Remove GAIA string\n"
    },
    {
      "commit": "4175b5f34a66057d564d955de91d0428f40928be",
      "tree": "b529022f58e79c9d93230641cce5c76774f09b92",
      "parents": [
        "d55de40481c6ec7d8fbd1a38c80a6c66bf462a71"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Sep 17 14:28:06 2009 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Sep 17 14:28:06 2009 -0700"
      },
      "message": "Import revised translations.  DO NOT MERGE\n"
    },
    {
      "commit": "5cacfb9df2eadc439052ea26c9d67a89376d2b31",
      "tree": "8fd98f026b548e7b39d7cebb7b115dd50693ac3d",
      "parents": [
        "b80f698362e84b83e1c44c92fb76b0fdf1a5ef6d"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Tue Sep 08 16:23:44 2009 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Tue Sep 08 16:54:05 2009 -0700"
      },
      "message": "Import revised translations.  DO NOT MERGE\n"
    },
    {
      "commit": "09984e8eb77666e978ed7450de67e2118d874b55",
      "tree": "6f00fdfd63974b5a913504f6b11794b534602f22",
      "parents": [
        "de5cd3d8646f312987062f46616466ae191aa984"
      ],
      "author": {
        "name": "Ye Wen",
        "email": "ywen@google.com",
        "time": "Mon Aug 31 12:57:50 2009 -0700"
      },
      "committer": {
        "name": "Ye Wen",
        "email": "ywen@google.com",
        "time": "Mon Aug 31 12:57:50 2009 -0700"
      },
      "message": "Set result code in REMOTE_INTENT receiver for subscribed feeds.\n"
    },
    {
      "commit": "c848b7023bcb19d7a392eb9f4669e56906e5382c",
      "tree": "a45c5f82309d22d535083bfd6cbbebb6123c898e",
      "parents": [
        "ba176d6c8ad581e65b46bd6835c0737e74ef453d"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Tue Aug 25 20:18:46 2009 -0700"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Tue Aug 25 20:31:05 2009 -0700"
      },
      "message": "clean up the too many deletes dialog\n"
    },
    {
      "commit": "c30d4aff04d46f8a48bb947875cfce5de6fc262a",
      "tree": "10cf8071c42b51a5e76e617778dd6d3c718575c6",
      "parents": [
        "dbade9d6a075b1d5b8ebe10ee8961a5de296c93b"
      ],
      "author": {
        "name": "Cynthia Wong",
        "email": "cynthiaw@google.com",
        "time": "Tue Aug 25 11:46:00 2009 -0700"
      },
      "committer": {
        "name": "Cynthia Wong",
        "email": "cynthiaw@google.com",
        "time": "Tue Aug 25 11:46:00 2009 -0700"
      },
      "message": "Only try to sync to subscribedfeeds for google acounts.\n"
    },
    {
      "commit": "cb7d38380cb2ca57e98cd39a96b32a1e804bf00b",
      "tree": "97d023f9926709c8bbe23292f0c6d02ffe2dc770",
      "parents": [
        "7bc08e9d51d3142717a94098f897a776f7b7bd71"
      ],
      "author": {
        "name": "Cynthia Wong",
        "email": "cynthiaw@google.com",
        "time": "Mon Aug 24 14:26:46 2009 -0700"
      },
      "committer": {
        "name": "Cynthia Wong",
        "email": "cynthiaw@google.com",
        "time": "Mon Aug 24 14:31:28 2009 -0700"
      },
      "message": "Subscribe to subscribedfeeds whenever the accounts change, this is basically a giant hack to let the gsync server know about the subscriptions for accounts.\n"
    },
    {
      "commit": "ffd0cb04f97e62d286d185c520580d81a9c328b1",
      "tree": "d864589d0cfa54abc971091b172d1497cb79adcb",
      "parents": [
        "fa2944d93f4c5050fb4a99d90006791c2995b31c"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Sat Aug 15 21:45:26 2009 -0700"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Sat Aug 15 22:40:25 2009 -0700"
      },
      "message": "do not merge: cherrypicked 3710f390968e683a0ad3adf0b517dfcade3564ce from master branch\n"
    },
    {
      "commit": "1dcdce6db705a882c6e752d00f8b89805e9968b8",
      "tree": "65c5ca5d2b56cfe3d738760d97dd5a8717e3a364",
      "parents": [
        "2a71ee7129a7a346a4f1fb9d63b82bc06b9120d5",
        "c353268c20a8ea425ac9f1e328684855cfc805e0"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 13 16:32:17 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jul 13 16:32:17 2009 -0700"
      },
      "message": "am c353268c: Merge change 6968 into donut\n\nMerge commit \u0027c353268c20a8ea425ac9f1e328684855cfc805e0\u0027\n\n* commit \u0027c353268c20a8ea425ac9f1e328684855cfc805e0\u0027:\n  Import new translations\n"
    },
    {
      "commit": "0560209bcdc21b0c708d7947edf8e2d07c2c170d",
      "tree": "98c3d90d3a5048d47cb415d5b4ef777092a758e5",
      "parents": [
        "c4ca420625183a8efa619e06287b47f3d2e72283"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Mon Jul 13 15:42:14 2009 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Mon Jul 13 15:42:14 2009 -0700"
      },
      "message": "Import new translations\n"
    },
    {
      "commit": "ac9385ef3105fb7464e1f46049c62755a8b7f0e9",
      "tree": "922fb69a8ec88aaa1ade3be16a9f7aa0d46fa25b",
      "parents": [
        "f86a58ff3d14fa6af3fa447809b45895bbb365f6"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Mon Jun 22 18:00:59 2009 -0700"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Tue Jun 23 15:53:16 2009 -0700"
      },
      "message": "- clean up the sync settings names to:\n   (get|set)SyncAutomatically\n   (get|set)MasterSyncAutomatically\n- change SYNC_EXTRAS_FORCE to SYNC_EXTRAS_MANUAL to mace clear that\n  this overrides the .*SyncAutomatically settings\n- make ContentResolver methods that call the sync controls methods\n  in IContentService so that SDK users can use them\n- rename startSync to requestSync to reinforce the fact that a sync\n  is not immediately or always started when this method is called\n- add an Account parameter to all the sync settings and control methods\n- change the sync control methods to take a String authority rather than a Uri uri\n"
    },
    {
      "commit": "130a8f8cbfa4d5185b53e782cb25412ae481017e",
      "tree": "14e2ac55f8d3c2eb368a9a514e3ffe27a6758743",
      "parents": [
        "2420186c891bf8aa33ed5e710bfea9e1cd963c84",
        "3f4263fac6bcc68b3c7fff8e6ac9ad2d97b2ad4c"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 17 18:46:21 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 17 18:46:21 2009 -0700"
      },
      "message": "am 3f4263fa: Merge change 4411 into donut\n\nMerge commit \u00273f4263fac6bcc68b3c7fff8e6ac9ad2d97b2ad4c\u0027\n\n* commit \u00273f4263fac6bcc68b3c7fff8e6ac9ad2d97b2ad4c\u0027:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "f204ab3ebc089373c44b6977f0db4b82891f128d",
      "tree": "33956c1c749ff9abdd861224eac7cc68aed8c65c",
      "parents": [
        "0781df943e5a7a72ac82394874b6200d14ddd02c"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Wed Jun 17 15:17:29 2009 -0700"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Wed Jun 17 15:17:29 2009 -0700"
      },
      "message": "Squashed commit of the following:\n\ncommit 8e1a200225b7e4756b83d17d679a71a06a38b696\nAuthor: Eric Fischer \u003cenf@google.com\u003e\nDate:   Tue Jun 16 16:32:56 2009 -0700\n\n    Make names of Settings, VPN, Subscribed Feeds providers localizable.\n"
    },
    {
      "commit": "075a4f8951ec22458c7d71a578a73c487d01afb9",
      "tree": "eaa869b3cd44995c131bf520fecab26a26a8c62d",
      "parents": [
        "544fff54a9cbcdf58ca993eeefed86699157f820"
      ],
      "author": {
        "name": "Wei Huang",
        "email": "weih@google.com",
        "time": "Wed May 20 09:59:56 2009 -0700"
      },
      "committer": {
        "name": "Wei Huang",
        "email": "weih@google.com",
        "time": "Wed May 20 09:59:56 2009 -0700"
      },
      "message": "Fix bug #1863517: use the new signature for data message token in SubscribedFeedsIntentService.\n"
    },
    {
      "commit": "97ecc9cbe7eccafc0923d7655daf07f4c2ea9791",
      "tree": "3d57380415f1782f70a75b42d8f28234abf857cf",
      "parents": [
        "6a8d5332f00bdfade6674b312e7166940aa28348"
      ],
      "author": {
        "name": "Wei Huang",
        "email": "weih@google.com",
        "time": "Mon May 11 17:44:20 2009 -0700"
      },
      "committer": {
        "name": "Wei Huang",
        "email": "weih@google.com",
        "time": "Wed May 13 13:20:59 2009 -0700"
      },
      "message": "define Intent.ACTION_REMOTE_INTENT, which replaces the old GTalk data messaging intent \"android.intent.action.GTALK_DATA_MESSAGE_RECEIVED\".\n\nThe remote intent concept shouldn\u0027t be limited to Google or GTalkService. It should be owned by the Android platform.\n"
    },
    {
      "commit": "7a1355950172b7a549820e9a2cd4a9b2099ec32f",
      "tree": "dc8940cdf38bae09e3427e44ebf1328861abc20b",
      "parents": [
        "39a8bb26326ceeaad5b46d29bf485329c67ced2f",
        "231cc608d06ffc31c24bf8aa8c8275bdd2636581"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed May 06 00:28:37 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed May 06 00:28:37 2009 -0700"
      },
      "message": "merged 231cc608d06ffc31c24bf8aa8c8275bdd2636581\n"
    },
    {
      "commit": "231cc608d06ffc31c24bf8aa8c8275bdd2636581",
      "tree": "9b435c670f0f16751a21ae4678bfbed7d8e159b4",
      "parents": [
        "06d96020c35dac2bf1651cb8bd4cfced911f1142"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Apr 27 17:10:36 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue May 05 15:40:53 2009 -0700"
      },
      "message": "Rewrite SyncStorageEngine to use flat files and in-memory data structures.\n\nThe previous implementation used a database for storing all of its state, which could cause\na significant amount of IO activity as its tables were updated through the stages of a sync.\nThis new implementation replaces that in-memory data structures, with hand-written code\nfor writing them to persistent storage.\n\nThere are now 4 files associated with this class, holding various pieces of its state that\nshould be consistent.  These are everything from a main XML file of account information that\nmust always be retained, to a binary file of per-day statistics that can be thrown away at\nany time.  Writes of these files as scheduled at various times based on their importance of\nthe frequency at which they change.\n\nBecause the database no longer exists, there needs to be a new explicit interface for\ninteracting with the sync manager database.  This is provided by new APIs on IContentService,\nwith a hidden method on ContentResolver to retrieve the IContentService so that various\nsystem entities can use it.  Other changes in other projects are required to update to the\nnew API.\n\nThe goal here is to have as little an impact on the code and functionality outside of\nSyncStorageEngine, though due to the necessary change in API it is still somewhat extensive.\n"
    },
    {
      "commit": "d9d2f1140b52fd0c014e9deac59f6000564b7e84",
      "tree": "2c30edce5a148ef94400277f20619c821fd9da94",
      "parents": [
        "843bbb8597d561c2541f86d1f391ae65261cf743"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Thu Apr 23 13:36:27 2009 -0700"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Thu Apr 23 15:37:45 2009 -0700"
      },
      "message": "change the sync framework and users to understand Account\n"
    },
    {
      "commit": "22f711423e66750cd44a64e75372ea66304fb9a1",
      "tree": "06653acb4a7d79d8d2b38bdf0997c893c18d726f",
      "parents": [
        "ef0996ffa36cfe9b7927e09aece801fb4f594ced"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "",
        "time": "Tue Mar 24 20:10:17 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 24 20:10:17 2009 -0700"
      },
      "message": "Automated import from //branches/master/...@141380,141380\n"
    },
    {
      "commit": "9066cfe9886ac131c34d59ed0e2d287b0e3c0087",
      "tree": "d88beb88001f2482911e3d28e43833b50e4b4e97",
      "parents": [
        "d83a98f4ce9cfa908f5c54bbd70f03eec07e7553"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:31:44 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:31:44 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "d83a98f4ce9cfa908f5c54bbd70f03eec07e7553",
      "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904",
      "parents": [
        "076357b8567458d4b6dfdcf839ef751634cd2bfb"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:45 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:45 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "076357b8567458d4b6dfdcf839ef751634cd2bfb",
      "tree": "efbb2fd6f1dc67d2d606382fc3b82983e7cb2e1f",
      "parents": [
        "3dec7d563a2f3e1eb967ce2054a00b6620e3558c"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 14:04:24 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 14:04:24 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@132589\n"
    },
    {
      "commit": "3dec7d563a2f3e1eb967ce2054a00b6620e3558c",
      "tree": "aa3b0365c47cb3c1607c0dc76c8d32b4046fc287",
      "parents": [
        "15ab3eae2ec3d73b3e8aa60b33ae41445bf83f4b"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Mar 02 22:54:33 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Mar 02 22:54:33 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@137055\n"
    },
    {
      "commit": "d24b8183b93e781080b2c16c487e60d51c12da31",
      "tree": "fbb89154858984eb8e41556da7e9433040d55cd4",
      "parents": [
        "f1e484acb594a726fb57ad0ae4cfe902c7f35858"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Feb 10 15:44:00 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Feb 10 15:44:00 2009 -0800"
      },
      "message": "auto import from //branches/cupcake/...@130745\n"
    },
    {
      "commit": "9266c558bf1d21ff647525ff99f7dadbca417309",
      "tree": "1630b1ba80f4793caf39d865528e662bdb1037fe",
      "parents": [
        "b798689749c64baba81f02e10cf2157c747d6b46"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jan 15 16:12:10 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jan 15 16:12:10 2009 -0800"
      },
      "message": "auto import from //branches/cupcake/...@126645\n"
    },
    {
      "commit": "54b6cfa9a9e5b861a9930af873580d6dc20f773c",
      "tree": "35051494d2af230dce54d6b31c6af8fc24091316",
      "parents": [],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "message": "Initial Contribution\n"
    }
  ]
}
