You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@thrift.apache.org by jk...@apache.org on 2018/04/06 12:39:41 UTC

[thrift] branch master updated: modify contributing markdown and add pull request template markdown for github

This is an automated email from the ASF dual-hosted git repository.

jking pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/thrift.git


The following commit(s) were added to refs/heads/master by this push:
     new 85db0fe  modify contributing markdown and add pull request template markdown for github
85db0fe is described below

commit 85db0fe2ed2069050b5140ef5a500883b430823c
Author: James E. King III <jk...@apache.org>
AuthorDate: Fri Apr 6 08:37:11 2018 -0400

    modify contributing markdown and add pull request template markdown for github
---
 CONTRIBUTING.md          | 57 +++++++++++++++++++++++++++++++-----------------
 pull_request_template.md | 17 +++++++++++++++
 2 files changed, 54 insertions(+), 20 deletions(-)

diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 0460359..7a1d710 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -6,28 +6,26 @@ Thank you for your interest in contributing to the Apache Thrift project!  Infor
  * [Get involved!](http://www.apache.org/foundation/getinvolved.html)
  * [Legal aspects on Submission of Contributions (Patches)](http://www.apache.org/licenses/LICENSE-2.0.html#contributions)
 
-## If you want to build the project locally ##
+## GitHub pull requests ##
 
-For Windows systems, see our detailed instructions on the [CMake README](/build/cmake/README.md).
+This is the preferred method of submitting changes.  When you submit a pull request through github,
+it activates the continuous integration (CI) build systems at Appveyor and Travis to build your changesxi
+on a variety of Linux and Windows configurations and run all the test suites.  Follow these requirements 
+for a successful pull request:
 
-For Windows Native C++ builds, see our detailed instructions on the [WinCPP README](/build/wincpp/README.md).
+ 1. All code changes require an [Apache Jira THRIFT Issue](http://issues.apache.org/jira/browse/THRIFT) ticket.
 
-For unix systems, see our detailed instructions on the [Docker README](/build/docker/README.md).
+ 1. All pull requests should contain a single commit per issue, or we will ask you to squash it.
+ 1. The pull request title must begin with the Jira THRIFT ticket identifier, for example:
 
-## If you want to review open issues... ##
+        THRIFT-9999: an example pull request title
+        
+ 1. Commit messages must follow this pattern for code changes (deviations will not be merged):
+        
+        THRIFT-9999: [summary of fix, one line if possible]
+        Client: [language(s) affected, comma separated, use lib/ directory names please]
 
- 1. Review the [GitHub Pull Request Backlog](https://github.com/apache/thrift/pulls).  Code reviews are open to all.
- 2. Review the [Jira issue tracker](http://issues.apache.org/jira/browse/THRIFT).  You can search for tickets relating to languages you are interested in or currently using with thrift, for example a Jira search (Issues -> Search For Issues) query of ``project = THRIFT AND component in ("Erlang - Library") and status not in (resolved, closed)`` will locate all the open Erlang Library issues.
-
-## If you discovered a defect... ##
-
- 1. Check to see if the issue is already in the [Jira issue tracker](http://issues.apache.org/jira/browse/THRIFT).
- 1. If not, create a ticket describing the change you're proposing in the Jira issue tracker.
- 1. Contribute your code changes using the GitHub pull request method:
-
-## Contributing via GitHub pull requests ##
-
-This is the preferred method of submitting changes.  When you submit a pull request through github, it activates the continuous integration (CI) build systems at Appveyor and Travis to build your changes on a variety of Windows and Linux configurations and run all the test suites.
+Instructions:
 
  1. Create a fork in your GitHub account of http://github.com/apache/thrift
  1. Clone the fork to your development system.
@@ -35,16 +33,35 @@ This is the preferred method of submitting changes.  When you submit a pull requ
  1. Modify the source to include the improvement/bugfix, and:
 
     * Remember to provide *tests* for all submitted changes!
-    * Use test-driven development (TDD): add a test that will isolate the bug *before* applying a  change that fixes it.
+    * Use test-driven development (TDD): add a test that will isolate the bug *before* applying the change that fixes it.
     * Verify that you follow [Thrift Coding Standards](/docs/coding_standards) (you can run 'make style', which ensures proper format for some languages).
     * [*optional*] Verify that your change works on other platforms by adding a GitHub service hook to [Travis CI](http://docs.travis-ci.com/user/getting-started/#Step-one%3A-Sign-in) and [AppVeyor](http://www.appveyor.com/docs).  You can use this technique to run the Thrift CI jobs in your account to check your changes before they are made public.  Every GitHub pull request into Thrift will run the full CI build and test suite on your changes.
 
- 1. Squash your changes to a single commit.  This is very important as it makes the process of applying your commit upstream much easier.
- 1. Commit and push changes to your branch (please use issue name and description as commit title, e.g. "THRIFT-9999: make it perfect").
+ 1. Squash your changes to a single commit.  This maintains clean change history.
+ 1. Commit and push changes to your branch (please use issue name and description as commit title, e.g. "THRIFT-9999: make it perfect"), with the affected languages on the next line of the description.
  1. Use GitHub to create a pull request going from your branch to apache:master.  Ensure that the Jira ticket number is at the beginning of the title of your pull request, same as the commit title.
  1. Wait for other contributors or committers to review your new addition, and for a CI build to complete.
  1. Wait for a committer to commit your patch.  You can nudge the committers if necessary by sending a message to the [Apache Thrift mailing list](https://thrift.apache.org/mailing).
 
+## If you want to build the project locally ##
+
+For Windows systems, see our detailed instructions on the [CMake README](/build/cmake/README.md).
+
+For Windows Native C++ builds, see our detailed instructions on the [WinCPP README](/build/wincpp/README.md).
+
+For unix systems, see our detailed instructions on the [Docker README](/build/docker/README.md).
+
+## If you want to review open issues... ##
+
+ 1. Review the [GitHub Pull Request Backlog](https://github.com/apache/thrift/pulls).  Code reviews are open to all.
+ 2. Review the [Jira issue tracker](http://issues.apache.org/jira/browse/THRIFT).  You can search for tickets relating to languages you are interested in or currently using with thrift, for example a Jira search (Issues -> Search For Issues) query of ``project = THRIFT AND component in ("Erlang - Library") and status not in (resolved, closed)`` will locate all the open Erlang Library issues.
+
+## If you discovered a defect... ##
+
+ 1. Check to see if the issue is already in the [Jira issue tracker](http://issues.apache.org/jira/browse/THRIFT).
+ 1. If not, create a ticket describing the change you're proposing in the Jira issue tracker.
+ 1. Contribute your code changes using the GitHub pull request method:
+
 ## Contributing via Patch ##
 
 Some changes do not require a build, for example in documentation.  For changes that are not code or build related, you can submit a patch on Jira for review.  To create a patch from changes in your local directory:
diff --git a/pull_request_template.md b/pull_request_template.md
new file mode 100644
index 0000000..5c714bc
--- /dev/null
+++ b/pull_request_template.md
@@ -0,0 +1,17 @@
+#### Instructions for Apache Thrift Pull Requests ####
+
+1. All code changes require an [Apache Jira THRIFT Issue](http://issues.apache.org/jira/browse/THRIFT) ticket.
+
+1. All pull requests should contain a single commit per issue, or we will ask you to squash it.
+1. The pull request title must begin with the Jira THRIFT ticket identifier, for example:
+
+        THRIFT-9999: an example pull request title
+
+1. Commit messages must follow this pattern for code changes (deviations will not be merged):
+
+        THRIFT-9999: [summary of fix, one line if possible]
+        Client: [language(s) affected, comma separated, use lib/ directory names please]
+
+1. Remove these instructions from any pull request description.
+
+For more information about committing, see [CONTRIBUTING](CONTRIBUTING.md).
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
jking@apache.org.