[PATCH 2/7] docs: Add a contributors guide

Stephen Finucane stephen.finucane at intel.com
Thu Feb 4 08:22:30 AEDT 2016


This guide details the steps one should follow to submit patches for
patchwork. It's nothing onerous but rather common sense. This requires
moving the testing section from the development guide to this new
document.

Signed-off-by: Stephen Finucane <stephen.finucane at intel.com>
---
 docs/contributing.md | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 docs/development.md  | 32 ----------------------------
 mkdocs.yml           |  1 +
 3 files changed, 60 insertions(+), 32 deletions(-)
 create mode 100644 docs/contributing.md

diff --git a/docs/contributing.md b/docs/contributing.md
new file mode 100644
index 0000000..1e61b7f
--- /dev/null
+++ b/docs/contributing.md
@@ -0,0 +1,59 @@
+# Tips and Tricks
+
+## Coding Standards
+
+**Follow PEP8**. All code is currently PEP8 compliant and it should stay this
+way.
+
+Changes that fix semantic issues will be generally be happily received, but
+please keep such changes seperate from functional changes.
+
+`pep8` targets are provided via tox. Refer to the [testing section](#testing)
+below for more information on usage of this tool.
+
+## Testing
+
+patchwork includes a [tox][ref-tox] script to automate testing. This requires
+a functional database and some Python requirements like `tox`. Please refer
+to the [development guide][doc-development] for information on how to configure
+these.
+
+Assuming these requirements are met, actually testing patchwork is quite easy
+to do. To start, you can show the default targets like so:
+
+    $ tox --list
+
+You'll see that this includes a number of targets to run unit tests against
+the different versions of Django supported, along with some other targets
+related to code coverage and code quality. To run one of these, use the `-e`
+parameter:
+
+    $ tox -e py27-django18
+
+In the case of the unit tests targets, you can also run specific tests by
+passing the fully qualified test name as an additional argument to this
+command:
+
+    $ tox -e py27-django18 patchwork.tests.SubjectCleanUpTest
+
+Because patchwork support multiple versions of Django, it's very important
+that you test against all supported versions. When run without argument, tox
+will do this:
+
+    $ tox
+
+## Submitting Changes
+
+All patches should be sent to the [mailing list][pw-ml]. When doing so, please
+abide by the [QEMU guidelines][ref-qemu-contrib] on contributing or submitting
+patches. This covers both the initial submission and any follow up to the
+patches. In particulat, please ensure:
+
+* [All tests pass](#testing)
+* Documentation has been updated with new requirements, new script names etc.
+* The `CHANGES` file has been updated with any added or removed features
+
+[doc-development]: development.md
+[pw-ml]: https://ozlabs.org/mailman/listinfo/patchwork
+[ref-qemu-contrib]: http://wiki.qemu.org/Contribute/SubmitAPatch
+[ref-tox]: https://tox.readthedocs.org/en/latest/
diff --git a/docs/development.md b/docs/development.md
index 07e0ca0..3868adf 100644
--- a/docs/development.md
+++ b/docs/development.md
@@ -90,35 +90,3 @@ The following environmental variables are available to configure settings:
   <dt>PW_TEST_DB_TYPE = 'mysql'</dt>
   <dd>Type of database to use. Options: 'mysql', 'postgresql'</dd>
 </dl>
-
-## Running Tests
-
-patchwork includes a [tox] script to automate testing. Before running this, you
-should probably install tox:
-
-    $ pip install tox
-
-You can show available
-targets like so:
-
-    $ tox --list
-
-You'll see that this includes a number of targets to run unit tests against the
-different versions of Django supported, along with some other targets related
-to code coverage and code quality. To run these, use the `-e` parameter:
-
-    $ tox -e py27-django18
-
-In the case of the unit tests targets, you can also run specific tests by
-passing the fully qualified test name as an additional argument to this
-command:
-
-    $ tox -e py27-django18 patchwork.tests.SubjectCleanUpTest
-
-Because patchwork supports multiple versions of Django, it's very important
-that you test against all supported versions. When run without argument, tox
-will do this:
-
-    $ tox
-
-[tox]: https://tox.readthedocs.org/en/latest/
diff --git a/mkdocs.yml b/mkdocs.yml
index 876ebf7..6e28dfe 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -8,3 +8,4 @@ pages:
  - Home: 'index.md'
  - Installation: 'installation.md'
  - Development: 'development.md'
+ - Contributing: 'contributing.md'
-- 
2.0.0



More information about the Patchwork mailing list