Repository navigation
v0.6.0
things-cli v0.6.0 — filters that tell the truth, writes that fail loudly
Four fixes from recent use, three of them about the CLI quietly reporting the wrong thing. Two new flags.
Filters no longer under-report
--project,--areaand--tagnow search all open tasks by default instead of the Today view. Naming a project previously returned only its Today slice while the header just printed the project name; one project showed 8 tasks where there were 59. An explicit view still wins and is now labelled in the header when combined with a filter. (#140, #142)- Tasks nested under a project heading are included in project and area filters, and
showreports their project and area. They were invisible before because Things stores the project on the heading row, not the task. (#139, #142) - Tasks left open under a trashed project no longer leak into filtered output.
- Behaviour change:
things today "Chores"now means today within Chores. It used to silently switch to the whole-project view.
Complete and cancel now verify the write landed
- Repeating to-dos and projects are refused up front. Things silently drops status, when and deadline changes on repeating items through both the URL scheme and AppleScript, so
cancelused to exit 0 and change nothing. The CLI now checks for a recurrence rule and refuses with a message naming the blocked attributes.showprints aRepeats:line and JSON carries"repeating": true. (#129, #143) - Every complete and cancel reads the status back from the database and exits non-zero if it did not change. A new global
--no-verifyskips the check.edit --complete --canceltogether is now rejected. (#143)
Unknown tags are no longer dropped silently
- Things ignores tags that do not already exist.
add,edit,project add,project editandimportnow warn on stderr for each unknown tag, and--strict-tagsrefuses to write at all. Matching is case-insensitive, as Things treats tag names. Creating tags from the CLI is still open as #144. (#102, #141)
Also
- Dependency bumps: modernc sqlite v1.57, kong v1.16.1, lipgloss v2.0.6. (#118)
- Release pipeline egress allowlist narrowed to the Apple notary bucket. (#138)
Requirements
macOS with Things3 installed. Binaries for Apple Silicon (darwin_arm64) and Intel (darwin_amd64).
What's Changed
📦 Dependencies
Other Changes
- docs(release): unwrap v0.5.3 header prose for GitHub rendering by @ryanlewis in #136
- docs(release): unwrap older release header prose by @ryanlewis in #137
- fix(release): narrow S3 egress wildcards to Apple notary bucket by @ryanlewis in #138
- fix: project, area, and tag filters under-report by @ryanlewis in #142
- fix: refuse writes Things drops on repeating items, and verify status changes landed by @ryanlewis in #143
- feat(tags): warn on unknown tags and add --strict-tags by @ryanlewis in #141
- docs(release): add v0.6.0 release notes header by @ryanlewis in #148
Full Changelog: v0.5.3...v0.6.0