Skip to content

CSWIM

Sections
Personal tools
You are here: Home » Guides » Tools for Developers

Tools for Developers

Document Actions
Describes some of the development tools available on the cswim.org collaboration site, such as Trac and email notification of SVN commits.

Email Notification of Subversion Commits

Sign up for the swim-svn mailing list to receive email messages describing commits to the Subversion repository. (If you want to be aware of what's going on, but not up-to-the-minute, change your subscription to batch mode.) This is meant to be an announce-only mailing list, with any discussion taking place directly with the committer or on another appropriate mailing list. By default, replies are directed to the main swim mailing list.

Trac

Trac is a powerful tool that integrates several different capabilities:

  • Web-based Subversion repository browser
  • Issue tracker
  • Project management (roadmaps and milestones)
  • Wiki

The top-level of Trac for our project is https://cswim.org/tracker/cswim . Specific features are described below.

Subversion Repository Browser

https://cswim.org/tracker/cswim/browser/ allows you to browse through the project's Subversion repository using your web browser.

Changesets (individual Subversion commits), including the diffs, are part of the Timeline view (https://cswim.org/tracker/cswim/timeline).

Issue Tracker

Issue trackers (also known as bug trackers) are a tool to capture reports of bugs, request enhancements, or just assign tasks to people and track progress on them until they are appropriately resolved.

Our tracker is configured with bunch of appropriate categories (components in Trac), severities (defect/task/enhancement), and priorities that can be assigned when you submit a new ticket (https://cswim.org/tracker/cswim/newticket). (If you find that you want additional categories, file an enhancement request under the SWIM issue tracker category.) Issues can be assigned to individuals for resolution, they can be modified, and (hopefully) eventually resolved.

The View Ticket part of Trac (https://cswim.org/tracker/cswim/report) allows you to view the issue database in various ways (one of the most useful will be probably be {8} Active tickets, mine first). You can also define your own reports.

New tickets and updates to existing tickets are sent to the swim-bugs mailing list, which everyone who commits to the repository should subscribe to.

Timeline

The Timeline view (see https://cswim.org/tracker/cswim/timeline) shows a timeline (not surprisingly) of changes to the project environment, including activity on issues, Subversion commits (changesets), and Trac's wiki and roadmap. A box on the top right of the page allows you to adjust what it shows.

Roadmap and Milestones

The Roadmap feature (https://cswim.org/tracker/cswim/roadmap) allows the creation of milestones, which are short bits of text with completion dates. The issue tracker allows issue to be associated with milestones, and the Roadmap view will then provide summary view of the status of all issues associated with a milestone as a measure of progress. The usage model would be to (1) define a milestone, (2) generate new tickets for tasks (in the severity field) that are required to accomplish the milestone. The issues are worked as usual, and the Roadmap view tracks the progress.

Two notes: we are not yet using this feature, and in this version of Trac, milestones have to be added to the ticket system by an administrator.

Linking Between Issues and Subversion Commits

The tools we're using provide some nice features to link information together, to help you understand what's going on.

  • Email notifications on swim-svn include a link to the Trac changeset view, which shows you all of the diffs associated with that commit.
  • If you're making changes in response to a Trac ticket, reference the ticket number in the log message when you make your Subversion checkin (using the syntax [#id] or [ticket:id], for example [#12] or [ticket:12]), and
    • The swim-svn notification message will include a link to the Trac ticket
    • The Trac changeset will include a link to the ticket
  • When you're updating a Trac ticket, you can refer to the Subversion changeset (version number) in the comments (using the syntax [version], for example [588]) and it will generate a link to the Trac changeset.

See TracLinks for more details about cross-linking within Trac. Our installation of SVN-Notify (which generates the swim-svn emails) has been specifically configured to recognize ticket and changeset references, but others may also be possible.

Created by bernhold
Last modified 2010-10-28 13:39