github ActivityWatch/activitywatch v0.11.0

latest releases: v0.13.1, v0.13.0, v0.12.3b19...
3 years ago

The long awaited v0.11 is finally here! 🎉

After 7 long months, we've finally got the v0.11 release ready, and it comes with a lot of new features, bug fixes, and UX improvements. You can read about them all in the changelog below.

New to ActivityWatch? Check out the website and the README.

Installation

See the getting started guide in the documentation.

Downloads

Honorary mentions

  • Michael Bianco (@iloveitaly) for his work on refreshing the web UI design and improving macOS support!
  • Janne Uusitupa (@lambdanana) for finding a critical security vulnerability on macOS! (CVE coming soon)

Changelog

The changelog is written on a per-submodule basis. Look under the Feature subheaders for the most user-affecting changes.

BREAKING CHANGE: This release switches all Python-based modules to toml configuration, past configs will no longer be respected! (you need to migrate them if you want to keep any modifications)

Summary

  • ✨ Categories can now have colors!
    • Note: If you're updating, your categories will not have any colors set by default.
  • ✨ Barchart visualization now supports categories, as well as the weekly/monthly view.
  • ✨ New audible-as-active feature, which counts audible browser tabs as you being active (if you use the web watcher)
  • ✨ Sunburst visualization now has labels, so you can get an overview from a glance.
  • 🍎 Better macOS support
  • 🛡️ Fixed security vulnerability on macOS
  • 🐛 Many bug fixes
  • And a lot more...

activitywatch (bundle repo)

🐛 Fixes (5)

  • fix: fixed pyinstaller spec to include printAppStatus.jxa for aw-watcher-window (af8f385)
  • fix: removed 'v' version prefix from Windows installer (5630ad4)
  • fix: improved changelog script (4cd3a79)
  • fix: removed unreachable code (#584) (d727d60)
  • fix(windows): Added icon to uninstaller (56992f5)

🔨 Misc (14)

  • style: formatted with black (93dc456)
  • docs: switched to badges for travis-ci.com (141e003)
  • chore: improved the .gitignore (e6de0ba)
  • docs(README): updated URLs to docs (0257d96)
  • Merge pull request #578 from ActivityWatch/dev/innosetup-uninstall-icon (1fca356)
  • Make screenshots bigger so we can read them (#576) (81fe1c9)
  • docs(CONTRIBUTING): improved contributing guide (9277301)
  • docs: updated bug report template with clearer instructions (3343130)
  • docs: improved emojis in issue templates (cfb64c3)
  • docs: improved issue template chooser with links to Forum, Discord, etc (d32d9fe)
  • Add iOS to platform support table (6679b64)
  • docs: added ActivityWatch org to FUNDING.yml (1db0af6)
  • Merge pull request #544 from ActivityWatch/dev/python-experimental (0b19032)
  • docs(greeting): added link to issue templates in greeting (4aa58bc)

aw-webui

✨ Features (26)

  • feat: added link in category settings to the 'category rules' section on the forum (d15d17d)
  • feat: added 'show less' button to the summary visualization (9b93879)
  • feat: open modal on category creation (#293) (b4aabfa)
  • feat: support weekly/monthly view in barchart visualization (#292) (889a911)
  • feat: more applications in the default category rules (#261) (d9782c3)
  • feat: switched 'top domains' on default view to 'timeline barchart' (9e3367e)
  • feat: set server URL via env vars, and improvements to README (#280) (165ec2f)
  • feat: added labels to sunburst, updated dependencies (9d13675)
  • feat: added setting for using color fallback (6b12059)
  • feat: improved style/layout of settings (cb93715)
  • feat: added color picker when choosing category color (a2b8446)
  • feat: Support import and export of categories (7a3d988)
  • feat: maybe done with audible-as-active (f9fa6d2)
  • feat: progress on audible-as-active (13a927f)
  • feat: added category time to the timeline barchart (86b8eab)
  • feat: continued working on category colors (ec2c385)
  • feat: started working on category colors (0ef8936)
  • feat: improved the category edit tree (now collapsible, fixed icons, only expand one level, show number of subcategories) (f3f24f8)
  • feat: pinned/fixed the top menu on Android (a32a672)
  • feat: added a different set of default views for Android devices (cfe8f9f)
  • feat: added configurable landing page, note for Android users on Home page, and NotFound page when no routes match (bce7235)
  • feat: added search to header menu, as well as an 'early feature' notice (b594850)
  • feat: added basic search feature (9060c9e)
  • feat: made visualizations draggable when editing view (710098d)
  • feat: readded the Sunburst Clock visualization (5d51f0d)
  • feat: improvements to category tree visualization (collapsible, show percent) (3b1cea4)
🐛 Fixes (37)

  • fix: added colors to some category rule defaults (2b2596f)
  • fix: sort dropdown of parent category options (d401d1d)
  • fix: fixed useColorFallback setting (523bb28)
  • fix: moved Activity view options into a folded 'Filters' section closer to the top (5eff5f5)
  • fix: made loading texts more discrete, fixed element growth after loading (causing UI to "jump") (aee573f)
  • fix: better y-ticks for barplot (fe54dcc)
  • fix: sorted bars by label in stacked barchart (0b4edeb)
  • fix: minor style changes to the Summary visualization (smaller duration text) (6fbccc3)
  • fix: fixed heart icon in footer (d6b608c)
  • fix: fixed yaxis labels for barchart (b5a4f38)
  • fix: minor footer fixes (651762a)
  • fix: minor fixes (74419ec)
  • fix: misc style fixes for page footer and Activity view (03265f3)
  • fix: fixed string param which should be bool (fbf3515)
  • fix: style fixes in general, and for Activity view (8493bb7)
  • fix: reverted unscoped CSS for nav-link color (476dbba)
  • fix: better descriptions for options (35a1778)
  • fix: fixed comments left in review (c1be8b5)
  • fix: switched away from deprecated @babel/polyfill (4f2139b)
  • fix: add google-chrome-stable to appnames (#277) (fb33162)
  • fix: reload when changing host/filterAFK/includeAudible in Activity view (d477c16)
  • fix: search on pressing enter (c65429b)
  • fix: fixed bug when editing implicit parent categories, improved testing (7ececcb)
  • fix: fixed filter afk/audible checkboxes and sorted categories in category filter dropdown (76eca56)
  • fix: removed unused files (f03e399)
  • fix: fixed coloring for 'Top Categories' (d222009)
  • fix: expand category subtree when new category is added (23b2074)
  • fix: fixed dropdown location/direction for SelectableVisualization (00f4da9)
  • fix: fixed timeline default duration when none explicitly set (0d66712)
  • fix: removed container padding on small screens (b30b970)
  • fix: fixed broken link to docs (f6389ee)
  • fix: disabled editing in EventList outside of Bucket view (b3ac5a6)
  • fix: fix stopwatch off-by-one error (737b3d0)
  • fix: fixed uses of replace to correctly replace all occurrences (9041811)
  • fix: switched from node-sass to dart-sass (5fa757e)
  • fix: support Edge browser on macOS (closes[#61](ActivityWatch/aw-watcher-web#61)) (6acb378)
  • fix: changed 'file an issue' URL to show the issue template chooser (0ba820d)

🔨 Misc (29)

  • Merge pull request #291 from ActivityWatch/style-updates (4d8e5ee)
  • Merge branch 'master' into style-updates (4438e39)
  • Merge branch 'master' into style-updates (9932675)
  • Lint fixes (2384197)
  • Less techy wording on activity options (8c1e0e2)
  • using light border color in a couple other places (2766d95)
  • Consolidated styles (d18a655)
  • Rework tab design to be more modern (cd838c6)
  • Stop using !important override for top nav (27ceb5c)
  • Footer horizontal edges should match the main window (6804c16)
  • Simplify bottom container (2f1c6a7)
  • Removing host from the top of the page (e236c5e)
  • Removing unneeded stylsheets (0f328ae)
  • Increasing size of activity range dropdown (d1c34fd)
  • Adding sourcemaps to vue dev builds (97e45c4)
  • bugfix: Fix Category import only working on firefox (8482678)
  • test: added test for views store, rewrote views store to typescript (5798e8e)
  • docs(README): added note about need to hard refresh after replacing aw-webui files (f8de6dd)
  • docs: updated README (1bb7442)
  • docs: added link to categorization docs in settings (0414c7e)
  • Merge pull request #269 from ActivityWatch/dependabot/npm_and_yarn/elliptic-6.5.4 (bd6d38b)
  • Merge pull request #264 from ActivityWatch/dependabot/npm_and_yarn/pug-3.0.1 (0b60162)
  • Merge pull request #263 from ActivityWatch/dependabot/npm_and_yarn/pug-code-gen-2.0.3 (3316243)
  • test: added basic vuex tests for categories (b475107)
  • docs: added codecov badge to README (6a4072b)
  • Unify punctuation in satisfaction poll (b6cc444)
  • refactor: refactored event viewer (in Query/Search views) into component, changed use of (broken) aw-timeline to vis-timeline (613b51e)
  • Merge pull request #241 from ActivityWatch/dependabot/npm_and_yarn/dompurify-2.0.17 (f4c0181)
  • docs(README): fixed build status badge to use GitHub Actions (87f32ab)

aw-client

✨ Features (5)

  • feat!: switched config format to toml (#58) (6c460cb)
  • feat: added example script for calculating working hours (6fbce36)
  • feat: added load_dataframe.py example (9de8095)
  • feat: rewrote CLI to use click (b2e7985)
  • feat: added redact_sensitive.py example (75efe3c)
🐛 Fixes (6)

  • fix: fixed tests for union_no_overlap (4ad9920)
  • fix: fix deletion of buckets in production mode (bbcd1d6)
  • fix: Fix broken insert_event (e427a4d)
  • fix: improved typing (56e2f10)
  • fix: fixed incorrect use of Click context (e0eb2c0)
  • fix: fixed typechecking (74db79f)

🔨 Misc (12)

  • docs(README): added PyPI version badge (13975dc)
  • chore: bumped version to v0.5.3, updated deps (db1010a)
  • chore: bumped version to v0.5.1 (6b08d43)
  • Merge pull request #55 from ActivityWatch/dev/insert-event-no-return (eba55f3)
  • api: Make insert_event not return anything anymore (669c574)
  • Merge pull request #54 from ActivityWatch/dev/minor-fixes (86c9d7f)
  • Make commit_interval diff use >= instead of > (fdeceb0)
  • Fix insert_event compatibility with aw-server-rust (6521df6)
  • test: fixed integration test (c6ee497)
  • docs: added new redact_sensitive.py example to README (ea6de3a)
  • style: formatted with black (fb54d36)
  • docs(example): added time_spent_today.py example (120b1f7)

aw-core

✨ Features (2)

  • feat: added union_no_overlap from aw-research (d6f783d)
  • feat: added support for toml config (f4b1bb8)
🐛 Fixes (3)

  • fix: removed resolved TODO (067bb69)
  • fix: fixed tests for union_no_overlap (9d8cb41)
  • fix: Add flush+fsync to write of config files (03c62e3)

🔨 Misc (10)

  • docs(README): added PyPI version badge (464c423)
  • chore: bumped version to 0.5.3 (28d1caf)
  • Merge pull request #88 from ActivityWatch/dev/config-toml (811712c)
  • Merge branch 'master' into dev/config-toml (043cc3c)
  • chore: bumped version to 0.5.2 (4a6be45)
  • Merge pull request #101 from ActivityWatch/dev/config-fsync-fix (601ac7d)
  • docs: minor docstring fix (5864398)
  • chore: bumped version to v0.5.1 (5bd84b1)
  • chore: bumped version number (c7ba6d2)
  • docs: documented transforms chunk_events_by_key and merge_events_by_keys (#99) (81dcb64)

aw-qt

✨ Features (1)

  • feat!: switched config format to toml (#75) (4d6f4e7)
🐛 Fixes (2)

  • fix: Make trayicon less blurry when being fractionally scaled (cbdbca3)
  • fix: Make open dir work correctly with PyInstaller on Linux (04069cb)

🔨 Misc (6)

  • Merge pull request #73 from Drarig29/open-dashboard-double-click (9f7299f)
  • Add return type (b8affbc)
  • Open Dashboard on double click (26580fe)
  • Merge pull request #72 from ActivityWatch/dev/less-blurry-trayicon (19f8719)
  • Merge pull request #71 from ActivityWatch/dev/open-log-dir-fix (493eb94)
  • Merge pull request #67 from ActivityWatch/dev/update-pyqt5 (1318740)

aw-server

✨ Features (1)

  • feat!: switched config format to toml (92452af)
🔨 Misc (9)

  • Merge pull request #76 from ActivityWatch/dev/insert-event-no-return (f0d6500)
  • chore: Fix linting issue (61b362a)
  • api: Make insert event never return anything (fe6b0b3)
  • chore: bumped version (fbb89fe)
  • tests: improvements to tests and code coverage (9c33204)
  • docs(README): added badges for GitHub Actions and Codecov (46b43e0)
  • test: added test coverage (f9b5d2e)
  • Merge pull request #73 from ActivityWatch/dev/github-ci (3e81e29)
  • style: formatted with black (2f44d8d)

aw-server-rust

✨ Features (10)

  • feat: added exclude_keyvals transform (e8cc25a)
  • feat: added hostname filtering support to find_bucket (7ad9512)
  • feat: switched from getopts to clap for aw-server-rust CLI options (c2af4ce)
  • feat: more progress on sync, added basic README (a4588f7)
  • feat: add ability to override device_id by CLI parameter (67e565c)
  • feat: progress on sync (dbe96b1)
  • feat: added CLI param to aw-server for skipping legacy import (27a8eb1)
  • feat: added ability to override aw-server port and dbpath via CLI arguments (90aa6a5)
  • feat: added query parameters to aw-client-rust's get_events, fixed clippy complaints (9a82ea2)
  • feat: added period_union transform (294edaf)
🐛 Fixes (3)

  • fix: minor progress on sync (190c442)
  • fix: added data clearing to period_union (e027018)
  • fix: attempt to fix building for Android (8599c77)

🔨 Misc (15)

  • docs: improved aw-server and aw-sync READMEs (4a1943a)
  • test: fixed tests (26a7e04)
  • added start, end, limit parameters to aw-client-rust's get_events (c53fbf9)
  • aw-query: Fix broken period_union (1f49e83)
  • test: fixed test (6452957)
  • test: added tests for datastore query of events that cover the queried range (602ddb2)
  • test: added nop test for period_union (c3b178f)
  • Upgrade to GitHub-native Dependabot (f60809c)
  • chore: Fix linting (8721bf6)
  • aw-datastore: Fix broken legacy import on Windows (bb1f36d)
  • Cargo.lock: Update dependencies (f499679)
  • docs: reordered badges in README (3764fb5)
  • aw-server: Disable jemalloc on non-x86 CPUs (828db39)
  • Cargo.lock: Update dependencies (3b9f31d)
  • aw-client-rust: Update to reqwest 0.11 (ad32e7a)

aw-watcher-afk

✨ Features (2)

  • feat!: switched config format to toml (#49) (ccf6b12)
  • feat: switched to pynput for MouseListener and KeyboardListener (297b58c)
🐛 Fixes (6)

  • fix: fixed typing in EventFactory (f39dfa1)
  • fix: fixes for migration to pynput (9f1d24c)
  • fix: moved pynput imports inside methods to prevent failing on import when no Xorg available (d543bdd)
  • fix: attempted CI fix (61bf58e)
  • fix: remove debug logging of sensitive info from keyboard/mouse-listener (#45) (ccf8770)
  • fix: added support for Python 3.8 using pywinhook wheel (e48e977)

🔨 Misc (2)

  • Merge pull request #48 from ActivityWatch/dev/pynput (d7931eb)
  • docs(README): fixed build status badge to use GitHub Actions (5584fb8)

aw-watcher-window

✨ Features (1)

  • feat!: switched config format to toml (#57) (301449f)
🐛 Fixes (3)

  • fix: improved applescript strategy (cleartext src, precompile, run in-process) (#56) (8682633)
  • fix: added printAppStatus.jxa to pyinstaller datas (57590c3)
  • fix: fixed import in main, moved macos permission prompt into seperate file (c683671)

🔨 Misc (2)

  • format: formatted pyinstaller spec with black (71daa0f)
  • Use JXA for window status on macOS, include url in event data (#52) (aecf47f)

Don't miss a new activitywatch release

NewReleases is sending notifications on new releases.