Thanks for your help improving the project! We are so happy to have you! 🎉
There are opportunities to contribute to Compio at any level. It doesn't matter if you are just getting started with Rust or are the most weathered expert, we can use your help. If you have any question about Compio, feel free to join our group in telegram.
This guide will walk you through the process of contributing to Compio on following topics:
We adhere to Rust Code of Conduct. tl;dr: be nice. Before making any contribution, check existing issue and pull requests to avoid duplication of effort. Also, in case of bug, try updating to the latest version of Compio and/or rust might help.
- Use nightly toolchain to develop and run
rustup update
regularly. Compio does use nightly features, behind feature gate; so, when testing with--all-features
flag, only nightly toolchain would work.
- Use
cargo fmt --all
with nightly toolchain to format your code (for nightlyrustfmt
features, see detail inrustfmt.toml
). - Use
cargo clippy --all
to check any style/code problem. - Use Angular Convention when making commits
- When adding new crate, add
#![warn(missing_docs)]
at the top oflib.rs
If you find a bug or have a feature request, please open an issue with detailed description. Issues that are lack of information or destructive will be requested for more information or closed.
It's also helpful if you can provide the following information:
- A minimal reproducible example
- The version of Compio you are using.
- The version of Rust you are using.
- Your environment (OS, Platform, etc).
We welcome any code contributions. It's always welcome and recommended to open an issue to discuss on major changes before opening a PR. And pull requests should:
- follow the Style Guide.
- pass CI tests and style check. You can run
cargo test --all-features
locally to test, but result may differ from CI depend on local environment -- it might be a good chance to contribute! - be reviewed by at least one maintainer before getting merged.
- have a description of what it does and why it is needed in PR body.