Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion crates/engine/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ drive file operations through this crate.
- `apply_delta` / `generate_delta` / `generate_file_signature` - end-to-end delta helpers
- `SignatureLayout` / `calculate_signature_layout` - upstream-compatible block-size heuristics
- `LocalCopyPlan` - recursive wire-compatible local transfer executor
- `SparseWriter` / `SparseReader` / `SparseDetector` - sparse file I/O with zero-run detection
- `SparseReader` / `SparseDetector` - sparse file I/O with zero-run detection
- `BufferPool` / `PooledBuffer` - RAII buffer reuse to eliminate per-file heap churn
- `FuzzyMatcher` - basis-file similarity scoring for `--fuzzy`
- `DeleteTiming` - controls before/after deletion passes
Expand Down
9 changes: 4 additions & 5 deletions crates/engine/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@
//! [`local_copy::LocalCopyPlan`] drives recursive, wire-compatible local
//! transfers (regular files, directories, symbolic links, FIFOs). Key features:
//! - Temp-file write + atomic rename (`--inplace` bypasses the rename).
//! - Sparse file support via [`SparseWriter`] / [`SparseReader`] / [`SparseDetector`]
//! with 16-byte `u128` zero-run detection and a single seek-per-zero-run invariant.
//! - Sparse file support via [`SparseReader`] / [`SparseDetector`] with 16-byte
//! `u128` zero-run detection and a single seek-per-zero-run invariant.
//! - Deletion passes controlled by [`DeleteTiming`] (before/after transfer).
//! - Backup paths computed by [`compute_backup_path`].
//! - Reference-directory comparisons via [`ReferenceDirectory`].
Expand Down Expand Up @@ -221,9 +221,8 @@ pub use local_copy::{
LocalCopyError, LocalCopyErrorKind, LocalCopyOptions, LocalCopyOptionsBuilder, LocalCopyPlan,
LocalCopySummary, ReferenceDirectory, ReferenceDirectoryKind, SkipCompressList,
SkipCompressParseError, SparseDetectStrategy, SparseDetector, SparseReader, SparseRegion,
SparseWriteStats, SparseWriter, ZeroScanStrategy, compute_backup_path, trace_make_backup_copy,
trace_make_backup_device, trace_make_backup_hlink, trace_make_backup_rename,
trace_make_backup_symlink,
compute_backup_path, trace_make_backup_copy, trace_make_backup_device, trace_make_backup_hlink,
trace_make_backup_rename, trace_make_backup_symlink,
};

/// File signature generation for delta transfers.
Expand Down
5 changes: 1 addition & 4 deletions crates/engine/src/local_copy/executor/file/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,5 @@ pub(crate) use paths::partial_destination_path;
pub(crate) use paths::temp_name_with_suffix;
#[cfg(test)]
pub(crate) use preallocate::maybe_preallocate_destination;
pub use sparse::{
SparseDetectStrategy, SparseDetector, SparseReader, SparseRegion, SparseWriteStats,
SparseWriter, ZeroScanStrategy,
};
pub use sparse::{SparseDetectStrategy, SparseDetector, SparseReader, SparseRegion};
pub(crate) use sparse::{SparseWriteState, write_sparse_chunk};
2 changes: 0 additions & 2 deletions crates/engine/src/local_copy/executor/file/sparse/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,12 @@ mod detect;
mod hole_punch;
mod reader;
mod state;
mod writer;

#[cfg(test)]
mod tests;

pub use detect::SparseDetector;
pub use reader::SparseReader;
pub use writer::{SparseWriteStats, SparseWriter, ZeroScanStrategy};

/// Selects the mechanism used by [`SparseReader::detect_holes`] to identify
/// sparse regions in a file.
Expand Down
Loading
Loading