These are the release notes for ActivityWatch version v0.14.0b7.
New to ActivityWatch? Check out the website and the README.
Installation
See the getting started guide in the documentation.
Downloads
Contributors
Thanks to everyone who contributed to this release:
@0xbrayo, @ErikBjare, @MBK-fr, @NickWick13, @Q-Ze, @TiberiusNemesis, @TimeToBuildBob
Changelog
Changes since v0.14.0b6:
📦 activitywatch
✨ Features (2)
- feat(scripts): bump-submodules.sh — confirmed per-commit submodule bump with Tauri lock alignment (#1447) (
23698d2) - feat(updater): add a monotonic research feed publisher (#1443) (
8a47169)
🐛 Fixes (3)
- fix(scripts): never abandon a detached local commit; model the dry-run relock after a nested server bump (#1450) (
5b6a438) - fix(research): re-anchor the export sanitizer after aw-server-rust#677 streaming exports (#1449) (
d1f0b4a) - fix(updater): isolate research update trust and normalize versions (#1442) (
83381d4)
🔨 Misc (2)
- docs: refresh CITATION.cff to v0.13.2 and add 'How to cite ActivityWatch' section (#1446) (
e1af9a6) - Escape backslash in logcrawler regex (#1444) (
d14cd44)
(excluded 3 less relevant commits)
📦 aw-server
(excluded 2 less relevant commits)
📦 aw-webui
✨ Features (1)
🐛 Fixes (8)
Click to expand
- fix(activity): use actual bucket IDs in multidevice query (fixes BucketNotFound with aw-sync data) (#969) (
52ad886) - fix(buckets): render device.device_id instead of missing device.id (#983) (
efb8d4d) - fix(ci): authenticate CML release lookup (#981) (
4d58a55) - fix(categories): switchToSet marks dirty when active set changes, enabling Save (#965) (
2ddc69f) - fix(timeline): handle synced buckets where origin hostname contains underscores (#970) (
4cfaf0a) - fix(settings): route the notifications settings group (#972) (
8365c47) - fix(categories): don't let persisted install defaults beat a shipped preset (#974) (
2618faa) - fix(timeline): prevent mobile horizontal overflow (#971) (
ec68d20)
(excluded 5 less relevant commits)
📦 aw-server-rust
✨ Features (4)
- feat(sync): reconcile owner-originated event edits (#678) (
3d3b9dd) - feat(aw-sync): return and persist a SyncReport from each pass (#699) (
37aa0b0) - feat(android): make JNI startServer port configurable (#705) (
6386dbd) - feat(aw-sync): add
statusdoctor command and fail-loud empty-pull warnings (#687) (988e606)
🐛 Fixes (10)
Click to expand
- fix(aw-sync): skip broken peers in sync_run instead of aborting the pass (#703) (
b0fab73) - fix(aw-sync): skip dot-directories when walking peer databases (#702) (
94bfc54) - fix(aw-sync): sanitize whitespace hostnames on import; make per-bucket errors non-fatal (#697) (
d1a61b1) - fix(aw-sync): open peer databases read-only; skip version mismatch (#700) (
d2ae2e6) - fix(aw-sync): do not stage a local db on pull-only sync_run (#698) (
5c12d3d) - fix(aw-sync): skip duplicate device_id folders that truncate history on pull (#686) (
876709e) - fix(android): don't let Rust panics abort the app across the JNI boundary (#681) (
611eb71) - fix(android): return an error object from getBuckets instead of panicking (#680) (
3b7ac33) - fix(datastore): make legacy Android bucket merge linear instead of quadratic (#679) (
5e67ac8) - fix(datastore): apply privacy filters on save and startup (#662) (
062a20e)
🔨 Misc (7)
Click to expand
- docs(aw-sync): document the working sync path; drop stale limitations (#701) (
7636fcd) - docs: add CITATION.cff pointing to ActivityWatch DOI (#704) (
b84a1ee) - perf(query): borrow variables for read-only function calls (#675) (
9a78451) - perf(export): serialize HTTP exports with bounded event buffering (#677) (
b834a8f) - perf(transform): merge overlapping events without vector insertions (#674) (
4272075) - perf(datastore): select an endtime index for recent interval reads (#676) (
fde0a48) - various TODOs, FIXMEs (#669) (
8bb37ad)
(excluded 4 less relevant commits)
📦 aw-webui
✨ Features (3)
- feat(categories): expose category rule priority (#968) (
3e7fb7c) - feat(categories): support field-scoped regex rules on master (#952) (
a2ca625) - feat(i18n): add Swedish translation (#947) (
3eebf68)
🐛 Fixes (15)
Click to expand
- fix(activity): use actual bucket IDs in multidevice query (fixes BucketNotFound with aw-sync data) (#969) (
52ad886) - fix(buckets): render device.device_id instead of missing device.id (#983) (
efb8d4d) - fix(ci): authenticate CML release lookup (#981) (
4d58a55) - fix(categories): switchToSet marks dirty when active set changes, enabling Save (#965) (
2ddc69f) - fix(timeline): handle synced buckets where origin hostname contains underscores (#970) (
4cfaf0a) - fix(settings): route the notifications settings group (#972) (
8365c47) - fix(categories): don't let persisted install defaults beat a shipped preset (#974) (
2618faa) - fix(timeline): prevent mobile horizontal overflow (#971) (
ec68d20) - fix(ux): replace prompt() with modals for Android WebView compatibility (#966) (
2809ee2) - fix: split week/month desktop queries by day to avoid 30s timeout (#951) (
ec73005) - fix(android): don't merge on 'title' key for aw-watcher-android buckets (#960) (
85db7b5) - fix(categories): import JSON from Android SAF and persist a single save (#956) (
97891e1) - fix(ci): find server logs under the testing cache root, never fail on absence (#962) (
7141e39) - fix(queries): match Arc and Dia in the chrome appname patterns (#928) (
d88a9a5) - fix(query): use native date inputs in query options (#953) (
2e757c5)
🔨 Misc (1)
(excluded 5 less relevant commits)
📦 aw-watcher-window
🐛 Fixes (1)
📦 aw-qt
📦 media
🔨 Misc (3)
- docs: added LICENSE (
a451514) - docs: added README (
ae8d373) - added social media and play store banners (
7eeb8d6)
📦 aw-core
🔨 Misc (1)
📦 aw-tauri
(excluded 9 less relevant commits)
📦 aw-webui
✨ Features (1)
🐛 Fixes (8)
Click to expand
- fix(activity): use actual bucket IDs in multidevice query (fixes BucketNotFound with aw-sync data) (#969) (
52ad886) - fix(buckets): render device.device_id instead of missing device.id (#983) (
efb8d4d) - fix(ci): authenticate CML release lookup (#981) (
4d58a55) - fix(categories): switchToSet marks dirty when active set changes, enabling Save (#965) (
2ddc69f) - fix(timeline): handle synced buckets where origin hostname contains underscores (#970) (
4cfaf0a) - fix(settings): route the notifications settings group (#972) (
8365c47) - fix(categories): don't let persisted install defaults beat a shipped preset (#974) (
2618faa) - fix(timeline): prevent mobile horizontal overflow (#971) (
ec68d20)
(excluded 5 less relevant commits)
Full Changelog: v0.14.0b6...v0.14.0b7