contributing.rst 2.18 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
============
Contributing
============
Contributions to flyers are greatly appreciated!
You can contribute in many ways, be it writing documentation and blog
posts, or fixing bugs and implementing new features.

Join the community
------------------
The recommended way to send feedback is to write to Domain Public Tech
mailing list <tech@lists.debian.org>. You can also reach us using IRC on the
#domainepublic channel at irc.indymedi.org.

You can report bugs at projects.domainepublic.net/flyers

When you report a bug, ensure you include detailed steps to reproduce it
and any details that might be helpful in troubleshooting.

If you are proposing a feature, please explain in detail how it would work,
and keep the scope as narrow as possible, to make it easier to implement.

Remember that this is a volunteer-driven project, and that contributions are
welcome.

Contribute
----------

Ready to contribute? Here's how to set up `flyers` for local
development:

Usual workflow
~~~~~~~~~~~~~~

  1. Clone flyers locally::

       $ git clone http://git.domainepublic.net/git/flyers.git

     Note that you can also browse the sources at
     http://git.domainepublic.net/?p=flyers.git;a=summary

  2. Follow the steps in the chapter :ref:`installation`.

  3. Start a local test server::

       $ ./manage.py runserver
       [...]
       Starting development server at http://127.0.0.1:8000/
       Quit the server with CONTROL-C.

     Visit the URL returned to have access to the test website.

  4. Switch to a new branch::

       $ git checkout -b name-of-your-bugfix-or-feature

  5. Develop your new feature, ideally following the rules of :ref:`tdd`.

  6. When you're done, check that all tests are succeeding::

       $ python manage test

  7. Push your changes on a public repository or send them by
     email to the Domaine Public tech list::

       $ git format-patch -o . origin/master
       $ mutt tech@list.domainepublic.net -a *.patch

Conventions
~~~~~~~~~~~

  1. In regard to coding style, we observe `PEP8\
     <http://legacy.python.org/dev/peps/pep-0008/>`_ with a few exceptions.

  2. Functions are documented using doctrings with `Sphinx markup
     <http://sphinx-doc.org/contents.html>`_.