Contributing to Apache Tephra

The Apache Tephra team welcome all types of contributions, whether they are bug reports, feature requests, documentation, or code patches.

Reporting Issues

To report bugs or request new features, please open an issue in the Apache Tephra JIRA. You can also use the dev mailing list for general questions or discussions.

Contributing Code

We prefer contributions through GitHub pull requests. Please follow these steps to get your contributions in:

  1. Open a new issue or pick up an existing one in the Apache TEPHRA JIRA about the patch that you are going to submit.
  2. If you are proposing public API changes or big changes, please attach a design document to the JIRA. You can also use the dev mailing list to discuss it first. This will help us understand your needs and best guide your solution in a way that fits the project.
  3. Fork the Apache Tephra GitHub repo.
  4. Make the changes and send a pull request from your forked repo to the Apache Tephra repo.
  5. Please prefix your pull request title with the JIRA issue ID; for example, (TEPHRA-35) Added invalid transaction pruning.
  6. Please complete the pull request description with additional details as appropriate.
  7. Once sent, code review will be done through the pull request.
  8. Once all review issues are resolved, we will merge the changes into the master branch of the Apache Tephra repo.

How to Merge Code Changes

Committer can merge code changes that are already reviewed into the master branch with the following steps:

  1. Checkout the master branch from the Apache git repository (

  2. Make sure the GitHub pull request is squashed into one commit. If not, ask the patch contributor to help doing so.

  3. Download the patch file from GitHub. You can append .patch to the end of the GitHub pull request URL to get the patch file.

    curl -L -O${PR_NUMBER}.patch
  4. Edit the patch file and add the following line in the commit message (that is, between the subject and the --) for closing the pull request.

    This closes #${PR_NUMBER} from GitHub.
  5. Apply the patch and push it back to remote repo. Make sure you apply it on the latest master branch.

    git checkout master
    git pull origin master
    git am --signoff < ${PR_NUMBER}.patch
    git push origin master
  6. Close the JIRA issue associated with the patch.

Back to top

Reflow Maven skin by Andrius Velykis.

Apache Tephra, Apache, the Apache feather logo, and the Apache Tephra project logos are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.