From 1b39b2683eb820560ba882936d4818af0dcfcec7 Mon Sep 17 00:00:00 2001 From: Lukasz Kasprzak Date: Tue, 15 Sep 2026 22:35:09 +0200 Subject: release notes and version mentions for 0.0.9 --- CHANGELOG.md | 6 ++++++ README.md | 4 ++-- docs/design.md | 3 ++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c1d7606..12d1d50 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,12 @@ ## Unreleased +## 0.0.9 — 2026-09-15 + +Rules that cannot be decided fail closed in two more places, `krino check` +catches bad placeholders, and krino.conf(5) explains how rules are written +and used, checked against the code. + - A `(duplicate)` test whose lookup fails (an unreadable file) is unknown, like unreadable content: an exclude holds, marked "(duplicate check failed)", and no rule acts on it, `(not (duplicate))` included. diff --git a/README.md b/README.md index 91711b8..81eec89 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ file's type, name, path, size, age, text content or duplicate status, combined with `and` / `or` / `not`, that trigger actions — copy, move, rename, delete (to the Trash by default), chained in the order written. It shows the plan before touching anything, lets you approve all of it or file -by file, logs every step, and can undo a run. Version 0.0.8 is the engine +by file, logs every step, and can undo a run. Version 0.0.9 is the engine and this command-line interface: per-directory rule files, placeholders in destinations and new names, a keyword cache that makes a rerun fast, and builds for Linux, FreeBSD and OpenBSD. It is not a GUI (that comes later), a @@ -233,7 +233,7 @@ rule content only when a private pattern list is configured with ## Status -**0.0.8, local only.** The module path is `krino`; `go install` only +**0.0.9, local only.** The module path is `krino`; `go install` only works once a remote is chosen and the imports are renamed to match (`docs/design.md`, §18). Until then, build from a clone. `krino -n --json`'s output shape is unstable before krino 1.0 — don't diff --git a/docs/design.md b/docs/design.md index 9479914..a7584e6 100644 --- a/docs/design.md +++ b/docs/design.md @@ -13,7 +13,8 @@ each choice is echoed in red (§8.2, §8.3); amended again 2026-09-14 for 0.0.8: three-valued content tests (§4.6, §5.4), captures from the original name (§7.3), claims across directories (§7.4), `-v` destinations not scanned (§8.1), `(partly undone)` (§10), build checks (§14) and real document -fixtures (§15). +fixtures (§15); amended 2026-09-15 for 0.0.9: failed duplicate lookups and +undecided `(stop)` rules (§5.4), placeholders refused at load (§7.3). krino (from Greek κρίνω, "to separate, to judge, to decide") sorts files in chosen directories by rules. A rule tests a file's type, name, path, size, -- cgit v1.3