Contributing
Setup
git clone https://github.com/dexoron/dcr
# or a source mirror: GitVerse / SourceCraft / SourceForge / GitLab (see README)
cd dcr
cargo build
Code style
All code must be formatted with cargo fmt:
cargo fmt
Linting
cargo clippy --all-targets -- -D warnings
Tests
cargo test --all-targets
PR process
- Fork the repository
- Create a branch:
git checkout -b feature/description - Make changes
- Run
cargo fmt && cargo clippy && cargo test - Open a Pull Request
CI
CI runs (see .github/workflows/ci.yml):
cargo fmt --checkcargo clippy(default +--all-features)cargo check --all-targets --all-features- Unit + integration tests on Linux, macOS, Windows
- Extra Linux job with
--features archive(FAT images) - Tools on runners: clang, nasm, clang-format/tidy (Linux)