[BEAM-3240] Improves development and testing instructions related to Python SDK#253
Conversation
|
Refer to this link for build results (access rights to CI server needed): Jenkins built the site at commit id b9dd624 with Jekyll and staged it here. Happy reviewing. Note that any previous site has been deleted. This staged site will be automatically deleted after its TTL expires. Push any commit to the pull request branch or re-trigger the build to get it staged again. |
|
Refer to this link for build results (access rights to CI server needed): Jenkins built the site at commit id 9bd446a with Jekyll and staged it here. Happy reviewing. Note that any previous site has been deleted. This staged site will be automatically deleted after its TTL expires. Push any commit to the pull request branch or re-trigger the build to get it staged again. |
src/contribute/contribution-guide.md
Outdated
|
|
||
| For contributions to the Python code, you can use following commands to run unit tests locally and to check for lint errors. Once you send a pull request for review, these tests will be rerun using Jenkins. We recommend setting up a virtual environment before testing your code. | ||
|
|
||
| ##### Running a single test using nose |
There was a problem hiding this comment.
Should we add a section for testing with tox? (not just for lint)
There was a problem hiding this comment.
Why is it needed ? If it simply another way to run tests I would rather avoid adding that info here.
src/contribute/contribution-guide.md
Outdated
|
|
||
| #### Python SDK | ||
|
|
||
| For contributions to the Python code, you can use following commands to run unit tests locally and to check for lint errors. Once you send a pull request for review, these tests will be rerun using Jenkins. We recommend setting up a virtual environment before testing your code. |
There was a problem hiding this comment.
Maybe a TBD for people who wants to use mvn. FWIW mvn clean verify works in the python directory. It should work from the root with the right selection of project (mvn clean verify -pl sdks/python)
There was a problem hiding this comment.
I think we should not add that info till https://issues.apache.org/jira/browse/BEAM-2341 and other issues around Maven+Python SDK are resolved.
There was a problem hiding this comment.
I wonder if adding some information would help people coming from the mvn background. I am not sure, we can leave it as is.
There was a problem hiding this comment.
Added instructions for running tests using Maven.
There was a problem hiding this comment.
Don't follow -- which are "following commands"?
Fix above: Travis CI is disabled.
Overall, I'd probably generalize and say that mvn clean verify does it all, i.e., no Java SDK/Python SDK sections at all.
|
|
||
| $ mvn clean verify | ||
|
|
||
| #### Python SDK |
There was a problem hiding this comment.
Should we say anything about cython? (probably not)
There was a problem hiding this comment.
Added a sentence on Python under testing section.
|
|
||
| $ mvn clean verify | ||
|
|
||
| #### Python SDK |
There was a problem hiding this comment.
Added a sentence on Python under testing section.
src/contribute/contribution-guide.md
Outdated
|
|
||
| #### Python SDK | ||
|
|
||
| For contributions to the Python code, you can use following commands to run unit tests locally and to check for lint errors. Once you send a pull request for review, these tests will be rerun using Jenkins. We recommend setting up a virtual environment before testing your code. |
There was a problem hiding this comment.
I think we should not add that info till https://issues.apache.org/jira/browse/BEAM-2341 and other issues around Maven+Python SDK are resolved.
src/contribute/contribution-guide.md
Outdated
|
|
||
| For contributions to the Python code, you can use following commands to run unit tests locally and to check for lint errors. Once you send a pull request for review, these tests will be rerun using Jenkins. We recommend setting up a virtual environment before testing your code. | ||
|
|
||
| ##### Running a single test using nose |
There was a problem hiding this comment.
Why is it needed ? If it simply another way to run tests I would rather avoid adding that info here.
|
Refer to this link for build results (access rights to CI server needed): Jenkins built the site at commit id 120a35f with Jekyll and staged it here. Happy reviewing. Note that any previous site has been deleted. This staged site will be automatically deleted after its TTL expires. Push any commit to the pull request branch or re-trigger the build to get it staged again. |
|
LGTM. Thank you. (please self merge) |
chamikaramj
left a comment
There was a problem hiding this comment.
Thanks.
Davor, please let me know if these changes look good to you.
src/contribute/contribution-guide.md
Outdated
|
|
||
| #### Python SDK | ||
|
|
||
| For contributions to the Python code, you can use following commands to run unit tests locally and to check for lint errors. Once you send a pull request for review, these tests will be rerun using Jenkins. We recommend setting up a virtual environment before testing your code. |
There was a problem hiding this comment.
Added instructions for running tests using Maven.
|
Refer to this link for build results (access rights to CI server needed): Jenkins built the site at commit id 41deb88 with Jekyll and staged it here. Happy reviewing. Note that any previous site has been deleted. This staged site will be automatically deleted after its TTL expires. Push any commit to the pull request branch or re-trigger the build to get it staged again. |
davorbonaci
left a comment
There was a problem hiding this comment.
I wonder should all things under ### Testing go to the testing page.
src/contribute/contribution-guide.md
Outdated
|
|
||
| #### Python SDK | ||
|
|
||
| For contributions to the Python code, you can use following commands to run unit tests locally and to check for lint errors. Once you send a pull request for review, these tests will be rerun using Jenkins. We recommend setting up a virtual environment before testing your code. |
There was a problem hiding this comment.
Don't follow -- which are "following commands"?
Fix above: Travis CI is disabled.
Overall, I'd probably generalize and say that mvn clean verify does it all, i.e., no Java SDK/Python SDK sections at all.
|
Did following updates.
Given that Maven support for Python SDK is limited (does not work from a virtual environment, cannot be used to rune a single test, etc.) I think having these instructions will be useful for potential contributors to Python SDK. |
|
Refer to this link for build results (access rights to CI server needed): Jenkins built the site at commit id 8990681 with Jekyll and staged it here. Happy reviewing. Note that any previous site has been deleted. This staged site will be automatically deleted after its TTL expires. Push any commit to the pull request branch or re-trigger the build to get it staged again. |
|
Regarding "I wonder should all things under ### Testing go to the testing page" I think it's better to keep instructions related to testing that applies to most PRs in the contributors guide (information I added) while keeping any additional information (for example Maven commands that users sometimes need) in a separate document. Davor, could you PTAL. |
src/contribute/contribution-guide.md
Outdated
|
|
||
| You are now ready to start developing! | ||
|
|
||
| #### [Python SDK Only] Setup a virtual environemt |
src/contribute/contribution-guide.md
Outdated
|
|
||
| #### [Python SDK Only] Setup a virtual environemt | ||
|
|
||
| We recommend setting up a virtual envioment for developing Python SDK. Please see instructions available at [Quickstart (Python)]({{ site.baseurl }}/get-started/quickstart-py/) for setting up a virtual environment. |
There was a problem hiding this comment.
at quickstart -> in quickstart?
src/contribute/contribution-guide.md
Outdated
|
|
||
| #### 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. |
8990681 to
26228b9
Compare
src/contribute/contribution-guide.md
Outdated
|
|
||
| You are now ready to start developing! | ||
|
|
||
| #### [Python SDK Only] Setup a virtual environemt |
src/contribute/contribution-guide.md
Outdated
|
|
||
| #### [Python SDK Only] Setup a virtual environemt | ||
|
|
||
| We recommend setting up a virtual envioment for developing Python SDK. Please see instructions available at [Quickstart (Python)]({{ site.baseurl }}/get-started/quickstart-py/) for setting up a virtual environment. |
src/contribute/contribution-guide.md
Outdated
|
|
||
| #### 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. |
…tions for Python SDK.
26228b9 to
13e2e31
Compare
|
Build finished. |
|
Build finished. Jenkins built the site at commit id 13e2e31 with Jekyll and staged it here. Happy reviewing. Note that any previous site has been deleted. This staged site will be automatically deleted after its TTL expires. Push any commit to the pull request branch or re-trigger the build to get it staged again. |
|
Refer to this link for build results (access rights to CI server needed): Jenkins built the site at commit id 13e2e31 with Jekyll and staged it here. Happy reviewing. Note that any previous site has been deleted. This staged site will be automatically deleted after its TTL expires. Push any commit to the pull request branch or re-trigger the build to get it staged again. |
|
LGTM. Thank you, please self merge. |
|
Thanks. |
Updates contribution guide to include development and testing instructions for Python SDK.