Getting Started

Working knowledge of Java is required. It is recommended that you have a running copy of Eclipse, even though you can develop using your favorite editor if you want. Your best bet is to start with a fresh source code snapshot, which you may obtain from our CVS Repository at SourceForge.

Testing and Reporting

Testing on different databases is also a valuable contribution. Please report your results back to us on Do not hesitate to provide as much detail about the problems you are seeing as possible in your reports. At a minimum, try to include the following:

Coding Style

Maintain whatever style is present in the code being modified. New code should use the standard Java coding conventions. Please do not use CVS keyward macros such as $Id: contributing.shtml,v 1.6 2005/05/09 05:53:18 dimi Exp $ within the source, they can cause no end of grief during a merge.

Note: please make sure that your Tab size is set to 8. This is the only sane way in which people in a distributed environment can work together. If you are using Eclipse, you need to adjust it as it comes set to 4 by default.

Submitting Patches

Please submit your patches to the development mailing list: If you aren't sure what exactly a "patch" is, or don't know how to generate one, but you have got code contributions to make, please don't hesitate to ask questions on the mailing lists. Generating and appliying patches is an easy thing to get the hang of, and they drastically simplify code submission and review.

Unified contextual diffs against the latest development snapshot are preferred. If you are using Eclipse, there is built-in support for patch generation and application under the "Team" menu.

When submitting patches, please:

Accepted patches will appear in the mailing list. If your patch is not applied, review it carefully and check it against the above points.

Rejected patches will receive a note in the mailing list. We do reply to all patch submissions, so if you receive no response to your patch please try resubmitting it.