*** CONTRIBUTING ***

BUGS
----

Reports bug to savane at:

https://gna.org/bugs/?group=savane


DISCUSSIONS
-----------

Write to savane-dev for general issues,
savane-dev-i18n for translations issues.


PATCHES
-------

Contribute to savane at:

https://gna.org/bugs/?group=savane


CONTRIBUTION GENERAL GUIDELINES
-------------------------------

While we want to encourage you to submit code contributions and patches
to savannah, we do need to make sure they are cleanly implemented and
make sense in the way they are designed.

Firstly, read README when it exists in the directory you are working.
Almost every recommandations for specific parts of the code are in README. 
For instance, if you modify a CSS file, read the css/README.

Secondly, read the CODING_STYLE file. And if you were granted CVS access, it 
is mandatory that you read CVS_USAGE.

When designing your changes, think about a few things:

-Is this legal? You absolutely need to add copyright and licence
details in each file you include.

-Is this scalable? For example, if you want to have a pop-up box listing
groups or users, that obviously would never scale up to savannah
levels. It might work great if you have 10 projects on your test version
of savannah, but what happens when you have 10,000?

-Is it secure? When updating or inserting into the database, are you
checking to make sure that the user has permissions to do it and that
they have not hacked your HTML form to get around limited security?

-Is it readable? All your code should be properly indented and if/else
statements should always include braces {}. Vertical linespacing also
helps improve readability and maintainability.

-Is it commented? Did you add simple comments throughout your code
explaining why/how you're approaching the task?

When you prepare your patches, make sure they are tested and known to
work, and make sure that each patch handles basically one feature at a
time. If you group a bunch of features into a single patch, we may not
be able to accept them all, or all at the same time.



EOF