Rewrite CONTRIBUTING

This commit is contained in:
Markus Unterwaditzer 2014-12-03 19:12:09 +01:00
parent 1efb00b5f7
commit a1d453d46c

View file

@ -1,4 +1,8 @@
* If you're reporting an issue with vdirsyncer: Contributing
============
Reporting issues
================
* Make sure you have the latest version by executing ``pip install --user * Make sure you have the latest version by executing ``pip install --user
--upgrade vdirsyncer``. --upgrade vdirsyncer``.
@ -8,22 +12,42 @@
* Use ``--verbosity=DEBUG`` when including output from vdirsyncer. * Use ``--verbosity=DEBUG`` when including output from vdirsyncer.
* If you're suggesting a feature, keep in mind that vdirsyncer tries not to be Suggesting features
a full calendar or contacts client, but rather just the piece of software
that synchronizes all the data. `Take a look at the documentation for If you're suggesting a feature, keep in mind that vdirsyncer tries not to be a
software working with vdirsyncer full calendar or contacts client, but rather just the piece of software that
synchronizes all the data. `Take a look at the documentation for software
working with vdirsyncer
<http://vdirsyncer.readthedocs.org/en/latest/supported.html>`_. <http://vdirsyncer.readthedocs.org/en/latest/supported.html>`_.
* If you're submitting pull requests: Submitting patches, pull requests
=================================
* If you thought of a new feature for vdirsyncer, don't just go on and * **Discuss everything in the issue tracker first** (or contact me somehow
implement it, but **first discuss it in the issue tracker**, otherwise you else) before implementing it.
might have wasted your time if your idea gets rejected.
* Make sure your tests pass on Travis. * Make sure the tests pass. See below for runnign them.
* But not because you wrote too few tests. * But not because you wrote too few tests.
* Add yourself to ``AUTHORS.rst``. Don't add anything to * Add yourself to ``AUTHORS.rst``. Don't add anything to ``CHANGELOG.rst``, I
``CHANGELOG.rst``, I do that myself shortly before the release. You can do that myself shortly before the release. You can help by writing meaningful
help by writing meaningful commit messages. commit messages.
Running tests, how to set up your development environment
=========================================================
For many patches, it might suffice to just let Travis run the tests. However,
Travis is slow, so you might want to run them locally too. For this, set up a
virtualenv_ and run this inside of it::
sh build.sh install_tests
This will install all dependencies required for the integration tests against
the latest release of Radicale (a CalDAV server). Then you can run::
sh build.sh tests
If you have any questions, feel free to open issues about it.
.. _virtualenv: http://virtualenv.readthedocs.org/