- We use the stable Rust version. Please let us know if something is broken
- If you have a submission which requires nightly, get in touch, we will try to find a solution
- Our first priority is to complete the client side and submit it to the Thrift main line
- If you want to add a feature not yet covered in the issue list, open an issue in Rust Thrift project describing the feature and the suggested solution
- Try to make a comprehensive solution but at the same time limit the scope. If something is left for later mark it as FIXME or TODO with a comment. For large pieces of work feel free to submit new issues
- Generated files in the tutorial section help us to track changes in generator output (very useful in PR reviews), please do not remove them - we will delete them before merging to Thrift main line
- Try to keep names of the key classes consistent with other Thrift implementations (mainly with C++)
- For the rest follow the guidelines for the Thrift project, see below
- Help to review and verify existing patches
- Make sure your issue is not all ready in the Jira issue tracker
- If not, create a ticket describing the change you're proposing in the Jira issue tracker
- Contribute your patch using one of the two methods below
- Check out the latest version of the source code
- git clone https://git-wip-us.apache.org/repos/asf/thrift.git thrift
- Modify the source to include the improvement/bugfix
- Remember to provide tests for all submited changes
- When bugfixing: add test that will isolate bug before applying change that fixes it
- Verify that you follow Thrift Coding Standards (you can run 'make style', which ensures proper format for some languages)
- Create a patch from project root directory (e.g. you@dev:~/thrift $ ):
- git diff > ../thrift-XXX-my-new-feature.patch
- Attach the newly generated patch to the issue
- Wait for other contributors or committers to review your new addition
- Wait for a committer to commit your patch
- Create a fork for http://github.com/maximg/thrift
- Create a branch with the jira ticket number you are working on
- Modify the source to include the improvement/bugfix
- Remember to provide tests for all submited changes
- When bugfixing: add test that will isolate bug before applying change that fixes it
- Verify that you follow Thrift Coding Standards (you can run 'make style', which ensures proper format for some languages)
- Verify that your change works on other platforms by adding a GitHub service hook to Travis CI and AppVeyor
- Commit and push changes to your branch (please use issue name and description as commit title, e.g. THRIFT-9999 make it perfect)
- Issue a pull request with the jira ticket number you are working on in it's name
- Wait for other contributors or committers to review your new addition
- Wait for a committer to commit your patch
Plenty of information on why and how to contribute is available on the Apache Software Foundation (ASF) web site. In particular, we recommend the following: