The Mylar API already supports multiple issue tracking systems, therefore the existing abstraction can be used to implement a Trac connector. Trac issues can be accessed remotely through an query script that outputs tab-delimited text as well as through an XML-RPC interface. The XML-RPC interface has not yet been integrated into the main distribution of Trac but is available as a separate plug-in.
The project will be accomplished in two iterations:
1. Iteration: Web linking only repository integration
- Access through Trac's query script or through the Trac XML-RPC plug-in
- Support for repository queries in task list view
This will work with existing Trac deployments through the custom query script. The output is available in multiple formats including tab-delimited text (sample output). It contains id, summary, status, owner, type, priority and component of tickets. This information will be used for read-only display in Mylar. A web-browser will be used for editing of tickets.
2. Iteration: Full integration based on the Trac XML-RPC plug-in
- Authoring of reports within native Eclipse editor
- Offline editing
In the second iteration support for Trac's XML-RPC interface will be implemented. The XML-RPC interface is distributed as a separate Trac plug-in and requires a Trac build from the subversion repository. The XML-RPC interface allows full featured access to all ticket information and allows manipulation of tickets. The editing of tickets will be done through Eclipse forms.
The project is hosted here.
- Core: Provides Java abstraction for repository access
- Abstraction for query script and XML-RPC access
- (Eclipse independent) model classes that represent Trac data
- UI: Tasklist classes
- Tests: Test for Core and UI
Since Core is only used by UI both are combined in a single plug-in.
For the XML-RPC calls Apache XML-RPC is used.