What's Changed
Features
- Notify only when output exists — new per-task toggle in the Notification tab (#23). When enabled, a successful run that prints nothing to stdout stays silent; only
echo'd content fires a notification (and becomes the body). Lets polling-style scripts skip the no-op chatter and only chirp on real business events. - Smarter automatic backups — backup snapshots are now content-deduplicated (#22). The rolling backup window no longer fills with identical copies during long quiet periods; nothing is written if your tasks haven't changed since the last backup.
Bug Fixes
- Foreground notifications now work — TaskTick was missing a
UNUserNotificationCenterDelegate, which caused macOS to silently drop notifications submitted while TaskTick was the active app. Notifications now appear regardless of whether TaskTick is in the foreground.
Compatibility
- New
notifyOnlyWhenOutputfield defaults tofalse, so existing tasks keep their original behavior. - Older backup files (without the dedup hash) are still readable.
更新内容
新功能
- 「仅在有输出时通知」开关(#23)—— 任务编辑器的通知 tab 新增此开关。开启后,脚本执行成功但没打印任何 stdout(典型的轮询空跑)就不弹通知;只在脚本通过
echo主动输出业务信息时才通知,正文就是 echo 的内容。 - 自动备份去重(#22)—— 备份机制不再覆盖相同内容。如果数据自上次备份以来没有变化,本次定时备份会跳过写盘;最大 N 份的滚动窗口里不会再被一模一样的副本占满。
Bug 修复
- 前台通知不再被吞 —— 修复
UNUserNotificationCenterDelegate缺失导致的问题:之前当 TaskTick 处于前台时,macOS 会静默丢掉通知,用户看不到任何提示。现在无论 TaskTick 是否在前台,通知都会正常弹出。
兼容性
- 新增的
notifyOnlyWhenOutput字段默认为false,老任务行为不变。 - 旧备份文件(没有去重哈希字段)仍然能正常读取和恢复。
Full Changelog: v1.4.2...v1.5.0