This process specifies how you can contribute a change and have it incorporated into the DDS Community Edition.
By submitting comments, suggestions, code, code snippets, techniques (including that of usage) and algorithms (collectively "Submissions"), submitters acknowledge that they have the right to do so, that any such Submissions are given freely and unreservedly, and that they waive any claims to copyright or ownership. In addition, submitters acknowledge that any such Submission might become part of the copyright maintained on the overall body of code that comprises the DSS Community Edition and Vortex OpenSplice software. By making a Submission, submitters agree to these terms. Moreover, submitters acknowledge that the incorporation or modification of such Submissions are entirely at the discretion of the moderators of the DDS Community software project or their designees.
- Create an entry in the DDS Community Bugzilla for the change
- (Re)Assign yourself on the Bugzilla ticket and then accept the issue
- Develop the change
- Develop a test for the change
- Create a patch for your changes and test and attach to the DDS Community Bugzilla ticket
- Review by a member of the DDS Community team
- Acceptance into DDS Community Edition
Create an entry in the DDS Community Bugzilla for the change
All changes to DDS Community Edition must be tracked by a Bugzilla ticket. This includes not just bug fixes but also enhancements and new features. See the page on bug reporting for details of how to raise an issue in Bugzilla.
(Re)Assign yourself on the Bugzilla ticket and then accept the issue
You should reassign the Bugzilla ticket to your registered e-mail address to notify others that you are planning to address the issue. You will then need to accept the issue in order to change the issue status to ASSIGNED.
Develop the change
The change should be developed against an up-to-date clone of the development master branch code, accessible anonymously via Git from the DDS Community Edition repository.
Develop a test for the change
All changes to DDS Community Edition will normally always require a test to provide regression coverage. If you are not able to provide a test then you should explain why this is the case on the Bugzilla ticket. Note that providing a test will make it much more likely that your change will be accepted quickly, or indeed be accepted at all.
Create a patch for your changes and test and attach to the DDS Community Bugzilla ticket
Clone the publicly accessible OpenSplice DDS Community repository.
git clone git://github.com/OpenSplice/opensplice
Make your changes in your local cloned copy of the repository.
cd opensplice <edit existing files & create new files>
Use git add to stage your new files (as a minimum you will probably have added a test program) and the existing files that you have changed.
git add <your changed & new files>
Commit these changes into your local repository copy with a commit message describing the changes and then generate a git patch file.
git commit -m '<Message describing the changes and new files>' git format-patch --stdout origin > bugzilla_nnnn.patch
Then attach the patch file (bugzilla_nnnn.patch in tha above example) to the OpenSplice Bugzilla ticket as an attachment and place the Bugzilla ticket into the status REVIEW so a member of the DDS Community team can check your submission.
Review by a member of the DDS Community team
At this point (if not before) a member of the DDS Community development team will be assigned to the Bugzilla ticket, as an observer, to review the issue and provide comments about the issue, feedback about the patch, and advice about any changes that will be required before it can be accepted. They may need to perform additional testing of the patch, in which case they will let you know how long this will take and will let you know the results when it is concluded.
If further work will be required on the change they will tell you what is needed and then return the ticket to the ASSIGNED status. Once you have updated the patch in line with their suggestions you should return the ticket to the REVIEW status.
Acceptance into DDS Community Edition
Once the change is accepted for inclusion the DDS Community team member will apply the change and let you know via Bugzilla when the change will be visible in subversion. The change will then also be available in the next release of DDS Community Edition.