Contributing to Apache Twill
The Apache Twill 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 Twill 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:
- Open a new issue or pick up an existing one in the Apache Twill JIRA about the patch that you are going to submit.
- 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.
- Fork the Apache Twill GitHub repo.
- Make the changes and send a pull request from your forked repo to the Apache Twill repo.
- Please prefix your pull request title with the JIRA issue ID; for example, (TWILL-87) Adding container placement policy.
- Please complete the pull request description with additional details as appropriate.
- Once sent, code review will be done through the pull request.
- Once all review issues are resolved, we will merge the changes into the master branch of the Apache Twill repo.
How to Merge Code Changes
Committer can merge code changes that are already reviewed into the master branch with the following steps:
-
Make sure the GitHub pull request is squashed into one commit. If not, ask the patch contributor to help doing so.
-
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 https://github.com/apache/twill/pull/${PR_NUMBER}.patch
-
Edit the patch file and add the following line in the commit message for closing the pull request.
This closes #${PR_NUMBER} from GitHub.
-
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
- Close the JIRA issue associated with the patch.