-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
A proposal for bug and issue handling, and roadmap management #902
Conversation
Forgot to mention migration strategy. I don't think we should auto-migrate everything (partially because then we'd only have to triage it again, anyway, under these rules). I'd propose letting issues trickle over, letting people spend time on it as they'd like over the course of a couple weeks(?). We'd set a firm deadline, after which we'd sit down as a team and do a mass-triage (which is hopefully motivation to do it in the allotted time). |
message and/or commentary | ||
* `status/WIP` - this issue or PR is currently being worked on. It should not | ||
be merged (or closed) without pinging the owner/submitter. | ||
* `status/review` - issue is resolved or PR is complete and needs review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here "issue is resolved" is not clear to me, do you mean that the issue has been addressed with a merged PR and we ask the submitter to check if the issue is resolved for him?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, my intent was that it indicated the issue needed some extra verification prior to close. That might not be a useful indicator for issues, though, and I'd expect many issues to go directly from WIP to closed (especially when using the GitHub auto-close like "resolves #ISSUENUMBER".
For the milestones specification and focus I vote huge 👍 As I see it, more important than where to keep the record is to actually sit down in the beginning of the cycle and plan ahead which features will be implemented and what bugs fixed in the next release(s). The issue tracking format/place/tags/triage I am sceptical about as I expect it to end the same way as BB/Trello ended. I see no easy way out when digging through hundreds of issues/cards/ideas. We might get minor improvements like better search and tags, however we lose e.g. votes and history. I would much rather see us to start working on 16.01 milestone breakdown (through GitHub) than to spend time digging through Trello for the sake of migration to GH issues. |
Type Labels | ||
----------- | ||
|
||
The 'class' label set is used for classifying the type of contribution or |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I really like "kind" better than class here.
…icate 'triage' tag.
request/report to separate enhancements and new features from bugs, etc. | ||
|
||
* `kind/bug` - something is broken, and it needs fixing | ||
* `kind/documentation` - documentation is unclear or can be improved |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The documentation is part of the code and the code is part of the documentation, this seems like a harmful or arbitrary distinction to me. I think kind/documentation
should be dropped - either the documentation is wrong (kind/bug
) or the documentation needs to be improved (kind/enhancement
).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
agreed, not a useful distinction
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about tasks that really are purely documentation and don't touch code? Not everything we do is code. Do we manage those issues somewhere else?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jxtx Leaving them in Trello is an option. Same as 'management', 'main', 'deployment' etc. tasks.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jxtx Documentation in repository or out? I assume you mean out, so like on the wiki.
I think we should have a separate Galaxy project project on github for discussing project wide things via issues and laying out procedures for things that aren't directly related to this repository (like how we manage galaxyproject
teams on github for instance). That repository may or may not be the right place to track such issues.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This comparison doesn't work for me. Of course programs must be written primarily for people to read. That doesn't mean there are not tasks that are primarily writing documentation in nature.
Still feels like a kind to me. I read area as an area of the application impacted, while kind refers to the kind of work that needs to be done. Of course, there are some things that are less clear to me like UI.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@martenson A goal here, at least for @nekrut and I, is to gradually move everything out of Trello. So, this would start with "Galaxy Development" becoming read-only and moving everything here. Then the rest of our public boards, either here or to another repo.
ToolShed is an interesting case. When does it get its own repository?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@martenson since my alternative "blue sky" toolshed is unlikely to catch on any time soon... in the short term would you have any interest in doing this with me? Clone galaxy into a separate TS repository, and slowly remove everything but TS code, then work toward adding/removing features/cleaner API, internal refactoring, etc?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed, thanks. That was slightly off topic, you're right. Just wanted to respond to @jxtx's comment about separate TS trello and have a plan for that.
👍 to having the "roadmap" on github. |
|
||
* `procedures` is a special tag that indicates that the issue is related to | ||
project governance, and it overrides the need for the trio of | ||
kind/status/area tags, and these are never auto-flagged for triage. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe add a link to doc/source/project/organization.rst
for further details?
tagged `triage`, indicating that they require attention. | ||
|
||
* All PRs that are not assigned to a milestone will be tagged `triage` to | ||
indicate that they require attention prior to merge. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will add to p4. Update: galaxyproject/p4#2
@jmchilton I agree re: procedures. It'd be a bummer to have to issue a procedures PR and wait a week to add a new area tag, something that I'm sure we'll have to do at least a few times in the first few weeks. |
About procedures: I also agree this should not be part of About kind/documentation: My preference would be area/documentation or drop it. About ROADMAP.md: I vote for less redundancy, drop it. About missing things: https://github.com/galaxyproject/galaxy/pull/902/files#r41880224 |
Move documentation from kind to area.
Does this PR imply/demand/mean that we are going to convert the whole Trello into GH issues? |
@martenson In #902 (comment), I proposed a general trickle, after which we'd do a triage if it isn't going to work. I think it would be a mistake to just abandon issues that have been reported to Trello, so they have to be moved or resolved where they are (which I think is unlikely that anyone will do). |
@jmchilton Can we infer minor/major from 'kind', though? That was my hope, to avoid a release-notes specific tag. |
@dannon Give the proposed definition - I believe there are certainly major and non-major bug fixes, feature, and enhancements. Also there are both minor and non-minor bug fixes. |
Hrmm. Is there a way we can tweak feature/enhancement/bug/refactoring to encompass this, instead of having effectively a fourth required tag set? I was sort of thinking the release notes would just break down along those lines.
Wild idea- Can/should we tweak our milestone usage here? Things that would be 'minor' simply aren't associated with a milestone, since we don't really care to indicate them? |
90% of PRs won't be either major or minor - this is only a new required tag set in the way procedures or not procedures is - or any of the other special tags. I feel like even in those three categories, we still want to push major stuff to the top and still want to exclude a few select things. I like explicitly stating minor with a tag better than not associating it with a release - feels more explicit and less like something is falling through the cracks. If the milestone are getting auto assigned though it would take an explicit choice to drop them. |
@jmchilton Hrmm, k. Let's try it, see how it works. |
Does anyone have any major outstanding concerns about this? We can certainly continue to tweak the wording as we move forward (we are not classifying this as Procedures for PR purposes, so it'll be easy to do), but I'd like to go ahead and get the basics implemented. |
@dannon I'm very happy with how this turned out, thanks for putting it together and incorporating suggestions even when you weren't 100% sold. I'll give this a few more hours and then merge it if no one else has. |
I raised a question on IRC about how to handle bugs affecting Main. Does a label solution Regardless 👍 on this and thanks @dannon |
New policies for bug and issue handling, and roadmap management.
This is a still-rough proposal for how we might use GitHub issues for bug and project development goal tracking, replacing the galaxy-development board completely.
We've tried several different approaches over the course of the project and two common problems this approach attempts to address are:
I think with good (and enforced!) labeling behavior and the rules surrounding issues/prs and milestones we can make some nice improvements.
Please comment and submit any changes, all opinions welcome. I will probably wake up and fix grammar in the morning.