Skip to main content

Crate ripsync_core

Crate ripsync_core 

Source
Expand description

ripsync core: pure sync logic — delta engine, checksums, parallel walk, plan/apply, metadata and symlink-containment safety.

No terminal I/O lives here; the CLI crate owns presentation.

Re-exports§

pub use control::RunControl;
pub use error::Error;
pub use error::Result;
pub use filter::Filter;
pub use report::Event;
pub use report::Reporter;
pub use report::RunPhase;
pub use report::RunStatus;
pub use report::Stats;

Modules§

apply
Execute a SyncPlan: atomic file copies, metadata preservation, contained symlinks, and guarded deletes.
checksum
Checksums for the delta engine.
control
Cooperative pause and cancellation shared by planning, apply, and verification.
copy
The regular-file copy ladder: reflink (CoW clone) → kernel-side copy (fcopyfile on macOS, copy_file_range on Linux) → buffered fallback with page-aligned I/O buffers. Each strategy writes into the caller’s temporary path so the atomic-rename invariant is preserved.
delta
The delta engine — ripsync’s crown jewel.
error
Error types for ripsync-core. Library code returns Result; it never panics on bad input.
filter
Path filtering for the walk: ordered include/exclude rules plus an optional explicit --files-from allowlist.
index
Persistent destination index: an atomic v3 snapshot plus append-only deltas.
io
Low-level I/O backends.
meta
Metadata preservation and the destination-containment safety checks.
net
Remote sync over a single duplex byte stream (ssh, or an in-process pipe).
plan
Build a SyncPlan: classify every source entry as copy/update/skip and, when --delete is set, collect destination entries to remove.
report
Progress reporting plumbing shared by the plain CLI output and the TUI.
tune
Device-tier auto-tuning.
util
Utility types and helpers.
verify
Optional post-apply verification.
walk
Parallel filesystem walk built on jwalk.