Getting Started as a Contributor
Thank you for considering contributing to Pincer! Your help makes this high-performance download engine better for everyone.
Prerequisites
You’ll need the Rust toolchain. See Build & Release for full setup instructions.
Code Style & SRP Rules
Before submitting a pull request, please adhere to the following rules:
- Adhere to SRP (~100 lines per file): Keep modules focused on a single responsibility. See Architecture for how the codebase is organized.
- Follow Rust naming conventions: Use
snake_casefor variables/functions,CamelCasefor types/structs. Runcargo clippyto catch common mistakes. - Write descriptive commit messages: Start with a short summary in the imperative mood (e.g., “Add proxy support”).
- Update Documentation: When modifying user-facing behavior or adding new features, update the relevant documentation in
docs/. - Zero regressions: Ensure all tests pass. See Testing for how to run the test suite.
Pull Request Workflow
- Fork the repository and create your feature branch.
- Ensure your code builds cleanly and passes all lints:
cargo fmt --all -- --check cargo clippy --all-targets -- -D warnings - Write test cases where appropriate.
- Submit a Pull Request (PR) with a clear description of changes.
Happy coding!