jon-wei commented on a change in pull request #7206: Add the pull-request 
template
URL: https://github.com/apache/incubator-druid/pull/7206#discussion_r267188508
 
 

 ##########
 File path: .github/pull_request_template.md
 ##########
 @@ -0,0 +1,53 @@
+Fixes #XXXX.
+
+(Replace XXXX with the id of the issue fixed in this PR. Remove this line if 
there is no corresponding
+issue. Don't reference the issue in the title of this pull-request.)
+
+Add tags to your PR if you are a committer (only committers have the right to 
add tags). Add [Design Review] tag
+if this PR should better be reviewed by at least two people.
+Don't forget to add the following tags (if applicable): [Incompatible], 
[Release Notes], [Compatibility], [Security],
+[Development Blocker]. Add at least one [Area - ] tag, consider creating a new 
one if none of the existing [Area - ]
+tags is applicable.
+
+### Description
+
+Describe the goal of this PR, what problem are you fixing. If there is a 
corresponding issue (referenced above), it's
+not necessary to repeat the description here, however, you may choose to keep 
one summary sentence.
+
+Describe your patch: what did you change in code? How did you fix the problem?
+
+If there are several relatively logically separate changes in this PR, list 
them. For example:
+ - Fixed the bug ...
+ - Renamed the class ...
+ - Added a forbidden-apis entry ...
+
+Some of the aspects mentioned above may be omitted for simple and small PRs.
+
+### Design
+
+Please describe any design decisions made, including:
+ - Choice of algorithms
+ - Behavioral aspects. What configuration values are acceptable? How are 
corner cases and error conditions handled, such
+   as when insufficient resources are available?
+ - Class organization and design (how the logic is split between classes, 
inheritance, composition, design patterns)
+ - Method organization and design (how the logic is split between methods, 
parameters and return types)
+ - Naming (class, method, API, configuration, HTTP endpoint, names of emitted 
metrics)
+
+In addition, describe _at least one_ alternative design (or mention 
alternative name) for every design (or naming)
 
 Review comment:
   > That's an intuitive expectation, but the counterintuitive point is that it 
actually brings real value far more often than expected.
   
   That's fair, I don't think I would really know the effects of such a rule 
unless put in practice. But I think doing so is risky. 
   
   Some PRs are submitted by people with a pressing need to have that feature 
in Druid (e.g., their business relies on a certain feature they made), I don't 
expect complex PR submission requirements to hinder such people.
   
   But as the PR submissions become more "casual", I think the likelihood of 
people being discouraged by complex requirements increases. I would personally 
rather put more burden on reviewers for ensuring quality than potentially 
hindering incoming contributions for this specific point.
   
   > I don't think any problem with PR decoration is a basis for rejecting any 
PR at all.
   
   Hm, if I compare description of alternative designs to a description of the 
chosen design, I would be quite willing to hold off review on a PR or reject it 
until the author provides a description of what the PR is doing.
   
   To the earlier point being discussed about enforcing the rule, I think it's 
true that making it a "hard requirement" could be psychologically useful, but 
that too I think has costs. As a general principle, I believe that having rules 
that aren't enforced consistently hurts the credibility of the body of rules as 
a whole and introduces some uncertainty.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to