Agnos is developed by IBM XIV, and has been open-sourced for the benefit of other developers around the world. We (IBM) would greatly appreciate user-contributed code, such as bug fixes or features, but as this project was first and foremost developed for IBM’s needs, it remains at our discretion whether patches or new features get incorporated. This is actually not as draconic as it sounds – it only means that control of the project is maintained by IBM; contributed code is likely to be accepted as long as it does not interfere with our general plans.
Being a large corporation, however, we have some legal concerns before accepting contributed code:
Other than that, contributed code should be meet our standards of code quality. If the patch is only a few lines long, it is probably enough, but for larger patches, and especially for new features, it’s important that they include proper documentation (be it in-code comments, updated site-material) and relevant unit tests. Code that does not meet these requirements might be turned down, although it’s more likely that we will simply ask you to make some changes and resubmit. Also note that we reserve the right to make changes in contributed code, to make it meet our standards.
Proper credit will be given in the CONTRIBUTORS file (part of the repository), with your name, email and a short description of your work.
Project development takes place on github, and our issue tracker is also found there.
You are welcome to discuss development-related issues and other questions on our mailing-list. However, it’s not the place to report bugs or submit patches. Please use the issue tracker to report bugs.
The preferred way to submit patches is by forking: you simply fork our repository, apply your changes, and submit us a pull request. Normally we’d require patches to be submitted that way, as it’s easiest for us to manage, and has the added benefit of preserving your name in the commit. However, very small patches (up to 10 LOC) may be email to the mailing list, and we will take care of it from there.
We will notify you by email, within 30 days (at most), whether or not we chose to accept your patch.
When contributing code to the project, you must use the sign-off procedure. It’s a simple line at the end of the patch’s description or commit message, which certifies that you wrote it or otherwise have the right to pass it on as an open-source patch.
Note
You can use git commit –signoff, which automatically appends the relevant text to the commit message.
Then you add a line saying Signed-off-by: Your Name <your@email.com>