Deploying the Trac Timeline and Browse Source Features
15 February, 2008
The Trac Project provides an excellent web interface for project documentation, ticket-based project management, and visualization of source code (from a Subversion repository). All of the Cipherdyne open source projects use Trac as the code display mechanism, and allow users to readily see how the projects are developed over time. However, the Cipherdyne projects are not large software engineering efforts with many dedicated developers, and I prefer not to allow my webserver to accept user registrations and tickets even if it is through Trac. The project mailing lists as well as personal email correspondence has been (so far) completely sufficient for bug reporting, and development tasks are tracked within TODO files in each of the top level source directories for each project. Trac also offers a Wiki, but I write all of my own documentation for my projects and I accept enhancements via email as well.So, why the blog post? Well, it is not immediately obvious how to enable just the Timeline, Browse Source, and Search features in Trac, and disable the remaining features such as the Roadmap, Tickets, and the Wiki. (All of these features can be seen in the Trac site in the navigation bar off to the right.) It turns out that Trac is database driven, and disabling these features can be accomplished from the command line as follows with the trac-admin command:
$ trac-admin /path/to/trac_directory permission remove anonymous
TICKET_CREATE TICKET_MODIFY TICKET_VIEW ROADMAP_VIEW REPORT_VIEW
MILESTONE_VIEW REPORT_SQL_VIEW WIKI_CREATE WIKI_MODIFY WIKI_VIEW
Also, you will need to set the default_handler variable in the conf/trac.ini
file to BrowserModule instead of WikiModule. Using the above command, the Trac
navigation bar only includes the Timeline, Browse Source, and Search features as seen
here, and this is a valuable configuration
for small open source projects. However, if you would like additional functionality in Trac to
be enabled for the Cipherdyne projects please email me; perhaps there are benefits here that
would justify the change.