If you intend to help us with programming, documentation or packaging you will need write access to our holy grail, the CVS repository. Please read this chapter completely before accessing via CVS.
The project's CVS repository is hosted on SourceForge. Please refer to the chapters 6 and 7 in SF's site documentation for the technical access details for your operating system. For historical reasons, the CVS server is called cvs.ijbswa.sourceforge.net, the repository is called ijbswa, and the source tree module is called current.
The source tree is the heart of every software project. Every effort must be made to ensure that it is readable, compilable and consistent at all times. We therefore ask anyone with CVS access to strictly adhere to the following guidelines:
Never (read: never, ever) be tempted to commit that small change without testing it thoroughly first. When we're close to a public release, ask a fellow developer to review your changes.
Your commit message should give a concise overview of what you changed (no big details) and why you changed it Just check previous messages for good examples.
Don't use the same message on multiple files, unless it equally applies to all those files.
If your changes span multiple files, and the code won't recompile unless all changes are committed (e.g. when changing the signature of a function), then commit all files one after another, without long delays in between. If necessary, prepare the commit messages in advance.
Before changing things on CVS, make sure that your changes are in line with the team's general consensus on what should be done (see below).
Don't commit into the stable branch, unless immediately before a new release. (See Version Numbers below for details.) Collect your changes on the patches tracker instead.
We don't have a too formal policy on this, just use common sense. Hints: If it is..
..a bug-fix / clean-up / cosmetic thing: shoot
..a new feature that can be turned off: shoot
..a clear improvement w/o side effects on other parts of the code: shoot
..a matter of taste: ask the list
..a major redesign of some part of the code: ask the list
Note that near a major public release, we get a bit more cautious - if unsure, it doesn't hurt to ask first. There is always the possibility to submit a patch to the patches tracker instead.