From fe7fcdb2270643fa308c40201b7aaa556fccd7e2 Mon Sep 17 00:00:00 2001 From: Martin Konicek Date: Tue, 15 Mar 2016 11:48:11 -0700 Subject: [PATCH] Update PR and issue guidelines Reviewed By: mkonicek Differential Revision:D3054017 Ninja: oss only fb-gh-sync-id: df545cb45ae8de3f56f671b06cab84b1f947a01c shipit-source-id: df545cb45ae8de3f56f671b06cab84b1f947a01c --- PULL_REQUEST_TEMPLATE.md | 2 +- docs/IssueGuidelines.md | 18 ++++++++++-------- docs/PullRequestGuidelines.md | 15 ++++++++++++--- 3 files changed, 23 insertions(+), 12 deletions(-) diff --git a/PULL_REQUEST_TEMPLATE.md b/PULL_REQUEST_TEMPLATE.md index 4ef624d5845783..a4b869fc28202b 100644 --- a/PULL_REQUEST_TEMPLATE.md +++ b/PULL_REQUEST_TEMPLATE.md @@ -14,4 +14,4 @@ Make sure tests pass on both Travis and Circle CI. **Code formatting** -See the simple [style guide](https://github.com/facebook/react-native/blob/master/CONTRIBUTING.md#style-guide). +Look around. Match the style of the rest of the codebase. See also the simple [style guide](https://github.com/facebook/react-native/blob/master/CONTRIBUTING.md#style-guide). diff --git a/docs/IssueGuidelines.md b/docs/IssueGuidelines.md index 3745048c1be8b1..bf2cc4f9a72ec7 100644 --- a/docs/IssueGuidelines.md +++ b/docs/IssueGuidelines.md @@ -1,16 +1,17 @@ -Here are some tips on how to manage GitHub issues efficiently: +## Tips on managing GitHub issues efficiently ### An issue is a duplicate of another issue Comment e.g. `@facebook-github-bot duplicate #123`. This will add a comment and close the issue. Example: [#5977](https://github.com/facebook/react-native/issues/5977) ### An issue is a question -StackOverflow is really good for Q&A. It has a reputation system and voting. Questions should absolutely be asked on StackOverflow rather than GitHub. However, to make this work we should hang out on StackOverflow every now and then and answer questions. A nice side effect is you'll get reputation for answering questions there rather than on GitHub. +Questions should absolutely be asked on StackOverflow rather than GitHub. Comment `@facebook-github-bot stack-overflow` to close the issue. Examples: [#6378](https://github.com/facebook/react-native/issues/6378), [#6015](https://github.com/facebook/react-native/issues/6015), [#6059](https://github.com/facebook/react-native/issues/6059), [#6062](https://github.com/facebook/react-native/issues/6062). +Feel free to also answer some [SO questions](stackoverflow.com/questions/tagged/react-native), you'll get rep :) ### An issue is a question that's been answered -Sometimes and issue has been resolved in the comments. Resolved issues should be closed. +Sometimes and issue has been resolved in the comments. Comment `@facebook-github-bot answered` to close it. Example: [#6045](https://github.com/facebook/react-native/issues/6045) @@ -26,14 +27,15 @@ Comment mentioning the author asking if they plan to provide the additional info Example: [#6056](https://github.com/facebook/react-native/issues/6056) ### An issue is a valid bug report -Valid bug reports with good repro steps are some of the best issues! Thank the author for finding it, explain that React Native is a community project and ask them if they would be up for sending a fix. +Valid bug reports with good repro steps are some of the best issues! Thank the author for finding it, explain that React Native is a community project and **ask them if they would be up for sending a fix**. -### An issue is a feature request and you're pretty sure React Native should have that feature -Tell the author something like: "Pull requests are welcome. In case you're not up for sending a PR, you should post to [Product Pains](https://productpains.com/product/react-native/?tab=top). It has a voting system and if the feature gets upvoted enough it might get implemented." - -### An issue is a feature request for a feature we don't want +### An issue is a feature request. The feature shouldn't be in the code and don't want to maintain it. This especially includes **new modules** Facebook doesn't use in production. Explain that those modules should be released to npm separately and that everyone will still be able to use the module super easily that way. +### An issue is a feature request, you're pretty sure we should maintain this feature as part of RN +This should be rare - adding a new feature means maintaining it. +Tell the author something like: "Pull requests are welcome. In case you're not up for sending a PR, you should post to [Product Pains](https://productpains.com/product/react-native/?tab=top). It has a voting system and if the feature gets upvoted enough it might get implemented." + ### How to add a label Add any relevant labels, for example 'Android', 'iOS'. Comment e.g. `@facebook-github-bot label Android` diff --git a/docs/PullRequestGuidelines.md b/docs/PullRequestGuidelines.md index 3e8b420cac01a5..d1b318ee8b2a9e 100644 --- a/docs/PullRequestGuidelines.md +++ b/docs/PullRequestGuidelines.md @@ -1,4 +1,13 @@ -Here are some tips on reviewing pull requests: +## Tips on reviewing pull requests -- Does the PR miss info required in the [Pull request template](https://github.com/facebook/react-native/blob/master/PULL_REQUEST_TEMPLATE.md)? Ask for it and link to the template. Add labels 'Needs revision' and 'Needs response from author'. Examples: [#6395](https://github.com/facebook/react-native/pull/6395), [#5637](https://github.com/facebook/react-native/pull/5637). -- Does the code style match the [Style guide](https://github.com/facebook/react-native/blob/master/CONTRIBUTING.md#style-guide), especially consistency with the rest of the codebase? If not, link to the style guide and add the label 'Needs revision'. +Does the PR miss info required in the [Pull request template](https://github.com/facebook/react-native/blob/master/PULL_REQUEST_TEMPLATE.md)? Ask for it and link to the template. Add labels 'Needs revision' and 'Needs response from author'. Examples: [#6395](https://github.com/facebook/react-native/pull/6395). +Example: + +> Hey @author, thanks for sending the pull request. +> Can you please add all the info specified in the [template](https://github.com/facebook/react-native/blob/master/PULL_REQUEST_TEMPLATE.md)? This is necessary for people to be able to understand and review your pull request. + +Does the code style match the [Style guide](https://github.com/facebook/react-native/blob/master/CONTRIBUTING.md#style-guide), especially consistency with the rest of the codebase? If not, link to the style guide and add the label 'Needs revision'. + +Does the pull request add a completely new feature we don't want to add to the core and maintain? Ask the author to release it a separate npm module. + +Does the pull request do several unrelated things at the same time? Ask the author to split it.