beam-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From al...@apache.org
Subject [1/3] beam-site git commit: Updates contribution guide to include development and testing instructions for Python SDK.
Date Wed, 31 May 2017 17:56:21 GMT
Repository: beam-site
Updated Branches:
  refs/heads/asf-site 8d92f7155 -> 369b331db


Updates contribution guide to include development and testing instructions for Python SDK.


Project: http://git-wip-us.apache.org/repos/asf/beam-site/repo
Commit: http://git-wip-us.apache.org/repos/asf/beam-site/commit/13e2e31f
Tree: http://git-wip-us.apache.org/repos/asf/beam-site/tree/13e2e31f
Diff: http://git-wip-us.apache.org/repos/asf/beam-site/diff/13e2e31f

Branch: refs/heads/asf-site
Commit: 13e2e31fd82c2098f659e361f23a1fa0b16e806c
Parents: 8d92f71
Author: chamikara@google.com <chamikara@google.com>
Authored: Thu May 25 17:12:50 2017 -0700
Committer: chamikara@google.com <chamikara@google.com>
Committed: Tue May 30 16:16:56 2017 -0700

----------------------------------------------------------------------
 src/contribute/contribution-guide.md | 33 ++++++++++++++++++++++++++-----
 1 file changed, 28 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/beam-site/blob/13e2e31f/src/contribute/contribution-guide.md
----------------------------------------------------------------------
diff --git a/src/contribute/contribution-guide.md b/src/contribute/contribution-guide.md
index 62ec895..efccb7f 100644
--- a/src/contribute/contribution-guide.md
+++ b/src/contribute/contribution-guide.md
@@ -80,8 +80,6 @@ If you do not already have a personal GitHub account, sign up [here](https://git
 #### Fork the repository on GitHub
 Go to the [Beam GitHub mirror](https://github.com/apache/beam/) and fork the repository to
your own private account. This will be your private workspace for staging changes.
 
-We recommend enabling Travis-CI continuous integration coverage on your private fork in order
to easily test your changes before proposing a pull request. Go to [Travis-CI](https://travis-ci.org),
log in with your GitHub account, and enable coverage for your repository.
-
 #### Clone the repository locally
 You are now ready to create the development environment on your local machine. Feel free
to repeat these steps on all machines that you want to use for development.
 
@@ -98,6 +96,10 @@ Add your forked repository as an additional Git remote, where you’ll
push your
 
 You are now ready to start developing!
 
+#### [Python SDK Only] Set up a virtual environemt
+
+We recommend setting up a virtual envioment for developing Python SDK. Please see instructions
available in [Quickstart (Python)]({{ site.baseurl }}/get-started/quickstart-py/) for setting
up a virtual environment.
+
 #### [Optional] IDE Setup
 
 Depending on your preferred development environment, you may need to prepare it to develop
Beam code.
@@ -231,10 +233,31 @@ Then you can push your local, committed changes to your (forked) repository
on G
 ### Testing
 All code should have appropriate unit testing coverage. New code should have new tests in
the same contribution. Bug fixes should include a regression test to prevent the issue from
reoccurring.
 
-For contributions to the Java code, run unit tests locally via Maven. Alternatively, you
can use Travis-CI.
+#### Java SDK
+
+For contributions to the Java code, run unit tests locally via Maven.
 
     $ mvn clean verify
 
+#### Python SDK
+
+For contributions to the Python code, you can use command given below to run unit tests locally.
If you update any of the [cythonized](http://cython.org) files in Python SDK, you must install
"cython" package before running following command to properly test your code. We recommend
setting up a virtual environment before testing your code.
+
+    $ python setup.py test
+
+You can use following command to run a single test method.
+
+    $ python setup.py test -s <module>.<test class>.<test method>
+
+To Check for lint errors locally, install "tox" package and run following command.
+
+    $ pip install tox
+    $ tox -e lint
+
+Beam supports running Python SDK tests using Maven. For this, navigate to root directory
of your Apache Beam clone and execute following command. Currently this cannot be run from
a virtual environment.
+
+    $ mvn clean verify -pl sdks/python
+
 ## Review
 Once the initial code is complete and the tests pass, it’s time to start the code review
process. We review and discuss all code, no matter who authors it. It’s a great way to build
community, since you can learn from other developers, and they become familiar with your contribution.
It also builds a strong project by encouraging a high quality bar and keeping code consistent
throughout the project.
 
@@ -260,7 +283,7 @@ When choosing a reviewer, think about who is the expert on the relevant
code, wh
 ### Code Review and Revision
 During the code review process, don’t rebase your branch or otherwise modify published
commits, since this can remove existing comment history and be confusing to the reviewer.
When you make a revision, always push it in a new commit.
 
-Our GitHub mirror automatically provides pre-commit testing coverage using Jenkins and Travis-CI.
Please make sure those tests pass; the contribution cannot be merged otherwise.
+Our GitHub mirror automatically provides pre-commit testing coverage using Jenkins. Please
make sure those tests pass; the contribution cannot be merged otherwise.
 
 ### LGTM
 Once the reviewer is happy with the change, they’ll respond with an LGTM (“*looks good
to me!*”). At this point, the committer will take over, possibly make some additional touch
ups, and merge your changes into the codebase.
@@ -317,7 +340,7 @@ If you are merging a larger contribution, please make sure that the contributor
 For smaller contributions, however, this is not required. In this case, we rely on [clause
five](http://www.apache.org/licenses/LICENSE-2.0#contributions) of the Apache License, Version
2.0, describing licensing of intentionally submitted contributions.
 
 ### Tests
-Before merging, please make sure both Travis-CI and Jenkins tests pass, as visible in the
GitHub pull request. Do not merge the pull request otherwise.
+Before merging, please make sure that Jenkins tests pass, as visible in the GitHub pull request.
Do not merge the pull request otherwise.
 
 ### Finishing touches
 At some point in the review process, you should take the pull request over and complete any
outstanding work that is either minor, stylistic, or otherwise outside the expertise of the
contributor.


Mime
View raw message