mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-06-07 21:58:06 -04:00
Adds .github/workflows/ubuntu-version-mix.yml (ubuntu-latest) and a per-release manifest testsuite/expect/rsync_<ver>.expect for each of the nine peers. The workflow builds the current rsync, then runs the two- sided suite against every old binary over both the pipe and --use-tcp daemon transports. All peers run in a SINGLE looped job (not a matrix) so the PR shows one check line; each peer/transport is a foldable log group and a failure annotates which one broke. A new phony `check-progs` target builds rsync plus the test helper programs and check symlinks without running the suite -- the build half of `make check` -- so the workflow's direct runtests.py invocation has the helpers it needs. Notable expected results encoded in the manifests: - The four May-2026 security tests xfail against every released peer: the suite demonstrates each release is vulnerable to those findings while current master is fixed. - symlink-dirlink-basis xfails on 3.4.0/3.4.1 (issue #715: their secure_relative_open O_NOFOLLOW-confines the basedir, breaking a -K dir-symlink update; current master fixes it with secure_basis_open). - Older peers carry more xfails for options/negotiation they lack; 2.6.0 (protocol 27) fails most daemon tests. reverse-daemon-delta passes against all peers, confirming backward compat down to 2004. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>