Calendar:Deprecated:NewRoadmap: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
 
 
(20 intermediate revisions by 4 users not shown)
Line 1: Line 1:
The internal code that sunbird uses has been rewritten to allow for greater flexibility and speed. In order to get an useful release, the new backend code needs to be tested. A lot.
'''THIS DOCUMENT IS STRICTLY A DRAFT! DO NOT MAKE PLANS BASED ON IT! NO ONE IN THE CALENDAR TEAM OR MOZILLA HAS BLESSED IT! IT IS BUT A FIGMENT OF ONE TROUBLED PERSON'S IMAGINATION!'''


Besides this, the lightning guys have been doing great work on the UI front. Sunbird doesn't include this yet, because it would delay a release with the new backend code.
=Introduction=
Much work has been done to both define and synchronize the roadmaps of Sunbird and Lightning. This work is by no means complete, and given the evolving nature of software, will likely never be. Regardless, in order to help drive both projects, this tentative and historical roadmap has been created.


To allow for this split testing, the following roadmap can be used:
For the fullest understanding of this document, and some context as to why some features are slated for which timeframe, it is useful to review the defined [[Calendar:Task_Feature_Matrix|target users and their use cases]], as well as our [[Calendar:Past_Releases|previous releases]].


=Sunbird0.3a1=
="Where's the 0.n meta bug?"=
Released 2005-11-04
'''Note that we have transitioned to using blocking flags to keep track of release blockers, rather than tracking or meta bugs.''' See the document on [[Calendar:For_Everyone:Blocking_Flags|Blocking Flags]] for more details.


Release Goals:
==Release Map==
* Fix regressions from the API rewrite, in a way that Sunbird gets usable again. * Not all bugs need to be fixed in the cleanest way.
One of our goals is to incorporate user feedback as much as possible. Nightly builds, however, might have an unclear status regarding their functionality and thus are not useful for a broader audience. Instead we want to release milestone builds every 3 months which will cover an appropriate part of the road map. Those milestone builds will have gone through QA to make sure that they are suited to generate useful feedback.
* Continue to use old (non-XBL) views and UI.
In order to reach a good balance between being in development-mode and being in release-mode we're heading towards Version 1.0 within 4 milestones.
* '''Intet is to get testing of the providers, and to be able to close old bugs that are fixed by the new ics provider or the new libical.'''


'''Notes for Sunbird0.3a1:'''
{| border="1" align="center"
This release has old views and stuff. Those views are fixed to a point where the events show up, but there might be glitches in the display. This release was not meant to test the views, but to test the calendar backend code. Please don't file bugs on misaligned event boxes, wrong colours, or whatever else looks wrong. Please do file bugs on events not showing up, events showing up with wrong times, crashes, hangs, errors etc.
|+ Schedule for Sunbird and Lightning
|-
!Milestone!!Version!!Quality!!Goal!!Release date
|- align="center"
|M1||0.3||Early Access||Align Sunbird and Lightning, beginning of UI face lift, iTIP/iMIP||August/September 2006
|- align="center"
|M2||0.5||Beta||Most features should be visible||November/December 2006
|- align="center"
|M3||0.9||Beta2||Incorporate beta feedback, shift uncomplete features to 1.x||February/March 2007
|- align="center"
|M4||1.0||Final||Bugfixing only||May 2007
|-
|}


==Lightning and Sunbird 0.3==
It was decided to synchronize Lightning and Sunbird in terms of bug fixes, feature set (where applicable), version number, and release timing.


=Sunbird0.3a2=
The goal of the roadmap is to stay high-level enough to provide adequate direction, but still stay low-level enough to provide relevance. The goal ''is not'' to list specific bugs to be fixed before release. Please use [[Calendar:For_Everyone:Blocking_Flags|blocking flags]] for that.
Released 2006-05-11


Release Goals:
===Key points===
* Switch to new XBL views.
We '''must''' make sure that Sunbird 0.3 is a linear step forward from 0.2. This is a challenge that the Sunbird 0.3 alphas have not yet met. Achieving this will not only decrease the number of Sunbird 0.2 support problems, but will also help encourage migration from the deprecated Calendar XPI to Lightning, since the parallels will be clearer.
* Sync the UI as much as possible with Lightning 0.1.
* '''Intent is to test the new views and associated UI.'''
*[[Calendar:0.3a2_Task_List|Tentative Goals]]


lilmatt sez: jminta should take outstanding items from the 0.3a2 list and figure out where they go so they don't get lost or forgotten.
Since the average user is generally not interested in the specifics of which bug numbers got fixed this time around, we should have some tangible features we can point to that justify the release.


'''Notes for Sunbird0.3a2:'''
The 0.3 alphas received much user praise due to the stability provided by the new storage, and the increased speed of the XBL-based views.  
These views what we plan to use moving forward. Now is the time to file bugs on misaligned event boxes, wrong colours, or whatever else looks wrong.


=Sunbird0.3b=
This time around we can also point to
*Improved speed (snappiness™)
*Restructured recurrence
*Better l10n story (language packs)


Release Goals:
=== Common goals ===
* '''Bugfixes.'''
*No known dataloss with ICS from *any* source (preserve X-Comps/X-Props, handle foreign timezones)
* Installers?
*Bug fixes from previous releases
* Move locales into l10n repository.
*Improved task support (recurrence)
* Easily installable language packs?
*Continue to sync code between Sunbird and Lightning
* Generic branding except for release?
*Fix/improve CalDAV
* Toolkit-based preferences?
*Safety when multiple users edit a calendar (maybe)
* Released from Gecko 1.8 branch?


=Sunbird0.3 - Final release=
=== Lightning ===
*Feature parity with Sunbird
*Dog-food iTIP/iMIP
*Localization?


=== Sunbird ===
* Be a Modern toolkit app (prefs, installer, l10n, etc., but no auto-update yet)
* Feature Parity with 0.2 (calendar loading, offline use?, printing, multiple selection - "Select All")


=Sunbird0.4 - Possible Ideas=
Commentary:
'''Disclaimer:''' These are entirely ideas. Don't bet the farm on the fact that they're listed here. They may, and some likely will, never actually make it into a shipping product.  
The bits in parens are only met to be examples for clarification.  They are not exhaustive or definitive lists and should not be considered part of the actual roadmap.
 
Parts of this list seem to be reaching a bit far (offline use, multiple edit safety), but according to the current agreements, we're only going to have a few releases before 1.0, which means we need to front-load a bit more if we're going to have a chance of meeting that.
 
==Lightning and Sunbird - Future Ideas==
New features and their order of implementation and release will be mostly driven by the previously defined, and constantly refined
[[Calendar:Task_Feature_Matrix|target users and their use cases]]
 
'''Disclaimer:''' These are entirely ideas. Don't bet the farm on the fact that they're listed here. They may, and some likely will, never actually make it into a shipping product. They also are likely too low-level for the actual roadmap, but may encourage thought around future higher-level goals.


* Make Sunbird a child app of XULRunner.
* Make Sunbird a child app of XULRunner.
* Integration with Mozilla Software Update
* Integration with Mozilla Software Update.
* Possible view eye candy using Cairo?
* Possible view eye candy using Cairo?
* Ability to consume Google Gdata?
* Ability to consume Google Gdata?
 
* Merge Lightning and Sunbird into a single entity that acts appropriate depending on the host app it is running under?
 
 
This is a tentative roadmap for Lightning; commentary is welcome on the Discussion page.  Items that are struck through have been completed.
Don't edit this page!
 
== Lightning 0.1 ==
Released 2006-03-14
 
* Localization support (done)
* No known dataloss bugs when editing ICS files exclusively with Lightning
* Basically functionality usable as dogfood with local database & ICS calendars
* Project Page: [[Calendar:Lightning:0.1]]
* Release Notes: [[Calendar:Lightning:0.1:Release Notes]]
 
''Note that the post 0.1 roadmap is due for an overhaul soon.''
 
== Lightning 0.2 ==
We're skipping this version number to sync up with Sunbird 0.3.
 
== Lightning 0.3 ==
* Better Thunderbird integration
* Better Thunderbird integration
** email<->task linkage  
** email<->task linkage  
** iMIP support
** iMIP support
* Improved CalDAV support
* Improved CalDAV support
== Future ==
* Cached calendar support for offline
* Cached calendar support for offline
* Device synchronization
* Device synchronization

Latest revision as of 18:04, 26 July 2006

THIS DOCUMENT IS STRICTLY A DRAFT! DO NOT MAKE PLANS BASED ON IT! NO ONE IN THE CALENDAR TEAM OR MOZILLA HAS BLESSED IT! IT IS BUT A FIGMENT OF ONE TROUBLED PERSON'S IMAGINATION!

Introduction

Much work has been done to both define and synchronize the roadmaps of Sunbird and Lightning. This work is by no means complete, and given the evolving nature of software, will likely never be. Regardless, in order to help drive both projects, this tentative and historical roadmap has been created.

For the fullest understanding of this document, and some context as to why some features are slated for which timeframe, it is useful to review the defined target users and their use cases, as well as our previous releases.

"Where's the 0.n meta bug?"

Note that we have transitioned to using blocking flags to keep track of release blockers, rather than tracking or meta bugs. See the document on Blocking Flags for more details.

Release Map

One of our goals is to incorporate user feedback as much as possible. Nightly builds, however, might have an unclear status regarding their functionality and thus are not useful for a broader audience. Instead we want to release milestone builds every 3 months which will cover an appropriate part of the road map. Those milestone builds will have gone through QA to make sure that they are suited to generate useful feedback. In order to reach a good balance between being in development-mode and being in release-mode we're heading towards Version 1.0 within 4 milestones.

Schedule for Sunbird and Lightning
Milestone Version Quality Goal Release date
M1 0.3 Early Access Align Sunbird and Lightning, beginning of UI face lift, iTIP/iMIP August/September 2006
M2 0.5 Beta Most features should be visible November/December 2006
M3 0.9 Beta2 Incorporate beta feedback, shift uncomplete features to 1.x February/March 2007
M4 1.0 Final Bugfixing only May 2007

Lightning and Sunbird 0.3

It was decided to synchronize Lightning and Sunbird in terms of bug fixes, feature set (where applicable), version number, and release timing.

The goal of the roadmap is to stay high-level enough to provide adequate direction, but still stay low-level enough to provide relevance. The goal is not to list specific bugs to be fixed before release. Please use blocking flags for that.

Key points

We must make sure that Sunbird 0.3 is a linear step forward from 0.2. This is a challenge that the Sunbird 0.3 alphas have not yet met. Achieving this will not only decrease the number of Sunbird 0.2 support problems, but will also help encourage migration from the deprecated Calendar XPI to Lightning, since the parallels will be clearer.

Since the average user is generally not interested in the specifics of which bug numbers got fixed this time around, we should have some tangible features we can point to that justify the release.

The 0.3 alphas received much user praise due to the stability provided by the new storage, and the increased speed of the XBL-based views.

This time around we can also point to

  • Improved speed (snappiness™)
  • Restructured recurrence
  • Better l10n story (language packs)

Common goals

  • No known dataloss with ICS from *any* source (preserve X-Comps/X-Props, handle foreign timezones)
  • Bug fixes from previous releases
  • Improved task support (recurrence)
  • Continue to sync code between Sunbird and Lightning
  • Fix/improve CalDAV
  • Safety when multiple users edit a calendar (maybe)

Lightning

  • Feature parity with Sunbird
  • Dog-food iTIP/iMIP
  • Localization?

Sunbird

  • Be a Modern toolkit app (prefs, installer, l10n, etc., but no auto-update yet)
  • Feature Parity with 0.2 (calendar loading, offline use?, printing, multiple selection - "Select All")

Commentary: The bits in parens are only met to be examples for clarification. They are not exhaustive or definitive lists and should not be considered part of the actual roadmap.

Parts of this list seem to be reaching a bit far (offline use, multiple edit safety), but according to the current agreements, we're only going to have a few releases before 1.0, which means we need to front-load a bit more if we're going to have a chance of meeting that.

Lightning and Sunbird - Future Ideas

New features and their order of implementation and release will be mostly driven by the previously defined, and constantly refined target users and their use cases

Disclaimer: These are entirely ideas. Don't bet the farm on the fact that they're listed here. They may, and some likely will, never actually make it into a shipping product. They also are likely too low-level for the actual roadmap, but may encourage thought around future higher-level goals.

  • Make Sunbird a child app of XULRunner.
  • Integration with Mozilla Software Update.
  • Possible view eye candy using Cairo?
  • Ability to consume Google Gdata?
  • Merge Lightning and Sunbird into a single entity that acts appropriate depending on the host app it is running under?
  • Better Thunderbird integration
    • email<->task linkage
    • iMIP support
  • Improved CalDAV support
  • Cached calendar support for offline
  • Device synchronization