Faceted Project Framework/WTP Transition Plan
This page provides details about the plan for shifting development of the Faceted Project Framework from a component of WTP Common Project to an independent project (currently a sub-project of the Technology Project).
A separate project for the Faceted Project Framework was proposed and created in order to better position the framework for re-use by community outside of WTP project and those consuming WTP.
The new project will produce a derivative framework based on the code that is currently in WTP. It will also produce WTP backwards compatibility component which will act as a shim between the existing client code in WTP (and any downstream products) and the new framework. The backwards compatibility component will be based on the framework API as it will exist at the end of the Galileo release. Except in truly exceptional cases, the backwards compatibility component will not be updated to surface new functionality added after Galileo. Clients wishing to use new functionality will have to migrate to the new version of the framework.
Nothing will change from WTP's perspective during the Galileo time frame. Bugs will be fixed and work on enhancements will proceed as before. In parallel, the new project will get seeded with the initial code base and the work to create the derivate framework (as well as the backwards compatibility layer) will begin. After Galileo (version 3.1 for WTP) ships, only bug fixes will be made to the version of the code that is in WTP. Future enhancements will happen in the new project only.
The plan for the new project will be to graduate and do the 1.0 release likely some time around January of 2010. After the first release, we will do a short release in the Summer of 2010 to join the release train. The two major goals for the 1.0 release is refactoring of the framework to create solid new API and producing well-tested backwards compatibility layer for WTP.
Once the project has graduated, it will be ready for WTP to take a dependency on. So some time in late Winter or early Spring of 2010, after community review and PMC approval, the version of the framework in WTP CVS repository will be deleted and WTP build will start consuming distributions from the new project.
The last stage is to migrate WTP code base from using the deprecated backwards compatibility API to using the new framework directly. This will be a gradual process, with code migrated as necessary or desired by the individual WTP component teams. There is no requirement to migrate by a certain date. The backwards compatibility layer will continue to be maintained while there are clients who want to use it. A document describing safe ways of mixing the use of the new API and the backwards compatibility layer will be made available together with the backwards compatibility component.
Bug and Enhancements
- Bugs should be opened in WTP as before under WTP Common Tools / Faceted Project Framework.
- Enhancements can be opened either under WTP or under the new Technology / Faceted Project Framework categorization.
- Any enhancements that will not make it into Galileo will be moved to the new categorization.
- If an enhancement that you have an urgent need for has been deferred as described above, post a comment describing the urgency and all possible consideration will be given to your request.
Joining The Party
If you are interested in this problem space and would like to contribute to the development of the Faceted Project Framework, the first step is to start reading the newsgroup and to subscribe to fproj-dev mailing list. Look through the open bugs and enhancements and start thinking about ways that you can contribute. There is plenty of work to be done, so don't be shy.