aboutsummaryrefslogtreecommitdiff
path: root/man/krino.conf.5
Commit message (Collapse)AuthorAgeFilesLines
* {now} is the start of the run, as the spec always saidLukasz Kasprzak2 days1-2/+3
| | | | | | | | | | | | | The clock was read once per directory, so a run of several directories stamped several different times - and a review that took a few seconds could put one run's files into two folders, or at midnight two dates. The spec (§7.3) says "the start of the run"; krino.conf(5) documented the behaviour rather than the intent, so the two contradicted each other. The session now carries the run's clock and every directory plans with it. Engine.Plan keeps its meaning for a caller with no session of its own; Session.Plan passes the run's own start.
* a duplicate test in an exclude protects like one in a ruleLukasz Kasprzak2 days1-3/+7
| | | | | | | | | | | | The scopes that drive "no rule deletes a file krino found to be a duplicate" were collected from rules only. A directory whose duplicate tests lived in (exclude ...) forms had no scopes at all, so the protection never engaged: krino explain said "yes duplicate" and the next rule permanently deleted every copy. The README's promise was false in that shape, and the spec's wording permitted it. What matters is what krino knows, not which form taught it. The spec and krino.conf(5) now say so too.
* krino.conf(5): check passes, stop-rule listing, UTF-16 text, uncounted ↵Lukasz Kasprzak4 days1-9/+16
| | | | subdirectories
* check refuses an empty time format; krino.conf(5) corrected from the re-auditLukasz Kasprzak4 days1-45/+85
|
* krino.conf(5): WRITING RULES guide; reference corrected against the codeLukasz Kasprzak4 days1-59/+546
|
* (matched) is unknown after an undecided rule, so a catch-all leaves an ↵Lukasz Kasprzak5 days1-0/+5
| | | | unreadable file alone
* tests read real documents from LibreOffice and pandoc; antiword's ↵Lukasz Kasprzak5 days1-0/+7
| | | | short-document limit documented
* content tests are three-valued: unknown when unreadable or read in partLukasz Kasprzak5 days1-2/+22
|
* captures keep the name's diacriticsLukasz Kasprzak5 days1-18/+8
|
* text that turns binary further on has no content, like an imageLukasz Kasprzak5 days1-4/+4
|
* plan 10 re-check: cut run column, damaged undo run, emptied directory ↵v0.0.7Lukasz Kasprzak5 days1-0/+4
| | | | cleanup, text turning binary, explain flags, interrupt docs
* plan 10: docs (-n, README version and scope, trash identity, --json U+FFFD, ↵Lukasz Kasprzak5 days1-0/+24
| | | | limitations, changelog)
* plan 10: a format with no text is no match, not unreadableLukasz Kasprzak5 days1-0/+2
|
* plan 9: undo review matches review, --min-age validated, future mtimes, rule ↵Lukasz Kasprzak5 days1-0/+7
| | | | names, conflict enum, dependency gate, absolute tool paths
* plan 9: content excludes fail closed; krino.conf excludes checked without ↵Lukasz Kasprzak5 days1-0/+8
| | | | directories
* plan 9: keyword cache keys on extension, max-read and Unicode tables, trims ↵Lukasz Kasprzak5 days1-4/+10
| | | | removed keywords
* plan 8: fuzz decoders; fold ẞ and invalid UTF-8 correctly, refuse ↵Lukasz Kasprzak5 days1-1/+1
| | | | non-UTF-8 paths in krino new
* krino: 0.0.5 — keyword cache, t and d in reviewv0.0.5Lukasz Kasprzak5 days1-0/+22
|
* 0.0.4: max-size, exclude forms, --min-agev0.0.4Lukasz Kasprzak5 days1-1/+59
|
* krino: 0.0.3 — the plan as one block per file, wrapped, and -Pv0.0.3Lukasz Kasprzak5 days1-1/+1
| | | | | | | | Each file shows its steps, then the rule and the reason it matched, one field per line; on a terminal every line wraps to its width with continuation lines under their own column, and piped output is never wrapped. Choosing per file shows the same block. -P / --no-pager prints the plan without the pager. A duplicate's original is shown with ~.
* krino: duplicates are found, never deletedLukasz Kasprzak5 days1-51/+72
| | | | | | | | | A rule combining (duplicate) with a delete action is refused at load, and a file that is a duplicate under any duplicate scope its directory uses gets no delete step from any rule: the plan shows it skipped and the chain continues. A failed duplicate check blocks the delete too. Tests cover (matched), another rule's own condition, a test evaluation skipped, two scopes and a failed check, each checking every copy is still on disk.
* krino: release 0.0.1 — man pages, install, examples, cross and release, ↵v0.0.1Lukasz Kasprzak7 days1-0/+696
README, changelog Also: undo removes the directories its run created; a hardlink is never a duplicate of its own other name; a flag written before "undo" is honoured; --version prints no leading v. Duplicate conditions with different scopes not sharing an original is documented as a known limitation.