sfdupes is pre-1.0, with no installed base and no databases anywhere, so the schema is changed in place and its version stays 1. schemaVersion goes back to 1; the six-column files table, content included, is the version 1 schema. The check that stops on a database with any other version stays. README.md and TODO.md no longer describe a version 2 or rejecting and rescanning version 1 databases. The main.go package comment still described 1024-byte end windows and said full file contents are never read; it now describes the hashes the code computes. Model: opus-5-5
This commit was merged in pull request #63.
This commit is contained in:
@@ -36,12 +36,11 @@
|
||||
`head`, `tail`, and `content` all hold the whole-file hash. A file at
|
||||
10 MiB or above is gated on the 64 KiB `head` and `tail`, then
|
||||
compared on a `content` hash — the whole file below 50 MiB,
|
||||
gigabyte-spaced 1 MiB samples at or above. Schema bumps to version 2
|
||||
(new `content` column); a version 1 database is rejected and must be
|
||||
rescanned, which is required anyway since every stored hash changed.
|
||||
`report` and `trees` group by the extended signature, so the ladder is
|
||||
applied across the whole database. README "Duplicate detection"
|
||||
documents every rung including the probabilistic large-file path.
|
||||
gigabyte-spaced 1 MiB samples at or above. The `content` column is
|
||||
part of the version 1 schema. `report` and `trees` group by the
|
||||
extended signature, so the ladder is applied across the whole
|
||||
database. README "Duplicate detection" documents every rung including
|
||||
the probabilistic large-file path.
|
||||
|
||||
- remove the dead `files.dat` references from `Makefile`, `.gitignore`
|
||||
and `.dockerignore` (2026-09-21, branch `next`, closes
|
||||
|
||||
Reference in New Issue
Block a user