Commit Graph

  • cdcaf21acd fix(p5-rsh): NULL-check argv tail str_dups in ssh_build_client_argv TapTap 2026-09-09 14:23:59 +02:00
  • ad228db915 fix(p5-remote-option): wire server --trust-sender, align save-layer gates, add hostile-sender test TapTap 2026-09-09 14:23:59 +02:00
  • 07d1dd84f7 feat(p5-socket): --address, -4/-6, --sockopts, server bind options TapTap 2026-09-09 13:41:28 +02:00
  • 858af3d63d feat(p5-rsh): --rsh/-e, --rsync-path, --blocking-io, --outbuf TapTap 2026-09-09 13:41:28 +02:00
  • 5e79d7d76b feat(p5-remote-option): --remote-option (probe 2.14.0), --trust-sender TapTap 2026-09-09 13:41:28 +02:00
  • 90ccf297d7 style: cppcheck — const-correctness in file_send_special and test_chunk TapTap 2026-09-08 22:53:47 +02:00
  • 5a00a4fe2b style: cppcheck — drop redundant if(fd>=0) in test_xattr copy-fallback test TapTap 2026-09-08 22:46:43 +02:00
  • 743b00ffdd docs: recount RSYNC_COMPAT summary after Phase-4 wave C (symlink-trust + devices + acl/xattr) TapTap 2026-09-08 22:42:02 +02:00
  • 94b6662018 Merge feat/p4-acl-xattr: -X/-A/--fake-super TapTap 2026-09-08 22:38:15 +02:00
  • 5bbdc5b450 Merge feat/p4-devices TapTap 2026-09-08 22:33:52 +02:00
  • e600b56f10 Merge feat/p4-symlink-trust TapTap 2026-09-08 22:27:56 +02:00
  • 747946c318 acls/xattrs: -X/--xattrs, -A/--acls, --fake-super TapTap 2026-09-08 22:27:53 +02:00
  • 007e8f90f2 devices: --devices/--specials/-D/--copy-devices/--write-devices TapTap 2026-09-08 22:27:53 +02:00
  • 820188c2cc symlink-trust: -k/--copy-dirlinks, -K/--keep-dirlinks, --munge-links (+real -l/--links) TapTap 2026-09-08 22:27:53 +02:00
  • 0de859b302 docs: recount RSYNC_COMPAT summary after Phase-4 wave B (metadata times + hard links) TapTap 2026-09-08 21:02:34 +02:00
  • 4e7e84f947 Merge feat/p4-metadata-capture: atimes/crtimes/open-noatime/omit-dir-times/omit-link-times TapTap 2026-09-08 21:00:07 +02:00
  • cf7cc5b8ca Merge feat/p4-hard-links: -H/--hard-links TapTap 2026-09-08 20:59:04 +02:00
  • e80888ce7b metadata times: -U/--atimes, -N/--crtimes, --open-noatime, -O/-J TapTap 2026-09-08 20:58:56 +02:00
  • f891cd0a6a hard-links: -H/--hard-links preserves inode relationships TapTap 2026-09-08 20:58:56 +02:00
  • cbb09e41ab identity: fix use-after-free in --usermap/--groupmap parse error path TapTap 2026-09-08 18:49:23 +02:00
  • 30048dddef style: clang-format 18 (CI lint) on Wave-A sources TapTap 2026-09-08 18:38:50 +02:00
  • ba82a0b6da docs: recount RSYNC_COMPAT summary after Phase-4 wave A (identity + preallocate) TapTap 2026-09-08 18:37:45 +02:00
  • b283c8084c identity: keep --numeric-ids in the activate set (-M --numeric-ids) TapTap 2026-09-08 18:37:07 +02:00
  • 279fc8468a Merge feat/p4-preallocate: --preallocate TapTap 2026-09-08 18:25:03 +02:00
  • 8defaf5e8d Merge feat/p4-identity-mapping: --numeric-ids / --usermap / --groupmap / --chown TapTap 2026-09-08 18:23:52 +02:00
  • 362a6a5488 preallocate: --preallocate allocates dest space up front TapTap 2026-09-08 18:23:48 +02:00
  • 53ce00b830 identity mapping: --numeric-ids / --usermap / --groupmap / --chown TapTap 2026-09-08 18:23:43 +02:00
  • a5e176babc Merge feat/ci-speedup: parallelize integration tests; fast PR gate + full coverage on merge TapTap 2026-09-08 17:29:02 +02:00
  • c90b07afcb ci: address review — use --dist=load, per-module teardown, exclude setpriv TapTap 2026-09-08 17:25:56 +02:00
  • 79d965ac11 ci: parallelize integration suite with pytest-xdist; fast PR gate + full coverage on merge TapTap 2026-09-08 16:53:54 +02:00
  • 829e760086 docs: recount RSYNC_COMPAT summary after Phase-3 wave C TapTap 2026-09-07 20:09:36 +02:00
  • 4c98744014 Merge feat/p3-checksum-choice: --checksum-choice/--cc and --checksum-seed TapTap 2026-09-07 19:53:28 +02:00
  • f99e6e1edf Merge feat/p3-append: --append / --append-verify tail resume TapTap 2026-09-07 19:52:33 +02:00
  • 681d7a8532 Merge feat/p3-missing-args: --ignore-missing-args / --delete-missing-args TapTap 2026-09-07 19:51:02 +02:00
  • c6758531f6 fix: reject xxh3 alias, pin handshake digest length to algorithm, simplify xxh64 copy, note FIPS md5 TapTap 2026-09-07 19:50:52 +02:00
  • e754f0d4eb test: cover absent-parent no-op and --dirs scanner skip TapTap 2026-09-07 18:33:34 +02:00
  • 4b74f6a41d fix: treat an absent missing-mirror parent as a no-op, only claim real deletions TapTap 2026-09-07 18:32:35 +02:00
  • 56981a0d9d fix: make digest-vector arrays const to satisfy cppcheck constVariable TapTap 2026-09-07 17:46:52 +02:00
  • a2ce0a8e41 docs: mark --checksum-choice and --checksum-seed implemented TapTap 2026-09-07 17:43:00 +02:00
  • df250ec9c9 test: coverage for --checksum-choice/--cc and --checksum-seed TapTap 2026-09-07 17:42:53 +02:00
  • 0afda6b094 feat(checksum): --checksum-choice/--cc and --checksum-seed for whole-file digest TapTap 2026-09-07 17:42:47 +02:00
  • bfb3a531e9 docs: mark --append / --append-verify implemented in RSYNC_COMPAT TapTap 2026-09-07 15:43:52 +02:00
  • ffdbb6568f test: append/append-verify resume coverage TapTap 2026-09-07 15:43:33 +02:00
  • 6ad3887aa1 feat: --append / --append-verify tail-only resume TapTap 2026-09-07 15:43:29 +02:00
  • 0feb545008 docs: mark --ignore-missing-args / --delete-missing-args implemented TapTap 2026-09-07 14:34:35 +02:00
  • be752b9bfd test: --ignore-missing-args / --delete-missing-args coverage TapTap 2026-09-07 14:34:30 +02:00
  • 97f2dc468b feat(sender): --ignore-missing-args / --delete-missing-args CLI and files-from preflight TapTap 2026-09-07 14:34:25 +02:00
  • c9bd76e633 feat(shared): --delete-missing-args config/wire, manifest third section, receiver exact-path deletions TapTap 2026-09-07 14:34:19 +02:00
  • 6701c103cb docs: recount RSYNC_COMPAT summary after Phase-3 wave B TapTap 2026-09-07 00:06:41 +02:00
  • ebab335488 Merge feat/p3-fuzzy: --fuzzy/-y/--no-fuzzy similar-file delta basis TapTap 2026-09-06 23:52:24 +02:00
  • ef13a70a29 Merge feat/p3-delete-policy: delete policy (--delete-excluded/--max-delete/--ignore-errors/--force/--prune-empty-dirs) TapTap 2026-09-06 23:52:00 +02:00
  • 4f19f5bfe7 fix: satisfy cppcheck on the hard-bound walker test TapTap 2026-09-06 23:33:21 +02:00
  • 87b58975de style(receiver): rework fuzzy DP suffix trim, silence cppcheck FP TapTap 2026-09-06 23:11:01 +02:00
  • bb54113254 docs: all-or-nothing TOCTOU caveat and two-section manifest budget TapTap 2026-09-06 23:10:42 +02:00
  • 5fc49a8503 test: pin the review findings TapTap 2026-09-06 23:10:37 +02:00
  • 8007aed5f6 fix: read scanner io_error before destroy (-m UAF); refuse an empty keep-set from an errored scan TapTap 2026-09-06 23:10:32 +02:00
  • b031e73ab0 fix: treat an unreadable source root as fatal even under --ignore-errors TapTap 2026-09-06 23:10:27 +02:00
  • 741d1f3b93 test: review follow-up coverage for --fuzzy TapTap 2026-09-06 23:05:43 +02:00
  • c379e2dbdd docs: fuzzy oracle note and --no-incremental asymmetry TapTap 2026-09-06 23:05:39 +02:00
  • c1aabc68de feat(cli): --fuzzy honors an explicit --no-incremental TapTap 2026-09-06 23:05:35 +02:00
  • be37a509a5 perf(receiver): bound the fuzzy edit-distance cost, harden the open TapTap 2026-09-06 23:05:32 +02:00
  • 5f4c7ce638 fix: free walker-test root path after cleanup (ASan leak) TapTap 2026-09-06 22:09:25 +02:00
  • 356b5592e0 feat: add confined symlink-safe directory-tree removal helper TapTap 2026-09-06 21:50:25 +02:00
  • 6e835fd9f7 docs: mark the delete-policy family implemented in RSYNC_COMPAT TapTap 2026-09-06 21:50:16 +02:00
  • 1de2677bb1 test: delete-policy unit and integration coverage TapTap 2026-09-06 21:50:12 +02:00
  • 0b25bacb18 feat: protect filter-excluded destination mirrors by default (--delete-excluded opt-in), --ignore-errors scan continuation, --prune-empty-dirs TapTap 2026-09-06 21:50:07 +02:00
  • c4e0de8f08 feat: split delete-manifest frame into keep-set + protected prefixes; enforce --max-delete and --force on the receiver TapTap 2026-09-06 21:50:02 +02:00
  • 1c9b660ac0 feat: all-or-nothing bounded delete walker TapTap 2026-09-06 21:49:57 +02:00
  • 3631df0a3e feat: add delete-policy config fields and CLI flags TapTap 2026-09-06 21:49:53 +02:00
  • 2bc43d6084 docs: mark -y/--fuzzy/--no-fuzzy implemented in RSYNC_COMPAT TapTap 2026-09-06 21:04:26 +02:00
  • 9c1ec6758c test: --fuzzy coverage (CLI, config wire, integration) TapTap 2026-09-06 21:04:23 +02:00
  • cebd23a239 feat(receiver): --fuzzy similar-file delta basis TapTap 2026-09-06 21:04:19 +02:00
  • b753efcecc feat(cli): parse -y/--fuzzy and --no-fuzzy TapTap 2026-09-06 21:04:14 +02:00
  • f099a6e20f feat(config): add fuzzy flag and bump protocol to 2.9.0 TapTap 2026-09-06 21:04:11 +02:00
  • 3815b82306 docs: recount RSYNC_COMPAT summary after Phase-3 wave A TapTap 2026-09-06 20:11:39 +02:00
  • 01a5a93089 Merge feat/p3-basis-dest: alternate basis dirs (--compare-dest/--copy-dest/--link-dest) TapTap 2026-09-06 20:10:40 +02:00
  • 265b1e7669 Merge feat/p3-delete-timing: rsync delete timing (--delete-before/--delete-during/--del/--delete-after/--delete-delay) TapTap 2026-09-06 19:58:40 +02:00
  • 329fc60b14 test: make remove-source incremental-skip test deterministic TapTap 2026-09-06 19:53:22 +02:00
  • d6d502fbb4 docs: precise basis-dir caveats (shared-inode --inplace, attribute provenance, 256MiB limit) TapTap 2026-09-06 19:43:25 +02:00
  • e0e0ea6eac test: xxHash equal-size gate, basis priority, size-only/ignore-times, oversize TapTap 2026-09-06 19:43:21 +02:00
  • 4799d12e25 fix: refuse basis runs containing an over-limit file before any transfer TapTap 2026-09-06 19:43:15 +02:00
  • 4bf4da37e5 fix: free basis path on copy-dest hits; keep --delete staging skip top-level-only TapTap 2026-09-06 19:43:11 +02:00
  • 08a5815ca7 refactor: unify basis-dir path validation and normalization TapTap 2026-09-06 19:43:06 +02:00
  • 02679fe335 docs: clarify --del alias, early keep-set caps, ACK wait, --no-delete conflict TapTap 2026-09-06 19:35:28 +02:00
  • c0c315cf48 test: cover -m late-deletion failure, receiver leak exits, timed ACK read TapTap 2026-09-06 19:35:25 +02:00
  • ebfaced5c2 fix: wait for the early-delete ACK with an extended deadline TapTap 2026-09-06 19:35:21 +02:00
  • bbf982dc0b fix: free the parked delete manifest on every receiver error exit TapTap 2026-09-06 19:35:17 +02:00
  • 36c2c04910 docs: mark rsync delete-timing family implemented TapTap 2026-09-06 18:53:28 +02:00
  • 7eacf7c180 test: cover rsync delete-timing flags, config wire, and semantics TapTap 2026-09-06 18:53:24 +02:00
  • 4e725517f0 feat: implement rsync delete timing (--delete-before/--delete-during/--delete-delay/--delete-after) TapTap 2026-09-06 18:53:20 +02:00
  • 196a27689f docs: mark --compare-dest/--copy-dest/--link-dest implemented TapTap 2026-09-06 18:47:41 +02:00
  • 0d18b7fc87 test: integration coverage for compare/copy/link-dest basis directories TapTap 2026-09-06 18:47:37 +02:00
  • 1fc0cacc32 test: unit tests for basis-dir CLI parsing and config wire round-trip TapTap 2026-09-06 18:47:33 +02:00
  • 8f846a43b8 feat: exclude basis directories from --delete TapTap 2026-09-06 18:47:29 +02:00
  • d38920c972 feat: receiver-side basis matching with link/copy materialization TapTap 2026-09-06 18:47:26 +02:00
  • df890f76ea feat: basis-dir config/CLI for --compare-dest/--copy-dest/--link-dest TapTap 2026-09-06 18:47:20 +02:00
  • 4cf34026e7 test: drop racy queued_bytes==0 assert in byte-budget test TapTap 2026-09-06 16:27:54 +02:00
  • b04ffa608b fix: free rel path on parallel root-scan entries without -R TapTap 2026-09-06 16:21:23 +02:00
  • 4146814aee Merge feat/p2-relative-dirs-mkpath: -R/--no-implied-dirs/--dirs/--mkpath TapTap 2026-09-06 16:10:23 +02:00
  • 3275b6c978 fix: address c-review for -R/--dirs/--mkpath row TapTap 2026-09-06 16:10:00 +02:00