Hi there! We're thrilled that you'd like to contribute to this project. Your help is essential for keeping it great.
Contributions to this project are released to the public under the project's open source license.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
We recommend that you install Rust with the rustup
tool. twirp-rs
targets stable Rust versions.
- Fork and clone the repository.
- Install
protoc
with your package manager of choice. - Build the software:
cargo build
. - Create a new branch:
git checkout -b my-branch-name
. - Make your change, add tests, and make sure the tests and linter still pass.
- Push to your fork and submit a pull request.
- Pat yourself on the back and wait for your pull request to be reviewed and merged.
Here are a few things you can do that will increase the likelihood of your pull request being accepted:
- Write tests.
- Keep your change as focused as possible. If there are multiple changes you would like to make that are not dependent upon each other, consider submitting them as separate pull requests.
- Write a good commit message.
Make sure you have rust toolchain installed on your system and then:
cargo build && cargo test
Run clippy and fix any lints:
cargo fmt --all -- --check
cargo clippy -- --deny warnings -D clippy::unwrap_used
cargo clippy --tests -- --deny warnings -A clippy::unwrap_used
If you are one of the maintainers of this package then follow this process:
- Create a PR for this release with following changes:
- Updated
CHANGELOG.md
with desired change comments and ensure that it has the version to be released with date at the top. - Go through all recent PRs and make sure they are properly accounted for.
- Make sure all changelog entries have links back to their PR(s) if appropriate.
- Update package version in Cargo.toml.
- Get an approval and merge your PR.
- Run ./script/publish from the
main
branch supplying your token and version information.