Login | Register
My pages Projects Community

Contributing to the openadaptor project

Are you interested in the openadaptor™ project? Thanks for your interest. See below for more information concerning how you can contribute to the project. (Some of this material is based on similar material written for the Mozilla project, and is provided courtesy of mozilla.org.)

Start by trying out openadaptor. Register with the project site and join the project as an observer, download the openadaptor software, and read the openadaptor documentation, particularly the openadaptor Programmer's Guide. If you're having trouble getting openadaptor working or have other questions, subscribe to the openadaptor users mailing list and post your questions to the list. You can also look in the archives of the openadaptor users mailing list, in case your questions might have been previously answered.

Bug Reporting

If you think you've found a bug in openadaptor, please report it in the openadaptor project's IssueZilla tracking system. You can also subscribe to the openadaptor developer mailing list, and discuss the bug there. However if you do this please submit the bug in IssueZilla as well, and reference the assigned issue number in your message. If you'd like to try and fix the bug yourself (or fix other reported openadaptor bugs), or if you'd like to try making other changes to the openadaptor code, first read the background material for understanding the code.

Collaborative development

Whenever you begin work on something that's more than a day's work, we strongly recommend that you let people know about it by sending a message to the developer mailing list. If you're working on fixing a bug, make a note of it in the bug report in IssueZilla to track your progress and to catch the attention of others. If there is no existing issue related to the area that you are working on, file a bug and assign it to yourself. When adding features, consider adding an enhancement request for the feature in IssueZilla and assigning it to yourself. An enhancement request is an IssueZilla issue whose severity is "enhancement".

Publicizing your efforts lets others know what you're working on so they can coordinate their work with yours, offer help, and avoid duplicating your work. It opens your work up for peer review, and provides an archive so the same issues don't need to be repeated. Also, if someone else is working on the same thing, they can let you know and save you a lot of work. Finally, any major proposed changes to openadaptor should be discussed at length on the developer mailing list, so that the openadaptor developers and other interested parties can come to a consensus on whether the changes are worthwhile and, if so, exactly how they should be implemented.

Contributing Code to the Project

If you make changes to openadaptor, whether bug fixes or enhancements, and are interested in having them become part of the "official" openadaptor code base, you can propose your changes for inclusion by attaching the source code to the relevant IssueZilla report and/or posting them to the openadaptor developers mailing list. (Unless the changes are just a few lines of code, we prefer that you submit them using IssueZilla, for the benefit of those who subscribe to the mailing lists over a low bandwidth connection, or who are behind a corporate firewall that removes or mangles message attachments; you can include a URL for the IssueZilla attachment in your message.)

There are then two further steps to having your submission be accepted into the openadaptor code repository maintained on the project web site, one technical and one legal. First, your changes must be reviewed and approved by the developer or developers responsible for the code within openadaptor that you are changing. If you don't know who needs to review your code, just post a message to the developer mailing list and ask. Second, we ask that you enter into a legal agreement (known as the openadaptor.org Contributor Assignment Agreement) assigning copyright in your changes to The Software Conservancy, the nonprofit organization that holds copyright to the openadaptor code. For more information on this topic, please see the relevant contributor assignment FAQ and the openadaptor.org Contributor Assignment Agreement itself. Note in particular that you do not need to sign the agreement if you are distributing your code independently of the openadaptor.org project site and do not wish to submit the code for inclusion in the openadaptor.org repository. Also, you need only sign the agreement once before you make your first contribution to openadaptor.org; the agreement covers any future submissions you may choose to make.

Finally, we would ask that any contributions conform to the openadaptor coding standards outlined at Coding Standards

After your changes have been reviewed and approved and your completed and signed contributor assignment has been received, then the relevant openadaptor developer will check your changes into the openadaptor code repository.

Getting Commit Access to the Code Repository

If you enjoy contributing to the openadaptor project and want to help with openadaptor development on an ongoing basis, then you can able to apply to get "commit access" to the openadaptor code repository; if you are approved for commit access, you will then be able to check in changes to the code yourself, as opposed to having to rely on others checking in changes for you. As with contributing code, getting commit access involves both a technical step and a legal step. First, you must request to have your role in the project upgraded to be a developer (as opposed to an observer), and the openadaptor project owners must approve your request.

The project owners are responsible for ensuring that people with commit access are qualified to exercise that privilege; otherwise the project runs the risk of people making changes that break openadaptor and cause problems for openadaptor users. Among other things, you will need to demonstrate that you possess general competence as a programmer using Java, XML, and other technologies key to openadaptor; you must also demonstrate that you have detailed knowledge of the openadaptor code itself. In that regard, your chances of being approved for commit access will be greater if you have previously made significant bug fixes or enhancements to the openadaptor code.

Second, at the same time you request commit access you must also complete, sign, and submit a legal document (known as the openadaptor.org Committer Access Agreement) governing your use of the openadaptor.org code repository, should you be approved for commit access. For more information on this topic, please see the relevant committer access FAQ and the openadaptor.org Committer Access Agreement itself. Note that you must also complete, sign, and submit the openadaptor.org Contributor Assignment Agreement as well, if you have not already done so.

These issues are further discussed in the openadaptor.org policies and procedures. Note that the "project manager" role discussed in the policies and procedures is being carried out by Dresdner Kleinwort Wasserstein, represented by Steve Howe.

Again, thank you for your interest in openadaptor. If you have further questions or comments about contributing to the openadaptor project, please send email to feedback@openadaptor.org or ask on the openadaptor developers mailing list.