Warn about and skip non-regular and .zfs operands, keeping their records (closes #9)
check / check (push) Successful in 1m31s

A symlink, socket, FIFO or device-node operand, or a directory operand
named .zfs, was ignored without a word and stayed in the scanned
operands, so the update phase deleted every record stored beneath it.
Such an operand now gets a one-line warning naming the path and what it
is, counts as skipped in the summary, and is dropped before the
database index is loaded, so the records beneath it are left alone
unless it lies under another operand. The exit status stays 0. An
operand that turns into one of these between that check and the walk
is warned about and skipped by the walk instead. README "scan mode"
and "Rules for the walk" say so.

Model: opus-5-5
This commit is contained in:
2026-10-03 13:32:46 +00:00
parent c887f80f57
commit f829542b3b
5 changed files with 211 additions and 40 deletions
+4
View File
@@ -29,6 +29,10 @@
# Completed Steps
- warn about and skip symlink, socket, FIFO, device and `.zfs`
operands, keeping the records beneath them (2026-10-03,
https://git.eeqj.de/sneak/sfdupes/issues/9)
- escape tabs, newlines, carriage returns and backslashes in report,
trees and warning paths; the root directory's path is `/`
(2026-10-03, https://git.eeqj.de/sneak/sfdupes/issues/7)