<feed xmlns='http://www.w3.org/2005/Atom'>
<title>krino.git/CHANGELOG.md, branch v0.0.12</title>
<subtitle>rule-based file sorter in Go, shows the plan before touching anything, applies only the files you choose, and can undo any run, with s-expression rules and a GTK 4 window</subtitle>
<id>https://git.labunix.xyz/krino.git/atom?h=v0.0.12</id>
<link rel='self' href='https://git.labunix.xyz/krino.git/atom?h=v0.0.12'/>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/'/>
<updated>2026-09-17T12:29:01Z</updated>
<entry>
<title>0.0.12: the changelog, the checklist and the status line</title>
<updated>2026-09-17T12:29:01Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-09-17T12:29:01Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/commit/?id=9ff1297471a483bad1b2b38ccb1e42614f60fc5e'/>
<id>urn:sha1:9ff1297471a483bad1b2b38ccb1e42614f60fc5e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>gui: an exclude is not a rule - the form no longer assumes one</title>
<updated>2026-09-17T09:27:00Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-09-17T09:27:00Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/commit/?id=0e56395aaa46359974a5eb21acaab32b2ea02a0f'/>
<id>urn:sha1:0e56395aaa46359974a5eb21acaab32b2ea02a0f</id>
<content type='text'>
Selecting the exclude row in Forms panicked: newFormEditor read the
form's rule for its when, name, action and stop, and an exclude has
only the when. The editor now takes the conditions from whichever of
the two the form holds and leaves out the fields an exclude has not
got. Checklist item 49 covers it.

Also the 0.0.11 changelog and README, and header floors wide enough
that the age heading is not clipped.
</content>
</entry>
<entry>
<title>gui: name the other copy of a duplicate, and offer to keep this one instead</title>
<updated>2026-09-17T08:15:45Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-09-17T08:15:45Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/commit/?id=a2cb20851499e9c00bd3bf642680a9ce3148cae8'/>
<id>urn:sha1:a2cb20851499e9c00bd3bf642680a9ce3148cae8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>krino-gui(1), README and changelog for 0.0.10</title>
<updated>2026-09-16T19:22:42Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-09-16T19:22:42Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/commit/?id=9300992c8a0043900a6cd76626310189d2537634'/>
<id>urn:sha1:9300992c8a0043900a6cd76626310189d2537634</id>
<content type='text'>
</content>
</entry>
<entry>
<title>milestone 1 review: claims span the run, explain's chain is opt-in and its own, overrides keyed by clean path, splice and enum guards</title>
<updated>2026-09-15T23:34:45Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-09-15T23:34:45Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/commit/?id=ecfaeabf2a92e26c6a521d5fac404a0fff6263b6'/>
<id>urn:sha1:ecfaeabf2a92e26c6a521d5fac404a0fff6263b6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>release notes and version mentions for 0.0.9</title>
<updated>2026-09-15T20:35:09Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-09-15T20:35:09Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/commit/?id=1b39b2683eb820560ba882936d4818af0dcfcec7'/>
<id>urn:sha1:1b39b2683eb820560ba882936d4818af0dcfcec7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>check refuses an empty time format; krino.conf(5) corrected from the re-audit</title>
<updated>2026-09-15T20:32:35Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-09-15T20:32:35Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/commit/?id=8d0a4024b76b7e85c0ccede853fc2cdcceea2afb'/>
<id>urn:sha1:8d0a4024b76b7e85c0ccede853fc2cdcceea2afb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>krino.conf(5): WRITING RULES guide; reference corrected against the code</title>
<updated>2026-09-15T20:18:06Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-09-15T20:18:06Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/commit/?id=1a1dc05b5250c6a281736fa6b706f74721f83847'/>
<id>urn:sha1:1a1dc05b5250c6a281736fa6b706f74721f83847</id>
<content type='text'>
</content>
</entry>
<entry>
<title>check refuses placeholders that could never expand</title>
<updated>2026-09-15T20:12:31Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-09-15T20:12:31Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/commit/?id=88cbe4e623eab9adb608566ac636d36eed72e551'/>
<id>urn:sha1:88cbe4e623eab9adb608566ac636d36eed72e551</id>
<content type='text'>
</content>
</entry>
<entry>
<title>an undecided (stop) rule ends the search for that file</title>
<updated>2026-09-15T20:11:33Z</updated>
<author>
<name>Lukasz Kasprzak</name>
<email>lukas@labunix.xyz</email>
</author>
<published>2026-09-15T20:11:33Z</published>
<link rel='alternate' type='text/html' href='https://git.labunix.xyz/krino.git/commit/?id=77a015b96db8727bb12d0869f180a44d087f6319'/>
<id>urn:sha1:77a015b96db8727bb12d0869f180a44d087f6319</id>
<content type='text'>
</content>
</entry>
</feed>
