bosun report contributor --group=one --group=two --user=ada.lovelace
User story: I am a Liberty contributor. I want a simple report of what I'm working on across all my projects.
Proposed solution: A report named "contributor" that accepts two parameters, username and a list of groups. For example:
bosun report contributor --user=ada.lovelace --project=liberty,Librem5
Pseudocode query:
SELECT *
FROM issues
WHERE user = ada.lovelace
AND project IN (liberty, Librem5)
GROUP BY status
ORDER BY status, milestone, due date, ticket number
Sample output (see below):
- Assume tickets are valid (no linting in this report)
- If a ticket is assigned to multiple statuses, show it in each one
- "In progress" subsection layout is unique
- All other subsections use the same layout
- Missing values (e.g. due date) should just report "None"
Contributor report for ada.lovelace
Generated YYYY-MM-DD
Groups included: liberty, Librem5
In progress
Ticket | Title | Milestone | Due date |
---|---|---|---|
123 | Implement foo | First | 2020-13-13 |
124 | Implement bar | Second | 2020-13-14 |
Ready
Milestone first (2020-13-13)
Ticket | Title |
---|---|
125 | Refactor foo |
126 | GUI for bar |
Milestone second (2020-13-14)
Ticket | Title |
---|---|
127 | Implement foo in C |
128 | Highlight bar |
Waiting for review
Milestone first (2020-13-13)
Ticket | Title |
---|---|
125 | Refactor foo |
126 | GUI for bar |
Milestone second (2020-13-14)
Ticket | Title |
---|---|
127 | Implement foo in C |
128 | Highlight bar |
On hold
Milestone first (2020-13-13)
Ticket | Title |
---|---|
129 | Refactor foo |
130 | GUI for bar |
Milestone second (2020-13-14)
Ticket | Title |
---|---|
131 | Implement foo in C |
132 | Highlight bar |
Closed
Milestone first (2020-13-13)
Ticket | Title |
---|---|
133 | Refactor foo |
134 | GUI for bar |
Milestone second (2020-13-14)
Ticket | Title |
---|---|
135 | Implement foo in C |
136 | Highlight bar |
Edited by David Seaward