github ActivityWatch/activitywatch v0.14.0b1

latest release: v0.13.3b1
pre-release7 hours ago

These are the release notes for ActivityWatch version v0.14.0b1.

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, @2e3s, @BelKed, @0xbrayo, @deancureton, @ErikBjare, @Game4Move78, @HomeArchbishop, @istudyatuni, @kenoma-hld, @luisgerhorst, @matt-seb-ho, @moodyhunter, @mrienstra, @Noorts, @petrroll, @powellnorma, @reddaisyy, @RTnhN, @Senophyx, @TimeToBuildBob, @vdonich, @yuhldr

Changelog

Changes since v0.13.2:

📦 activitywatch

✨ Features (2)

  • feat(ci): add automated dev release workflow (#1217) (e9c9915)
  • feat: add aw-tauri CI builds alongside aw-qt (#1209) (dc1371c)

🐛 Fixes (17)

Click to expand

  • fix(deps): update aw-notify submodule to correct aw-notify-rs ref (5e5bd35)
  • fix(build): restore Python.framework symlinks before signing (#1260) (e60719b)
  • fix(build): strip signatures and group by content hash in framework signing fallback (#1259) (c9c256b)
  • fix(build): always sync canonical framework binary to avoid per-copy signature divergence (#1258) (1a349e0)
  • fix(build): snapshot pre-signing checksum to correctly detect framework binary duplicates (#1257) (38a87df)
  • fix(build): sign canonical framework binary once and sync to duplicates (#1256) (7d52fcd)
  • fix(build): preserve binary identifier when signing via temp-path copy (#1255) (88eadfb)
  • fix(build): sign all Mach-O binaries inside non-standard framework bundles (#1254) (0bfc97f)
  • fix(notarize): auto-retrieve notarytool log on status: Invalid (#1251) (c94ac70)
  • fix(build): sign non-standard framework binary via temp copy to avoid ambiguity (#1250) (93053d0)
  • fix(build): handle non-standard Python.framework signing in Tauri build (#1249) (6d836c0)
  • fix(build): skip framework main binaries in codesign Step 1 to avoid ambiguity error (#1247) (e376d6c)
  • fix(build): replace codesign --deep with inside-out per-binary signing for notarization (#1246) (a41abfb)
  • fix(build): notarize macOS app bundle before stapling (#1245) (9949fdf)
  • fix(ci): unblock macOS dev-release prereqs (#1231) (c642967)
  • fix(ci): use jq for dev-release check-run filter (#1230) (411061f)
  • fix: added escaping of html elements in commit messages for changelog generation (6c26ebd)

🔨 Misc (7)

Click to expand

  • chore: bump version to v0.14.0 in pyproject.toml (132ae58)
  • docs: update donation badge to reflect April 2026 baseline (#1287) (8e6871b)
  • refactor(scripts): improve version handling in build scripts (#1280) (8301338)
  • Replace aw-notify with Rust implementation aw-notify-rs (#1211) (5548a0b)
  • docs: add link to docs repo in CONTRIBUTING.md (#1190) (ab3316b)
  • docs: improve server architecture documentation (bd4c5e6)
  • chore: added gptme.toml file (a7608c8)

(excluded 33 less relevant commits)

📦 aw-server

🐛 Fixes (2)

  • fix: reject heartbeats on lock timeout instead of proceeding unsafely (#159) (aa848ce)
  • fix(test): resolve flaky test_midnight_heartbeats boundary condition (#157) (153e7fd)

🔨 Misc (2)

  • chore: bump version to v0.14.0, update pyproject.toml (26be7f2)
  • chore: bumped version to 0.13.2 (cfba0b2)

(excluded 2 less relevant commits)

📦 aw-webui

✨ Features (18)

  • feat(categorization): add category sets — named rule profiles with multi-set combining (#804) (ea1b986)
  • feat(auth): bootstrap API token from URL/session (#806) (dd7ae07)
  • feat(categorization): extract findCommonPhrases util with bigram support and tests (#803) (5529031)
  • feat: add work time report view (#775) (83dc881)
  • feat(timeline): add 'Merge by app' filter to reduce event flooding (#782) (38663fb)
  • feat(timeline): add category filter to Timeline view (#778) (137ee09)
  • feat(timeline): add AFK filter toggle to Timeline view (#776) (ad06461)
  • feat(timeline): add keyboard and scroll panning support (#777) (fdd2c4a)
  • feat: add a dynamic period to the high uncategorized time notification (#745) (7d43d81)
  • feat: Add ability to better visualize value of custom events if not using title (#698) (2cdfe0c)
  • feat: hide top-window titles vis on android (#737) (360b1b4)
  • feat: add top bucket data by column vis (#733) (7ed6115)
  • feat: enhance colorisation for Top Window Titles (#654) (906b005)
  • feat(timeline): swimlanes, duration filter, and filter desc to timeline (#679) (052656a)
  • feat: add Top Stopwatch Events view (#659) (9259df7)
  • feat: add number input support for event data editing (#648) (cb9a7ec)
  • feat: add top browser titles to activity visualization (#631) (757f9f4)
  • feat: detect and set preferred theme based on user settings (#634) (606112e)

🐛 Fixes (32)

Click to expand

  • fix(deps): patch Dependabot security blockers (#812) (f4b9379)
  • fix(query-options): prefer known hosts over unknown defaults (#809) (444ed4f)
  • fix(categories): keep Top Categories colors when category query contains encoded segments (#781) (f2d0396)
  • fix(deps): reduce npm vulnerabilities from 37 to 32 via overrides (#771) (1db85aa)
  • fix(queries): use query_bucket directly when full bucket ID is known (#760) (1c7802b)
  • fix(timeline): truncate long synced bucket names in sidebar (#757) (1393ec6)
  • fix(timeline): position tooltip above cursor to prevent overlap (#758) (fc5bdd9)
  • fix: allow single-date selection in timeline date range picker (#767) (8d32ea9)
  • fix(timeline): use group.id instead of group.content for bucket ID lookup (#765) (0c0368c)
  • fix(sunburst-clock): respect startOfDay offset when rendering the clock (#766) (86a71c8)
  • fix: support file exports in Tauri webview (#763) (919e9f3)
  • fix(settings): prevent categorization crash when hostname not yet resolved (#759) (cd5aafe)
  • fix: add Helium to browser list (#744) (c32b635)
  • fix: resolve npm security vulnerabilities (qs, babel) (#762) (cbeca31)
  • fix(views): load categories on Query Explorer mount (#753) (0cc1e2f)
  • fix(categories): prevent duplicate names from causing shared edits (#755) (a2256c4)
  • fix(settings): prevent confirm dialog persisting after leaving settings (#754) (5fe4025)
  • fix: minor label fixes to TimelineBarChart (#674) (345f3ee)
  • fix: add uppercase names for some browsers (#695) (e2e6abf)
  • fix: fix dark mode timeline colors (#705) (ebeb847)
  • fix: fix duplicate android hosts in header (#725) (61b9f58)
  • fix: add Floorp Browser support (#683) (076d050)
  • fix: add another name for Zen Browser (#685) (afef52e)
  • fix: handle ^ and $ in rules (#684) (34b42ed)
  • fix: remove router guard for unsaved category settings (#664) (9842d3e)
  • fix: add another name for Brave (#653) (f64e785)
  • fix: correct duration formatting logic (#643) (2b14364)
  • fix: add Zen Browser to browser list (1860f15)
  • fix: fix tests (#642) (53cbaaa)
  • fix: update upload-artifact action to version 4 (#641) (8ec401c)
  • fix: add browser names from Flathub (#623) (053b8d6)
  • fix: add chromium-browser (#630) (8f6e767)

🔨 Misc (9)

Click to expand

  • docs: add --webpath instructions for aw-server-rust (#764) (934daca)
  • refactor(queries): simplify browser detection using case-insensitive regex, support Firefox ESR (#752) (f3d95d4)
  • chore: add .pre-commit-config.yaml and fix formatting (b16d3bb)
  • chore: fix formatting (60706f1)
  • chore: hide API Browser link while running rust servers (#614) (a0e70bc)
  • chore: fix some typos in comments (#720) (11785df)
  • style: fix Raw JSON visibility in dark mode (#736) (691c57b)
  • chore: add macos browser app name for Zen (#675) (ca6fafd)
  • refactor: migrate timeline.js to typescript (#680) (52b2360)

(excluded 46 less relevant commits)

📦 aw-server-rust

✨ Features (13)

  • feat(client): add API key authentication support to aw-client-rust (#587) (2875df5)
  • feat(server): add opt-in API key authentication via Bearer token (#585) (7c33810)
  • feat(cors): add cors_regex config for custom regex-based CORS origins (#569) (0b46e59)
  • feat: fetch server side categories for querying (#568) (0d4c285)
  • feat: add an JNI endpoint for android querying (0b7fd68)
  • feat: set max-page size to 16KB for shared objects (f7965c7)
  • feat(aw-sync): pass hostname from Android to JNI for proper sync directory structure (69afcab)
  • feat(aw-sync): add Android JNI support and library build (9467c2a)
  • feat(sync): daemon support for advanced sync (#528) (d40d712)
  • feat: add optional always-active-pattern to canonical queries (#543) (10c50ba)
  • feat(client): support single instance (#522) (f4bb94d)
  • feat: canonical queries (#529) (02504a6)
  • feat(sync): gracefully handle SIGTERMs (#516) (869d65e)

🐛 Fixes (17)

Click to expand

  • fix(deps): bump time to 0.3.47 in Cargo.lock (#589) (1e9c358)
  • fix: prevent API key auth bypass via double slashes (#588) (4f6c565)
  • fix(import): merge events into existing bucket instead of failing (#575) (0a94e0f)
  • fix(datastore): handle commit failures gracefully instead of panicking (#572) (9a8802a)
  • fix(transform): use scheme as domain for file:// URLs (#570) (f9faa5e)
  • fix(dirs): restore /log subdirectory in log path after appdirs migration (#565) (66e2e97)
  • fix: replace appdirs with dirs for Windows ARM64 compatibility (#562) (91ccf22)
  • fix(datastore): preserve event ID in heartbeat cache after merge (#561) (1c2920d)
  • fix(aw-sync): add cdylib crate-type for JNI shared library generation (8cdeea6)
  • fix(aw-sync): make get_server_port conditional for Android (d67870f)
  • fix(aw-sync): make env mutable and conditionally compile config functions for Android (ef0ad9e)
  • fix(aw-sync): fix type annotations and JNI reference in android.rs (cfabb77)
  • fix(aw-sync): make clap import and ValueEnum derive conditional on cli feature (dc2111a)
  • fix(datastore): use event ID instead of max(endtime) in replace_last_event (#555) (7ffceb8)
  • fix(queries): eliminate double-escaping in regex patterns (#541) (8289a0f)
  • fix(android): jstring_to_string function to properly convert Java strings (#547) (24d3bdf)
  • fix(sync): added client.wait_for_start() and improve error handling in sync daemon (#495) (a0cdef9)

🔨 Misc (2)

  • chore: bump aw-server-rust version to v0.14.0 (826efce)
  • fix(aw-sync): use passed hostname directly instead of client.hostname (3202963)

(excluded 18 less relevant commits)

📦 aw-webui

✨ Features (18)

  • feat(categorization): add category sets — named rule profiles with multi-set combining (#804) (ea1b986)
  • feat(auth): bootstrap API token from URL/session (#806) (dd7ae07)
  • feat(categorization): extract findCommonPhrases util with bigram support and tests (#803) (5529031)
  • feat: add work time report view (#775) (83dc881)
  • feat(timeline): add 'Merge by app' filter to reduce event flooding (#782) (38663fb)
  • feat(timeline): add category filter to Timeline view (#778) (137ee09)
  • feat(timeline): add AFK filter toggle to Timeline view (#776) (ad06461)
  • feat(timeline): add keyboard and scroll panning support (#777) (fdd2c4a)
  • feat: add a dynamic period to the high uncategorized time notification (#745) (7d43d81)
  • feat: Add ability to better visualize value of custom events if not using title (#698) (2cdfe0c)
  • feat: hide top-window titles vis on android (#737) (360b1b4)
  • feat: add top bucket data by column vis (#733) (7ed6115)
  • feat: enhance colorisation for Top Window Titles (#654) (906b005)
  • feat(timeline): swimlanes, duration filter, and filter desc to timeline (#679) (052656a)
  • feat: add Top Stopwatch Events view (#659) (9259df7)
  • feat: add number input support for event data editing (#648) (cb9a7ec)
  • feat: add top browser titles to activity visualization (#631) (757f9f4)
  • feat: detect and set preferred theme based on user settings (#634) (606112e)

🐛 Fixes (32)

Click to expand

  • fix(deps): patch Dependabot security blockers (#812) (f4b9379)
  • fix(query-options): prefer known hosts over unknown defaults (#809) (444ed4f)
  • fix(categories): keep Top Categories colors when category query contains encoded segments (#781) (f2d0396)
  • fix(deps): reduce npm vulnerabilities from 37 to 32 via overrides (#771) (1db85aa)
  • fix(queries): use query_bucket directly when full bucket ID is known (#760) (1c7802b)
  • fix(timeline): truncate long synced bucket names in sidebar (#757) (1393ec6)
  • fix(timeline): position tooltip above cursor to prevent overlap (#758) (fc5bdd9)
  • fix: allow single-date selection in timeline date range picker (#767) (8d32ea9)
  • fix(timeline): use group.id instead of group.content for bucket ID lookup (#765) (0c0368c)
  • fix(sunburst-clock): respect startOfDay offset when rendering the clock (#766) (86a71c8)
  • fix: support file exports in Tauri webview (#763) (919e9f3)
  • fix(settings): prevent categorization crash when hostname not yet resolved (#759) (cd5aafe)
  • fix: add Helium to browser list (#744) (c32b635)
  • fix: resolve npm security vulnerabilities (qs, babel) (#762) (cbeca31)
  • fix(views): load categories on Query Explorer mount (#753) (0cc1e2f)
  • fix(categories): prevent duplicate names from causing shared edits (#755) (a2256c4)
  • fix(settings): prevent confirm dialog persisting after leaving settings (#754) (5fe4025)
  • fix: minor label fixes to TimelineBarChart (#674) (345f3ee)
  • fix: add uppercase names for some browsers (#695) (e2e6abf)
  • fix: fix dark mode timeline colors (#705) (ebeb847)
  • fix: fix duplicate android hosts in header (#725) (61b9f58)
  • fix: add Floorp Browser support (#683) (076d050)
  • fix: add another name for Zen Browser (#685) (afef52e)
  • fix: handle ^ and $ in rules (#684) (34b42ed)
  • fix: remove router guard for unsaved category settings (#664) (9842d3e)
  • fix: add another name for Brave (#653) (f64e785)
  • fix: correct duration formatting logic (#643) (2b14364)
  • fix: add Zen Browser to browser list (1860f15)
  • fix: fix tests (#642) (53cbaaa)
  • fix: update upload-artifact action to version 4 (#641) (8ec401c)
  • fix: add browser names from Flathub (#623) (053b8d6)
  • fix: add chromium-browser (#630) (8f6e767)

🔨 Misc (9)

Click to expand

  • docs: add --webpath instructions for aw-server-rust (#764) (934daca)
  • refactor(queries): simplify browser detection using case-insensitive regex, support Firefox ESR (#752) (f3d95d4)
  • chore: add .pre-commit-config.yaml and fix formatting (b16d3bb)
  • chore: fix formatting (60706f1)
  • chore: hide API Browser link while running rust servers (#614) (a0e70bc)
  • chore: fix some typos in comments (#720) (11785df)
  • style: fix Raw JSON visibility in dark mode (#736) (691c57b)
  • chore: add macos browser app name for Zen (#675) (ca6fafd)
  • refactor: migrate timeline.js to typescript (#680) (52b2360)

(excluded 46 less relevant commits)

📦 aw-watcher-afk

🐛 Fixes (3)

  • fix(python3.13): bump pynput version to 1.8.1 (#75) (403a331)
  • fix: client.wait_for_start() (#68) (2dd99ca)
  • fix: use client.wait_for_server() (9f9a4fd)

(excluded 4 less relevant commits)

📦 aw-watcher-window

🐛 Fixes (1)

  • fix: use client.wait_for_start() (c80aa5a)

(excluded 2 less relevant commits)

📦 aw-qt

🐛 Fixes (9)

Click to expand

  • fix(manager): detect existing server on startup, avoid port conflict (#123) (6fbb5f7)
  • fix(manager): skip ignored files early to suppress spurious warnings (#124) (0cf66f3)
  • fix(manager): detect .bat and .cmd executables and strip extensions on Windows (#126) (ac043b0)
  • fix(manager): add common macOS paths to system module search (#125) (b7cedd9)
  • fix: read port from server config instead of hardcoding 5600 (#122) (2074cbf)
  • fix(modules): auto-restart crashed watchers and fix toggle for dead processes (#121) (f9a6653)
  • fix: enforce single-instance using QLockFile (#117) (7967ff8)
  • fix(trayicon): wait for system tray availability on startup (#116) (fccd5ca)
  • fix(trayicon): re-apply tooltip after show() to fix empty tooltip on Windows 11 (#115) (2ed852e)

🔨 Misc (1)

  • Fix: Restrict python_version to ^3.8,<3.14 for PyInstaller compatibility (ef863ac)

(excluded 5 less relevant commits)

📦 aw-core

🐛 Fixes (3)

  • fix(peewee): enable WAL journal mode for SQLite (#132) (40fccd0)
  • fix(query): handle semicolons inside string literals (#131) (d628a9a)
  • fix(transform): use scheme as domain for file:// and other non-web URLs (#129) (9e2ad03)

(excluded 4 less relevant commits)

📦 aw-client

✨ Features (3)

  • feat(client): auto-load local API keys (#106) (6e701f3)
  • feat: always-active-pattern in canonical queries (#93) (06d2069)
  • feat: added client.wait_for_start() (#87) (b693873)

🐛 Fixes (7)

Click to expand

  • fix: handle None return from get_setting in get_classes (#102) (f0603e3)
  • fix: fix --json cli param (#100) (8fa4f42)
  • fix: fix missing timezone in query (#101) (e95c1f0)
  • fix: fixed cli report command, adding --limit, and cleaned up query construction (fixes #88) (81a57df)
  • fix: use server categories in cli report (8209103)
  • fix: add alternative firefox name (#85) (e0b0743)
  • fix: improved error message (f0057b4)

🔨 Misc (2)

  • chore: bumped version to v0.5.15 (f74b037)
  • chore: release v0.5.14 (96958ab)

(excluded 3 less relevant commits)

📦 aw-tauri

✨ Features (59)

  • feat: add CLI support with --testing, --verbose, and --port flags (#207) (0dcdfea)
  • feat: open external links in system browser (#206) (1ed8f1f)
  • feat: aw-notify-rs specifies notification titles (eb70aaf)
  • feat: switch notification format to json lines (feb2658)
  • feat: exponential backoff delay when restaring modules (07a2acf)
  • feat: modules exit after SIGKILL of app (b623564)
  • feat: rotate log file if exceeding 32MB (5e065cb)
  • feat: make dialogs more consistent (d49f6d8)
  • feat: appdirs for full compatability with AW (f074126)
  • feat: update logging paths to follow AW convention (5e19e90)
  • feat: integrate with aw-notify-rs for notifications (9778432)
  • feat: add tooltip for windows build (#158) (dd644b0)
  • feat: default config based on platform and display server (f2ed9e7)
  • feat: discover modules in bundled aw-tauri (6019831)
  • feat:pass the port flag only if not default(5600) (545b01c)
  • feat:use default port and storage path (ff624ca)
  • feat: simplify config file format #129 (d761119)
  • feat:focus on 'Open Dashboard' click (83e981d)
  • feat: no restarts on user initiated module shutdowns (26bb229)
  • feat: use default config if config_file is malformed (8bdab28)
  • feat: minimize on default (b749c14)
  • feat: multiple discovery_paths and sane defaults (fb5e4e3)
  • feat: exclude aw-server & aw-server-rust from modules menu (5714ebb)
  • feat: add menu separators (692f0c9)
  • feat: open log and config folders + reword menu items (c42898f)
  • feat: update the discovery_path for macos (d2544cd)
  • feat: aw-webui as the default UI (a5127c5)
  • feat: show window on first run (25c78ed)
  • feat: hide icon from dock on macos (ed13e9e)
  • feat:panic is port is not available for use (9b91b01)
  • feat:non-path-discovery for modules (fe4cbe9)
  • feat:accept cli flags for modules in config file (c45e43c)
  • feat: drop trait for lock structures to prevent race conditions (91ea82b)
  • feat: show window on second_instance (776cf04)
  • feat:move config file under activitywatch dir in linux (0538347)
  • feat: implement single instance (dff14c3)
  • feat: logging support via fern (3798900)
  • feat: restart modules limit (458e2b7)
  • feat: use checkmarks for running state (a886408)
  • feat: ignore aw-client and aw-cli in modules detected on path (b84e441)
  • feat: show window on second_instance (c4e3e8c)
  • feat: show window on second_instance (9d8fc6e)
  • feat: configurable autostart minimized (9092382)
  • feat: configurable autostart + autostart watchers + port (915003d)
  • feat: restart on module crash + show dialog (2123078)
  • feat: implement single instance (be7e059)
  • feat: autostart feature (d278427)
  • feat: migrate to tauri 2.0 (#21) (4c5e76d)
  • feat: set tray menu on all startup paths (582e785)
  • feat: Mark detect modules as done (82674a5)
  • feat: detect modules on $PATH and start/stop from system tray (53278a5)
  • feat: switch to BTreeMap and BTreeSet for maintaining the sorted property (9112b36)
  • feat: start and stop watchers from the system tray (#9) (6679df6)
  • feat: responsive watcher state in tray icon menu (#8) (3db2d4b)
  • feat: stop watchers/modules on app close (#7) (51ab72b)
  • feat: added a modules submenu to the trayicon (78b42b3)
  • feat(wip): added in-progress watcher manager (5a49eb3)
  • feat: run aw-server-rust as part of application (39c87c1)
  • feat: added minimal tray icon (f592b0d)

🐛 Fixes (31)

Click to expand

  • fix: focus window when single-instance handler activates it (#209) (f10e26e)
  • fix: fix support for legacy aw-notify (89e5ddf)
  • fix: fix indefinite restarts for aw-notify crashes (79f5342)
  • fix: fix mac autostart (b7d5832)
  • fix: update android path to correct bundle path (8a361f3)
  • fix: exclude aw-watcher-window-macos in unix systems (c849eeb)
  • fix: fixes recursive calls on aw-notify failure (2dfc17d)
  • fix: fix verbose logging && add AW_TRACE,AW_DEBUG env variables (3544d88)
  • fix: fix packaging on linux (0ee5d19)
  • fix: fix incorrect OS parsing in Makefile (92fb8ea)
  • fix: fix incorrect OS parsing in Makefile (f4716f5)
  • fix: limit recursive search to 3 levels deep (938d35d)
  • fix: fixed slow recursive path search on windows (4562087)
  • fix: fix windows module termination code (d049c83)
  • fix:fixed incorrectly parsed windows style paths (5c57972)
  • fix: use glob to search in nested dirs (d5f1a5d)
  • fix: fix pending restart implementation (148e745)
  • fix: use correct logpath (91d06a9)
  • fix:additional console windows on Windows (a2d9447)
  • fix: reword tray menu (630b3e6)
  • fix:PATH resolution on windows (c1ee729)
  • fix:start modules via full path (50d9a35)
  • fix: conditional imports in cargo.toml (b00d4ce)
  • fix: remove unnecessary debug_assertions (9ea25aa)
  • fix: rename aw-watcher-* correctly (2011cfd)
  • fix: added cargo:rerun-if-changed for webui path to build.rs (73f80e3)
  • fix: removed checked in icons that are built from source files (bf48811)
  • fix: run aw-server on port 5699 for now (a96b759)
  • fix: assume assets in ../aw-webui/dist from root (9805a2f)
  • fix: work on manager (06fb7b2)
  • fix: set tauri package identifier (f854f7e)

🔨 Misc (80)

Click to expand

  • docs: add developer documentation and contributing guide (#205) (f96314c)
  • refactor: reduce lock contention when updating tray menu (b8f4e7a)
  • refactor: faster parsing of notifications (9259e64)
  • refactor: replace expensive canonicalize calls with inode tracking (631f958)
  • refactor: refactor lockfile listener to wait on channels instead of polling (6ecee49)
  • chore:update precommit hook to exclude generated files (0947882)
  • refactor: remove double calls to cvar.notify_all() (c980dd4)
  • chore: remove cargo.toml and cargo.lock from .gitignore (4e80bf1)
  • chore: replace most unwraps with expect (966e245)
  • make:package rpm,appimage and deb into a folder on linux (33830e4)
  • make:package rpm,appimage and deb into a folder on linux (b73d6de)
  • make: updates to package target (f753968)
  • refactor: refactor module discovery similar to aw-qt (68c819d)
  • make: update package target (11fb36c)
  • chore: add pre-commit-config.yaml and misc (0c9bf80)
  • chore: add package and clean targets to makefile (d7e838f)
  • chore: add glob dependency (98511e9)
  • chore: remove unnecessary javascript deps (232394a)
  • docs: reorder prerequisites to emphasize Tauri deps (266a559)
  • refactor: move first_run code to same function (d0846df)
  • docs: add build status badge (2e34f25)
  • chore: update aw-webui to the latest version (8043e74)
  • refactor: rename get_log_file -> get_log_path (8f084db)
  • docs: mark remove placeholder as done (941a22c)
  • refactor: rename get_log_file -> get_log_filepath (95c9c07)
  • chore:add tauri-plugin-opener (3ed403e)
  • refactor: cluster cfg imports together (4049b52)
  • refactor: modules_in_path -> discovered_modules (d9cb030)
  • refactor: stop re-enabling autostart on each launch (b0ca0e0)
  • chore: delete web assets (c29011c)
  • chore: formatting and misc changes (bf290ad)
  • chore: add shell-words dependency (cfc68e0)
  • chore: version bump dependecies (0b13c50)
  • refactor: idiomatic rust rewrites (e04c1af)
  • chore:version bump (8d94b2f)
  • refactor: move misc codeblocks to functions (6267309)
  • chore: rename "autolanch" -> "autostart" in config file (449c5e4)
  • docs: add MPL2 license (#52) (a7c96fd)
  • chore: add condvar for safe access to TRAY_ID (74066f4)
  • chore: remove commented out code (a614118)
  • chore: switch println!() -> dbg!() (52559aa)
  • chore: remove unreachable code (820e688)
  • Update README.md (89318eb)
  • chore: add directories + toml crates (cc49f31)
  • chore: improve error handling using expects (d952b7c)
  • chore: reorder tauri imports (06c1ab8)
  • chore: cargo update dependencies (864a0b5)
  • chore: add prerequisites to README.md (e81f016)
  • chore: add clippy suggestions and cargo fmt (eaabf50)
  • chore: remove commented out import (1bb120d)
  • refactor: rename 'watcher' -> 'module' in manager.rs (closes #10) (b95fde8)
  • chore: applied clippy (7c8d369)
  • chore: cargo fmt (c734522)
  • chore: add src-tauri/icons to gitignore (4c57132)
  • refactor: improve AW_WEBUI_DIR handling in main.rs (4907966)
  • mark aw-webui bundling done (8cf73dc)
  • another bug fix :( (ddc8d06)
  • set env variable in the 'Build the app' section (10ab18e)
  • remove unnecessary panics (0522c51)
  • set env variable in the prebuild section (99962be)
  • bug fix (b1d719b)
  • panics if invalid enviroment variable is set (7d9a5c5)
  • updates to build.yml (db44ebb)
  • Add AW_WEBUI_DIR environment variable to build workflow (d2ab886)
  • add enviroment variable check to build.rs (13466a3)
  • set AW_WEBUI_DIR env variable in the make file. (1fd2df0)
  • improve handling of aw-webui dir (fb1f503)
  • automate the building of aw-webui. (6fbc5b3)
  • replace aw-media with aw-webui submodule(includes aw-media as a submodule). (613b842)
  • Add npm run tauri icon command to Makefile (f9451e3)
  • add media submodule (ba7ff35)
  • docs: wrapped original readme in <details> tag (f8b9d5a)
  • docs: added more to roadmap (040227f)
  • docs: updated roadmap in README (7e25211)
  • docs: added list of features to README (0e633b3)
  • docs: removed note about no work done yet (f0c4092)
  • docs: updated Cargo metadata (4a9a34c)
  • docs: improved README (a89a2d8)
  • docs: added proper README (d097e1c)
  • initial commit (with create-tauri-app) (cfa03ca)

(excluded 46 less relevant commits)

📦 aw-watcher-input

🐛 Fixes (1)

  • fix: use client.wait_for_server() (9bb5045)

(excluded 4 less relevant commits)

📦 awatcher

🔨 Misc (153)

Click to expand

  • Don't send empty data by KWin watcher (2cb5f9f)
  • Fix Cosmic bugs (bf04ffd)
  • Fix COSMIC active window watcher implementation (4087342)
  • Fix warnings (0357732)
  • Merge pull request #69 from NathanBaulch/emptyjson (ef1fe24)
  • gnome: interpret {} as valid state with no windows focused (3335634)
  • Bump to 0.3.3 (678d7fd)
  • Fix COSMIC watcher intervention (7926f2c)
  • Bump the version to 0.3.2 (0cdf79f)
  • Implement COSMIC watcher (4db84df)
  • Fix CI errors (ce8cba6)
  • Implement COSMIC watcher (efc06f6)
  • Merge pull request #57 from 0xbrayo/main (2e3d97e)
  • Update Cargo dependencies (59c6dd1)
  • Fix new warnings (eafd5a7)
  • Update dependencies (8dde3b0)
  • Update version to 0.3.2-alpha.3 (c85bbf0)
  • Merge pull request #48 from vdonich/patch-1 (620d586)
  • Update watchers priorities (bea3a4a)
  • Merge pull request #45 from wojnilowicz/fix-spdx (d1e3540)
  • Use SPDX short identifier (994b1ce)
  • Add another connection attempt (b07d395)
  • Fix client host (7ac76da)
  • Make bundle server host configurable (03e94e2)
  • Mention supported formats and RPM (ff16bd6)
  • Fix missing package (9f215c4)
  • Upgrade dependencies (cfcbdca)
  • Support RPM packages (5b5739d)
  • Upgrade AW to 0.13.2 (5b8c90a)
  • Fix port type in config (e2ee19f)
  • Upgrade wayland libs (21acaea)
  • Upgrade dependencies (7ac7c9d)
  • Merge pull request #28 from powellnorma/aw-instance (8cfc14c)
  • cargo fmt (d719c54)
  • Merge branch 'main' into aw-instance (dd974db)
  • ReportClient: send_active_window_with_instance -> send_active_window_with_extra (d733008)
  • Allow not reporting data by filter (16942ea)
  • Update dependencies (b4cf791)
  • x11: include wm_instance (990843b)
  • Add systemd sample configs and docs (a045780)
  • Merge pull request #23 from wojnilowicz/add-service (810707c)
  • Add systemd service (e6fc2e4)
  • Add a note about Gnome extension (8a82b9f)
  • Extract tracker service and fix reactive timings (ddfe972)
  • Invert client dependency for idle watchers with basic tests (1b41533)
  • Replace Duration by TimeDelta for Chrono (db3d14b)
  • Move to GHA to stable Rust (e1d5071)
  • Fix disappearing idle time after timeout (123a0e4)
  • Bump version to 0.3.0 (3e478e9)
  • Fix non-idle timing (1441009)
  • Avoid creation of different idle events (d1926eb)
  • Add 1 more second to reconnect (1f7ed75)
  • Adjust AW dependencies source (214ff1c)
  • Upgrade AW UI and server (a76f6e3)
  • Merge pull request #22 from wojnilowicz/bump-aw-server-rust (cfb3ad8)
  • Bump aw-server-rust (8597254)
  • Add timeout to watcher iteration (13cea8b)
  • Update actions/checkout to v4 (1a222c3)
  • Upgrade dependencies (7d819a9)
  • Upgrade zbus dependency (0ae2fbc)
  • Fix idle changed duration (f001121)
  • Use a single now time (0434aa1)
  • Unify idle logic (ea215b4)
  • Correct last input for idle timeout for Wayland handlers (f960dd6)
  • Use IP instead of localhost (be59315)
  • Return support for KDE < 6 (a21b917)
  • Merge pull request #10 from moodyhunter/main (86e4de5)
  • Merge pull request #15 from luisgerhorst/patch-1 (cba6687)
  • Update README.md (965af67)
  • Update README.md (406157b)
  • Update README.md (4b02a4c)
  • Adjust bundle autostart docs (5a8a0bf)
  • Clarify names (ba52553)
  • Simplify macro (3dcc37e)
  • Remove unnecessary async_trait (b6ee2d2)
  • Add a GHA for stable compilation (e39e720)
  • Describe autostart option in docs (16ec9f6)
  • Add logging to see retries on Gnome (847e976)
  • Make a few retries if Gnome Wayland is certain (c406b33)
  • Support kwin6 updated APIs (7f9f603)
  • Update dependencies (87d046f)
  • Use Wayland protocols out of box (53266d5)
  • Add ext-idle-notify-v1 support (06b30f4)
  • Add retries for reqwest connect errors (70001c3)
  • Add deb for module (c6a5df5)
  • Add an ability to run external modules (ae1e320)
  • Add instructions to use the module (864d1dc)
  • Find and run extra watchers from aw-qt.toml (0ccdba4)
  • Fix toolchain version for GHA (e04d1de)
  • Skip KWin watcher if X11 is detectable (8eed243)
  • Fix window poll time for interval margin (4513469)
  • Update dependencies (d3b9adf)
  • Fix clippy (72da6a7)
  • Fix workflow badge (2d8c64c)
  • Use absolute path for webui dir in GHA (6d8568c)
  • Update aw-server dependency (a63f02e)
  • Upgrade dependencies (38a2f1f)
  • Upgrade locked dependencies (7ecac44)
  • Fix custom config file and add test (ca72df7)
  • Optimize server dependency and increase version (d6e7626)
  • Replace blocking zbus to async (589d5e0)
  • Use the last working nighly version (51deffa)
  • Move the code to async instead of threads (10d5485)
  • Add basic async support over threads (7902770)
  • Verify without features (5685631)
  • Add .desktop for deb (9f89fdb)
  • Test filters (1a3022b)
  • Build binaries for releases by GHA (f8a753d)
  • Fix aw-server revision (8fe8847)
  • Shutdown the server more gracefully (63b8079)
  • Replace smol with tokio (1c42466)
  • Add opening config to tray (665924d)
  • Add a custom tray icon (cbcbfe4)
  • Embed the server data statically with crate (e911048)
  • Adjust build instructions (1d1c9a2)
  • Pin AW dependencies to a specific revision (ab3fd1c)
  • Support captures in replacements (78c6618)
  • Simplify iteration errors (59b2c88)
  • Refactor to use common watchers loop (79f8e53)
  • Catch signals to stop watchers (cdc05e0)
  • Try to reconnect to X11 on error (f1f2208)
  • Add --no-tray bundle option (c8ca1de)
  • Add a bundle feature (216b2a1)
  • Simplify config without bucket names (856a7af)
  • Remove verbosity out of watchers config (53a5c1a)
  • Extract watchers into module (63bfe41)
  • Add lib section (1740ec0)
  • Mark DBus modules as features (caad19e)
  • Add README (a797199)
  • Fix error for gnome lock screen (5cd3af4)
  • Regulate verbosity with args (add5b46)
  • Implement window watcher for Gnome (a841b69)
  • Introduce anyhow errors (3c51ad8)
  • Implement Gnome idle watcher (11cfb7c)
  • Separate watchers to a module (a758913)
  • Improve x11 error texts (56f4924)
  • Add github workflow and fix warnings (cc50f22)
  • Remove avoidable clones (534c8dc)
  • Add a mock server option (97a5867)
  • Implement window data filtration (69130e4)
  • Split config to submodules (f63033b)
  • Use provided from cli config name (04e20c1)
  • Add TOML config file support (d5103bf)
  • Implement X11 active window watcher (d710674)
  • Implement idle watcher for X11 (5c1b98d)
  • Polish code and fix mistakes (65ce731)
  • Print watcher type on error and simplify creating (9dbc6fc)
  • Rename to wl-protocols (71deb6e)
  • Implement wlr foreign toplevel v1 protocol (6645695)
  • Aggregate into Watcher trait (32f0b5b)
  • Change logger to fern (91224d6)
  • Implement active window watcher (55ba0b9)
  • Implement idle watcher (24254d5)

Full Changelog: v0.13.2...v0.14.0b1

Don't miss a new activitywatch release

NewReleases is sending notifications on new releases.