Skip to content

fix: state the rsync 3.1 requirement and detect an incapable rsync - #13

Merged
KiryuuLight merged 3 commits into
devfrom
fix/rsync-requirement
Jul 30, 2026
Merged

KiryuuLight merged 3 commits into
devfrom
fix/rsync-requirement

Conversation

@KiryuuLight

Copy link
Copy Markdown
Contributor

The docs promised only that rsync must be on your $PATH. Since macOS 15.4 /usr/bin/rsync is openrsync, which has no --itemize-changes and no --info, so the preview and progress bar have no flag to run; it accepts --link-dest but reportedly does not hardlink reliably, leaving snapshots silently storing full copies.

lazyrsync now warns once when the rsync it finds is older than 3.1 — command log at startup, stderr before a headless run. It warns rather than refuses, since plain transfers may still work. The floor is 3.1 because --info=progress2 arrived in 3.1.0. settings.toml gains rsync_path to pick the binary, for Macs whose $PATH prefers openrsync and for cron.

Not verified on macOS hardware — openrsync's behaviour here comes from its source, so the check keys on the version banner, not the flag list.

fmt, clippy, 104 tests clean.

@KiryuuLight
KiryuuLight force-pushed the fix/rsync-requirement branch from 3f0ba5e to 32010b4 Compare July 29, 2026 21:45
@KiryuuLight
KiryuuLight merged commit d311789 into dev Jul 30, 2026
1 check passed
@KiryuuLight
KiryuuLight deleted the fix/rsync-requirement branch July 30, 2026 12:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant