Bug 10449 - Allow testing of supported parameter(s)
Summary: Allow testing of supported parameter(s)
Status: NEW
Alias: None
Product: rsync
Classification: Unclassified
Component: core (show other bugs)
Version: 3.1.0
Hardware: All All
: P5 enhancement (vote)
Target Milestone: ---
Assignee: Wayne Davison
QA Contact: Rsync QA Contact
Depends on:
Reported: 2014-02-14 22:34 UTC by Haravikk
Modified: 2014-02-14 22:34 UTC (History)
0 users

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Haravikk 2014-02-14 22:34:12 UTC
In newer versions of rsync there are many desirable features that simply aren't available in older versions, but unfortunately some systems continue to be bundled older versions of rsync.

I'd like to recommend a special rsync mode which will attempt to perform a compatibility check for particular features. Of course this will only work for newer versions, but at least it should then fail when used with an older version and thus still provide useful feedback.

Quite simply I'd like to suggest either an extension of the --help or --version flag, whereby any additional parameters are treated as features to be tested for. If source and destination parameters are also provided, then these will be used for determining which features are available between the source and target specifically (i.e - it will check with a remote system if able to do-so).

For example:
rsync --version --delete-during --ignore-case ~/Foo me@bar.com:/Foo

This would attempt to determine whether the "delete-during" and "ignore-case" switches are available for a transfer between the local volume and me@bar.com. If all listed features are supported then it will return a particular status code (for compatibility with current versions this shouldn't be 0), otherwise it will return a different status and will print to stdout a list of unsupported features, so the script knows not to use these when performing the actual transfer operation.