6 | | As the central project management element of Trac, tickets can be used for '''project tasks''', '''feature requests''', '''bug reports''', '''software support issues''' among others. |
7 | | |
8 | | As with the TracWiki, this subsystem has been designed to make user contribution and participation as simple as possible. |
9 | | |
10 | | An issue is assigned to a person who must resolve it or reassign the ticket to someone else. All tickets can be edited, annotated, assigned, prioritized and discussed at any time. |
| 6 | As with the TracWiki, this subsystem has been designed to make user contribution and participation as simple as possible. Tickets can be edited, annotated, assigned, prioritized and discussed. |
23 | | * '''Keywords''' — Keywords that a ticket is tagged with. Useful for searching and report generation. |
24 | | * '''Priority''' — The importance of this issue, ranging from ''trivial'' to ''blocker''. A dropdown list when multiple priorities are defined. |
25 | | * '''Milestone''' — Due date of when this issue should be resolved. A dropdown list containing the milestones. |
| 21 | * '''Keywords''' — Useful for searching and report generation. |
| 22 | * '''Priority''' — The default priorities are `trivial`, `minor`, `major`, `critical` and `blocker`. A dropdown list when multiple priorities are defined. |
| 23 | * '''Severity''' — Similar to Priority, but the distinction may be useful for some projects. No severities are defined by default, therefore the field will be hidden from the ticket form. |
| 24 | * '''Milestone''' — Milestone in which the ticket will be resolved. A dropdown list. |
27 | | * '''Cc''' — A comma-separated list of other users or email addresses to notify. Note that this does not imply responsibility or any other policy. |
28 | | * '''Resolution''' — Reason for why a ticket was closed. One of {{{fixed}}}, {{{invalid}}}, {{{wontfix}}}, {{{duplicate}}}, {{{worksforme}}}. |
29 | | * '''Status''' — What is the current status? The statuses are defined in the [TracWorkflow#BasicTicketWorkflowCustomization ticket workflow]. For the default workflow the statuses are `new`, `assigned`, `accepted`, `closed` and `reopened`. |
30 | | * '''Summary''' — A description summarizing the issue. Simple text without WikiFormatting. |
31 | | * '''Description''' — The body of the ticket. A good description should be specific, descriptive and to the point. Accepts WikiFormatting. |
| 26 | * '''Cc''' — A comma-separated list of other users or email addresses to notify when changes are made to a ticket. |
| 27 | * '''Resolution''' — Reason why a ticket was closed. Default values are `fixed`, `invalid`, `wontfix`, `duplicate`, `worksforme`. |
| 28 | * '''Status''' — The statuses are defined in the [TracWorkflow#BasicTicketWorkflowCustomization ticket workflow]. For the default workflow the statuses are `new`, `assigned`, `accepted`, `closed` and `reopened`. |
33 | | '''Notes:''' |
34 | | - Versions of Trac prior to 0.9 did not have the ''type'' field, but instead provided a ''severity'' field and different default values for the ''priority'' field. This change was done to simplify the ticket model by removing the somewhat blurry distinction between ''priority'' and ''severity''. However, the old model is still available if you prefer it: just add/modify the default values of the ''priority'' and ''severity'', and optionally hide the ''type'' field by removing all the possible values through [wiki:TracAdmin trac-admin]. |
35 | | |
36 | | - The [trac:TicketTypes type], [trac:TicketComponent component], version, priority and severity fields can be managed with [wiki:TracAdmin trac-admin] or with the [trac:WebAdmin WebAdmin] plugin. |
37 | | |
38 | | - Description of the builtin ''priority'' values is available at [trac:TicketTypes#Whyistheseverityfieldgone TicketTypes] |
| 30 | '''Notes:''' |
| 31 | - The type, [trac:TicketComponent component], [TracRoadmap milestone], version, priority, severity fields and resolution can be managed using [TracAdmin trac-admin] or !WebAdmin. |
55 | | - See TracWorkflow for information about the state transitions (ticket lifecycle), and how this workflow can be customized. |
| 48 | - See TracWorkflow for information about the state transitions (ticket lifecycle), and customization of the workflow. |
| 49 | |
| 50 | == Hiding Fields |
| 51 | |
| 52 | Many of the default ticket fields can be hidden from the ticket web interface by removing all the possible values through the !WebAdmin or using [TracAdmin trac-admin]. This only applies to drop-down lists: ''type'', ''priority'', ''severity'', ''component'', ''version'' and ''milestone''. |
| 53 | |
| 54 | == Adding Custom Fields |
| 55 | |
| 56 | Trac lets you add custom ticket fields. See TracTicketsCustomFields for more information. |
61 | | * `default_component`: Name of the component selected by default. |
62 | | * `default_milestone`: Name of the default milestone. |
63 | | * `default_priority`: Default priority value. |
64 | | * `default_severity`: Default severity value. |
65 | | * `default_type`: Default ticket type. |
66 | | * `default_version`: Name of the default version. |
67 | | * `default_owner`: Name of the default owner. If set to the text `< default >` (the default value), the component owner is used. |
68 | | |
69 | | If any of these options are omitted, the default value will either be the first in the list, or an empty value, depending on whether the field in question is required to be set. Some of these can be chosen through the [trac:WebAdmin WebAdmin] plugin in the "Ticket System" section, others can be set in the [[wiki:TracIni#ticket-section|"[ticket]"]] section in `trac.ini`. |
70 | | |
71 | | == Hiding Fields and Adding Custom Fields |
72 | | |
73 | | Many of the default ticket fields can be hidden from the ticket web interface simply by removing all the possible values through [wiki:TracAdmin trac-admin]. This of course only applies to drop-down fields, such as ''type'', ''priority'', ''severity'', ''component'', ''version'' and ''milestone''. |
74 | | |
75 | | Trac also lets you add your own custom ticket fields. See TracTicketsCustomFields for more information. |
| 62 | If any of these options are omitted, the default value will either be the first in the list, or an empty value when allowed. The [[TracIni#ticket-allowed_empty_fields-option|allowed_empty_fields]] option determines which fields may have an empty value. |
| 109 | To set the ticket owner the workflow action may also need to be selected. For the [TracWorkflow#TicketCreateAction default workflow], the //create and assign// action can be selected with `action=create_and_assign` and the owner specified by assigning `action_create_and_assign_reassign_owner`. Alternatively, you could avoid needing to select the action by using the [TracWorkflow#BasicTicketWorkflowCustomization default attribute] to make //create and assign// the default action. |
| 110 | |
| 111 | For other custom workflow actions, determine the variable names by inspecting the `name` attribute of the //action// radio button and the //owner// input or select element. |
| 112 | |
| 113 | == Deleting Tickets #deleter |
| 114 | |
| 115 | Ticket delete and ticket change delete functions are enabled through an optional component. To enable the functionality edit the [TracIni#components-section "[components]"] section of TracIni: |
| 116 | {{{#!ini |
| 117 | [components] |
| 118 | tracopt.ticket.deleter.* = enabled |
| 119 | }}} |
| 120 | |
| 121 | The //Delete// buttons appears next to the //Reply// buttons in the ticket description and ticket change areas. `TICKET_ADMIN` permission is required for deleting tickets and ticket changes. |
| 122 | |
| 123 | Tickets and ticket changes can also be deleted using the TracAdmin `ticket remove` and `ticket remove_comment` commands. |
| 124 | |
| 125 | == Cloning Tickets #cloner |
| 126 | |
| 127 | The ticket clone function is enabled through an optional component. To enable the functionality edit the [TracIni#components-section "[components]"] section of TracIni: |
| 128 | {{{#!ini |
| 129 | [components] |
| 130 | tracopt.ticket.clone.* = enabled |
| 131 | }}} |
| 132 | |
| 133 | The //Clone// buttons appears next to the //Reply// buttons in the ticket description and ticket change areas. The ticket summary, description and properties are cloned, with minor modifications such as changing the ticket reporter to the currently authenticated user. |
| 134 | |