)]}'
{
  "log": [
    {
      "commit": "a494fe4c195bbdeddb687d5783717a631ee8b5e3",
      "tree": "481cec3ef953467076a3e9a68554db3aefa9d048",
      "parents": [
        "7ef0077f9f6a3a4c50244e963b2215aebb0fe3ca"
      ],
      "author": {
        "name": "Alon Albert",
        "email": "aalbert@google.com",
        "time": "Thu Feb 17 18:13:12 2011 -0800"
      },
      "committer": {
        "name": "Alon Albert",
        "email": "aalbert@google.com",
        "time": "Tue Feb 22 11:00:01 2011 -0800"
      },
      "message": "Add tests for quoted parameters\n\nChange-Id: I00308cfcde13b5ec642763f5abf0f35a38cb2e3e\n"
    },
    {
      "commit": "7ef0077f9f6a3a4c50244e963b2215aebb0fe3ca",
      "tree": "1e0e00862903949a44ab19b971c076553677a447",
      "parents": [
        "7aeb4e97b62f78903da713c1328a5518bfb74b02"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Mon Feb 07 13:39:10 2011 -0800"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Mon Feb 07 13:39:10 2011 -0800"
      },
      "message": "Import revised translations.  DO NOT MERGE\n\nChange-Id: I3eb1abbda1993155adbda3fd43f0480531f6c2c3\n"
    },
    {
      "commit": "7aeb4e97b62f78903da713c1328a5518bfb74b02",
      "tree": "a88212f4ce71d01f0bea14e29504baebe2a56d80",
      "parents": [
        "ba87fe417cad7ba63354f145e32be18b18e77a1d"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Jan 06 10:43:09 2011 -0800"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Jan 06 10:43:09 2011 -0800"
      },
      "message": "Import translations for additional languages.\n\nChange-Id: I48e95660462276a252056c2fcfc6ccf87968f86d\n"
    },
    {
      "commit": "ba87fe417cad7ba63354f145e32be18b18e77a1d",
      "tree": "f15d00055f5266534aac7aae590ffc98cad3c27f",
      "parents": [
        "4f59043ccc10bc2a13ae3bbc2c7f14998f3fe68c"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Dec 22 12:07:12 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Dec 22 12:07:12 2010 -0800"
      },
      "message": "Fix bug #3218104 (CalendarSyncAdapter says \"android.content.OperationApplicationException: wrong number of rows: 0\") - DO NOT MERGE\n\n- revert code from https://android-git.corp.google.com/g/#change,54585 concerning deleteEventInternal()\n- transform an UPDATE to a DELETE if we are processing a recurrence exception whose status is updated to STATUS_CANCEL\nand if the recurrence exception does not have its original event (parent) anymore\n- it is a merge from https://android-git.corp.google.com/g/#change,84438\n\nChange-Id: Id42e258514cb09baf762369f67f27858aba48209\n"
    },
    {
      "commit": "4f59043ccc10bc2a13ae3bbc2c7f14998f3fe68c",
      "tree": "92f7eab941e71c9f4c244219793b228e828a58c6",
      "parents": [
        "e43e3300d9332b21153f6d16280f80bea8b7e097"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Nov 10 18:35:24 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Nov 12 13:11:14 2010 -0800"
      },
      "message": "Fix bug #3185258 Events (single / recurring) are not deleted immediately - DO NOT MERGE\n\n- make instance expansion not expand recurring events that haev been deleted by the user\n- merge code from master (change https://android-git.corp.google.com/g/#change,50285)\n- merge code from master (change https://android-git.corp.google.com/g/#change,54585)\n\nChange-Id: I957a2bcac0e7f3d39fe1c50390715bdf5d8e7705\n"
    },
    {
      "commit": "e43e3300d9332b21153f6d16280f80bea8b7e097",
      "tree": "dd7570db13ac84bd188d0bcc9977e9249169a4c4",
      "parents": [
        "4cd51d80bbec3ef953d1a18dd4a7e4e903e608e3"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Oct 15 15:40:12 2010 -0700"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Oct 15 16:03:46 2010 -0700"
      },
      "message": "b/3102609 Update widgets when device tz changes. Do not merge\n\nChange-Id: I4e1a03dadcddc80bcc77c1d689e8eac267d47d7e\n"
    },
    {
      "commit": "4cd51d80bbec3ef953d1a18dd4a7e4e903e608e3",
      "tree": "b231bb40c5e133b0cf66e994427c0fea70a866d2",
      "parents": [
        "310389035e8e7b607823325230c40220ac2dab60"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@android.com",
        "time": "Sun Oct 10 12:38:22 2010 -0700"
      },
      "committer": {
        "name": "Michael Chan",
        "email": "mchan@android.com",
        "time": "Sun Oct 10 12:53:27 2010 -0700"
      },
      "message": "b/3081783 Fixed all days events to show the correct date\n\nChange-Id: I463fa99d22ad233f73fd4ced66aff891dc590a70\n"
    },
    {
      "commit": "310389035e8e7b607823325230c40220ac2dab60",
      "tree": "222b3e48904805ffc6f1d1013d8e07a2fc79a449",
      "parents": [
        "3443e3ebeaa39e8415b43e7cf3b218caee554e9b"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Thu Sep 30 14:30:14 2010 -0700"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Thu Sep 30 16:29:36 2010 -0700"
      },
      "message": "b/3019621 Collapses AlarmScheduler threads. Do not merge\n\nThis adds some logic around running the AlarmScheduler to ensure\nthat only one version is run at a time. If new requests come in\nwhile a version is already running they will be aggregated every\nfive seconds.\n\nChange-Id: Idd61dc912796a835f46bfbe4a74837570b41bc06\n"
    },
    {
      "commit": "3443e3ebeaa39e8415b43e7cf3b218caee554e9b",
      "tree": "f668845353b4af8e3f5e534faf3121da191ebad0",
      "parents": [
        "616e6f19fcef87a7dcc910a95c4c340683648ad0"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Sep 30 13:26:58 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Sep 30 13:43:56 2010 -0700"
      },
      "message": "Fix bug #3025267 (Calendar App TZ are messed up when using Secondary TZ feature in Web Calendar)\n\n- updateEventsStartEndFromEventRawTimesLocked() is now using the Event\u0027s timezone instead of the device one\n- update unit tests\n\nFixed also cleaning of old CalendarCache data.\n\nChange-Id: Ia7d543eda26a4a0dee1d7174f84d0f50097b81b0\n"
    },
    {
      "commit": "616e6f19fcef87a7dcc910a95c4c340683648ad0",
      "tree": "2488910bcfa3c60ba0bf79197b81b3724b799225",
      "parents": [
        "8ba0d0238b153d331d612078b19492cb44728101"
      ],
      "author": {
        "name": "Daisuke Miyakawa",
        "email": "dmiyakawa@google.com",
        "time": "Mon Sep 27 11:35:25 2010 -0700"
      },
      "committer": {
        "name": "Daisuke Miyakawa",
        "email": "dmiyakawa@google.com",
        "time": "Mon Sep 27 13:12:09 2010 -0700"
      },
      "message": "Hide events in a calendar when it becomes hidden. Do not merge\n\nBug: 3035826\nChange-Id: I4845a674414bf4fa03e1db11004a80c813893932\n"
    },
    {
      "commit": "8ba0d0238b153d331d612078b19492cb44728101",
      "tree": "2c9b6acd3c70617c0b8bf02531bbecf4c4fa4d0d",
      "parents": [
        "9ea309741d32d9634a0eb6786f1cc3057d3f82a6"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Sep 21 09:16:06 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Sep 24 02:05:40 2010 -0700"
      },
      "message": "Fix bug #2985570 Event timezone is changed to device or Calendar timezone after sync\n\n- When adding an Event, also add the originalTimezone ExtendedProperties if needed\n\nChange-Id: Id7e03d75db2411bc26f4053af1908957ebe6b9ef\n"
    },
    {
      "commit": "9ea309741d32d9634a0eb6786f1cc3057d3f82a6",
      "tree": "13a965767149e5b52b7ddd2db5ad16c29df864bc",
      "parents": [
        "52913fc7cdf91c335e3559e0b38f9b3e2090737f"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Sep 23 06:09:03 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Sep 23 06:09:03 2010 -0700"
      },
      "message": "Fix bug #3029831 (Finalizing a Cursor that has not been deactivated or closed. database...) - DO NOT MERGE\n\n- add missing cursor.close() statement\n\nChange-Id: I5a4287a6944bbc3091d30af45480e863405a8316\n"
    },
    {
      "commit": "52913fc7cdf91c335e3559e0b38f9b3e2090737f",
      "tree": "08d304dc58c4450e71c2e2c8a24f20486156a151",
      "parents": [
        "63c1db9914a7b01181b71cc6c66d046ad7e794a9"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Sep 21 05:37:10 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Sep 22 03:57:29 2010 -0700"
      },
      "message": "Fix bug #3021653 (Clean CalendarProvider2 logging) - DO NOT MERGE\n\n- use Log.isLoggable() pattern\n- add a log when dtStart2445 and dtEnd2445 are null at the same time in EventsRawTimes table\n- make get2445ToMillis() less verbose\n\nChange-Id: Ib1a560bc6732fa5c1569b56b0789a383cc4f34e5\n"
    },
    {
      "commit": "63c1db9914a7b01181b71cc6c66d046ad7e794a9",
      "tree": "393b5e50869e6f3fc29175eef471f7fbc2c0bff6",
      "parents": [
        "b8d67669dc0c02b4cb07afe920a714d0cf4ac238"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Sep 17 14:51:56 2010 -0700"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Sep 17 17:48:17 2010 -0700"
      },
      "message": "b/3008125 Make CP update the default prevTZ. Do not merge\n\nThe phone will default to GMT as the time zone on a fresh wipe\nwhich is not a time zone that Calendar officially supports. This\nchange makes it so when the phone figures out where it is the\nprovider will update the default previous time zone to the phone\u0027s\nnew location instead of using GMT.\n\nChange-Id: I359f5370f82c2aba8aa59fc0e60b40167ed3c8f3\n"
    },
    {
      "commit": "b8d67669dc0c02b4cb07afe920a714d0cf4ac238",
      "tree": "ede075b8ca13842e79b26e9d945e072ad16f8c4a",
      "parents": [
        "591948ebf4810893bfba8c09c96ef46a808473d5"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Wed Sep 15 14:31:27 2010 -0700"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Wed Sep 15 14:32:37 2010 -0700"
      },
      "message": "Fix widget to update correctly. Do not merge\n\nThis changes widget to query the db directly since it is\nalready in a background thread. There were issues with using\nan async query on top of a bg thread that this avoids.\n\nChange-Id: If1a90e893627da4172530b073d0e89ea934409cb\n"
    },
    {
      "commit": "591948ebf4810893bfba8c09c96ef46a808473d5",
      "tree": "42281949e54ddcad6330d8e4f771a5d31c5f6847",
      "parents": [
        "1431b9ded6f7a429a6f3c9e737fc79320627409c"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Tue Sep 14 17:38:29 2010 -0700"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Tue Sep 14 18:04:08 2010 -0700"
      },
      "message": "Adjusts portrait widget layout. Do not merge\n\nMoves the \u003cx\u003e more events message to the bottom of the widget in\nlandscape and adjusts the spacing so everything fits.\n\nChange-Id: I689d427ccf516e5880045ed9abf22c2c57c60079\n"
    },
    {
      "commit": "1431b9ded6f7a429a6f3c9e737fc79320627409c",
      "tree": "45652a9921d9195d2ea808658e9bfdf8b77ab5c2",
      "parents": [
        "76f4f0375fa5892d3b2ab0c39d1fc367528b974c"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Tue Sep 14 15:21:26 2010 -0700"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Tue Sep 14 15:54:20 2010 -0700"
      },
      "message": "Adds home tz support to calendar widget. Do not merge\n\nChange-Id: I797d75b70b935a3b1b65bef994fcffffa764a693\n"
    },
    {
      "commit": "76f4f0375fa5892d3b2ab0c39d1fc367528b974c",
      "tree": "83e1deb5c3c4a824363dc82998c24875687e8a22",
      "parents": [
        "830f982e42eafaeb95b72fef9830167d39b025dc"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Sep 10 19:19:06 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Sep 10 19:20:28 2010 -0700"
      },
      "message": "Add home timezone support - DO NOT MERGE\n\n- have handleEventDayQuery() use timezone\n- update Javadoc\n\nChange-Id: I1e5e4ce1dfa43088ea93566661f4b298fa53e47f\n"
    },
    {
      "commit": "830f982e42eafaeb95b72fef9830167d39b025dc",
      "tree": "bf2a623610a64690d37147b6a3a2bd5175b206e1",
      "parents": [
        "68040cf2602bb15bb4cf1072cf99132118d5a805"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Sep 10 16:05:21 2010 -0700"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Sep 10 16:05:21 2010 -0700"
      },
      "message": "Fix bug where instances didn\u0027t regen. Do not merge\n\nInstances table wasn\u0027t regenerating when the user switched to auto.\n\nChange-Id: I43a40699f6fa99c3c90f3005ce464d50ef56b45a\n"
    },
    {
      "commit": "68040cf2602bb15bb4cf1072cf99132118d5a805",
      "tree": "aec28f28c50b43737fdc7b184faafb31a6aeb6d0",
      "parents": [
        "6777058145e10eff868a2ad11841551772effc9b"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Sep 02 19:28:35 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Sep 10 13:40:15 2010 -0700"
      },
      "message": "Add home timezone support - DO NOT MERGE\n\n- add querying CalendarCache key/values thru CalendarProvider\n- add unit tests\n\nChange-Id: I87da6b5174c800dca76d3965a7d7cb8953003e1a\n"
    },
    {
      "commit": "6777058145e10eff868a2ad11841551772effc9b",
      "tree": "eabd01ae82da4529b80320d214674b5bd76273c9",
      "parents": [
        "e38b846ecb52bcc7aa300b7a67f359f861a7cae2"
      ],
      "author": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Thu Jul 29 10:50:01 2010 -0700"
      },
      "committer": {
        "name": "Guang Zhu",
        "email": "guangzhu@google.com",
        "time": "Thu Aug 26 10:51:25 2010 -0700"
      },
      "message": "add emma filter to make file\n\nso code coverage report won\u0027t contain classes in local static\nJava libraries\n\nChange-Id: Ie80871fd6a89afb1bb3ea86a6688a5857638803d\n"
    },
    {
      "commit": "e38b846ecb52bcc7aa300b7a67f359f861a7cae2",
      "tree": "061e29662851a60df53fe3553ebe543b34beb022",
      "parents": [
        "f6ab66a5d6654be38a69d0f413e7fca22dc862d0",
        "a2f46bd2223d1bdad7ecd69803288493f73bc4bc"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Aug 23 14:01:52 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 23 14:01:52 2010 -0700"
      },
      "message": "Merge \"Merge Froyo fix for CalendarCache init (Change I268be53d) - DO NOT MERGE\" into gingerbread"
    },
    {
      "commit": "a2f46bd2223d1bdad7ecd69803288493f73bc4bc",
      "tree": "7667fc9ab876390cfa8d6a8be3cf0fa19e437c10",
      "parents": [
        "25b0f0ee070a5fff18cfcaffa86cb1607941c8a5"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Aug 20 14:10:24 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Aug 20 17:53:41 2010 -0700"
      },
      "message": "Merge Froyo fix for CalendarCache init (Change I268be53d) - DO NOT MERGE\n\n- update database schema version to 100 (need room for potential Froyo updates)\n- fix initial row insert into CalendarCache table\n- recreate the CalendarCache table with correct data when upgrading the schema\n\nChange-Id: I5d6844c3a10fdf63aedd9e7b7952cae144d6c35e\n"
    },
    {
      "commit": "f6ab66a5d6654be38a69d0f413e7fca22dc862d0",
      "tree": "e6227a2e94a94b13b783adc34ad95b273a3e02b7",
      "parents": [
        "d69a1a64027cd5937c7db622aaf7af493e6d3610",
        "9be87f0a751a29226f6d2a57054eb0627d370b9b"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Aug 18 16:08:20 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 18 16:08:20 2010 -0700"
      },
      "message": "am 9be87f0a: (-s ours) Merge \"Fix bug #2927288 (CalendarCache table is not setup correctly) - DO NOT MERGE\" into froyo\n\nMerge commit \u00279be87f0a751a29226f6d2a57054eb0627d370b9b\u0027 into gingerbread\n\n* commit \u00279be87f0a751a29226f6d2a57054eb0627d370b9b\u0027:\n  Fix bug #2927288 (CalendarCache table is not setup correctly) - DO NOT MERGE\n"
    },
    {
      "commit": "9be87f0a751a29226f6d2a57054eb0627d370b9b",
      "tree": "45e83656b30b8d659d5b593959ecbfa4aaac5031",
      "parents": [
        "d69a1a64027cd5937c7db622aaf7af493e6d3610",
        "743270bd7601ff4798a653dbb6ba5e956797a78a"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Aug 18 15:51:26 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 18 15:51:26 2010 -0700"
      },
      "message": "Merge \"Fix bug #2927288 (CalendarCache table is not setup correctly) - DO NOT MERGE\" into froyo"
    },
    {
      "commit": "743270bd7601ff4798a653dbb6ba5e956797a78a",
      "tree": "2ddb865a30e1d7a8b8aad2408a826b20cc9b12d1",
      "parents": [
        "25b0f0ee070a5fff18cfcaffa86cb1607941c8a5"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Aug 17 16:08:12 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Aug 18 15:26:44 2010 -0700"
      },
      "message": "Fix bug #2927288 (CalendarCache table is not setup correctly) - DO NOT MERGE\n\n- update database schema version to 70\n- fix initial row insert into CalendarCache table\n- recreate the CalendarCache table with correct data when upgrading the schema\n\nChange-Id: I268be53d9d270ed469b7057b2636f81710ee23ba\n"
    },
    {
      "commit": "d69a1a64027cd5937c7db622aaf7af493e6d3610",
      "tree": "e6227a2e94a94b13b783adc34ad95b273a3e02b7",
      "parents": [
        "25b0f0ee070a5fff18cfcaffa86cb1607941c8a5"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Aug 17 14:11:12 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Aug 17 14:41:19 2010 -0700"
      },
      "message": "Fix bug #2891424 (Cant see events in Calendar - after updating timezone db)\n\n- force the Instances re-expansion after cleaning them\n\nChange-Id: Ie4c843ff95039b343caab7b34de5e1d963727a72\n"
    },
    {
      "commit": "25b0f0ee070a5fff18cfcaffa86cb1607941c8a5",
      "tree": "695d9b3b11c475aa2dce1d4fd2f2adf63575e534",
      "parents": [
        "10b51a19b296eac6c43608a7a57fb910b0e5e8bc"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue May 25 22:14:41 2010 -0500"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Wed May 26 18:04:17 2010 -0500"
      },
      "message": "Add a PRE_BOOT_COMPLETED receiver.\n\nIt runs the first time after an OTA and either creates\nthe database or runs the upgrade path on it. This may\ntake a significatn amount of time so it\u0027s done before\nthe boot animation completes.\n\nBug: 2713849\nChange-Id: Ie7ac396bd82577cd421daa102ad05c0abf55b6f0\n"
    },
    {
      "commit": "10b51a19b296eac6c43608a7a57fb910b0e5e8bc",
      "tree": "856e01e1723acdd11e941203f5487fc885f1b3da",
      "parents": [
        "1dc2919361bc56af0c5ea763845fae49d289839a"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Apr 27 20:32:38 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Apr 27 20:53:07 2010 -0700"
      },
      "message": "Fix for bug #2634470 (Force close in FRF26)\n\n- make deleteEventInternal() not launching a thread for checking alarms when used in a batch\n\nChange-Id: I72f8fe9ba1561623732f02bcbfb3d92dd4fde097\n"
    },
    {
      "commit": "1dc2919361bc56af0c5ea763845fae49d289839a",
      "tree": "26d4a49b978183a887cc27f784673862af6d0360",
      "parents": [
        "34a320093a689fa326c1b2b2b6a26771f0ba7400"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Apr 26 17:39:36 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Apr 26 17:39:36 2010 -0700"
      },
      "message": "Fix bug #2622128 (Can\u0027t delete Exchange event exception)\n\n- use DELETE status during instances expansion\n\nIt was previously only checking if the eventStatus was not STATUS_CANCELED for inserting\nthe instance. Now it should be not DELETED as well.\n\nChange-Id: Ifc870ad5026c9680593e4adf63596852c056b3eb\n"
    },
    {
      "commit": "34a320093a689fa326c1b2b2b6a26771f0ba7400",
      "tree": "556b812bd8b81fdb4069a86290bde53c1c8e82e6",
      "parents": [
        "e3730b9dce00439666e7ef324a28263a0ee92032",
        "1f755da44aeecdc84d0e957d55178f942dfdb15d"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Apr 12 18:15:26 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 12 18:15:27 2010 -0700"
      },
      "message": "Merge \"Fix bug #2590414 (android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here)\" into froyo"
    },
    {
      "commit": "e3730b9dce00439666e7ef324a28263a0ee92032",
      "tree": "c8b2908ca7fb5161ae78e3b676c41ee9a3584074",
      "parents": [
        "63540b183addfa1707c5f7e1fae4ee0a5080cf30"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Mon Apr 12 13:23:46 2010 -0700"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Mon Apr 12 15:13:55 2010 -0700"
      },
      "message": "b/2440161 Made UTC override timezone for allday events\n\nExchange events had an incorrect timezone set for allDay events and we were setting\nsec, min, hour to zero on that timezone. This change will make it override any tz\nset and force allDay events to be in UTC.\n\nChange-Id: I14fbdcc14bae2ef45b2e5e0c70e68e4c26136d7b\n"
    },
    {
      "commit": "1f755da44aeecdc84d0e957d55178f942dfdb15d",
      "tree": "732b79bdccb1663bce325d8079e25336d8eb3642",
      "parents": [
        "63540b183addfa1707c5f7e1fae4ee0a5080cf30"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Apr 12 14:22:02 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Apr 12 14:22:02 2010 -0700"
      },
      "message": "Fix bug #2590414 (android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here)\n\n- close Cursor as needed\n- code formatting\n\nChange-Id: Ia4d00392927eabbd2e69cc6181b9809656fc5299\n"
    },
    {
      "commit": "63540b183addfa1707c5f7e1fae4ee0a5080cf30",
      "tree": "477baa9273ff3d7edce0f71f89d57c838eede171",
      "parents": [
        "73e55ee06fd7c595495d0ed8971a5dae36fb0399",
        "7b40dde3168f4af2c757cb43955aa3bfe1668666"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Apr 09 13:50:01 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Apr 09 13:50:01 2010 -0700"
      },
      "message": "Merge \"b/2560858 Upgrade will clean up allDay events\" into froyo"
    },
    {
      "commit": "7b40dde3168f4af2c757cb43955aa3bfe1668666",
      "tree": "986ae928d2c94ef329da64101957e78f11323d8a",
      "parents": [
        "679d544f38aa33d00c12884b987d8f8af2a6a6d3"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Wed Apr 07 18:09:30 2010 -0700"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Apr 09 13:00:41 2010 -0700"
      },
      "message": "b/2560858 Upgrade will clean up allDay events\n\nAdded an upgrade step that will clean up allDay events in the database. This\nwill set times to have hms be 0 for allday events and try to format duration\ninto P\u003c#\u003eD. This doesn\u0027t fix other problems, such as fields having a value\nwhen they shouldn\u0027t.\n\nChange-Id: Ifb1e28bd2e536324e73558ce79da44f7c5b550d7\n"
    },
    {
      "commit": "73e55ee06fd7c595495d0ed8971a5dae36fb0399",
      "tree": "2241f20ccf2e0ebc742fa7737cf87cb635892b10",
      "parents": [
        "679d544f38aa33d00c12884b987d8f8af2a6a6d3"
      ],
      "author": {
        "name": "Brett Chabot",
        "email": "brettchabot@android.com",
        "time": "Thu Apr 08 21:54:56 2010 -0700"
      },
      "committer": {
        "name": "Brett Chabot",
        "email": "brettchabot@android.com",
        "time": "Thu Apr 08 21:54:56 2010 -0700"
      },
      "message": "Remove flaky CalendarProvider2Test from continuous.\n\nBug 2395696\n\nChange-Id: I1fc3b6e83756c97a888a2173b97508d5a2142c5f\n"
    },
    {
      "commit": "679d544f38aa33d00c12884b987d8f8af2a6a6d3",
      "tree": "96bbb73add7092e8089bbccf7d2d60e2ba483a7f",
      "parents": [
        "1599ceb270bc70f81dcaf8ecf4568453d7dddd9e"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Apr 08 17:01:07 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Apr 08 17:11:27 2010 -0700"
      },
      "message": "A better and simplier fix for bug #2556677 (pre-froyo-\u003efroyo calendar schema upgrade mangles CalendarMetaData schema, causing strange instance expansion issues)\n\nWe need to clean the Instance table and recreate the CalendarMetaData table\nwhen database version is between 59 and 66 included.\n\nChange-Id: If105ce3629685d40bc5966bb3cdd7ca613a29f7e\n"
    },
    {
      "commit": "1599ceb270bc70f81dcaf8ecf4568453d7dddd9e",
      "tree": "9d06e48b224a21c4ce18f91758e7ed8af184eb29",
      "parents": [
        "6c7b032aa9d84c703f6c02982837ecb8a1ac509a"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Apr 07 19:24:45 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Apr 08 15:48:09 2010 -0700"
      },
      "message": "Fix bug #2556677 (pre-froyo-\u003efroyo calendar schema upgrade mangles CalendarMetaData schema,\n...causing strange instance expansion issues)\n\n- force recreation of CalendarMetaData table for versions 59 (start of the problem) to 66 included\n- clean Instance table (we need to have it recomputed)\n- update schema version to 67\n- moved code of upgradeToVersion56() and upgradeResync() to their correct location\n\nChange-Id: Ie95b11cc75ec2200ce32deaee49e0a7c6114acf7\n"
    },
    {
      "commit": "6c7b032aa9d84c703f6c02982837ecb8a1ac509a",
      "tree": "24b7a2c902b582caaa08bf346c10649500bf100b",
      "parents": [
        "d5aa3cc17ecda3d72882d9a2e6c48577892df903"
      ],
      "author": {
        "name": "Michael Chan",
        "email": "mchan@android.com",
        "time": "Tue Apr 06 14:56:15 2010 -0700"
      },
      "committer": {
        "name": "Michael Chan",
        "email": "mchan@android.com",
        "time": "Tue Apr 06 15:43:06 2010 -0700"
      },
      "message": "b/2278475 Refresh calendar widget at midnight\n\nChange-Id: Ie7340c5b79733c9124bbeff9de72fa0d776644dc\n"
    },
    {
      "commit": "d5aa3cc17ecda3d72882d9a2e6c48577892df903",
      "tree": "d2674bb61b045be4c483a880028da9114f93ea78",
      "parents": [
        "d5475a8c72d98644718dbecdb5dce8bfedc18b4b"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Mon Mar 29 13:31:28 2010 -0700"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Tue Mar 30 23:14:40 2010 -0700"
      },
      "message": "Upgrade sync state database for calendar if necessary.\n\nbug 2549250\n\nChange-Id: I9957cc5385363aeac93f2bea20453bab3e8446a8\n"
    },
    {
      "commit": "d5475a8c72d98644718dbecdb5dce8bfedc18b4b",
      "tree": "6f6328d8980a384cf6295f30b66c14a6c92fe8d0",
      "parents": [
        "6636020e221f0040d2d78ea03e7b3d9223256ff3"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Wed Mar 17 20:24:13 2010 -0700"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Wed Mar 24 10:34:22 2010 -0700"
      },
      "message": "Fix recurrence expansion with COUNT.\n\nThe problem was the first instance was not getting counted if it fell to the left\nof the expansion range, resulting in one extra instance getting created on the end.\n\nAlso provide unittests for recurrence expansion and remove some dead code.\n\nbug 2515885\n\nChange-Id: Idcc46ef45c860c26fd6cff5b9ae6d5d160d3ed00\n"
    },
    {
      "commit": "6636020e221f0040d2d78ea03e7b3d9223256ff3",
      "tree": "e2c3ae2fc73a86f066c1221a3cd9c3500d432764",
      "parents": [
        "fb0d833fa43a6db7f6fea96d8b9d2074b6310633"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Tue Mar 23 13:34:14 2010 -0700"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Tue Mar 23 13:42:39 2010 -0700"
      },
      "message": "Fix flaky testAttendees test.\n\nThe onAccountsUpdated() method would asynchronously delete events,\ncausing random test failures.  This change overrides that method.\nThis change also adds an assert so failures will be cleanly reported,\nrather than causing stack traces.\n\nbug 2395696\n\nChange-Id: Idf36d96f83174bd8da216883a6371c24dcfe2ca1\n"
    },
    {
      "commit": "fb0d833fa43a6db7f6fea96d8b9d2074b6310633",
      "tree": "d0b93b6e6f5cb028d137eb022aa1748494cb195d",
      "parents": [
        "1030436aca59c5123ac90e325e8dbd7e04143909",
        "f7ebcad2409a3c6b31cf4e62fc007b6d844cb685"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Mar 18 10:54:09 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 18 10:54:09 2010 -0700"
      },
      "message": "Merge \"Import revised translations\""
    },
    {
      "commit": "f7ebcad2409a3c6b31cf4e62fc007b6d844cb685",
      "tree": "92cedc5ffcadb13e51357586a864e7e47bb73825",
      "parents": [
        "25e5cdec4e39982fedcce0733d2b8ad1aa665b19"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Mar 17 22:17:01 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Mar 17 22:17:01 2010 -0700"
      },
      "message": "Import revised translations\n\nChange-Id: I96344b95b6f4c80defbae19339034986ff83edb5\n"
    },
    {
      "commit": "1030436aca59c5123ac90e325e8dbd7e04143909",
      "tree": "502717e822ff0aa2eb4e18ccae58db028e078a61",
      "parents": [
        "25e5cdec4e39982fedcce0733d2b8ad1aa665b19"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Wed Mar 17 16:28:33 2010 -0700"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Wed Mar 17 20:25:17 2010 -0700"
      },
      "message": "Make instance expansion specific to a calendar.\n\nIn the old code, canceling of recurrence instances due to exceptions was\nbased on the sync_id and time.  If two calendars happened to have events\nwith the same sync_id and time, the wrong cancellations could happen.\n\nIn this change, sync_id:calendar_id is used to track instances and cancellations\nto ensure uniqueness.\n\nbug 2425227\n\nChange-Id: I0b79340f3f45a124f3e3850754c5e5c9cb2bd5a0\n"
    },
    {
      "commit": "25e5cdec4e39982fedcce0733d2b8ad1aa665b19",
      "tree": "8876bc648260b498791c8e0e96d5eb1f08eb6467",
      "parents": [
        "e604c19770482e181aa60a611b861ce5d8ed67d7"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Mar 17 16:04:00 2010 -0700"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Mar 17 16:04:00 2010 -0700"
      },
      "message": "Fix bug #2519159 (com.android.providers.calendar.CalendarProvider2Test:testChangeTimezoneDB is failing)\n\n- update visibility for method getTimezoneDatabaseVersion()\n- update CalendarProvider2 make file (add guava) and clean tests make files\n\nChange-Id: I61a0f1a8fb164e6f28137eb816555b3a96dc8a80\n"
    },
    {
      "commit": "e604c19770482e181aa60a611b861ce5d8ed67d7",
      "tree": "d45bdd0d05c1bcc472fb52615d821ccae783e0e6",
      "parents": [
        "2c32ee7d6feec2b6823dbaa3778e8f4b10102214"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Mon Mar 15 17:00:08 2010 -0700"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Tue Mar 16 13:16:20 2010 -0700"
      },
      "message": "Make sure values are set correctly when inserting event.\n\nFor a recurrence, dtend must be null.  This change enforces that,\nas well as some other conditions on the value.\nIncludes unittest.\n\nbug 2513213\n\nChange-Id: I04a1b7bd2f91e579177dd80741b4487409e903fc\n"
    },
    {
      "commit": "2c32ee7d6feec2b6823dbaa3778e8f4b10102214",
      "tree": "3a242aaf3e1eed6cc144c4c559f90428c12473f6",
      "parents": [
        "a6357118c223d00ed722ecd40ecdda92d705d211"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Mar 12 12:46:10 2010 -0800"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Mar 12 12:46:10 2010 -0800"
      },
      "message": "Looks like db version wasn\u0027t updated with the last change\n\nUpped the DATABASE_VERSION to 66.\n\nChange-Id: I6431eeee24560925ea9774a79bc89faeae19d826\n"
    },
    {
      "commit": "a6357118c223d00ed722ecd40ecdda92d705d211",
      "tree": "5ab494b1000161f0b901d89975f69aef0ba677fb",
      "parents": [
        "48de6f3f474a66bca2d9398f4697d13ab9857ad3"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Thu Mar 11 17:40:15 2010 -0800"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Mar 12 12:41:35 2010 -0800"
      },
      "message": "b/2497120 Added method for rebuilding db in upgrade failure\n\nWe\u0027re getting crashes from experimental testers that look like the user\ndowngraded then upgraded their phone without doing a data wipe. Added a\ncatch for this that will wipe and rebuild the db if the upgrade fails like\nthis.\n\nChange-Id: I8d2f28dd7a4a312f56573e3fffd2d8e3a2539350\n"
    },
    {
      "commit": "48de6f3f474a66bca2d9398f4697d13ab9857ad3",
      "tree": "e1c5b1c8b8bc7891867f17f99db0ec0cd5cac53d",
      "parents": [
        "1420c34753d5785a5d0fe2549ecef88a1d7a12aa",
        "ae2599e63fe5e153ba735564ef3c0898d4f3c833"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Fri Mar 12 11:14:21 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 12 11:14:21 2010 -0800"
      },
      "message": "Merge \"Fix cursor leak.\""
    },
    {
      "commit": "ae2599e63fe5e153ba735564ef3c0898d4f3c833",
      "tree": "b44a35cbff50297ba199f4fa2d08887e535d8227",
      "parents": [
        "cf9dc6b9bd031b1f6f811a32326ee85429c94deb"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Fri Mar 12 09:31:08 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Fri Mar 12 09:31:08 2010 -0800"
      },
      "message": "Fix cursor leak.\n\nCursor was not getting closed if cursor returned zero results.\n\nbug 2510590\n\nChange-Id: I39e65056e2639f1afe7872a2bd14c5cbf7ca8e67\n"
    },
    {
      "commit": "1420c34753d5785a5d0fe2549ecef88a1d7a12aa",
      "tree": "1a13fe595a69f779cceb5d1128cea5b99f2bfac0",
      "parents": [
        "5ffa764437e2f572ff8f8c21737c783fa2ca6010",
        "bf897b03effb752368a98cfb89e6b90cfdde50fc"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Thu Mar 11 20:22:28 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 11 20:22:28 2010 -0800"
      },
      "message": "Merge \"Add an organizerCanRespond column to Calendar table (with default 1)\""
    },
    {
      "commit": "bf897b03effb752368a98cfb89e6b90cfdde50fc",
      "tree": "b625fb89d777ca3903ca46b73822baa9c246912b",
      "parents": [
        "cf9dc6b9bd031b1f6f811a32326ee85429c94deb"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Thu Mar 11 18:47:45 2010 -0800"
      },
      "committer": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Thu Mar 11 18:51:10 2010 -0800"
      },
      "message": "Add an organizerCanRespond column to Calendar table (with default 1)\n\n* Partially addresses the referenced bug\n* Exchange calendars will have this column set to 0\n* When set to zero, the UI should not display the organizer\u0027s attendee status\n\nBug: 2507842\nChange-Id: I1181a6eb3575a70b4587a94de35fc4abf6fb00c8\n"
    },
    {
      "commit": "5ffa764437e2f572ff8f8c21737c783fa2ca6010",
      "tree": "f54607a0c083f667d6e3b6d34bf7f2e1e4dd519a",
      "parents": [
        "cf9dc6b9bd031b1f6f811a32326ee85429c94deb"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Mar 11 17:11:48 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Mar 11 17:11:48 2010 -0800"
      },
      "message": "Fix bug #2427686 (CalendarProvider2Test tests intermittently failing...\n\n...with attempt to acquire a reference on a close SQLiteClosable)\n\n- re-use instead of getting twice a reference to a writable database\n\nChange-Id: I5773d380703783368deb40d0e0d06c6371ada015\n"
    },
    {
      "commit": "cf9dc6b9bd031b1f6f811a32326ee85429c94deb",
      "tree": "5d30cb7482d45c27e15eaa959a92b8a051acd47a",
      "parents": [
        "1b7ecf93653da26f9aaf50bec329f29827129be3"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Wed Mar 10 13:19:01 2010 -0800"
      },
      "committer": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Wed Mar 10 13:19:01 2010 -0800"
      },
      "message": "Update database version and add upgracde code for previous change\n\nChange-Id: Iec862424c552a30622a49f2b3eed81a714bcb503\n"
    },
    {
      "commit": "1b7ecf93653da26f9aaf50bec329f29827129be3",
      "tree": "a83013448bc4b2773549ce1a6a9b005beb3e0c32",
      "parents": [
        "646444fdde3bde0a2ac948e021bc52b07c1d4a18",
        "a450a5220c7aa7a2693cd23d8d21a0dfe5614067"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Wed Mar 10 13:03:26 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 10 13:03:26 2010 -0800"
      },
      "message": "Merge \"Add _sync_mark to view_events view\""
    },
    {
      "commit": "a450a5220c7aa7a2693cd23d8d21a0dfe5614067",
      "tree": "7c817ab8ea72738c01a84464995730f5be4d6030",
      "parents": [
        "2eda117fcee7acc041177175a6bd69040b15d0c4"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Wed Mar 10 12:20:42 2010 -0800"
      },
      "committer": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Wed Mar 10 12:20:42 2010 -0800"
      },
      "message": "Add _sync_mark to view_events view\n\nChange-Id: I86d30f538a4c8e60136a244133cb9c7aec2353b4\n"
    },
    {
      "commit": "646444fdde3bde0a2ac948e021bc52b07c1d4a18",
      "tree": "eab3b8b6fc6d7d5330994c6bc8eccef711a5b56c",
      "parents": [
        "a0c4ab0002276a5ed2dd9c9e13ebe5d5b7d57f70"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Mar 05 13:09:46 2010 -0800"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Tue Mar 09 17:37:14 2010 -0800"
      },
      "message": "b/2440161 Added time checks for allDay events.\n\nallDay events where sec, min, hour are not 0 are being added into the db\nwhich causes an exception to be thrown. Added in checks to cp2 that will\ncorrect events with this mistake and warn instead.\n\nChange-Id: I09485114be605b2b2dbb2c4897dc908e5c609cf5\n"
    },
    {
      "commit": "a0c4ab0002276a5ed2dd9c9e13ebe5d5b7d57f70",
      "tree": "9e17bcd22a15932541d4691c7cbac7c70b8cb233",
      "parents": [
        "2eda117fcee7acc041177175a6bd69040b15d0c4",
        "eb7ee6232dc1f62b7bf71abc8e706cbf81b00235"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Mar 09 15:58:31 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 15:58:31 2010 -0800"
      },
      "message": "Merge \"Fix broken tests for CalendarProvider2\""
    },
    {
      "commit": "eb7ee6232dc1f62b7bf71abc8e706cbf81b00235",
      "tree": "39dd918d417ea3757006c89f09300827661245cf",
      "parents": [
        "48f38786c5eef920ff47bf08718be3ff94b68993"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Mar 09 15:35:57 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Mar 09 15:35:57 2010 -0800"
      },
      "message": "Fix broken tests for CalendarProvider2\n\n- bug #2498493 (CalendarProvider2Test has a bunch of failures)\n- bug #2500587 (com.android.providers.calendar.CalendarProvider2Test:testInstanceRange is failing)\n- bug #2500598 (com.android.providers.calendar.CalendarProvider2Test:testCalendarAlerts is failing)\n\nChange-Id: Iee19756b8f154353b86ffde139976d2ab9728686\n"
    },
    {
      "commit": "2eda117fcee7acc041177175a6bd69040b15d0c4",
      "tree": "6c111936471b4c8b0a9990ae1fce94fa04e6e6df",
      "parents": [
        "48f38786c5eef920ff47bf08718be3ff94b68993"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Mar 08 18:05:13 2010 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Mar 08 18:05:13 2010 -0800"
      },
      "message": "Add an empty CleanSpec.mk\n\nChange-Id: Ic8949a28696ae895670a1c9fded2ceb8dea7d882\n"
    },
    {
      "commit": "48f38786c5eef920ff47bf08718be3ff94b68993",
      "tree": "01bfef03f4cf81ac882469f98aa0d22420cb72b5",
      "parents": [
        "e1a154bbccfd224a90647ab16f5c52fc96b4339d"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Mar 05 20:08:43 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Mar 05 20:08:43 2010 -0800"
      },
      "message": "Fix bug #2490708 (NPE in CalendarSyncAdapter when adding and deleting an Event)\n\n- clean events from the Events/Attendees table is they are local\n\nChange-Id: I4dd21db96034bde2cda9f8f1dd553033c5a25ff4\n"
    },
    {
      "commit": "e1a154bbccfd224a90647ab16f5c52fc96b4339d",
      "tree": "ff97653217bd4981a866080fa752efc0482bf220",
      "parents": [
        "f6ba05c386c9bbac4e0cafefbd4199b897fbb9c4",
        "ab42ec67e77c398ac94ff1cf561fadd9f6b48dcb"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Mar 05 09:44:17 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 05 09:44:17 2010 -0800"
      },
      "message": "Merge \"Fix bug #2485358 (add more logging to CalendarProvider2)\""
    },
    {
      "commit": "f6ba05c386c9bbac4e0cafefbd4199b897fbb9c4",
      "tree": "6d702ae5077459e5255a2f36d23f82cc04950588",
      "parents": [
        "26d0bf3c34f170f9398ac32bf04b87d4957a4441"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Mar 04 14:07:20 2010 -0800"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Mar 04 14:07:20 2010 -0800"
      },
      "message": "Import new translations\n"
    },
    {
      "commit": "26d0bf3c34f170f9398ac32bf04b87d4957a4441",
      "tree": "454da534ee3407304e453c145635e46ba14fa039",
      "parents": [
        "8888a5a92dc717a485a1b934347f804c264b57f5"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Wed Mar 03 21:29:53 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Wed Mar 03 21:31:28 2010 -0800"
      },
      "message": "Move calendar wipeData to the test.\n\nThis method is only used by the test, so it doesn\u0027t make sense to have\nit in the CalendarDatabaseHelper.  This also caused test failures when\nProguard filtered out this method.\n\nbug 2487351\n"
    },
    {
      "commit": "ab42ec67e77c398ac94ff1cf561fadd9f6b48dcb",
      "tree": "f96cc32cbc89574591262c97c7ed82d1c249c073",
      "parents": [
        "8888a5a92dc717a485a1b934347f804c264b57f5"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Mar 03 09:58:11 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Wed Mar 03 09:58:11 2010 -0800"
      },
      "message": "Fix bug #2485358 (add more logging to CalendarProvider2)\n\nChange-Id: I1bac8559d75e712b0a9c66c352ea971fc153367b\n"
    },
    {
      "commit": "8888a5a92dc717a485a1b934347f804c264b57f5",
      "tree": "779d1b6222c6b1965546eb0eccdd52f7be5c6196",
      "parents": [
        "552e7817bd90c6b7fabadba9a2ff7e43eccf831a"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Mon Mar 01 14:17:23 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Mon Mar 01 22:00:09 2010 -0800"
      },
      "message": "Replace android.pim.DateException with com.android.providers.calendar.DateException.\n\nSince DateException is only used by the calendar provider, it should be in the provider\ncode.  Then android.pim.DateException can be removed.\n\nAlso get rid of tests for DateUtils methods that are no longer used.\n(The tests are the only thing that use these methods.)\n"
    },
    {
      "commit": "552e7817bd90c6b7fabadba9a2ff7e43eccf831a",
      "tree": "8ec6a0c6426367033576c6a4e3e02e2eb39c0034",
      "parents": [
        "550cfa4e2ebb03ec0f28b8bbfd466eef8811ef74"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Mon Mar 01 17:20:35 2010 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Mon Mar 01 17:20:35 2010 -0800"
      },
      "message": "Fix _SYNC_LOCAL_ID \u003d\u003e to_SYNC_DATA in CalendarSyncTestingBase to fix the build.\n"
    },
    {
      "commit": "550cfa4e2ebb03ec0f28b8bbfd466eef8811ef74",
      "tree": "fc301d62e72740601726d08cf3e42a33b653ccd7",
      "parents": [
        "9e318a560b6a56e4d8e1a4b2c89cf5d5a922254b",
        "c12fe4704e12519756b8da1a3f9199f2013e48f0"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Mon Mar 01 16:18:40 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 01 16:18:40 2010 -0800"
      },
      "message": "Merge \"Handle rename of _SYNC_LOCAL_ID to _SYNC_DATA in Calendar\""
    },
    {
      "commit": "c12fe4704e12519756b8da1a3f9199f2013e48f0",
      "tree": "6ece033574f45004c82baf55e3a2b668da5c2ae4",
      "parents": [
        "59759558e9dcce17a0f36770180c2a599c399076"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Mon Mar 01 15:00:10 2010 -0800"
      },
      "committer": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Mon Mar 01 15:05:42 2010 -0800"
      },
      "message": "Handle rename of _SYNC_LOCAL_ID to _SYNC_DATA in Calendar\n\n* This is being used as a discretionary column by Exchange calendar\n  sync, so rename to avoid association with old usage\n\nChange-Id: Ifdcc0be10d45d261760ebd36bb6bc270c3f70699\n"
    },
    {
      "commit": "9e318a560b6a56e4d8e1a4b2c89cf5d5a922254b",
      "tree": "c11cdf7eba1e3681329b0bdd1029e0194f37135c",
      "parents": [
        "59759558e9dcce17a0f36770180c2a599c399076"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Mon Mar 01 12:58:51 2010 -0800"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Mon Mar 01 12:58:51 2010 -0800"
      },
      "message": "Another fix for widget launching Calendar when no accounts/events exist.\n\nWidget wasn\u0027t setting a data string when no events existed, which caused it to be\nignored by calendar. I\u0027ve moved things around so the data uri always gets set and\nonly the time field is optionally added to it.\n"
    },
    {
      "commit": "59759558e9dcce17a0f36770180c2a599c399076",
      "tree": "2638322e7e1e37aa476174e24ab03c07a846e216",
      "parents": [
        "192b1807d4b6265a4f7581580bd6172dae3fc1b1"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Sun Feb 28 09:40:39 2010 -0800"
      },
      "committer": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Mon Mar 01 08:36:03 2010 -0800"
      },
      "message": "Make sure _SYNC_LOCAL_ID is in the entity projection map\n\n* This column was excluded from the projection map, presumably via an\n  oversight.\n* The Exchange sync adapter requires this for sending meeting invite\n  change emails to attendees\n* Remove two superfluous casts, and add an @Override to run\n\nChange-Id: If515f9fc4ad0a2fcd59f93f644f6c104bdbd14e9\n"
    },
    {
      "commit": "192b1807d4b6265a4f7581580bd6172dae3fc1b1",
      "tree": "79358dd07035e6edee6cf3d6c2d684c8a672cc0b",
      "parents": [
        "c7571fd56b6e54dead620ecf16997ef5df98a18c"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Sat Feb 27 08:27:49 2010 -0800"
      },
      "committer": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Sat Feb 27 08:32:13 2010 -0800"
      },
      "message": "Don\u0027t delete attendees until Event is finally deleted\n\n* Exchange (and potentially other sync adapters) needs to send cancellation\n  notices when Events are deleted; this requires that Attendee information\n  remain intact until the Event is actually deleted (rather than being marked\n  deleted)\n* The change is to move the deletion of Attendee rows until the Event is\n  actually deleted\n* There are also some IDE-compatible formatting changes and a little cleanup\n\nBug: 2474733\nChange-Id: I1fcdfc58bb3341f77b1f1087029db39749851f5e\n"
    },
    {
      "commit": "c7571fd56b6e54dead620ecf16997ef5df98a18c",
      "tree": "3024ed1f38b2caf7b465f56cbd411a4214f6ee39",
      "parents": [
        "7fbdc1fa9e9ea1603948722f8ce971f075da4bb5",
        "421c5bafd545f5de66fb2c4878c2b4a6ad238e0e"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Feb 26 18:17:12 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 26 18:17:12 2010 -0800"
      },
      "message": "Merge \"Import new translations.\""
    },
    {
      "commit": "421c5bafd545f5de66fb2c4878c2b4a6ad238e0e",
      "tree": "5d40499866215735c202c7409b57544887484a13",
      "parents": [
        "a5ef613c55f3bc68eeeafde67732e53ee229f40d"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Feb 26 17:34:45 2010 -0800"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Feb 26 17:34:45 2010 -0800"
      },
      "message": "Import new translations.\n"
    },
    {
      "commit": "7fbdc1fa9e9ea1603948722f8ce971f075da4bb5",
      "tree": "b512f34de9604ae16c824131f6dc4c5e90588c0d",
      "parents": [
        "997e2e5cb006682bc1a82441304994b458d9745d"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Feb 26 17:21:33 2010 -0800"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Feb 26 17:21:33 2010 -0800"
      },
      "message": "Added flag to ensure intent is always handled.\n\nCurrently, if the user presses home from within Calendar and then taps the widget it goes\nto the last view the user had up. With this flag it will instead handle the intent from\nthe widget and go to the start of the next event.\n"
    },
    {
      "commit": "997e2e5cb006682bc1a82441304994b458d9745d",
      "tree": "8c69966569ad3735d2e4aa67c444f3c4c3e568bf",
      "parents": [
        "cd639e76e93e5aabfdbccddc5bfe1ca94479dd8f"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Feb 26 15:22:44 2010 -0800"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Feb 26 15:26:45 2010 -0800"
      },
      "message": "Quick fix to allow starting calendar without a time specified.\n"
    },
    {
      "commit": "cd639e76e93e5aabfdbccddc5bfe1ca94479dd8f",
      "tree": "221c844ec80f882eebe60030edad125be2a7833e",
      "parents": [
        "a5ef613c55f3bc68eeeafde67732e53ee229f40d",
        "48587d3291c4db7f0942e1bff55b88cfa7764ba0"
      ],
      "author": {
        "name": "Erik Pasternak",
        "email": "roboerik@android.com",
        "time": "Fri Feb 26 15:07:52 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 26 15:07:52 2010 -0800"
      },
      "message": "Merge \"b/2412594 Changed widget to use an implicit intent.\""
    },
    {
      "commit": "48587d3291c4db7f0942e1bff55b88cfa7764ba0",
      "tree": "98b82366cf86111364fe45dc02c93b926586f496",
      "parents": [
        "157f659b2d1df5dfbba59ae010875487b6507446"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Wed Feb 24 14:40:11 2010 -0800"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Feb 26 10:43:36 2010 -0800"
      },
      "message": "b/2412594 Changed widget to use an implicit intent.\n\nAdded an implicent intent filter to the Calendar launcher so it will no longer be tied\nto the package name. The widget is now using that intent to launch the Calendar so it\ndoesn\u0027t have to use a hardcoded package name. Also added uri matching for a time to be\nspecified as part of the data field in the intent.\n"
    },
    {
      "commit": "a5ef613c55f3bc68eeeafde67732e53ee229f40d",
      "tree": "13c05bda3dfe1949270a2e2753fdc80f20858430",
      "parents": [
        "157f659b2d1df5dfbba59ae010875487b6507446"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Feb 26 13:59:59 2010 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Fri Feb 26 13:59:59 2010 +0800"
      },
      "message": "Make the tests not depend on gsf.\n"
    },
    {
      "commit": "157f659b2d1df5dfbba59ae010875487b6507446",
      "tree": "fad0bb841d2e38eefe1f75af5915f3deac22e6ce",
      "parents": [
        "b62e426e9ce017e8d5a0c85483a69e12a7b1851c",
        "162c7c9bbd53b623fbe913b376e7f7f42915bb59"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Thu Feb 25 17:00:00 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 25 17:00:00 2010 -0800"
      },
      "message": "Merge \"Add lastSyncedAttendeeStatus to CalendarProvider2 database\""
    },
    {
      "commit": "162c7c9bbd53b623fbe913b376e7f7f42915bb59",
      "tree": "4a73ba1c52ce753e79ee21ad74cb22a5bb30ae54",
      "parents": [
        "b8ea0b2b08f2af0533ecda3102c8fac6643e8713"
      ],
      "author": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Thu Feb 25 12:46:23 2010 -0800"
      },
      "committer": {
        "name": "Marc Blank",
        "email": "mblank@google.com",
        "time": "Thu Feb 25 16:50:47 2010 -0800"
      },
      "message": "Add lastSyncedAttendeeStatus to CalendarProvider2 database\n\n* This column is intended to be used by those sync adapters that need to\n  recognize a change in the user\u0027s attendee status; it is uninitialized,\n  so its value, until modified, will be retrieved as zero (no status)\n* This column is not used directly by the provider, so that its semantics\n  are not defined outside of a particular sync adapter\n\nChange-Id: Ibddc6cf3bf7df04e79c8ce919b54f1af5310b4ab\n"
    },
    {
      "commit": "b62e426e9ce017e8d5a0c85483a69e12a7b1851c",
      "tree": "da2e832ef65b1e0112a043822c1138eb1294646d",
      "parents": [
        "156ad29fe71eaae73cddad9b17690d1cc8225136"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Feb 24 20:00:15 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Feb 25 10:58:43 2010 -0800"
      },
      "message": "Update to reflect android-common no longer in framework.\n"
    },
    {
      "commit": "156ad29fe71eaae73cddad9b17690d1cc8225136",
      "tree": "d308fbb67db38e7847045de535b911c333702661",
      "parents": [
        "b8ea0b2b08f2af0533ecda3102c8fac6643e8713"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Wed Feb 24 17:10:28 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Thu Feb 25 09:28:21 2010 -0800"
      },
      "message": "Use SQL query parameters for reminder lookup.\n\nDue to a complex issue with manifest typing in SQL, a cast is requierd.\n\nbug 2458259 2464440\n"
    },
    {
      "commit": "b8ea0b2b08f2af0533ecda3102c8fac6643e8713",
      "tree": "c1f9a11c0a85c70d4f394198259533f1f8e76e92",
      "parents": [
        "2d1b3d70a6ebce8194932f8a8355d97a89da113f",
        "852d89fc583863cc083b38d1ae29e715b956d511"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Feb 23 17:02:49 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 23 17:02:49 2010 -0800"
      },
      "message": "Merge \"Add more unit tests for bug fix #2449594 (device should fold RRULEs, etc., that are longer than 75 chars)\""
    },
    {
      "commit": "2d1b3d70a6ebce8194932f8a8355d97a89da113f",
      "tree": "5939e9a8b86e46c318b907f4aa10a3f95a9dc1c9",
      "parents": [
        "9323bb1bbb247bac4871595a3de387ec7568897e"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Feb 18 19:41:25 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Feb 23 15:14:08 2010 -0800"
      },
      "message": "Fix bug #2438401 (Froyo calendar is missing many entries)\n\nWe want to keep unsynced calendars from being visible in the UI:\n\n- filter events by sync_event state when doing Instance expansion thru getEntries()\n- keep events in the Events table (better than erasing them when a calendar is not syncable)\n- change events_view View to be able to get the sync_event state\n- add database schema upgrade for the Events view\n- clean some comments\n\nChange-Id: I9382fe572db371dfa33b200b6dfd870265c6ffcc\n"
    },
    {
      "commit": "852d89fc583863cc083b38d1ae29e715b956d511",
      "tree": "c9d0aaba6d1667066c58e96bdac6a959d44d45f9",
      "parents": [
        "2cc859cab85391a240b9c3f28c935d919c8ceb8c"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Feb 23 11:51:20 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Feb 23 14:36:46 2010 -0800"
      },
      "message": "Add more unit tests for bug fix #2449594 (device should fold RRULEs, etc., that are longer than 75 chars)\n\nChange-Id: I0b3878577a86eb54cc19f8760c505b5a3d3ba4e4\n"
    },
    {
      "commit": "9323bb1bbb247bac4871595a3de387ec7568897e",
      "tree": "0cc997a17f4600a73dbce254c98e13a513e64025",
      "parents": [
        "f5f98726435ba8644076b161946df4dd1784cfa7"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Tue Feb 23 12:13:16 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Tue Feb 23 14:26:57 2010 -0800"
      },
      "message": "Partially revert \"Use SQL query arguments.\"\n\nDue to database bug 2463913, query arguments don\u0027t work in this case.\nbug 2458259\n\nAlso improve comments.\n\nThis reverts commit dc538177512191886cc40bc5e5125aae9bb197aa.\n"
    },
    {
      "commit": "f5f98726435ba8644076b161946df4dd1784cfa7",
      "tree": "919ebe7204807ad0870a02a08f5e07f9faeca322",
      "parents": [
        "241041ee4735c62083ca9a8c1879bb7655fce19e",
        "9b6911d0eafe434cd561e9cdee556c63c5d3ca32"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Tue Feb 23 09:42:47 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 23 09:42:47 2010 -0800"
      },
      "message": "Merge \"Fix manifest to use default package name (com.android.providers.calendar) for CalendarProvider2 process instead of com.android.calendar (the Calendar app pacakage name)\""
    },
    {
      "commit": "241041ee4735c62083ca9a8c1879bb7655fce19e",
      "tree": "6f8913acbadc431f0c9f7c7cae2a2e77b4c994d1",
      "parents": [
        "5bbabdd2f8732a844f28fe545dc2fbf97b2b47e9"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Mon Feb 22 15:19:33 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Mon Feb 22 15:21:42 2010 -0800"
      },
      "message": "Fix *#*#CAL#*#*\n\nWas using Events._sync_dirty instead of _sync_dirty\n"
    },
    {
      "commit": "5bbabdd2f8732a844f28fe545dc2fbf97b2b47e9",
      "tree": "71bf0d58a8855a1c5e98531a4c13c84756f8f821",
      "parents": [
        "2cc859cab85391a240b9c3f28c935d919c8ceb8c"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Mon Feb 22 10:53:57 2010 -0800"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Mon Feb 22 10:53:57 2010 -0800"
      },
      "message": "b/2458172 Changed launch intent for widget.\n\nChanged the intent path for launching Calendar from com.android.calendar to com.google.android.calendar.\nThis change reflects package name changes.\n"
    },
    {
      "commit": "2cc859cab85391a240b9c3f28c935d919c8ceb8c",
      "tree": "62ef9a0ed48d0e62add4ac64a63311118db36c18",
      "parents": [
        "dc538177512191886cc40bc5e5125aae9bb197aa"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Mon Feb 01 10:37:12 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Fri Feb 19 11:59:48 2010 -0800"
      },
      "message": "Unbundling: remove deprecated deleteRow().\n\nDelete calendar through resolver rather than using cursor operation that\nisn\u0027t in SDK.\n"
    },
    {
      "commit": "dc538177512191886cc40bc5e5125aae9bb197aa",
      "tree": "c0692733cf21f40169a5780af7768290e5ed58e5",
      "parents": [
        "f8de1a9391de5d8b6a6a0ae7c55e1a2c318d6c05"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Thu Feb 18 22:18:31 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Thu Feb 18 22:19:36 2010 -0800"
      },
      "message": "Use SQL query arguments.\n\nUsing static strings makes the SQL cache happy.\n"
    },
    {
      "commit": "f8de1a9391de5d8b6a6a0ae7c55e1a2c318d6c05",
      "tree": "94aebc5c3173af9a61e50c77d9e8dbe65d5cd1b7",
      "parents": [
        "1168e2855bba7e5ae73b5ac8f0461eee269073c9"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Mon Feb 15 15:08:56 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Feb 18 10:24:45 2010 -0800"
      },
      "message": "Fix bug #2331761 (Instances of a recurring event are missing)\n\nby detecting and ignoring malformed recurrences\n\nChange-Id: Ia669dad297edebd1a34eff839fc0235459f319b1\n"
    },
    {
      "commit": "9b6911d0eafe434cd561e9cdee556c63c5d3ca32",
      "tree": "20200356b216977b3ea030f0964516d2278bef48",
      "parents": [
        "1168e2855bba7e5ae73b5ac8f0461eee269073c9"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Feb 18 10:18:46 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Thu Feb 18 10:18:46 2010 -0800"
      },
      "message": "Fix manifest to use default package name (com.android.providers.calendar) for CalendarProvider2 process instead of com.android.calendar (the Calendar app pacakage name)\n\nChange-Id: Ia513fe3c97bd8491ab15869981e93454334fda8e\n"
    },
    {
      "commit": "1168e2855bba7e5ae73b5ac8f0461eee269073c9",
      "tree": "aee0ccc7a45a85a64c693adebdab3430bc324f2d",
      "parents": [
        "9535627bf6295cd94447beb83e1aac41f50c3600"
      ],
      "author": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Feb 16 18:30:21 2010 -0600"
      },
      "committer": {
        "name": "Jeff Hamilton",
        "email": "jham@android.com",
        "time": "Tue Feb 16 18:30:21 2010 -0600"
      },
      "message": "Add in a permission that is used by the provider, but only declared in the UI manifest.\n\nChange-Id: I0a2c7e817f96ec3c285629865cb0e6ba63f0139b\n"
    },
    {
      "commit": "9535627bf6295cd94447beb83e1aac41f50c3600",
      "tree": "3229c6a42e250aacba08ea6c6a5966bf719b2da4",
      "parents": [
        "f09652d7327e45711f0e5b210e4df9c4c4c78ac4"
      ],
      "author": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Feb 12 14:14:20 2010 -0800"
      },
      "committer": {
        "name": "Erik",
        "email": "roboerik@android.com",
        "time": "Fri Feb 12 15:57:09 2010 -0800"
      },
      "message": "b/2441483 Dropped url requirement in CP2.\n\nCP2 will now pass in a null argument when no url is available. This means Sync adapters\nare not required to supply a url feed for their calendars and should handle sync status\nchanges on their own if they don\u0027t.\n"
    },
    {
      "commit": "f09652d7327e45711f0e5b210e4df9c4c4c78ac4",
      "tree": "141e1cd96c6d2a59b59a16d22ba67f8e815c685d",
      "parents": [
        "46f3f01b132f97b51ec1f4670769dda499cd9da5"
      ],
      "author": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Feb 12 15:19:40 2010 -0800"
      },
      "committer": {
        "name": "Fabrice Di Meglio",
        "email": "fdimeglio@google.com",
        "time": "Fri Feb 12 15:19:40 2010 -0800"
      },
      "message": "Fix for bug 2431102 (illegal argument exception / negative CalendarId)\n\nChange-Id: I552083eddd716353f5525eb8ef35ca8b2f7aa598\n"
    },
    {
      "commit": "46f3f01b132f97b51ec1f4670769dda499cd9da5",
      "tree": "e3e5df4b942f229f79979eb6547a8a1c313b0dc7",
      "parents": [
        "975efd902429cd72cf1bfabf8663e1893c84a624"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Thu Feb 11 21:18:32 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Thu Feb 11 21:24:20 2010 -0800"
      },
      "message": "Remove dependencies on gsf-client and google-common.\n\nUse HashMap and HashSet instead of com.google.android.collect.Maps/Sets.  Remove dead code.\nbug 2425037\n"
    },
    {
      "commit": "975efd902429cd72cf1bfabf8663e1893c84a624",
      "tree": "580c7f2f9374f5bbdb3382261b3452f4a0260efd",
      "parents": [
        "c874ed5c6cc0fcc6ac06ae7d20db0eab7d749608"
      ],
      "author": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Thu Feb 11 17:54:28 2010 -0800"
      },
      "committer": {
        "name": "Ken Shirriff",
        "email": "kens@google.com",
        "time": "Thu Feb 11 17:54:28 2010 -0800"
      },
      "message": "Add unittest for instance expansion.\n\nThis tests the case where an event overlaps the instance range and then the\ninstance range is expanded, so the event is added to the instance table twice.\n\nbug 2439297\n"
    }
  ],
  "next": "c874ed5c6cc0fcc6ac06ae7d20db0eab7d749608"
}
