The ANDS Registry Software is open source (under the Apache License) and is available for anyone to contribute to. ANDS welcomes all types of contributions, from new features and defect fixes to documentation and issues. You can contribute to our software package by raising an issue or creating a pull request.
Create an Issue
If you find a defect in the software that you would like a member of the ANDS Development team to have a look at, or you need to provide feedback on what we are lacking, please raise an issue either through our GitHub Issue Tracker (preferred), or send an email to our service desk. Whatever issue you are having or feature you would like to be implemented (but you are unable to do so), you are usually not the only one, so others could benefit from your issue. Please check out the GitHub issue guide for more information on how to raise an issue. You can also review our closed issues to find out if your problem has already been solved or already requested.
Create a Pull Request
If you have created a patch to fix a defect, you would like to contribute in creating more functionality for the ANDS Registry Software, or you want to use the ANDS Registry Software as a starting point for your brand new project, you can make use of the pull request functionality. Once you have submitted a pull request, a member of our team will be alerted to compare your branch to the existing one and will review the changes you've requested.
To make a pull request:
- Fork the core repository, or one of the other repositories that you would like to contribute to. This enables you to pull changes from our upstream repository to your forked repository. This will limit conflicts and will enable us to evaluate your changes better.
- Create a branch for your changes, and make changes within this branch for this specific features. Make as many branches as you need for different bug fixes or features. Please take care with the commit messages to describe the problem and address the fixes. For visual changes, screenshots from before and after would also be appreciated.
- Test your changes, or produce test cases that we can run to make sure your changes don't break existing behaviour. We are more than happy to assist with this process.
- Open a pull request to the develop branch of the ANDS Registry Software.
- You may be asked to make some more changes before the pull request is approved. Other contributors would also be able to check out your branch and your changes and able to help with the merging or any additional work that needs to be done before a merge is approved.
Once your pull requests have been merged successfully, the Pull Requests will be closed and your changes will be available in our develop branch. The develop branch will be merged to the master branch as part of our software release process.
Understanding ANDS Software version control
ANDS Software is hosted at GitHub as a complete open source software package. Our main branch is the master branch, which is be pushed out to our production environment with every release. We have active development in our develop branch, from which feature branches are created. After development of a feature is finished, the branch is merged back to the develop branch. We merge the changes from the develop branch into the master branch before a software release.
From time to time emergency changes are required in our production environment. In these situations we create a hotfix branch from the master branch. After development of a hotfix is finished, this branch is merged back to the master and develop branches.