MailNews:Address Book RoadMap: Difference between revisions
(→Short-term Planning: More numbers) |
|||
| Line 10: | Line 10: | ||
{|border=1 | {|border=1 | ||
! Ref !! Item !! Bug !! Who !! Target Milestone | ! Ref !! Item !! Priority !! Bug !! Who !! Target Milestone | ||
|- | |- | ||
| SP1 || Examine making Local autocomplete use directory search, rather than get all cards and manually work it out. || {{bug|450134}} || jcranmer? || 3.0RC1 | | SP1 || Examine making Local autocomplete use directory search, rather than get all cards and manually work it out. || P3 || {{bug|450134}} || jcranmer? || 3.0RC1 | ||
|- | |- | ||
| SP2 || Create an empty nsIAbCollection, inheriting from nsIAbItem and inherit nsIAbDirectory from it. [[MailNews:Address_Book_Interface_Redesign#Proposed_Structure_For_the_Main_Interfaces]] || ? || jcranmer? || ? | | SP2 || Create an empty nsIAbCollection, inheriting from nsIAbItem and inherit nsIAbDirectory from it. [[MailNews:Address_Book_Interface_Redesign#Proposed_Structure_For_the_Main_Interfaces]] || P3 || ? || jcranmer? || 3.0b1? | ||
|- | |- | ||
|rowspan=3| SP3 || Create a new mailing list implementation class derived from nsIAbCollection. || - || - || - | |rowspan=3| SP3 || Create a new mailing list implementation class derived from nsIAbCollection. || P4 || - || - || - | ||
|- | |- | ||
|Part 1: separate out mailing list specific functions into js class from nsIAbCard/nsAbCardProperty. || ? || jcranmer? || ? | |Part 1: separate out mailing list specific functions into js class from nsIAbCard/nsAbCardProperty. || P4 || ? || jcranmer? || 3.0b1? | ||
|- | |- | ||
|Part 2: separate out mailing list specific functions from nsAbDirProperty into the new class created in step 1. || ? || ? || ? | |Part 2: separate out mailing list specific functions from nsAbDirProperty into the new class created in step 1. || P4 || ? || ? || 3.0b1? | ||
|- | |- | ||
|rowspan=3| SP4 || Move | |rowspan=3| SP4 || Move cardFromProperty from nsIAddrDatabase to nsIAbCollection. || P1 || {{bug|450149}} || jcranmer? || 3.0b1 | ||
|- | |- | ||
| Fix Address Collection to use it (i.e. check all local directories for existing cards/addresses) || | | Fix Address Collection to use it (i.e. check all local directories for existing cards/addresses) || P1 || {{Bug|58769}} || Standard8 || 3.0b1 | ||
|- | |- | ||
| Do the same for the junk whitelist. || ? || ? || | | Do the same for the junk whitelist. || P3 || ? || ? || 3.0b1 | ||
|- | |- | ||
| SP5 || Try to disentangle nsAbCardProperty from Palm Sync, so that the extension just uses the idl interfaces. || ? || ? || ? | | SP5 || Try to disentangle nsAbCardProperty from Palm Sync, so that the extension just uses the idl interfaces. || P4 || ? || ? || ? | ||
|- | |- | ||
| SP6 || Move cardForEmailAddress from nsIAbMDBDirectory to nsIAbDirectory || {{Bug|449618}} || jcranmer || 3.0b1 | | SP6 || Move cardForEmailAddress from nsIAbMDBDirectory to nsIAbDirectory || P2 || {{Bug|449618}} || jcranmer || 3.0b1 | ||
|- | |- | ||
| SP7 || Fix Search/Filters for OS X Address Book (dependent on SP6) || {{Bug|437908}} || Standard8 || 3.0b1 | | SP7 || Fix Search/Filters for OS X Address Book (dependent on SP6) || P2 || {{Bug|437908}} || Standard8 || 3.0b1 | ||
|- | |- | ||
| SP8 || Implement xbl driven Address Book menus instead of rdf ones || {{Bug|449260}} || Standard8 || 3.0b1 | | SP8 || Implement xbl driven Address Book menus instead of rdf ones || P2 || {{Bug|449260}} || Standard8 || 3.0b1 | ||
|- | |- | ||
| SP9 || Implement js tree for address book list pane instead of rdf one || {{Bug|422845}} || jminta? || 3.0b1 | | SP9 || Implement js tree for address book list pane instead of rdf one || P3 ||| {{Bug|422845}} || jminta? || 3.0b1 | ||
|- | |- | ||
| SP10 || [[MailNews:Address_Book_New_Card_Inline]] [[http://clarkbw.net/designs/msg-reader/std-msg-reader-w-expanding-headers.html]] || ? || | | SP10 || [[MailNews:Address_Book_New_Card_Inline]] [[http://clarkbw.net/designs/msg-reader/std-msg-reader-w-expanding-headers.html]] || P1 || ? || Standard8 || 3.0b1 | ||
|- | |- | ||
| - || Other items as listed below || - || - || - | | - || Other items as listed below || - || - || - | ||
Revision as of 20:04, 11 August 2008
| Resources |
|---|
| MailNews Homepage |
| Address Book Homepage |
| Roadmap |
| Help Wanted |
| LDAP Address Books |
| Code Structure |
| Bug Locations |
| Related Standards |
The purpose of this page is to provide a guide to where various aspects of Thunderbird/SeaMonkey may proceed to improve the address book and the various advantages of each step.
This is not an agreed roadmap, nor is it a statement of what Thunderbird/SeaMonkey will definitely do.
Short-term Planning
| Ref | Item | Priority | Bug | Who | Target Milestone |
|---|---|---|---|---|---|
| SP1 | Examine making Local autocomplete use directory search, rather than get all cards and manually work it out. | P3 | bug 450134 | jcranmer? | 3.0RC1 |
| SP2 | Create an empty nsIAbCollection, inheriting from nsIAbItem and inherit nsIAbDirectory from it. MailNews:Address_Book_Interface_Redesign#Proposed_Structure_For_the_Main_Interfaces | P3 | ? | jcranmer? | 3.0b1? |
| SP3 | Create a new mailing list implementation class derived from nsIAbCollection. | P4 | - | - | - |
| Part 1: separate out mailing list specific functions into js class from nsIAbCard/nsAbCardProperty. | P4 | ? | jcranmer? | 3.0b1? | |
| Part 2: separate out mailing list specific functions from nsAbDirProperty into the new class created in step 1. | P4 | ? | ? | 3.0b1? | |
| SP4 | Move cardFromProperty from nsIAddrDatabase to nsIAbCollection. | P1 | bug 450149 | jcranmer? | 3.0b1 |
| Fix Address Collection to use it (i.e. check all local directories for existing cards/addresses) | P1 | bug 58769 | Standard8 | 3.0b1 | |
| Do the same for the junk whitelist. | P3 | ? | ? | 3.0b1 | |
| SP5 | Try to disentangle nsAbCardProperty from Palm Sync, so that the extension just uses the idl interfaces. | P4 | ? | ? | ? |
| SP6 | Move cardForEmailAddress from nsIAbMDBDirectory to nsIAbDirectory | P2 | bug 449618 | jcranmer | 3.0b1 |
| SP7 | Fix Search/Filters for OS X Address Book (dependent on SP6) | P2 | bug 437908 | Standard8 | 3.0b1 |
| SP8 | Implement xbl driven Address Book menus instead of rdf ones | P2 | bug 449260 | Standard8 | 3.0b1 |
| SP9 | Implement js tree for address book list pane instead of rdf one | P3 | bug 422845 | jminta? | 3.0b1 |
| SP10 | MailNews:Address_Book_New_Card_Inline [[1]] | P1 | ? | Standard8 | 3.0b1 |
| - | Other items as listed below | - | - | - |
Back-end Interface Re-organisation
Design: MailNews:Address Book Interface Redesign
Main bug is bug 413260
Current Steps (based partially on jcranmer's patch queue):
Make the nsIAbCard interface more flexible for new properties and different types- Start refactoring nsIAbDirectory into nsIAbCollection (Partial Ref SP2).
- Implement the propertiesChrome function for opening AB property dialogs
- Move cardForEmail from Mork specific code to generic code bug 449618.
- Separate mailing lists from directories and cards into their own object (Ref SP3).
- Decide on interfaces for address book interactions and compatibility with async/sync address books.
- Implement new interfaces from previous item.
Advantages:
- New interfaces will make it much easier to interact with the address book.
- Interfaces are designed to make interfaces generic across different address book types. They should hide the fact that you're talking to a LDAP book, or an OS X directory.
- Prepares for moving to SQLite.
Current Status:
- Patches blocked by awaiting review on step 1.
- Standard8 needs to find time to discuss async/sync interfaces with dmose in more detail.
Writable LDAP
Very much wanted by lots of people.
bug 86405 is the main tracking bug.
Current Steps:
- Once AB Interface redesign has completed the async/sync interfaces, implement appropriate hooks for LDAP (if not already there).
- Implement any required UI tweaks/improvements.
Advantages:
- Provides a good solution for users (mainly corporate/small networks?) to share address books.
Current State:
- Writable LDAP source code is in cvs, enabled by compilation switch.
- UI is no where near usable by end-users or advanced users (i.e. don't even think about it to be enabled by default).
Remove RDF from the Address Book
Being able to do this partially depends on the interface back-end redesign, but will also help that.
Current Steps:
- bug 422845 Replace RDF-driven address book tree with js one (waiting on jminta, busy until June).
- bug 449260 Replace RDF-driven menus with xbl based one.
- bug 408613 Re-use the new tree for other address book menus (including address book and LDAP preferences).
- Replace any other RDF instances (none?) or uses.
- Remove RDF from the address book, at the same time, replace the current preferences system with a new one (based more on flexibility of address book types). New system to be based in nsAbManager.
Advantages:
- Removes "obsolete" RDF interfaces from address book
- Tidies up a lot of code and removes some old items
- Different address book types could be fully implemented in extensions in javascript bug 424218 (TB 3 blocker).
Switch Mork to SQLite
See bug 382876
Current Steps:
- Create an SQL backend for addressbook
- Modify code to use generic directory accesses where not already doing so (part of the interface and bug 413260 as well
- Write a conversion to translate mork to SQL using a new morkreader bug 424446
- Remove the old mork code
Advantages:
- SQLite is much more widely supported by other tools than mork
- SQLite allows us to use mozStorage, which could increase our future flexibility
- Any proposed schema will be simpler than the current mork addressbook schema
Current status:
- The new morkreader is being slowly recreated due to its loss in a tragic accident.
- Initial work blocking on nsIAbCard-portion of interface reorg; full work blocking on mailing list sanity.
- The schema is not yet finalized, and probably will not be finalized until after the interface reorg.
Implement providers for different address book card translations
Steps:
- Once step 1 of redesign (nsIAbCard) is complete, implement code to change providers.
Advantages:
- This would allow different card translations e.g. nsIAbCard to vCard/hCard etc.
- Extensions could add to the formats available.
Current Status:
- Blocked by nsIAbCard refactoring.
- Standard8 knows what he wants to do to put this together.
UI updates
- Standard8 driving:
bug 397811 UI to Enable/Disable Mac OS X AB interface(Complete)- Changing the default address books (Newsgroup thread)
- Probably be wrapped up into the rdf removal
- clarkbw driving:
- Names on address book cards (Newsgroup thread)
- Addresses on address book cards (Newsgroup thread)
- MailNews:Address Book New Card
- No owner/timescale:
- Photo on contacts (Newsgroup Thread)
- bug 13595 Add Birthday Field, TB 3.0 blocker
- bug 63941 New Card layout shouldn't assume high screen resolution (blocked by other UI rework?)