Checksum/compression parity: -c no-op without --incremental; choice subsets; seed/default #289

Closed
opened 2026-09-15 19:33:34 +02:00 by TapTap · 1 comment
Owner

Audit findings.

  • -c/--checksum alone transfers everything (the quick-check only runs under the --incremental/basis handshake); rsync's -c alone switches the quick-check to content checksum. Suggest --checksum imply --incremental (or warn).
  • --checksum-choice/--cc supports only xxh64/xxhash/md5; --compress-choice/--zc only zstd/none (rsync supports more) — documented subsets, but rows claim ✅ without the caveat.
  • --checksum-seed defaults to 0 (rsync randomizes per transfer).
  • --skip-compress has no built-in default suffix list (rsync applies one).
  • --delta requires --incremental and there is no rsync --no-whole-file spelling.

Fix: implication for -c; document the choice subsets/seed/default-list divergences in the matrix rows; consider --no-whole-file.

Audit findings. - `-c/--checksum` alone transfers everything (the quick-check only runs under the `--incremental`/basis handshake); rsync's `-c` alone switches the quick-check to content checksum. Suggest `--checksum` imply `--incremental` (or warn). - `--checksum-choice/--cc` supports only xxh64/xxhash/md5; `--compress-choice/--zc` only zstd/none (rsync supports more) — documented subsets, but rows claim ✅ without the caveat. - `--checksum-seed` defaults to 0 (rsync randomizes per transfer). - `--skip-compress` has no built-in default suffix list (rsync applies one). - `--delta` requires `--incremental` and there is no rsync `--no-whole-file` spelling. Fix: implication for `-c`; document the choice subsets/seed/default-list divergences in the matrix rows; consider `--no-whole-file`.
TapTap added the needs-triage label 2026-09-15 19:33:34 +02:00
Author
Owner

Fixed. -c/--checksum now implies --incremental and drives the content quick-check; --checksum-choice/--compress-choice accept the full rsync 3.4.1 sets (plus auto and RSYNC_*_LIST); --checksum-seed is randomized per transfer when unset; --skip-compress has rsync's default suffix list; --no-whole-file is accepted. RSYNC_COMPAT bullets corrected. Closing as completed.

Fixed. `-c/--checksum` now implies `--incremental` and drives the content quick-check; `--checksum-choice`/`--compress-choice` accept the full rsync 3.4.1 sets (plus `auto` and `RSYNC_*_LIST`); `--checksum-seed` is randomized per transfer when unset; `--skip-compress` has rsync's default suffix list; `--no-whole-file` is accepted. RSYNC_COMPAT bullets corrected. Closing as completed.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: TapTap/FastSync#289