QA Feature Specification:Calendar Migration

From MozillaWiki
Jump to: navigation, search

Note, that the feature has been checked in on Nov 13 2006. The nightly builds, starting from Nov. 14th should be shipping with this feature.

Calendar Migration Wizard

This patch is described in bug 349586. I will briefly attempt to describe it here. Please note that it is an ongoing development, and this covers only the basic functionality that the patch had upon first checkin. More feature specification for this project can be found at: Calendar:Backwards_Compatibility The code lives at: http://lxr.mozilla.org/seamonkey/source/calendar/base/content/migration.js

The current patch will attempt to find and migrate your Calendar data (events and tasks) from these applications:

  • Sunbird 0.2
  • Thunderbird/Firefox Calendar Extension (based off of Sunbird 0.2)
  • iCal.app (on Mac)
  • Evolution

The Migration Wizard will appear as soon as there are no calendars registered. This means on running Sunbird > 0.2 the first time (in that particular profile) or after deleting all calendars from the calendars tab (and subsequent restart).

With all of these, expect that the migration utility should be able to import the various calendars including the event and task data from those calendars. I will note some extra items that will or will not be imported below, and this should be considered expected behavior.

Once the data is imported to Sunbird or Lightning, the user should be able to interact with the imported data in the same way that the user can interact with data generated by Sunbird and Lightning. That means the user should be able to edit, delete, and add information to the imported calendars events and tasks.

Note that when tasks are imported, their status (completed or not) and priority (high, normal or low) should also be indicated in the Lightning and Sunbird UI in exactly the same way that Lightning and Sunbird indicate this for their own tasks.

When recurring events are imported, the recurrence structure should be maintained and displayed correctly in Sunbird and Lightning.

  • Sunbird 0.2 and Calendar Extension importing: Calendar names should be imported as well as Calendar colors as specified in the old calendar data. Remote calendars should be imported and their settings (i.e. the location of the calendar) should be maintained after import). Calendar Extension should be imported both from Thunderbird and from Firefox.
  • Due to a bug in iCal.app, we will not be able to import event's timezone settings when importing from iCal.app. Instead these events will be treated as floating time. This means that they will not change their time, even if the user changes the display timezone of the application (through the preferences tab)
  • iCal.app calendar names will not be imported
  • Evolution calendar names will not be imported. But, events imported from evolution should have timezone information specified.

Enabling migration debugging

If you encounter any problems with migration, you can turn on additional debugging code, which may give more information useful to fix the error. To do this:

  1. Open Options/Preferences (The name and location will vary based on your OS.)
  2. Go to Advanced
  3. Open the Config Editor
  4. Create a new boolean pref named calendar.migration.log and sets its value to true.
  5. Re-try your migration. Additional information will now be reported in the Error Console (under Tools).

Links to old software