Hash a file again when its mtime moved back, not only forward (closes #176)
check / check (push) Canceled after 0s
check / check (push) Canceled after 0s
scan treated a recorded file as unchanged when its size matched and its mtime was not newer. A file replaced by other content of the same size with an older mtime, as cp -p, rsync -a or a restore writes it, kept the hash of the file it replaced. Any mtime difference now counts as a change. README.md says so, and a new test covers the older mtime. Model: opus-5-5
This commit is contained in:
1 parent
202f083cc0
commit
ab15cf32c6
4 files changed
+54
-19
No files matched your search
@@ -29,6 +29,11 @@
|
||||
Newest first. An entry ends with its date and its issue or branch, where those
|
||||
are known.
|
||||
|
||||
- `scan` hashes a file again when its mtime differs from its record, older or
|
||||
newer. Before, an older mtime counted as unchanged, so a file put back by
|
||||
`cp -p` or a restore kept the hash of the file it replaced (2026-11-11,
|
||||
https://git.eeqj.de/sneak/sfdupes/issues/176)
|
||||
|
||||
- The Go code moved out of the repository root. `cmd/sfdupes/main.go` is the
|
||||
command, and it calls `Main` in the package `internal/sfdupes`. `main.go`
|
||||
became `internal/sfdupes/cli.go`. Every other file kept its name. The install
|
||||
|
||||
Reference in new issue
Block a user