Skip to content

Latest commit

 

History

History
38 lines (25 loc) · 1.2 KB

HACKING.md

File metadata and controls

38 lines (25 loc) · 1.2 KB

Hello!

You are more than welcome to participate in rdedup development. I advise you to join rdedup gitter channel and say hello.

Some basics

rdedup is structured as rather typical Rust project. It is split between binary crate and a library. The library is the more interesting part.

Check out wiki and especially Rust's fearless concurrency in rdedup for some design information.

More design documentation should follow. docs subdirectory would be a place to put it.

Exploring the code

You can generate documentation that includes private items:

cargo rustdoc -- --no-defaults --passes "collapse-docs" --passes "unindent-comments"
cd lib
cargo rustdoc -- --no-defaults --passes "collapse-docs" --passes "unindent-comments"
cd ..
xdg-open target/doc/rdedup/index.html

Testing

Most unit tests are implemented in rdedup-lib.

scripts/e2e-test.sh and scripts/e2e-test-full.sh implement some basic data integrity tests, exercising all possible configuration options.

./tester implements a simple program that drives rdedup with random operations on the repo.