Contributing

We welcome contributions! But we are new at this, so please be patient. Right now, we follow these conventions:

Workflow

  1. Testing: This is a pretty low-key project, but we will not accept feature additions without companion tests. Tests should be written using nose or Python’s unittest framework. And, if you submit patches without adding new features, please make sure all tests in the current test suite still pass. See sphinxcontrib.argdoc.test.test_argdoc for details on how tests are structured.
  2. Our main repository is at http://bitbucket.org/birkenfeld/sphinx-contrib . To submit a patch, fork the repository and submit a pull request.

Formatting

  1. Code formatting: Code should be formatted as described in PEP8, noting that we use four spaces for indentation.

  2. Docstrings and documentation: These should be formatted for Sphinx, as described in the numpy documentation guide with guidance from PEP257. This means that docstrings are formatted in reStructuredText.

    Beyond that:

    • If you use technical terms, please check if a synonym of your term is already defined in the glossary, and then use that.

      If no synonym is present, please add your term to the glossary, and refer to it using the :term: directive.

    • Rather than define links inline, please put them in docs/source/links.txt.

    • Use four-space indentation in rst files as well as in source

    • Refer to files using fixed-width formatting e.g. ‘``fixed-width``’