Implements rsync --temp-dir=DIR (long option only; -T stays the timeout alias). Receiver writes temps into a scratch dir confined under the receive root (0700) and atomically renames into the destination; EXDEV aborts the file (no copy fallback); per-thread-safe unique temp names; --inplace/--partial-dir bypass. Config.temp_dir already on the wire - no protocol bump. Tests: config round-trip, CLI parse, integration (scratch used/no leftovers/escape rejected/-m/inplace/partial). c-review APPROVE WITH NITS, nits fixed.
Implements rsync `--temp-dir=DIR` (long option only; `-T` stays the timeout alias). Receiver writes temps into a scratch dir confined under the receive root (0700) and atomically renames into the destination; EXDEV aborts the file (no copy fallback); per-thread-safe unique temp names; `--inplace`/`--partial-dir` bypass. Config.temp_dir already on the wire - no protocol bump. Tests: config round-trip, CLI parse, integration (scratch used/no leftovers/escape rejected/-m/inplace/partial). c-review APPROVE WITH NITS, nits fixed.
Implemented and merged to dev (9fbb86c). Independent c-review: APPROVE WITH NITS; nits fixed (no 100x rewrite on permanent EXDEV, scratch-open error logging, update-skip before scratch create, heap-sized temp names, scratch mode 0700, EXDEV wording, inplace/partial bypass tests). dev CI run #466 all green. Closing as merged.
**Merged into dev** via commit 9fbb86c.
Implemented and merged to dev (9fbb86c). Independent c-review: APPROVE WITH NITS; nits fixed (no 100x rewrite on permanent EXDEV, scratch-open error logging, update-skip before scratch create, heap-sized temp names, scratch mode 0700, EXDEV wording, inplace/partial bypass tests). dev CI run #466 all green. Closing as merged.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Implements rsync
--temp-dir=DIR(long option only;-Tstays the timeout alias). Receiver writes temps into a scratch dir confined under the receive root (0700) and atomically renames into the destination; EXDEV aborts the file (no copy fallback); per-thread-safe unique temp names;--inplace/--partial-dirbypass. Config.temp_dir already on the wire - no protocol bump. Tests: config round-trip, CLI parse, integration (scratch used/no leftovers/escape rejected/-m/inplace/partial). c-review APPROVE WITH NITS, nits fixed.Merged into dev via commit
9fbb86c.Implemented and merged to dev (
9fbb86c). Independent c-review: APPROVE WITH NITS; nits fixed (no 100x rewrite on permanent EXDEV, scratch-open error logging, update-skip before scratch create, heap-sized temp names, scratch mode 0700, EXDEV wording, inplace/partial bypass tests). dev CI run #466 all green. Closing as merged.Pull request closed