[[PageOutline(2-5,Contents,pullout)]] = Add support for ticket dependencies to Trac = == Description == === What is it? === This plugin adds "blocks" and "blocked by" fields to each ticket, enabling you to express dependencies between tickets. It also provides a graphviz-based dependency-graph feature for those tickets having dependencies specified, allowing you to visually understand the dependency tree. The dependency graph is viewable by clicking 'depgraph' in the context (in the upper right corner) menu when viewing a ticket that blocks or is blocked by another ticket. This plugin works on Trac 0.11 (no longer maintained), Trac 0.12 and Trac 1.0. [[Image(wiki:TracTicketDepgraphPlugin:TracTicketDepgraphPlugin-Screenshot.jpg, right, 50%)]] Shown on screen shot: 1. "Depgraph" link at ticket !#62 (on middle top, yellow bullet); 1. `Blocks` and `blocked by` extra fields at ticket !#62; 1. graphical representation and deeper relation to other tickets (on right); 1. ticket statuses explanation (lower left corner). === What is it not? === * It does not provide ticket-hiding for sub-tasks of a top-level ticket. * There is no parent/child relationship possible (though this is now on the roadmap for an upcoming release, see #10964). * You cannot view the descriptions of tickets depending on the current ticket. * In fact, there are no explicit features that can assist you with sub-task management. * Although it would be cool. * It does not allow you to create a dependent ticket from the current ticket * It does not include reporting features to show how tasks are interrelated (other than the dependency graph already described above). Just put the ticket numbers that a given ticket is blocking in the `Blocking` field. Enter just the number, no leading `#`. Separate multiple numbers with commas. Make sure you add the custom fields as shown below. You need to install graphviz to use the dependency graphs. You do not need the GraphvizPlugin or anything else beyond the dot binary. == Bugs/Feature Requests == Existing bugs and feature requests for MasterTicketsPlugin are [report:9?COMPONENT=MasterTicketsPlugin here]. If you have any issues, create a [http://trac-hacks.org/newticket?component=MasterTicketsPlugin&owner=rjollos new ticket]. == Installation == {{{ easy_install http://trac-hacks.org/svn/masterticketsplugin/trunk/ }}} == Download == Download the latest revision from [download:masterticketsplugin here]. There is an [http://dl.dropbox.com/u/4213259/deb/trac-mastertickets_3.0.2%2Brb8715f528a-0.1_all.deb unofficial Debian package]. To rebuild this package from scratch you need the [http://dl.dropbox.com/u/4213259/deb/trac-mastertickets_3.0.2%2Brb8715f528a-0.1.debian.tar.gz package source] which extracts the revision {{{b8715f528a}}} from github. == Source == You can check out MasterTicketsPlugin from [http://trac-hacks.org/svn/masterticketsplugin here] using Subversion, or [source:masterticketsplugin browse the source] with Trac. == Configuration == To enable, add to trac.ini: {{{ #!ini [components] mastertickets.* = enabled [ticket-custom] blocking = text blocking.label = Blocking blockedby = text blockedby.label = Blocked By }}} Under the '''mastertickets''' section the following options are available: * dot_path (default='dot'): Path to the dot executable * gs_path (default='gs'): Path to the ghostscript executable * use_gs (default=False): If enabled, use ghostscript to produce nicer output To configure the plugin to use a graphviz/dot installation that is at another location: {{{ #!ini [mastertickets] dot_path=/opt/local/bin/dot }}} === Upgrade your installation === After installing or enabling this plugin, trac will claim that it needs to be upgraded; this is because the plugin adds a new table to the database. So run: {{{ #!sh trac-admin /path/to/env upgrade }}} == Known acceptable database versions == Sometimes trac and/or plugins run into trouble with newer database versions because they are fussier about error checking. Therefore this section lists versions that are known to work. * 3.0.4: postgresql 8.4, trac 1.0.1, python 2.7 == Recent Changes == [[ChangeLog(masterticketsplugin, 3)]] == Author/Contributors == '''Author:''' [wiki:coderanger] [[BR]] '''Maintainer:''' [wiki:rjollos], [http://bloodhound.apache.org Apache Bloodhound team] [[BR]] '''Contributors:''' [wiki:mitar]