Jump to: navigation, search

Difference between revisions of "TM Future Planning"

('''Theme: Be a Better Framework''')
Line 67: Line 67:
 
* Make use of the Platform Command/Handler framework, including parameterized handlers, to all user-defined keyboard shortcuts, extender modifiable UI and macro recording (eventually)
 
* Make use of the Platform Command/Handler framework, including parameterized handlers, to all user-defined keyboard shortcuts, extender modifiable UI and macro recording (eventually)
 
* Finalize Terminal APIs
 
* Finalize Terminal APIs
 +
* Fix and Improve '''Drag and Drop'''
 +
** Collaborate with Platform/Common Navigator to fix PluginTransfer into the Project Explorer
 +
** Collaborate with Platform/SWT to fix deferred drag&drop of remote files to copy into Windows Explorer
 +
** Improve the RSE DnD Framework to support extenders plug-in transfer types for specific objects in their own remote systems (Newsgroup: [http://dev.eclipse.org/newslists/news.eclipse.dsdp.tm/msg00173.html Uday Kabe, Lotus Notes]
 
* Provide a generic filtering framework (through OQL)
 
* Provide a generic filtering framework (through OQL)
 
* Improve the '''connection data model''', being a store for IP-Xact data about hardware
 
* Improve the '''connection data model''', being a store for IP-Xact data about hardware
Line 72: Line 76:
 
* Re-think RSE SystemMessages: Do we need XML when we have Eclipse NLS / Java MessageFormat?
 
* Re-think RSE SystemMessages: Do we need XML when we have Eclipse NLS / Java MessageFormat?
 
** E.g. DStore_Service_Percent_Complete_Message -- multiple transformations for substitution
 
** E.g. DStore_Service_Percent_Complete_Message -- multiple transformations for substitution
 
  
 
==== '''Theme: Integrate other remote access solutions''' (strong should have) ====  
 
==== '''Theme: Integrate other remote access solutions''' (strong should have) ====  

Revision as of 06:18, 12 June 2007

Collect input for the planning process for next year's DSDP Target Management Release (Eclipse Ganymede train, tentatively TM 3.0, June 2008) as well as the upcoming service releases (DSDP-TM 2.0.x). Goals of this page are

  • Collect ideas and Requirements for Target Management Ganymede and beyond
  • Find out who needs what features
  • Find out who would be willing to work on what

This is a collaborative Wiki, so everyone in the community is welcome to contribute to the discussion by simply modifying the page. Please sign up by declaring your interest or willingess to contribute on the individual items below. Our Themes and Priorities need to be aligned with the global and DSDP Requirements. As soon as a feature description is sufficiently clear and there is some group supporting a feature, Bugzilla entries should be used for tracking requests. When finalizing the plan, bugzilla plan items will be created for grouping related work items together in order to track them.

An initial plan was discussed in the Committer Phone Meeting on 22-May-2007.

TM 2.0.x Planning

  • TM 2.0.1 and 2.0.2 to be aligned with Europa Simultaneous Release Service Releases in autumn and spring 08 respectively
    • TM 2.0.1 might be released 2 or 3 weeks before Europa SR1
    • No major feature additions; focus on unit tests, ISV Docs
      • Probably adding RSE Terminal integration
  • Work on unittests, isv docs over the summer can also be done in HEAD, forking off the mainline in autumn
    • if we have any large things for 3.0 and want to start before 2.0.1 might do that in a branch; but having the branch this or that way is not a big deal

TM Ganymede Planning (tentatively TM 3.0)

Bugzilla Plan Input

  • Query Information
    • The following bugzilla queries cover non-overlapping distinct requests that we currently have in the queue.
    • Bugs lists are sorted by importance, with the more important ones (i.e. higher priority or severity) first.
    • Target milestone "Future" is used for bugs that have been discussed and deferred.
    • Target milestone "---" is uesd for bugs not yet analyzed or discussed.
  • Bugzilla Queries

Should it be TM 2.1 or TM 3.0?

  • Themes "scaling down" and "be a better framework" strongly encourage heading for TM 3.0 such that we are not burdoned by a promise to maintain old APIs
  • Doing 2.1 might be possible but harder than going for 3.0 right away; Finishing the UI/Non-UI refactoring is essential to complete for the next release
  • As it stands now, we see no clear requirement to be backward compatible with next year's release. If community wants it please speak up on the newsgroup or mailing list. We think we'll better be going for TM 3.0 since not entirely happy with APIs yet. Though we'd strive to keep API changes small.

Themes and Priorities

  • We have not yet agreed on clear priorities, but naturally those themes will be carried on first that have most interested parties, and where those interested parties actually contribute code, patches or committers.
  • In the list of themes below, typically those themes or work items that we feel to be more important appear first. Not all items of a theme may be addressed, especially those appearing further down in the list for a theme would typically receive less attention.
  • Community members can influence the planning process by declaring their interest, and/or especially declaring their willingness to contribute work on the themes.
  • Contribute: items below do not yet indicate a committment to actually contribute but do declare willingess of the signed up parties.

Theme: Scaling Down

  • Interest: IBM, WR
  • Contribute: IBM, WR (committers)
  • Further improve UI/Non-UI splitting, supporting
    • (a) RSE as an EFS provider without having to start up
    • (b) Remote file export in headless applications
  • Improve usage of the extension registry:
    • (a) Avoid plugin startup where not necessary - improve initial startup performance
    • (b) Make plugin registration dynamic, allowing dynamic reconfiguration (registry trackers etc: might be a requirement for the future provisioning story)
  • Improve Componentization:
    • (a) Support RCP, allowing the use of RSE even if Resources do not exist
    • (b) Provide a shortcut to RSE Services layer without Subsystems - probably via OSGi Services; might help EFS provider
  • Potentially move to Platform + 0 level --> move CDT Launcher to CDT Project


Theme: Be a Better Framework

  • Interest: WR, IBM, Symbian
  • Contribute: WR, IBM, Symbian (committers)
  • Improve Quality, Maintainability, strive for small and efficient implementations
    • Collaborate with DSDP-DD and Platform/Debug for a cleaned-up SystemView soltuion
  • Increase the flexibility of the host/subsystem/service combination after connection creation
    • Improved more flexible wizards; allow adding and removing services as needed; Inheritable Properties for configuring subsystems
  • Make use of the Platform Command/Handler framework, including parameterized handlers, to all user-defined keyboard shortcuts, extender modifiable UI and macro recording (eventually)
  • Finalize Terminal APIs
  • Fix and Improve Drag and Drop
    • Collaborate with Platform/Common Navigator to fix PluginTransfer into the Project Explorer
    • Collaborate with Platform/SWT to fix deferred drag&drop of remote files to copy into Windows Explorer
    • Improve the RSE DnD Framework to support extenders plug-in transfer types for specific objects in their own remote systems (Newsgroup: Uday Kabe, Lotus Notes
  • Provide a generic filtering framework (through OQL)
  • Improve the connection data model, being a store for IP-Xact data about hardware
  • Re-think RSE SystemMessages: Do we need XML when we have Eclipse NLS / Java MessageFormat?
    • E.g. DStore_Service_Percent_Complete_Message -- multiple transformations for substitution

Theme: Integrate other remote access solutions (strong should have)

  • Interest: Community, projects mentioned below
  • Contribute:
  • Integrate Platform/Team WebDAV provider, and/or Google SoC WebDAV provider (through Apache)
  • Integrate Platform/Team synchronization framework (for minimal data transfer on sync or import/export)
  • Integrate TPTP agent controller (file services, launch services) as subsystems
  • Bridge to any registered EFS provider, making RSE an EFS Browser (Note: Can be done transparently through ECF filetransfer API. ECF filetransfer is extremely lightweight and there is an existing bridge from ECF filetransfer to EFS. ECF is graduating to 1.0 with Europa.).
  • Use ECF filetransfer API. Expose/Implement RSE as new ECF filetransfer provider.
  • Use ECF discovery API. Expose current zeroconf implementation as new ECF discovery provider.
  • Collaborate with Wicked Shell, integrating features from it
  • Collaborate with JArchive, providing support for more archive formats (through RSE extension point)

Theme: Add unique new features

  • Interest: Broadcom, WR, IBM
  • Contribute: Broadcom (Contribute Launch), WR (Lab Manager), IBM (IBM Contributions)
  • Contribute Broadcom Launch Actions, improve Launching as defined by the Launching group
    • Currently being discussed with Robert Norton on the dsd-tm-dev list
    • ILaunchAction may also be used for board lab hooks
  • Add hooks for Remote Lab Manager support
    • reserve / unreserve target boards, discover target boards, vague target descriptions
    • Implementation might be facilitated by ILaunchAction hooks
  • Contribute features from existing IBM implementations (need legal review):
    • User actions (probably replace by Command framework)
    • "External Tools" remote implementation (very interesting!) - potentially consolidate into single User Actions framework
    • Remote Java Debug
    • Remote Jar Export
    • Export to multiple targets;


Theme: Multicore / Multisystem support

  • Interest: WR
  • Contribute:
  • Support target groups as defined by the Connection Groups initiative
  • Filters on 1st level of System View (164807)
  • View for working with multiple shells concurrently exists
  • Right now we have grouping by profiles
  • Cluster definitions should be something different (being stored inside a profile)
  • Requirements currently unclear; instead of hacking up something wrong, better have no solution
  • PTP might come up with requirements


Other ideas carried forward

  • Improve Shell Pattern Matching on the client
    • Interest: WR, IBM
    • Contribute:
    • Allow user-defined patterns (153274)
    • Provide an extension point for patterns but not let the user edit them
    • Server-side patterns vs. client-side patterns, want to have them consistent
      • Server-side file can be modified by the users, located in dstore daemon
      • Client-side patterns buried inside the jarfile --> copy it out of JAR into preferences on first start, allow users to modify through Preferences
  • Improve RSE Credentials Management
    • Interest:
    • Contribute:
    • The RSE Credentials Management currently uses the Eclipse Keyring, which just provides weak encryption. It should provide a credentials store similar to Firefox, which is passphrase protected and stores credentials well encrypted. It might be possible to use the Jsch mechanism for accessing stored SSH private keys, since getting strong encryption through Eclipse Legal might be problematic.


Archive of previous plans

TM 2.0 (Eclipse Europa, June 2007)


TM 1.0 (Fall 2006)

See the official TM 1.0 Project Plan for details on target environment, plans and timing.