Contributing to gztobgzf
December 19, 2025 ยท View on GitHub
Thank you for your interest in contributing! This document provides guidelines for contributing to the project.
Bug Reports
When filing a bug report, please include:
- Version information: Output of
gz2bgzf --version - Operating system: e.g., Ubuntu 22.04, macOS 14
- Steps to reproduce: Minimal commands/code to reproduce the issue
- Expected behavior: What you expected to happen
- Actual behavior: What actually happened
- Sample data: If possible, provide a minimal test file that reproduces the issue
Feature Requests
For feature requests, please describe:
- Use case: What problem are you trying to solve?
- Proposed solution: How do you envision the feature working?
- Alternatives: Have you considered other approaches?
Pull Requests
Before Submitting
- Check for existing issues/PRs: Search to avoid duplicates
- Open an issue first: For significant changes, discuss the approach before implementing
- Keep PRs focused: One feature or fix per PR
Development Workflow
- Fork the repository
- Create a feature branch from
main:git checkout -b feature/my-feature - Make your changes
- Run the test suite:
cargo test - Run linting and formatting:
cargo fmt cargo clippy --all-targets --all-features -- -D warnings - Commit with a descriptive message
- Push to your fork and open a PR
Commit Messages
Use conventional commit format:
feat: add new featurefix: resolve bugdocs: update documentationtest: add testsrefactor: restructure codeperf: improve performance
Code Style
- Follow Rust idioms and best practices
- Run
cargo fmtbefore committing - Ensure
cargo clippypasses with no warnings - Add tests for new functionality
- Document public APIs with doc comments
Testing
- All new features should include tests
- Bug fixes should include regression tests
- Run the full test suite before submitting:
cargo test --all-features
Code of Conduct
Be respectful and constructive in all interactions. We're all here to build great software together.
Questions?
If you have questions about contributing, feel free to open a discussion or issue.