blob: fe56a96ba1a9c336879448f2f31465d9498153d7 [file] [log] [blame]
# **PR Submission Guidelines**
**Please remove this entire section before submitting your PR.**
**This section is only for your reference.**
🙌 **Thank you for contributing to `iggy`!**
To help us incorporate your changes efficiently, please adhere to the following guidelines:
## General Coding Remarks
- **Code Formatting**: Run `cargo fmt` to ensure your code adheres to the project's style.
- **Code Linting**: Run `cargo clippy --all-targets --all-features -- -D warnings` to make sure your code is lint-free.
- **Unit Testing**: Write or update unit tests to cover your changes.
- **Integration Testing**: Write or update integration tests to cover your changes.
- **Project Structure**: Follow the `iggy` project's structure and coding style.
- **Build Integrity**: Ensure your code compiles and runs error-free.
- **Check unused dependencies**: Run `cargo machete` to make sure no unused dependencies made their way into your changeset.
- **Sort dependencies**: Run `cargo sort --workspace` so that the content of the toml files stay ordered.
## Commit Message Rules
- **Description**: Provide a concise description of the changes.
- **Style**: Use an imperative style in the subject line (e.g., "Fix bug" rather than "Fixed bug" or "Fixes bug").
- **Brevity**: Keep the subject line under 80 characters.
- **Rationale**: Explain the 'why' and 'what' of your changes in the summary.
- **Details**: Use the body to elaborate on the 'how' of your changes.
- **Context**: Include 'before' and 'after' scenarios if applicable.
- **References**: Link any relevant issues or PRs in the message body.
**Remember:** Your contribution is essential to the success of `iggy`. Please ensure that your PR conforms to these guidelines for a swift and smooth integration process.
Thank you!