Thank you for your interest in contributing to ExtendDB.
- Rust 1.85+ (stable)
- PostgreSQL 14+
- Python 3.10+ (for integration tests)
cargo build --workspace# Rust unit tests
cargo test --workspace
# Integration tests (requires a running extenddb server)
pytest tests/All contributions must pass:
cargo fmt --check
cargo clippy -- -W clippy::pedantic -W clippy::unwrap_used -W clippy::expect_used- Use
cargo fmtbefore committing. - Address all clippy warnings or add
#[allow(...)]with a justification comment. - Avoid
.unwrap()and.expect()in library crates — use?or explicit error handling.
- Fork the repository and create a branch from
main. - Make your changes with clear, focused commits.
- Ensure all tests pass and code is formatted.
- Open a pull request with a description of what changed and why.
By contributing, you agree that your contributions will be licensed under the Apache License 2.0.