From 524025216469d75b44050ca84d28b6ab03bc7049 Mon Sep 17 00:00:00 2001 From: Piotr Banaszkiewicz Date: Wed, 22 Jan 2014 11:24:58 +0100 Subject: [PATCH] New enthusiastic contribution guide based on Audreyr's cookiecutter-pypackage Audrey's code is BSD, so there should be no problem with licensing. I've covered: * contribution types (with hints) * steps to start with pytest development * testing pytest * basics of hg --HG-- branch : contributiondocs --- doc/en/contents.txt | 2 +- doc/en/contribute.txt | 122 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 123 insertions(+), 1 deletion(-) create mode 100644 doc/en/contribute.txt diff --git a/doc/en/contents.txt b/doc/en/contents.txt index 169524483..80d71af7d 100644 --- a/doc/en/contents.txt +++ b/doc/en/contents.txt @@ -16,7 +16,7 @@ Full pytest documentation plugins example/index talks - develop + contribute funcarg_compare.txt announce/index diff --git a/doc/en/contribute.txt b/doc/en/contribute.txt new file mode 100644 index 000000000..f51f55e05 --- /dev/null +++ b/doc/en/contribute.txt @@ -0,0 +1,122 @@ +.. _contributing: + +============ +Contributing +============ + +Contributions are highly welcomed and appreciated. Every little help counts, +so do not hesitate! + +Types of contributions +====================== + +Submit feedback for developers +------------------------------ + +Do you like py.test? Share some love on Twitter or in your blog posts! + +We'd also like to hear about your propositions and suggestions. Feel free to +submit them as issues `here `__ and: + +* Set the "kind" to "enhancement" or "proposal" so that we can quickly find + about them. +* Explain in detail how they should work. +* Keep the scope as narrow as possible. This will make it easier to implement. +* If you have required skills and/or knowledge, you can always contribute to + these issues! + +Report bugs +----------- + +Report bugs at https://bitbucket.org/hpk42/pytest/issues. + +If you are reporting a bug, please include: + +* Your operating system name and version. +* Any details about your local setup that might be helpful in troubleshooting, + specifically Python interpreter version, + installed libraries and py.test version. +* Detailed steps to reproduce the bug. + +Fix bugs +-------- + +Look through the BitBucket issues for bugs. Here is sample filter you can use: +https://bitbucket.org/hpk42/pytest/issues?status=new&status=open&kind=bug + +:ref:'Talk ' to developers to find out how you can fix specific bugs. + +Implement features +------------------ + +Look through the BitBucket issues for enhancements. Here is sample filter you +can use: +https://bitbucket.org/hpk42/pytest/issues?status=new&status=open&kind=enhancement + +:ref:'Talk ' to developers to find out how you can implement specific +features. + +Write documentation +------------------- + +py.test could always use more documentation. What exactly is needed? + +* More complementary documentation. Have you perhaps found something unclear? +* Documentation translations. We currently have English and Japanese versions. +* Docstrings. There's never too much of them. +* Blog posts, articles and such -- they're all very appreciated. + +Getting started for contributing +================================ + +1. Fork the py.test repository on BitBucket. +.. _checkout: +2. Clone your fork locally:: + + $ hg clone ssh://hg@bitbucket.org/your_name_here/pytest + +3. Install your local copy into a virtualenv. Assuming you have + ``virtualenvwrapper`` (http://virtualenvwrapper.readthedocs.org) installed:: + + $ mkvirtualenv pytest + $ cd pytest/ + $ python setup.py develop + + If that last command complains about not finding the required version + of "py" then you need to use the development pypi repository:: + + $ python setup.py develop -i http://pypi.testrun.org + +4. Create a branch for local development:: + + $ hg branch name-of-your-bugfix-or-feature + + Now you can make your changes locally. + +5. When you're done making changes, check that all of them pass all the tests + (including PEP8 and different Python interpreter versions). It's as simple + as issuing this one command:: + + $ tox + + The least minimum of required Python tests to pass is Python 2.7 and + Python 3.3:: + + $ tox -e py27,py33 + + If you don't seem to have ``tox`` installed, issue this from inside your + virtualenv:: + + $ pip install tox + + You also need to have Python 3.3 and 2.7 available in your system. + +6. Commit your changes and push your branch to BitBucket:: + + $ hg add . + $ hg commit + $ hg push --new-branch -r . + +7. Submit a pull request through the BitBucket website. + +.. include:: links.inc