Refine copy skip detection and modularize directory executor#2074
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| let plan = plan_directory_entries(context, &entries, relative, root_device)?; | ||
| apply_pre_transfer_deletions(context, destination, relative, &plan)?; | ||
|
|
||
| for planned in planned_entries { | ||
| for planned in plan.planned_entries { | ||
| let file_name = &planned.entry.file_name; |
There was a problem hiding this comment.
Borrow planned_entries before iterating
The for planned in plan.planned_entries loop moves the planned_entries vector out of plan. After that move the code still reads plan.deletion_enabled and plan.keep_names later in the function, which causes a compile error because plan has been partially moved. Iterate over &plan.planned_entries or destructure the fields into locals before the loop so the struct remains usable afterward.
Useful? React with 👍 / 👎.
Captures evidence that the cumulative zsync-inspired matching work (#2059-#2087) plus its three recent follow-up PRs (#4164 adversarial fixtures, #4166 arena allocator feasibility audit, #4169 zsync cleanup audit) has not regressed upstream rsync interoperability. Anchored on master commit 6a615aa where both the CI and Interop Validation workflows are green. Records the per-version matrix (3.0.9 / 3.1.3 / 3.4.1 / 3.4.2 native, plus protocols 28-32 against 3.4.2), the 71-scenario standalone list with the single pre-existing known failure, and the delta-stats parity proof (oc-rsync and upstream both report matched=91900) that the matching pipeline remains wire-equivalent.
…4171) Captures evidence that the cumulative zsync-inspired matching work (#2059-#2087) plus its three recent follow-up PRs (#4164 adversarial fixtures, #4166 arena allocator feasibility audit, #4169 zsync cleanup audit) has not regressed upstream rsync interoperability. Anchored on master commit 6a615aa where both the CI and Interop Validation workflows are green. Records the per-version matrix (3.0.9 / 3.1.3 / 3.4.1 / 3.4.2 native, plus protocols 28-32 against 3.4.2), the 71-scenario standalone list with the single pre-existing known failure, and the delta-stats parity proof (oc-rsync and upstream both report matched=91900) that the matching pipeline remains wire-equivalent.
…4171) Captures evidence that the cumulative zsync-inspired matching work (#2059-#2087) plus its three recent follow-up PRs (#4164 adversarial fixtures, #4166 arena allocator feasibility audit, #4169 zsync cleanup audit) has not regressed upstream rsync interoperability. Anchored on master commit bfb940e where both the CI and Interop Validation workflows are green. Records the per-version matrix (3.0.9 / 3.1.3 / 3.4.1 / 3.4.2 native, plus protocols 28-32 against 3.4.2), the 71-scenario standalone list with the single pre-existing known failure, and the delta-stats parity proof (oc-rsync and upstream both report matched=91900) that the matching pipeline remains wire-equivalent.
…4171) Captures evidence that the cumulative zsync-inspired matching work (#2059-#2087) plus its three recent follow-up PRs (#4164 adversarial fixtures, #4166 arena allocator feasibility audit, #4169 zsync cleanup audit) has not regressed upstream rsync interoperability. Anchored on master commit 7329d95 where both the CI and Interop Validation workflows are green. Records the per-version matrix (3.0.9 / 3.1.3 / 3.4.1 / 3.4.2 native, plus protocols 28-32 against 3.4.2), the 71-scenario standalone list with the single pre-existing known failure, and the delta-stats parity proof (oc-rsync and upstream both report matched=91900) that the matching pipeline remains wire-equivalent.
Summary
Testing
cargo clippy --workspace --all-targets -- -D warningscargo test -p oc-rsync-engineCodex Task