Contributing
There are several ways you can help make IPF a better piece of software. Please dive in and help!
- Try surfing the documentation. If something is confusing or not clear please let us know.
- Download the sources, browse the source code, try it out and let us know what you think.
- Try surfing the issue tracker for open issues or features that need to be implemented. Try to fix it and attach a patch.
- Have you developed a new feature you want to contribute? Create a feature request, describe your work and attach a patch.
Getting in touch
To get in touch with the IPF community join us at the IPF mailing lists.
- Subscribe to the ipf-user mailing list (nabble)
- Subscribe to the ipf-developer mailing list (nabble)
Improving the documentation
Documentation is very important to help users make the most of IPF and its probably the area that needs the most help. If you are interested in helping to improve the documentation, whether its just to fix a page here or there, correct a link or even write a tutorial or improve what documentation is already there please dive in and help. All of the documentation is stored on this Wiki. To be able to edit the Wiki you need to mail the developer mailing list asking for an account (to prevent spam we only offer access to the Wiki by folks sending mail to the mailing list).
Reporting a bug or problem
Please raise a new issue in our issue tracker. Your issue is more likely to be resolved quicker if you provide a JUnit test. Look at the JUnit tests in the source code for examples how to implement test cases for IPF.
Working on the code
Refer to the IPF development section of the reference manual for instructions how to checkout the sources and import them into Eclipse.
Creating patches
We gladly accept patches if you can find ways to improve, tune or fix IPF in some way. Most IDEs can create nice patches now very easily. For example, in Eclipse just right click on a file or directroy and select Team->Create Patch.... Then just save the patch as a file and attach it to an issue in our issue tracker. If you prefer to work on the command line try to create the patch with the Subversion command line client. For example, to create a patch file named patchfile.txt for MyClass.java type
svn diff MyClass.java >> patchfile.txt
Submitting patches
The easiest way to submit a patch is to:
- Create a new issue in the issue tracker (you will need to register before at http://gforge.openehealth.org).
- Attach the patch, zipfile or tarball as an attachment (in the Files tab at the bottom of the issue page).
- We prefer patches that contain unit tests as well.
- Fire off an email to the ipf-developer mailing list.
Although the creation of an issue will create an entry in the Activities list on the IPF project page, an extra email to the ipf-developer mailing list always helps to alert folks (as lots of activities are logged to the Activities list).
Before we can commit your patches to Subversion we need a signed Open eHealth Contributor License Agreement from you. This agreement is for your protection as a contributor as well as the protection of the Open eHealth Foundation and its users; it does not change your rights to use your own contributions for any other purpose.
Becoming a committer
The first step is contributing to the project. You need to get involved and contribute via the mailing lists, work on the issue tracker and submit patches. Once you're contributing and your work is good, one of our team may invite you to be a committer (after we've called a vote). Note that becoming a committer is not just about submitting some patches. It is also about helping out on the development and the mailing lists, helping with documentation and the issue tracker. If you accept our invitation you'll need to
- Request to join the IPF project (press the button in the top right corner on the IPF project page)
- Sign the committer agreement
to complete the process.