Walk an operand nested on another filesystem with -x (closes #106)
check / check (push) Canceled after 0s

With -x, an operand under another operand is kept and walked on its
own when it is a directory on a different filesystem than the deepest
kept operand above it, or a regular file in such a directory, since
that operand's walk does not reach it. Below a kept operand, the rule
keeping records under a directory -x did not enter covers only
directories its own walk did not enter, so records of files gone from
it are deleted.

The new tests stub the devices and share their scan steps with the
test for #99, whose comment no
longer claims it runs every phase. The startWalk comment is rewrapped.

Model: opus-5-5
This commit is contained in:
2026-10-14 19:07:23 +00:00
parent 80bd7c0999
commit c8c7882cc7
4 changed files with 304 additions and 47 deletions
+6
View File
@@ -29,6 +29,12 @@
# Completed Steps
- with `-x`, an operand under another operand is walked on its own instead of
being dropped when it is a directory on a different filesystem than that
operand, or a regular file in such a directory, and the records of files gone
from below it are deleted (2026-10-14,
https://git.eeqj.de/sneak/sfdupes/issues/106)
- with `-x`, `scan` keeps the records below a directory on another filesystem
under its operand, and counts their sizes in the size census, instead of
deleting them (2026-10-14, https://git.eeqj.de/sneak/sfdupes/issues/99)