Contributing

This library is open-source software from Ganbaro Digital, released under the BSD license. We welcome all contributions that further the goals that we have for this library.

Before contributing, please read our code of conduct. Please also make sure that you have the necessary legal authority to contribute - for example, that you own the work that you are submitting, or that your employer has authorised you to contribute work that they own.

All contributions must be licensed under the BSD license.

How To Contribute Via Github

This library uses the Gitflow model for managing branches in our Git repository:

Branch Purpose
master latest tagged release
develop completed features and fixes waiting for final testing and release
feature/XXX work in progress, to be merged into develop when completed
release/XXX a release that is undergoing final testing, to be merged into master and develop when completed
hotfix/XXX emergency bug fixes in progress, to be merged into master and released when completed

Don't worry if you're not used to Gitflow. Follow these steps for your features or fixes:

  1. if you don't have one already, create an account on Github
  2. on Github, fork our project
  3. clone your fork to your local computer
  4. create a new branch on your local computer: git checkout -b feature/<my-feature> develop
  5. work on your feature

When you're ready to submit your pull request, please make sure it's a pull request against our develop branch.

We'll check your pull request for the following:

  1. does the pull request apply cleanly against our develop branch?
  2. does it fit our goals for the library?
  3. does it fit our coding style?
  4. does it come will 100% unit test coverage?
  5. does the pull request include updated docs showing how the new feature works?

If the answer is 'no' to any of those, we'll respond and let you know what we need you to do before we can accept your pull request.

Accepted Contributions

If we accept your pull request, we'll add your details to our authors page, so that your contribution is acknowledged. We'll also add details of your change to our Changelog page.