Contributing¶
Development Setup¶
git clone https://github.com/cryptuon/blockchain-compression.git
cd blockchain-compression
cargo build --features zstd
cargo test --features zstd
Running Tests¶
# All tests
cargo test --features zstd
# Integration tests only
cargo test --features zstd --test solana_integration_tests
# With output
cargo test --features zstd -- --nocapture
Running Examples¶
cargo run --example basic_usage --features zstd
cargo run --example performance_benchmark --features zstd
Running Benchmarks¶
Code Style¶
- Follow standard Rust conventions (
rustfmt,clippy) - Run
cargo clippy --features zstdbefore submitting
Pull Request Process¶
- Fork the repository
- Create a feature branch from
main - Add tests for new functionality
- Ensure all tests pass with
cargo test --features zstd - Run
cargo clippy --features zstdand address warnings - Submit a pull request with a clear description of the change
Documentation¶
If you change public API, update:
- Rustdoc comments on the affected items
docs/API.mdif the change affects documented types or traits- The mkdocs pages in
documentation/docs/if user-facing behavior changes
Building Documentation¶
# Rustdoc
cargo doc --features zstd --open
# mkdocs (requires mkdocs-material)
pip install mkdocs-material
cd documentation
mkdocs serve
License¶
By contributing, you agree that your contributions will be licensed under the MIT License.