Skip to main content

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

  1. Fork the repository
  2. Create a branch: git checkout -b feature/description
  3. Make changes
  4. Run cargo fmt && cargo clippy && cargo test
  5. Open a Pull Request

CI

CI runs (see .github/workflows/ci.yml):

  • cargo fmt --check
  • cargo 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)