Jira Tips and Tricks
This page describes automated processes and features which might be useful to understand when working with Qt's bug tracker Jira https://bugreports.qt.io
Extended Search Capabilities
Jira uses JQL to allow the user to find issues with certain criteria. Out of the box the language provides a relatively large set of operators, function and keywords. However, there are corner cases when those capabilities are not sufficient. For example, the default JQL set does not allow the search for "issues on which user xyz commented on during the last 24h" or "issues whose version field matches a regular expression". To enable some of those more obscure use cases Qt's bug tracker extend the default JQL language set using custom plugins. The list below provides a summary
* Jira's JQL documentation * JQL Booster Pack
The auto completion feature of Jira's JQL search field provides a limited discovery of those additional capabilities too.
Need More Info (NMI) handling
Qt's bug tracker utilizes the "Need more info" (NMI) state which indicates that the current assignee of an issue or bug requires more information from the reporter. The issue remains in the state until the reporter has provided the requested information. The information can either be provided by commenting or updating the issue description. Once the info was provided, the reporter must transition the issue out of the NMI state by pressing the "Provide Missing Info" button. The overall purpose of this state is to ensure bug reports have as much information as possible and being able to identify incomplete ones.
Unfortunately not every reporter (especially a reporter new to the Qt community) is aware of the obligation. Therefore an automated cleanup procedure is employed to remind reporters of their obligation and (if necessary) prevent issues from being stuck in the "Need More Info" state. After two weeks of inactivity a reminder is posted to the Jira issue stating the expectations put towards the reporter and after another two weeks of inactivity automatically close the issue (with an automated explanation).
The following table provides a summary of the automated handling in Jira. Workflow conditions are recorded via Jira labels. At the same time manual control of the cleanup procedure is permitted for the experienced users.
Automation rules
Upon transitioning an issue into the NMI state the initial NMI label is set by the system and activity monitoring is started. The table below shows the automation reaction once the Jira issues NMI state has been reached.
Current issue label | User activity | Automated handling reaction (if no user activity) | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
NMI label set | A comment from the reporter or an unrelated user will unset the NMI label | After 2 wks of no user activity, the RNMI label is set. Setting of the RNMI label will trigger the posting of a comment to the reporter. | |||||||||||||
NMI & RNMI label set | NMI and RNMI will be unset if the reporter or an unrelated user posts a comment. | After two weeks of no user activity, the issue is automatically closed with an appropriate message. | |||||||||||||
<<No NMI label>> | A comment from the reporter or an unrelated user has no effect. | Issue will be transitioned back to "Reported" state (after one day without activity). The assumption is that further information was provided but the user forgot to transition the issue. | |||||||||||||
any combination | A comment from the assignee will renew the NMI label. | ||||||||||||||
any combination | User moves issue out of NMI state. | The potentially existing NMI or RNMI labels are removed. |
} Jira permissionsThe Jira bug tracker utilizes three general permission levels obtained by users (apart from Jira Admin permissions). The below table summarizes the different levels and outlines their individual capabilities. The rights
Note that some projects have individual permission sets which may differ from the above configuration. |