I think it would save some time if there was an issue template that asks
Otherwise the same question is always repeated: master or 0.9.8? :)
Here how it's done: https://github.com/blog/2111-issue-and-pull-request-templates
@hamoid this is a great idea and I'm surprised we haven't done this before. Would you be interested in drafting a default template as PR and we can give feedback on it?
I'll give it a try :+1:
Here's a first draft: https://github.com/openframeworks/openFrameworks/pull/5652
Very nice idea.
This is not related to Issue Template but it might be nice to have "Decision Tree" as well?
I'm always struggling like "Should I ask to forum or create issue? or even PR? or Slack?"
And maybe we can include this inside of template as a warring before posting.
Sample algorithm below,
if(you are beginner and need help)
lookForum();
else
if(your problem is related to your own project)
lookForum();
else
if(searched similar problem on forum == NO)
lookForum();
else
if(searched similar problem on open/closed issue == NO)
lookIssue();
else
if(searched PR on related branch == NO)
lookPR();
else
if(you already has solution about your problem == NO)
makeIssue();
else
makePR();

// Use http://graphviz.org to render, like this:
// $ dot -Tpng diagram.dot >diagram.png
digraph finite_state_machine {
// horizontal layout
//rankdir=LR;
node [fontname="OpenSans-Light" fontsize=10 margin=0.1 shape=rect style=filled];
edge [fontname="OpenSans-Light" fontsize=10];
// these are doublecircle (start, end nodes)
node [label="Do you need help\nwith OpenFrameworks?" fillcolor=greenyellow] HELP;
node [label="Ask in the\nForum"] GO_FORUM;
node [label="Search for\nopen & close\nissues in GitHub"] GO_SEARCH_ISSUE;
node [label="Search for\npull requests\nin GitHub"] GO_SEARCH_PR;
node [label="Open an issue\nin GitHub"] GO_OPEN_ISSUE;
node [label="Create a\nPull Request\nin GitHub"] GO_CREATE_PR;
// these are simple circle (middle nodes)
node [label="Are you a\nbeginner?" fillcolor=lemonchiffon1] BEGINNER;
node [label="Where is\nthe problem?"] WHERE_PROBLEM;
node [label="Did you search\nthe forum for\nsimilar problems?"] DID_SEARCH_FORUM;
node [label="Did you search\nfor open & close\nissues in GitHub?"] DID_SEARCH_ISSUE;
node [label="Did you search\nfor pull requests\nin GitHub?"] DID_SEARCH_PR;
node [label="Do you know\nhow to fix\nthe issue?"] HAVE_SOLUTION;
// How to read these:
// A -> B [label X]
// means:
// IF (A == X) THEN GOTO B
HELP -> BEGINNER [label="yes"];
BEGINNER -> GO_FORUM [label="yes"];
BEGINNER -> WHERE_PROBLEM [label="no"];
WHERE_PROBLEM -> GO_FORUM [label="in my\nproject"];
WHERE_PROBLEM -> DID_SEARCH_FORUM [label="in OpenFrameworks"];
DID_SEARCH_FORUM -> GO_FORUM [label="no"];
DID_SEARCH_FORUM -> DID_SEARCH_ISSUE [label="yes"];
DID_SEARCH_ISSUE -> GO_SEARCH_ISSUE [label="no"];
DID_SEARCH_ISSUE -> DID_SEARCH_PR [label="yes"];
DID_SEARCH_PR -> GO_SEARCH_PR [label="no"];
DID_SEARCH_PR -> HAVE_SOLUTION [label="yes"];
HAVE_SOLUTION -> GO_OPEN_ISSUE [label="no"];
HAVE_SOLUTION -> GO_CREATE_PR [label="yes"];
}
Most helpful comment